@font-face{font-family:__geistSans_1e4310;src:url(/_next/static/media/4473ecc91f70f139-s.p.woff) format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:__geistSans_Fallback_1e4310;src:local("Arial");ascent-override:85.83%;descent-override:20.52%;line-gap-override:9.33%;size-adjust:107.19%}.__className_1e4310{font-family:__geistSans_1e4310,__geistSans_Fallback_1e4310}.__variable_1e4310{--font-geist-sans:"__geistSans_1e4310","__geistSans_Fallback_1e4310"}@font-face{font-family:__geistMono_c3aa02;src:url(/_next/static/media/463dafcda517f24f-s.p.woff) format("woff");font-display:swap;font-weight:100 900}@font-face{font-family:__geistMono_Fallback_c3aa02;src:local("Arial");ascent-override:69.97%;descent-override:16.73%;line-gap-override:7.61%;size-adjust:131.49%}.__className_c3aa02{font-family:__geistMono_c3aa02,__geistMono_Fallback_c3aa02}.__variable_c3aa02{--font-geist-mono:"__geistMono_c3aa02","__geistMono_Fallback_c3aa02"}@tailwind base;@tailwind components;@tailwind utilities;:root{font-family:Segoe UI,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;font-weight:400;color:#111;background-color:#f5f6fb;--surface-border-strong:rgba(0,0,0,.12);--shell-padding:clamp(16px,4vw,24px);--mobile-pad:clamp(10px,4vw,18px);--mobile-radius:clamp(12px,3vw,18px)}*,:after,:before{box-sizing:border-box}body,html{margin:0;background:var(--surface-body);width:100%;min-height:100vh;min-height:100dvh;overflow:hidden;overscroll-behavior:none;touch-action:manipulation;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}.app-shell{--code-block-bg:#e8ebfb;min-height:100vh;padding:calc(var(--shell-padding) + env(safe-area-inset-top, 0)) calc(var(--shell-padding) + env(safe-area-inset-right, 0)) calc(var(--shell-padding) + env(safe-area-inset-bottom, 0)) calc(var(--shell-padding) + env(safe-area-inset-left, 0));background:var(--surface-body);color:var(--text-primary);transition:background .3s ease,color .3s ease;width:100%;display:flex;flex-direction:column;overscroll-behavior:none}@supports (min-height:100svh){.app-shell{min-height:100svh}}@supports (min-height:100dvh){.app-shell{min-height:100dvh}}.app-shell.dark-mode{--surface-body:linear-gradient(135deg,#1a2136,#0e162c 70%);--surface-panel:#151b28;--surface-panel-alt:#0e1420;--surface-border:hsla(0,0%,100%,.08);--surface-border-strong:hsla(0,0%,100%,.3);--surface-sidebar:#0f1624;--text-primary:#eef1f8;--text-muted:#a9b5cd;--accent:#6d8dff;--accent-strong:#8c66ff;--chip-bg:hsla(0,0%,100%,.08);--code-block-bg:hsla(0,0%,100%,.08)}.app-shell.light-mode{--surface-body:radial-gradient(circle at top left,#f8fff6 0%,#e6f6ff 55%,#d9ecff 100%);--surface-panel:#fff;--surface-panel-alt:#f6f7fb;--surface-border:rgba(43,62,102,.15);--surface-border-strong:rgba(64,88,255,.25);--surface-sidebar:#eef1fb;--text-primary:#1a2130;--text-muted:#5a6478;--accent:#4a6bff;--accent-strong:#8841ff;--chip-bg:rgba(64,88,255,.08);--code-block-bg:#e8ebfb}.app-layout{display:flex;min-height:calc(100vh - var(--shell-padding) * 2);gap:24px;background:transparent;overflow:hidden;flex:1 1;width:100%}.login-view{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px}.login-panel{width:min(480px,100%)}.login-card{background:var(--surface-panel);border-radius:28px;padding:32px;border:1px solid var(--surface-border);box-shadow:0 20px 50px rgba(16,25,54,.15);display:flex;flex-direction:column;gap:16px}.login-header{display:flex;justify-content:space-between;align-items:center}.login-header h1{margin:0;font-size:1.8rem;color:var(--text-primary)}.login-subtitle{margin:0;color:var(--text-muted);font-size:.95rem}.login-form{gap:16px}.login-field,.login-form{display:flex;flex-direction:column}.login-field{gap:6px;color:var(--text-primary);font-size:.95rem}.login-field input{border-radius:16px;border:1px solid var(--surface-border);padding:12px 14px;background:var(--surface-panel-alt);color:var(--text-primary);transition:border .2s ease,box-shadow .2s ease}.login-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(64,88,255,.12)}.login-error{color:#e0435c;background:rgba(224,67,92,.14);border-radius:12px;padding:10px 14px;font-size:.9rem}.login-submit{margin-top:4px;border-radius:18px;border:none;padding:12px 0;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.login-submit:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(23,32,66,.2)}.login-submit:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.login-switch{margin-top:12px;display:flex;justify-content:center;gap:6px;font-size:.9rem;color:var(--text-muted)}.login-switch-button{border:none;background:none;color:var(--accent);cursor:pointer;font-weight:600;padding:0}.login-switch-button:hover{text-decoration:underline}.sidebar{position:relative;width:300px;background:var(--surface-sidebar);border:1px solid var(--surface-border);display:flex;transition:width .3s ease;padding:64px 24px 24px;border-radius:20px;box-shadow:0 2px 6px rgba(0,10px,10px,.12);overflow:hidden;max-height:calc(100vh - var(--shell-padding) * 2)}.sidebar-collapsed-actions{display:none}.collapsed-icon-button{width:44px;height:44px;border-radius:14px;border:1px solid var(--surface-border);background:var(--surface-panel);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:background .2s ease,transform .2s ease}.collapsed-icon-button:hover{background:var(--chip-bg);transform:translateY(-1px)}.sidebar.collapsed .sidebar-collapsed-actions{display:flex;flex-direction:column;gap:14px;position:relative;margin-top:90px;align-items:center;padding-bottom:12px}.sidebar-body{display:flex;flex-direction:column;gap:24px;width:100%;flex:1 1;overflow:hidden;min-height:0;overflow-y:auto}.sidebar.collapsed{width:72px;padding:64px 12px 24px}.sidebar.collapsed .delete-session-button,.sidebar.collapsed .session-info,.sidebar.collapsed .sidebar-controls,.sidebar.collapsed .sidebar-head-actions,.sidebar.collapsed .sidebar-title,.sidebar.collapsed .sidebar-title-group{opacity:0;pointer-events:none}.sidebar.collapsed .sidebar-body{display:none}.sidebar-head{justify-content:space-between;padding-bottom:8px}.sidebar-head,.sidebar-title-group{display:flex;align-items:center;gap:6px}.sidebar-head-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.sidebar-title{margin:0;font-size:1.5rem;line-height:1;letter-spacing:.005em}.icon-button{width:36px;height:36px;border-radius:12px;border:1px solid var(--surface-border);background:var(--surface-panel);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;font-size:1.1rem;padding:0}.icon-button:hover{background:var(--chip-bg)}.icon-img{width:22px;height:22px;object-fit:contain}.icon-img.small{width:18px;height:18px}.app-shell.dark-mode .arrow-icon-left,.app-shell.dark-mode .icon-img.small{filter:brightness(0) invert(1)}.arrow-icon-left{filter:invert(16%) sepia(7%) saturate(1296%) hue-rotate(182deg) brightness(92%) contrast(90%)}.arrow-icon-right{filter:brightness(0) invert(1)}.settings-icon{filter:invert(60%) sepia(15%) saturate(800%) hue-rotate(220deg) brightness(92%) contrast(90%)}.app-shell.dark-mode .settings-icon{filter:invert(84%) sepia(9%) saturate(300%) hue-rotate(206deg) brightness(96%) contrast(92%)}.sun-icon{filter:invert(65%) sepia(54%) saturate(1200%) hue-rotate(-8deg) brightness(102%) contrast(95%)}.moon-icon{filter:invert(77%) sepia(66%) saturate(461%) hue-rotate(2deg) brightness(97%) contrast(98%)}.app-shell.dark-mode .moon-icon,.app-shell.dark-mode .sun-icon{filter:invert(83%) sepia(56%) saturate(562%) hue-rotate(354deg) brightness(102%) contrast(98%)}.icon-button:active .arrow-icon,.sidebar-toggle:active .arrow-icon{filter:invert(51%) sepia(67%) saturate(2205%) hue-rotate(205deg) brightness(95%) contrast(101%)}.icon-button:active,.sidebar-toggle:active{background:linear-gradient(135deg,rgba(74,107,255,.18),rgba(136,65,255,.18));border-color:var(--surface-border-strong)}.sidebar-toggle{position:absolute;top:18px;left:18px;width:38px;height:38px;border-radius:14px;border:1px solid var(--surface-border);background:var(--surface-panel);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;z-index:2}.sidebar-toggle:hover{background:var(--chip-bg);transform:scale(1.05)}.sidebar.collapsed .sidebar-toggle{background:var(--accent);color:#fff;transform:none}.sidebar-controls{display:flex;flex-direction:column;gap:12px}.history-actions{display:flex;flex-direction:column;gap:10px}.sidebar-button{border:none;border-radius:12px;padding:12px 16px;background:var(--surface-panel);color:var(--text-primary);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;text-align:left;display:inline-flex;align-items:center;gap:8px}.sidebar-button:hover{background:var(--accent);color:#fff;transform:translateY(-1px)}.sidebar-button.secondary{border:1px dashed var(--surface-border);background:transparent;color:var(--text-muted)}.sidebar-button.secondary:hover{background:var(--chip-bg);color:var(--text-primary)}.sidebar-button.secondary:disabled{opacity:.45;cursor:not-allowed;transform:none}.session-list{list-style:none;margin:0;padding:0;flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.session-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;border:1px solid var(--surface-border);cursor:pointer;transition:background .2s ease,border .2s ease}.session-item:hover{background:var(--surface-panel);border-color:var(--surface-border)}.session-item.active{background:rgba(109,141,255,.15);border-color:var(--accent)}.sidebar.collapsed .session-item{justify-content:center;gap:0;padding:6px 0;width:100%}.sidebar.collapsed .session-item,.sidebar.collapsed .session-item:hover{background:transparent!important;border:none!important}.sidebar.collapsed .session-item:before{display:none}.sidebar.collapsed .session-item.active{background:transparent!important;border:none!important}.sidebar.collapsed .session-item.active:before{display:none}.session-info{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:0}.session-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-count{font-size:.75rem;color:var(--text-muted);background:var(--chip-bg);padding:2px 8px;border-radius:999px;align-self:flex-start}.delete-session-button{border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:4px;font-size:1.2rem;transition:color .2s ease;display:inline-flex;align-items:center;justify-content:center}.delete-session-button:hover{color:#ff7474}.delete-session-button:hover .icon-img{filter:invert(29%) sepia(78%) saturate(2782%) hue-rotate(341deg) brightness(89%) contrast(95%)}.chat-panel{flex:1 1;display:flex;flex-direction:column;padding:calc(14px + env(safe-area-inset-top, 0)) 20px calc(14px + env(safe-area-inset-bottom, 0));background:var(--surface-panel);border-radius:24px;border:1px solid var(--surface-border);box-shadow:0 25px 65px rgba(0,10px,10px,.12);max-height:calc(100vh - var(--shell-padding) * 2);overflow:hidden;gap:6px}.chat-header{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:calc(4px + env(safe-area-inset-top, 0)) 0 2px 10px;margin-bottom:5px}.chat-session-meta{flex:1 1;min-width:0;width:100%}.chat-session-title{margin:0;font-size:1.05rem}.chat-session-instruction{margin:2px 0 0;color:var(--text-muted);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%}.chat-header-actions{display:flex;align-items:center;gap:12px}.clear-history-button{border:1px solid var(--surface-border);background:transparent;color:var(--text-primary);border-radius:12px;padding:8px 14px;cursor:pointer;transition:background .2s ease}.clear-history-button:hover{background:var(--chip-bg)}.clear-history-button:disabled{opacity:.4;cursor:not-allowed}.chat-window{flex:1 1;overflow-y:auto;padding:16px;scroll-padding-bottom:120px;border-radius:16px;background:var(--surface-panel-alt);border:1px solid var(--surface-border);margin-bottom:10px;height:clamp(480px,72vh,780px);max-height:clamp(680px,72vh,780px);scrollbar-width:thin;scrollbar-color:rgba(64,88,255,.35) transparent;overscroll-behavior:contain}.chat-window::-webkit-scrollbar{width:8px}.chat-window::-webkit-scrollbar-track{background:transparent;border-radius:999px}.chat-window::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,rgba(64,88,255,.4),rgba(136,65,255,.6));border:2px solid transparent;background-clip:padding-box}.chat-window:hover::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent),var(--accent-strong));border:2px solid transparent;background-clip:padding-box}.empty-state{text-align:center;color:var(--text-muted);padding:48px 16px}.message-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;overflow:visible}.message{display:flex;gap:16px;padding:16px;border-radius:16px;background:var(--surface-panel);border:1px solid var(--surface-border);width:-moz-fit-content;width:fit-content;max-width:min(85%,720px);align-self:flex-start}.message.has-code{background:var(--surface-panel-alt);border-color:var(--surface-border-strong)}.message.user{border-color:rgba(64,88,255,.4);background:rgba(64,88,255,.08);margin-left:auto;align-self:flex-end}.message.model{width:-moz-fit-content;width:fit-content;max-width:min(98%,1960px);align-self:flex-start;box-sizing:border-box}.message.model.is-error{border-color:rgba(224,67,92,.45);background:rgba(224,67,92,.08);color:#c53030}.message-role{font-weight:600;min-width:60px;color:var(--text-muted)}.message-role:empty{display:none}.message-content{flex:1 1;color:var(--text-primary);word-break:break-word;overflow-wrap:anywhere}.message.model.is-error .message-content{color:inherit}.message.model.is-error .message-content,.message.model.is-error .message-content *{color:#e0435c!important}.message-content p{margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-content ol,.message-content ul{margin:0 0 12px;padding-left:0;list-style-position:inside}.message-content code,.message-content pre{white-space:pre-wrap;word-break:break-word}.message-content.with-code pre{margin:12px 0;padding:12px;border-radius:14px;background:var(--code-block-bg,#e8ebfb);border:1px solid var(--surface-border);overflow-x:auto}.message-content.with-code code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;padding:0;border-radius:0;background:transparent;border:none}.message.thinking{background:transparent;border:none;padding:0;width:auto;min-width:220px}.message.thinking .message-role{display:none}.message.thinking .message-content{flex:1 1;min-width:200px}.thinking-indicator{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:var(--surface-panel);border:1px dashed var(--surface-border);min-width:200px}.thinking-spinner{width:14px;height:14px;border-radius:50%;border-bottom:2px solid transparent;border-right:2px solid transparent;border-top:2px solid transparent;border-top-color:var(--accent);border-left:2px solid transparent;border-left-color:var(--accent);animation:spin .9s linear infinite}.thinking-text{color:var(--text-muted);font-size:.95rem;letter-spacing:.02em;animation:thinkingPulse 1.3s ease-in-out infinite}.chat-status{min-height:0;margin:0;padding:0;color:var(--text-muted)}.status{display:inline-flex;align-items:center;gap:6px;opacity:.92;transition:color .85s ease-in-out,background .85s ease-in-out,border-color .85s ease-in-out,opacity .85s ease-in-out}.status.loading{color:var(--accent);opacity:1}.status.error{color:#ff6464;opacity:1}.status.warning{padding:6px 12px;border-radius:16px;background:rgba(255,194,82,.15);color:#d97706;font-weight:600}.composer{margin-top:0;border:2px solid var(--surface-border-strong);border-radius:20px;background:var(--surface-panel);padding:0;box-shadow:0 10px 30px rgba(40,52,84,.15);position:-webkit-sticky;position:sticky;bottom:calc(env(safe-area-inset-bottom, 0) + 8px);z-index:5}.composer-field{position:relative;display:flex;align-items:center}.composer-input{flex:1 1;border:none;border-radius:20px;resize:none;padding:16px 120px 16px 20px;background:transparent;color:var(--text-primary);min-height:48px;line-height:1.5;overflow-y:auto;max-height:220px;font-size:16px}.composer-input:disabled{opacity:.6}.send-button{position:absolute;right:16px;top:50%;transform:translateY(-50%);padding:8px 22px;border-radius:999px;border:none;background:linear-gradient(120deg,var(--accent),var(--accent-strong));color:#fff;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.send-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:rgba(9,15,37,.65);display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--surface-panel);border-radius:26px;padding:32px;width:min(480px,92vw);border:1px solid hsla(0,0%,100%,.08);display:flex;flex-direction:column;gap:18px;box-shadow:0 35px 80px rgba(15,24,66,.35);position:relative;overflow:hidden}.modal:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top,rgba(136,65,255,.12),transparent 50%);pointer-events:none}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--surface-border)}.modal-close{width:34px;height:34px;border-radius:12px;border:none;background:var(--chip-bg);font-size:1.1rem;cursor:pointer;color:var(--text-primary);transition:background .2s ease,color .2s ease,filter .2s ease;display:inline-flex;align-items:center;justify-content:center}.app-shell.dark-mode .modal-close:hover .icon-img,.modal-close:hover .icon-img{filter:invert(29%) sepia(78%) saturate(2782%) hue-rotate(341deg) brightness(89%) contrast(95%)}.modal-body{gap:16px}.modal-body,.modal-field{display:flex;flex-direction:column}.modal-field{gap:8px;color:var(--text-primary);font-size:.95rem}.modal-field input,.modal-field textarea{border-radius:16px;border:1px solid var(--surface-border);padding:12px 14px;background:var(--surface-panel-alt);color:var(--text-primary);transition:border .2s ease,box-shadow .2s ease}.modal-field input:focus,.modal-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(64,88,255,.12)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.modal-actions button{border-radius:16px;border:none;padding:10px 22px;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,opacity .15s ease}.modal-actions button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(23,32,66,.25)}.modal.confirm .modal-actions button{background:var(--surface-panel);color:var(--text-primary);border:1px solid var(--surface-border)}.modal.confirm .modal-actions button.danger{background:linear-gradient(135deg,#ff4b4b,#d9234f);color:#fff;border:none}.modal.confirm .modal-actions button.danger:hover{box-shadow:0 16px 30px rgba(217,35,79,.35)}.clear-history-button,.collapsed-icon-button,.composer-send,.delete-session-button,.icon-button,.logout-button,.modal-actions button,.send-button,.sidebar-button,.sidebar-toggle{min-width:44px;min-height:44px;touch-action:manipulation}.modal-actions .logout-button{background:linear-gradient(135deg,#ff4b4b,#d9234f);color:#fff;font-weight:600}.modal-actions .logout-button:hover{box-shadow:0 16px 30px rgba(217,35,79,.35)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes thinkingPulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}@media (max-width:960px){body,html{margin:0;padding:0;overflow:hidden;position:fixed;overscroll-behavior:none;-webkit-text-size-adjust:100%}.app-shell,body,html{width:100%;height:100dvh}.app-shell{display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);background-color:var(--surface-bg)}.app-shell:before{display:none}.app-layout{display:flex;flex-direction:column;flex:1 1;overflow:hidden;gap:0;position:relative;width:100%;height:100%}.sidebar{width:100%!important;border-right:none;border-bottom:1px solid var(--surface-border);flex-shrink:0;background:var(--surface-panel);z-index:50;transition:max-height .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease;display:flex;flex-direction:column}.sidebar.collapsed{height:auto;max-height:60px;padding:8px 12px;flex-direction:row;align-items:center;justify-content:space-between;overflow:visible}.sidebar.collapsed .sidebar-body{display:none}.sidebar.collapsed .sidebar-toggle{display:none!important}.sidebar.collapsed .sidebar-collapsed-actions{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;margin:0;padding:0}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button{flex:0.8 1;min-height:40px;border-radius:12px;border:1px solid var(--surface-border);background:var(--surface-panel);display:flex;align-items:center;justify-content:center;padding:0}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button[aria-label*="Start new chat"]{flex:1.6 1}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button:first-child{background:var(--accent);border-color:var(--accent);color:#fff}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button:first-child .arrow-icon{filter:brightness(0) invert(1)}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button:first-child:active .arrow-icon{filter:brightness(0) invert(1)!important}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button img{width:20px;height:20px;opacity:.8}.sidebar.collapsed .sidebar-collapsed-actions .collapsed-icon-button:first-child img{opacity:1}.app-shell:not(.dark-mode) .sidebar.collapsed .icon-img:not(.sun-icon):not(.moon-icon):not(.settings-icon){filter:brightness(0);opacity:.65}.app-shell:not(.dark-mode) .sidebar.collapsed .sun-icon{filter:invert(65%) sepia(54%) saturate(1200%) hue-rotate(-8deg) brightness(102%) contrast(95%);opacity:1}.app-shell:not(.dark-mode) .sidebar.collapsed .moon-icon{filter:invert(77%) sepia(66%) saturate(461%) hue-rotate(2deg) brightness(97%) contrast(98%);opacity:1}.app-shell:not(.dark-mode) .sidebar.collapsed .settings-icon{filter:invert(60%) sepia(15%) saturate(800%) hue-rotate(220deg) brightness(92%) contrast(90%);opacity:1}.app-shell.dark-mode .sidebar.collapsed .icon-img.moon-icon,.app-shell.dark-mode .sidebar.collapsed .icon-img.sun-icon{filter:invert(83%) sepia(56%) saturate(562%) hue-rotate(354deg) brightness(102%) contrast(98%)}.app-shell.dark-mode .sidebar.collapsed .icon-img.settings-icon{filter:invert(84%) sepia(9%) saturate(300%) hue-rotate(206deg) brightness(96%) contrast(92%)}.app-shell.dark-mode .sidebar.collapsed .icon-img{filter:brightness(0) invert(1)}.sidebar:not(.collapsed){position:absolute;top:0;left:0;right:0;max-height:85vh;height:auto;box-shadow:0 10px 30px rgba(0,0,0,.2);border-radius:0 0 24px 24px;padding:16px;display:flex;flex-direction:column}.sidebar:not(.collapsed) .sidebar-toggle{display:flex!important;position:absolute!important;top:16px;right:16px;left:auto;margin:0;width:36px;height:36px;background:transparent;border:1px solid var(--surface-border);align-items:center;justify-content:center;z-index:10}.sidebar:not(.collapsed) .sidebar-toggle img{width:20px;height:20px;opacity:.7;filter:brightness(0)}.app-shell.dark-mode .sidebar:not(.collapsed) .sidebar-toggle img{filter:brightness(0) invert(1)}.sidebar:not(.collapsed) .sidebar-button{width:100%;justify-content:center;background:var(--surface-panel-alt);border:1px solid var(--surface-border);margin-bottom:8px}.sidebar:not(.collapsed) .sidebar-head{padding-right:48px}.sidebar:not(.collapsed) .sidebar-collapsed-actions{display:none}.chat-panel{flex:1 1;display:flex;flex-direction:column;min-height:0;background:var(--surface-bg);padding:0;width:100%;position:relative}.app-layout:has(.sidebar:not(.collapsed)):after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.chat-header{display:none}.chat-window{flex:1 1;width:100%;overflow-y:auto;padding:16px 16px 90px;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;border:none;border-radius:0}.message{max-width:100%;margin-bottom:16px}.message.user{max-width:85%;margin-left:auto}.message.model{max-width:100%;padding-right:12px}.composer{flex-shrink:0;width:100%;background:var(--surface-panel);border-top:1px solid var(--surface-border);padding:10px 12px calc(10px + env(safe-area-inset-bottom, 0));position:absolute;bottom:0;left:0;right:0;z-index:30}.composer-field{display:flex;align-items:flex-end;gap:8px;width:100%;position:relative}.composer-input{flex:1 1;min-height:44px;max-height:120px;padding:10px 16px;font-size:16px;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:22px;outline:none;resize:none}.composer-input:focus{border-color:var(--accent)}.send-button{position:static!important;transform:none!important;top:auto!important;right:auto!important;width:44px;height:44px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-overlay{z-index:999;padding:20px;align-items:center}.modal{width:100%;max-width:100%;max-height:90dvh;border-radius:20px}.login-view{padding:20px;justify-content:center}.login-card{width:100%;box-shadow:none;border:1px solid var(--surface-border)}}