:root{--bg-primary:#131314;--bg-secondary:#1b1b1f;--bg-tertiary:#0d0d0d;--bg-card:hsla(0,0%,100%,.04);--bg-card-hover:hsla(0,0%,100%,.08);--bg-glass:rgba(19,19,20,.92);--bg-input:#1e1f20;--accent-primary:#7c3aed;--accent-secondary:#4285f4;--accent-gradient:linear-gradient(135deg,#7c3aed,#4285f4);--text-primary:#e3e3e3;--text-secondary:#b4b4b4;--text-tertiary:#8e8ea0;--text-muted:#78788c;--border-subtle:hsla(0,0%,100%,.06);--border-medium:hsla(0,0%,100%,.1);--border-accent:hsla(0,0%,100%,.18);--sidebar-width:260px;--topbar-height:56px;--input-height:80px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:0.15s cubic-bezier(0.4,0,0.2,1);--transition-base:0.25s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.35s cubic-bezier(0.4,0,0.2,1);--transition-spring:0.4s cubic-bezier(0.34,1.56,0.64,1);--font-main:var(--font-geist-sans),"Söhne","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans",sans-serif,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-display:var(--font-geist-sans),"Outfit","Söhne","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:var(--font-geist-mono),"JetBrains Mono","Söhne Mono","Fira Code",Monaco,Consolas,monospace;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-main);background:var(--bg-primary);color:var(--text-primary);overflow:hidden;height:100dvh;width:100vw;display:flex;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.1);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.2)}*{scrollbar-width:thin;scrollbar-color:hsla(0,0%,100%,.1) transparent}::selection{background:rgba(124,58,237,.3);color:var(--text-primary)}.app-container{width:100vw}.app-container,.main-content{display:flex;height:100dvh;overflow:hidden;position:relative}.main-content{flex:1 1;flex-direction:column;background:var(--bg-primary);min-width:0;margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow)}.topbar{height:var(--topbar-height);min-height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 20px;padding-top:var(--safe-top);background:transparent;border-bottom:none;position:relative;z-index:10}.gemini-signin-btn{background:#0b57d0;color:#fff;border:none;padding:8px 24px;border-radius:99px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.gemini-signin-btn:hover{background:#0842a0}.menu-toggle{display:none;background:none;border:none;color:var(--text-secondary);font-size:22px;cursor:pointer;padding:10px;border-radius:var(--radius-sm);transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.menu-toggle:hover{color:var(--text-primary);background:hsla(0,0%,100%,.06)}.menu-toggle:active{transform:scale(.92)}.topbar-info{gap:10px}.topbar-info,.topbar-logo{display:flex;align-items:center}.topbar-logo{width:32px;height:32px;justify-content:center;overflow:hidden}.topbar-logo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;transform:scale(1.65)}.mobile-only{display:none}@keyframes gradientMove{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.current-module-name{font-family:Outfit,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:800;font-size:26px;letter-spacing:-.8px;background:linear-gradient(90deg,#7c3aed,#ec4899,#3b82f6,#7c3aed);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:var(--text-primary);animation:gradientMove 4s ease infinite;padding:0 4px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(100px);padding:12px 24px;border-radius:var(--radius-full);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-medium);color:var(--text-primary);font-size:13px;font-weight:500;z-index:9999;opacity:0;transition:all .4s cubic-bezier(.34,1.56,.64,1);pointer-events:none;white-space:nowrap}.toast.show{transform:translateX(-50%) translateY(0);opacity:1;pointer-events:auto}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-base);padding:16px}.modal-overlay.active{opacity:1;pointer-events:auto;animation:overlayFadeIn .2s ease}.modal-container{width:100%;max-width:480px;background:#1e1f20;border:1px solid var(--border-medium);border-radius:var(--radius-lg);padding:24px;box-shadow:0 24px 48px rgba(0,0,0,.5);color:var(--text-primary);animation:modalSlideUp .3s cubic-bezier(.34,1.56,.64,1);max-height:85vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.modal-header h3{font-family:var(--font-display);font-size:18px;font-weight:600}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close:hover{color:var(--text-primary);background:hsla(0,0%,100%,.06)}.modal-body{display:flex;flex-direction:column;gap:12px}.settings-group,.settings-group:last-child{margin-bottom:0}.settings-label{display:block;font-size:12px;color:var(--text-tertiary);margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.settings-list{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.list-action-btn{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-main);font-size:14px;font-weight:500;cursor:pointer;text-align:left;border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.list-action-btn:last-child{border-bottom:none}.list-action-btn:hover{background:var(--bg-card-hover)}.list-action-btn i{font-size:18px;color:var(--text-secondary);transition:color var(--transition-fast)}.list-action-btn:hover i{color:var(--text-primary)}.danger-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px;border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.2);background:rgba(239,68,68,.06);color:#ef4444;font-family:var(--font-main);font-size:13.5px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.danger-action-btn:hover{background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.4)}@media (max-width:1024px){:root{--sidebar-width:240px}}@media (max-width:768px){:root{--sidebar-width:0px;--topbar-height:52px}.menu-toggle,.mobile-only{display:flex}.main-content{margin-left:0}.current-module-name{font-size:22px}.toast{bottom:calc(20px + var(--safe-bottom));font-size:12.5px;padding:10px 20px}.modal-overlay{padding:16px}.modal-container{max-width:100%;max-height:90dvh}input,select,textarea{font-size:16px!important}}@media (max-width:480px){.current-module-name{font-size:20px}.topbar{padding:0 14px}}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,100%,.1);transition:.4s;border-radius:34px}.toggle-switch .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#a0a0a0;transition:.4s cubic-bezier(.68,-.55,.265,1.55);border-radius:50%}.toggle-switch input:checked+.slider{background-color:#a855f7}.toggle-switch input:checked+.slider:before{transform:translateX(20px);background-color:#fff}.toggle-switch.disabled{opacity:.5;cursor:not-allowed}.toggle-switch.disabled .slider{cursor:not-allowed}.announcement-box{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:12px;margin-bottom:30px;max-width:600px;width:-moz-fit-content;width:fit-content;margin-left:auto;margin-right:auto;border:1px solid hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.03);text-align:center}.announcement-icon-wrap{flex-shrink:0;display:flex;align-items:center}.announcement-icon-wrap i{font-size:24px}.announcement-content{display:flex;flex-direction:column;align-items:center;gap:4px}.announcement-title{font-size:14px;font-weight:600;line-height:1.5}.announcement-desc{font-size:13px;font-weight:400;opacity:.8;margin:0;line-height:1.4}.announcement-box.type-info{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3);color:#60a5fa}.announcement-box.type-warning{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3);color:#fbbf24}.announcement-box.type-error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.3);color:#f87171}.announcement-box.type-success{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#34d399}@media (max-width:768px){.announcement-box{max-width:90%;padding:14px 16px}}:root{--sidebar-collapsed-width:72px}.sidebar{width:var(--sidebar-width);height:100vh;height:100dvh;position:fixed;left:0;top:0;z-index:100;background:#1e1e1e;transition:width .3s cubic-bezier(.4,0,.2,1),transform var(--transition-slow);overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed~.main-content{margin-left:var(--sidebar-collapsed-width)}.sidebar-inner{display:flex;flex-direction:column;height:100%;padding:10px 12px;padding-top:calc(10px + var(--safe-top));overflow:hidden}.sidebar-logo{justify-content:space-between;padding:8px 10px 14px;flex-shrink:0;min-height:56px;position:relative}.logo-group,.sidebar-logo{display:flex;align-items:center}.logo-group{gap:10px}.logo-icon{width:42px;height:42px;min-width:42px;background:transparent;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.logo-icon img{width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;transform:scale(1.65)}.logo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff}.logo-text{font-family:var(--font-display);font-size:18px;font-weight:500;color:var(--text-primary);letter-spacing:-.2px;flex:1 1;white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .2s ease}.collapse-btn,.expand-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0;-webkit-tap-highlight-color:transparent}.collapse-btn{font-size:20px}.expand-btn{margin:0 auto;padding:0;width:44px;height:44px;position:relative}.collapse-btn:hover,.expand-btn:hover{background:hsla(0,0%,100%,.08);color:var(--text-primary)}.hover-toggle{mix-blend-mode:screen}.hover-toggle .default-icon{transition:opacity .2s ease,transform .2s ease;opacity:1;transform:scale(1)}.hover-toggle .hover-icon{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;transition:opacity .2s ease,transform .2s ease}.hover-toggle .hover-icon,.hover-toggle:hover .default-icon{opacity:0;transform:scale(.8)}.hover-toggle:hover .hover-icon{opacity:1;transform:scale(1)}.sidebar.collapsed .sidebar-inner{align-items:center;padding:10px 8px}.sidebar.collapsed .sidebar-logo{padding:8px 0 14px;justify-content:center}.sidebar.collapsed .sidebar-top-actions{width:100%}.sidebar.collapsed .sidebar-action-btn{justify-content:center;padding:10px}.sidebar.collapsed .module-list{align-items:center;width:100%}.sidebar.collapsed .module-btn,.sidebar.collapsed .settings-btn{justify-content:center;padding:10px;width:48px;border-radius:50%}.sidebar-top-actions{margin-bottom:8px;flex-shrink:0}.sidebar-action-btn{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:none;border-radius:12px;background:#282a2c;color:#fff;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:14px!important;font-weight:400!important;cursor:pointer;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent}.sidebar-action-btn:hover{background:hsla(0,0%,100%,.12)}.sidebar-action-btn:active{transform:scale(.98)}.sidebar-action-btn i{font-size:20px;width:20px;height:20px;color:var(--text-primary);flex-shrink:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translateZ(0)}.sidebar-section{margin-bottom:6px;flex-shrink:0}.sidebar-section.history-section{flex:1 1;overflow:hidden;display:flex;flex-direction:column;min-height:0;margin-top:8px}.section-title{padding:6px 14px;margin-bottom:4px;color:#ececec;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:12px!important;font-weight:600!important;letter-spacing:.3px;text-transform:none}.module-list{display:flex;flex-direction:column;gap:2px}.module-btn{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:none;border-radius:12px;background:transparent;color:#fff;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:14px!important;font-weight:400!important;cursor:pointer;transition:all var(--transition-fast);text-align:left;-webkit-tap-highlight-color:transparent;min-height:42px}.module-btn:hover{background:hsla(0,0%,100%,.08)}.module-btn:active{transform:scale(.98)}.module-btn.active{background:hsla(0,0%,100%,.05);color:#fff;font-weight:500!important}.module-icon{font-size:20px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#b4b4b4;transition:color var(--transition-fast);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translateZ(0)}.module-btn.active .module-icon{color:#e8e8e8}.module-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1}.history-list{flex:1 1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:1px;padding-right:2px}.history-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 14px;border:none;border-radius:12px;background:transparent;color:#fff;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:13.5px!important;font-weight:500!important;cursor:pointer;transition:all var(--transition-fast);text-align:left;position:relative;flex-shrink:0;min-height:40px;-webkit-tap-highlight-color:transparent}.history-item:hover{background:hsla(0,0%,100%,.06);color:var(--text-primary)}.history-item:active{transform:scale(.98)}.history-item.active{background:hsla(0,0%,100%,.08);color:var(--text-primary)}.history-item .history-title{flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-item .history-delete{display:none;background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;padding:4px 6px;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;line-height:1;align-items:center;justify-content:center}.history-item:hover .history-delete{display:flex}.history-item .history-delete:hover{color:#ef4444;background:rgba(239,68,68,.1)}.history-empty{padding:20px 8px;text-align:center;color:var(--text-muted);font-size:12.5px}.sidebar-footer{flex-shrink:0;padding:8px 0 4px;padding-bottom:calc(4px + var(--safe-bottom));margin-top:auto}.settings-btn{display:flex;align-items:center;gap:14px;width:100%;padding:10px 16px;border:none;border-radius:99px;background:transparent;color:#fff;font-family:var(--font-main);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:left;min-height:42px;-webkit-tap-highlight-color:transparent}.settings-btn:hover{background:hsla(0,0%,100%,.08);color:var(--text-primary)}.settings-btn i{font-size:20px;width:20px;height:20px;color:inherit;transition:transform var(--transition-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translateZ(0)}.settings-btn:hover i{transform:rotate(45deg)}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:99;opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.sidebar-overlay.active{opacity:1;pointer-events:auto}@media (max-width:768px){.sidebar{width:280px;transform:translateX(-100%);z-index:200;box-shadow:8px 0 32px rgba(0,0,0,.4)}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block}.history-item,.module-btn,.settings-btn,.sidebar-action-btn{min-height:46px}.collapse-btn{display:none!important}}.chat-area{flex:1 1;overflow-y:auto;overflow-x:hidden;position:relative;z-index:1;scroll-behavior:smooth;background:var(--bg-primary);-webkit-overflow-scrolling:touch}.messages-container{display:flex;flex-direction:column;padding:20px 0 40px;gap:0}.message{padding:14px 24px;position:relative;animation:fadeIn .35s ease}.message.user-message{background:transparent;animation:slideInRight .35s cubic-bezier(.16,1,.3,1) forwards}.message.user-message .message-inner{justify-content:flex-end}.message.user-message .message-body{display:flex;flex-direction:column;align-items:flex-end;max-width:70%}.message.user-message .message-content{background:#2a2a2a;padding:12px 20px;border-radius:20px 20px 4px 20px;color:var(--text-primary);border:1px solid var(--border-subtle);word-break:break-word;font-size:16px;line-height:1.6}.message.ai-message{background:transparent;animation:slideInLeft .35s cubic-bezier(.16,1,.3,1) forwards}.message.ai-message .message-inner{justify-content:flex-start}.message.ai-message .message-body{max-width:100%}.message-inner{max-width:720px;margin:0 auto;display:flex;align-items:flex-start}.message-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;margin-top:4px;overflow:hidden}.user-message .message-avatar{background:var(--accent-primary);color:#fff}.ai-message .message-avatar{background:var(--bg-secondary);border:1px solid var(--border-subtle);color:#fff}.message-body{flex:1 1;min-width:0}.message-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.message-sender{font-size:12px;font-weight:600;color:var(--text-primary)}.message-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--transition-fast);margin-top:8px}.message:hover .message-actions{opacity:1}.msg-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:5px 8px;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;gap:4px}.msg-action-btn:hover{color:var(--text-primary);background:hsla(0,0%,100%,.06)}.message-content{font-size:16px;line-height:1.6;color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word}.message-content p{margin-bottom:12px}.message-content p:last-child{margin-bottom:0}.message-content ol,.message-content ul{margin:8px 0 12px 20px}.message-content li{margin-bottom:6px}.message-content strong{color:var(--text-primary);font-weight:600}.message-content a{color:var(--accent-secondary);text-decoration:underline;text-underline-offset:3px}.message-content a:hover{color:var(--text-primary)}.message-content blockquote{border-left:3px solid var(--accent-primary);padding:4px 16px;margin:12px 0;background:rgba(124,58,237,.05);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary)}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin:20px 0 10px;font-weight:600;color:var(--text-primary)}.message-content h1{font-size:20px}.message-content h2{font-size:17px}.message-content h3{font-size:15px}.message-content hr{border:none;height:1px;background:var(--border-subtle);margin:18px 0}.message-content table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13.5px}.message-content td,.message-content th{padding:10px 14px;border:1px solid var(--border-subtle);text-align:left}.message-content th{background:hsla(0,0%,100%,.03);font-weight:600}.message-content code{font-family:var(--font-mono);font-size:13px;background:hsla(0,0%,100%,.06);padding:2px 7px;border-radius:5px;color:#e2b4ff}.message-content pre{margin:14px 0;border-radius:var(--radius-md);overflow:hidden;position:relative;border:1px solid var(--border-subtle);background:#0d0d0d!important}.message-content pre code{display:block;padding:16px 18px;overflow-x:auto;background:transparent!important;color:#d1d5db;font-size:13px;line-height:1.65}.code-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:hsla(0,0%,100%,.03);border-bottom:1px solid var(--border-subtle)}.code-lang{font-size:11px;font-weight:600;text-transform:lowercase;color:var(--text-muted);font-family:var(--font-mono)}.copy-code-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-tertiary);font-family:var(--font-main);font-size:11.5px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.copy-code-btn:hover{color:var(--text-primary);background:hsla(0,0%,100%,.06)}.thinking-indicator{padding:8px 24px 16px;animation:msgIn .3s ease}.thinking-inner{max-width:720px;margin:0 auto;display:flex;gap:20px;align-items:flex-start}.thinking-dots{display:flex;gap:6px;padding:16px 0 10px;align-items:center}.thinking-dots span{width:8px;height:8px;border-radius:50%;animation:geminiDot 1.4s ease-in-out infinite;display:inline-block}.thinking-dots span:first-child{animation-delay:0s;background:#7c3aed}.thinking-dots span:nth-child(2){animation-delay:.18s;background:#4285f4}.thinking-dots span:nth-child(3){animation-delay:.36s;background:#10b981}.input-area{padding:8px 24px 16px;padding-bottom:calc(16px + var(--safe-bottom));position:relative;z-index:10;flex-shrink:0;background:linear-gradient(180deg,transparent 0,var(--bg-primary) 30%)}.input-glow-ring{position:relative;max-width:768px;margin:0 auto;border-radius:30px;padding:2px;overflow:hidden;background:hsla(0,0%,100%,.07)}.input-glow-ring:before{content:"";position:absolute;width:1500px;height:1500px;top:50%;left:50%;background:conic-gradient(from 0deg,transparent 0deg,transparent 90deg,#00d4ff 180deg,#7c3aed 270deg,#c4f 330deg,transparent 1turn);opacity:1;animation:spin-beam 6s linear infinite;z-index:0}@keyframes spin-beam{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.input-glow-ring:after{content:"";position:absolute;inset:2px;background:#1e1f20;border-radius:28px;z-index:1}.input-wrapper{position:relative;z-index:2;display:flex;align-items:flex-end;gap:10px;background:transparent;border-radius:26px;padding:12px 16px 12px 24px;transition:all var(--transition-base)}.input-wrapper:focus-within{background:transparent}.chat-input{flex:1 1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-main);font-size:16px;line-height:1.5;resize:none;max-height:200px;padding:12px 0}.chat-input::placeholder{color:var(--text-muted)}.send-btn{width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:#e3e3e3;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);flex-shrink:0;margin-bottom:2px;-webkit-tap-highlight-color:transparent}.send-btn:hover{background:hsla(0,0%,100%,.1)}.send-btn:active{background:hsla(0,0%,100%,.15)}.send-btn:disabled{opacity:.15;background:hsla(0,0%,100%,.15);color:var(--bg-primary);cursor:not-allowed}.send-btn:disabled,.send-btn:disabled:hover{transform:none;box-shadow:none}.input-footer{text-align:center;padding-top:8px;font-size:11px;color:var(--text-muted)}.main-content.empty-state{display:flex;flex-direction:column}.gemini-empty-wrapper{flex:1 1;display:flex;align-items:center;justify-content:center;position:relative;padding:40px 20px;background-color:transparent;overflow:hidden}.gemini-bg-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;height:600px;background:radial-gradient(circle,rgba(124,58,237,.12) 0,rgba(66,133,244,.08) 40%,transparent 70%);z-index:0;pointer-events:none}.gemini-welcome-content{position:relative;z-index:10;max-width:880px;width:100%;text-align:center;animation:scaleIn .5s cubic-bezier(.16,1,.3,1) forwards}.gemini-welcome-icon{width:56px;height:56px;margin:0 auto 24px;display:block;shape-rendering:geometricPrecision}.topbar-upgrade-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;border-radius:100px;border:1px solid rgba(168,85,247,.5);background:rgba(168,85,247,.08);color:#c4b5fd;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .25s ease;letter-spacing:.01em}.topbar-upgrade-btn i{font-size:14px;color:#a855f7}.topbar-upgrade-btn:hover{background:rgba(168,85,247,.18);border-color:rgba(168,85,247,.7);color:#e9d5ff;box-shadow:0 0 16px rgba(168,85,247,.15)}.topbar-upgrade-btn:active{transform:scale(.97)}.gemini-welcome-title{font-family:var(--font-display);font-size:44px;font-weight:400;line-height:1.2;margin-bottom:8px;color:var(--text-primary);letter-spacing:-.5px}.gemini-welcome-subtitle{font-size:16px;color:var(--text-muted);margin-bottom:48px;font-weight:400}.gemini-input-container{margin-bottom:30px;padding:0 10px}.gemini-input-container .input-area{padding:0;background:transparent}.code-artifact-container{background:var(--bg-input);border:1px solid var(--border-medium);border-radius:var(--radius-md);margin:16px 0;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1);display:flex;flex-direction:column}.code-artifact-header{display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary);border-bottom:1px solid var(--border-medium);padding:0 8px}.code-artifact-tabs{display:flex;gap:4px}.artifact-tab{background:transparent;color:var(--text-muted);padding:10px 16px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all var(--transition-fast);border:none;border-bottom:2px solid transparent}.artifact-tab.active,.artifact-tab:hover{color:var(--text-primary)}.artifact-tab.active{border-bottom-color:var(--accent-primary)}.artifact-tab i{font-size:16px}.artifact-copy-btn,.code-artifact-actions{display:flex;align-items:center}.artifact-copy-btn{background:transparent;border:none;color:var(--text-muted);font-size:12px;gap:6px;cursor:pointer;padding:6px 12px;border-radius:var(--radius-sm);transition:all .2s}.artifact-copy-btn:hover{color:var(--text-primary);background:hsla(0,0%,100%,.05)}.code-artifact-body{position:relative;width:100%}.artifact-preview{width:100%;background:#fff}.artifact-code{width:100%;overflow-x:auto}.artifact-code pre{margin:0;padding:16px;background:transparent!important}.artifact-code code{font-family:var(--font-mono);font-size:13px;line-height:1.5}.crafting-indicator{display:flex;align-items:center;gap:12px;padding:8px 0;color:var(--text-primary);font-size:15px;font-weight:500}.crafting-text{transition:opacity .3s ease}.crafting-dots-icon{position:relative;width:20px;height:20px;animation:spin-slow 6s linear infinite}.crafting-dots-icon .dot{position:absolute;width:4px;height:4px;border-radius:50%;background-color:var(--accent-primary);animation:pulse-dot 1.5s ease-in-out infinite alternate}.crafting-dots-icon .dot-top{top:1px;left:8px;animation-delay:0s}.crafting-dots-icon .dot-bottom-left{bottom:2px;left:2px;animation-delay:.5s}.crafting-dots-icon .dot-bottom-right{bottom:2px;right:2px;animation-delay:1s}@keyframes pulse-dot{0%{transform:scale(.6);opacity:.4}to{transform:scale(1.3);opacity:1;background-color:var(--text-primary)}}@keyframes spin-slow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.split-layout-wrapper{display:flex;width:100%;height:100%;overflow:hidden}.chat-column{max-width:50%;border-right:1px solid var(--border-subtle)}.chat-column,.preview-column{flex:1 1;display:flex;flex-direction:column;min-width:0;position:relative}.preview-column{background:var(--bg-secondary);overflow:hidden}.preview-pane-header{height:48px;background:#0d0d0d;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border-subtle)}.preview-pane-title{color:var(--text-primary);font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px}.preview-pane-actions{display:flex;gap:12px}.preview-action-btn{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);padding:4px 12px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all var(--transition-fast)}.preview-action-btn:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}.preview-pane-content{flex:1 1;width:100%;height:100%;position:relative}.preview-iframe{width:100%;height:100%;border:none;background:#fff}.preview-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:12px}@media (max-width:900px){.split-layout-wrapper{flex-direction:column}.chat-column{max-width:100%;flex:1 1;border-right:none;border-bottom:1px solid var(--border-subtle)}.preview-column{flex:1 1;min-height:400px}}@media (max-width:768px){.message{padding:12px 16px}.message-inner{max-width:100%}.message.user-message .message-body{max-width:85%}.message.user-message .message-content{font-size:14.5px;padding:10px 16px;border-radius:18px 18px 4px 18px}.message-content{font-size:14.5px}.message-content pre{border-radius:var(--radius-sm);margin-left:-4px;margin-right:-4px}.message-content pre code{font-size:12px;padding:12px 14px}.thinking-indicator{padding:8px 16px 12px}.input-area{padding:6px 12px 10px;padding-bottom:calc(10px + var(--safe-bottom))}.input-wrapper{padding:6px 8px 6px 16px;border-radius:24px}.chat-input{font-size:14px;padding:8px 0}.send-btn{width:34px;height:34px;font-size:15px}.input-footer{font-size:10px;padding-top:6px}.gemini-empty-wrapper{padding:24px 16px}.gemini-welcome-title{font-size:28px;margin-bottom:6px}.gemini-welcome-subtitle{font-size:13.5px;margin-bottom:32px}.gemini-welcome-icon{font-size:32px;margin-bottom:14px}.message-actions{opacity:.6}}@media (max-width:480px){.gemini-welcome-title{font-size:24px}.gemini-welcome-subtitle{font-size:12.5px}.message{padding:10px 12px}.input-area{padding:4px 10px 8px;padding-bottom:calc(8px + var(--safe-bottom))}.input-wrapper{padding:5px 6px 5px 14px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-16px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(16px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes msgIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes geminiDot{0%{transform:scale(1);opacity:.35}25%{transform:scale(1.6);opacity:1}50%{transform:scale(1);opacity:.35}to{transform:scale(1);opacity:.35}}@keyframes pulseGlow{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.15);opacity:1}}@keyframes inhaleBase{0%{transform:translate(-50%,-50%) scale(1) rotate(0deg);opacity:.8}to{transform:translate(-50%,-50%) scale(.85) rotate(5deg);opacity:.4}}@keyframes inhaleBefore{0%{transform:translate(-50%,-50%) scale(.9) rotate(-10deg);opacity:.5}to{transform:translate(-50%,-50%) scale(1.1) rotate(15deg);opacity:1}}@keyframes inhaleAfter{0%{transform:translate(-50%,-50%) scale(1.1) rotate(10deg);opacity:1}to{transform:translate(-50%,-50%) scale(.85) rotate(-15deg);opacity:.4}}@keyframes infiniteTunnel{0%{transform:translate(-50%,-50%) scale(.01);opacity:0}10%{opacity:.8}80%{opacity:1}to{transform:translate(-50%,-50%) scale(3);opacity:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes slideInFromLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes shimmerLine{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,hsla(0,0%,100%,.03) 25%,hsla(0,0%,100%,.08) 50%,hsla(0,0%,100%,.03) 75%);background-size:200% 100%;animation:shimmerLine 1.5s linear infinite;border-radius:var(--radius-sm)}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes sendPulse{0%{transform:scale(1)}50%{transform:scale(.88)}to{transform:scale(1)}}@keyframes glowPulseAnim{0%{box-shadow:0 0 0 0 rgba(124,58,237,.3)}70%{box-shadow:0 0 0 10px rgba(124,58,237,0)}to{box-shadow:0 0 0 0 rgba(124,58,237,0)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes toastIn{0%{transform:translateY(100px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.hover-lift{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.2)}.modal-container,.sidebar{will-change:transform}.message:first-child{animation-delay:0s}.message:nth-child(2){animation-delay:.04s}.message:nth-child(3){animation-delay:.08s}.message:nth-child(4){animation-delay:.12s}.message:nth-child(5){animation-delay:.16s}*{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;text-rendering:optimizeLegibility!important;font-feature-settings:"cv02","cv03","cv04","cv11"}html{font-optical-sizing:auto;-webkit-text-size-adjust:100%}body{letter-spacing:-.011em}[class*=" ph-"],[class^=ph-],i{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;display:inline-flex;align-items:center;justify-content:center;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;image-rendering:-webkit-optimize-contrast;will-change:auto}svg{shape-rendering:geometricPrecision}img{image-rendering:-webkit-optimize-contrast}@font-face{font-family:__GeistSans_8adcd2;src:url(/_next/static/media/0b78ff376f6b9734-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:__GeistSans_Fallback_8adcd2;src:local("Arial");ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.00%;size-adjust:106.28%}.__className_8adcd2{font-family:__GeistSans_8adcd2,__GeistSans_Fallback_8adcd2}.__variable_8adcd2{--font-geist-sans:"__GeistSans_8adcd2","__GeistSans_Fallback_8adcd2"}@font-face{font-family:__GeistMono_46451f;src:url(/_next/static/media/723e11e5093b8e80.p.woff2) format("woff2");font-display:swap;font-weight:100 900}.__className_46451f{font-family:__GeistMono_46451f,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.__variable_46451f{--font-geist-mono:"__GeistMono_46451f",ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}