:root{color-scheme:dark;--canvas:#0d1015;--canvas-rgb:13,16,21;--sidebar:#0c0f14;--surface:#151a22;--surface-raised:#1a1f27;--surface-soft:#11151b;--surface-hover:#1d222a;--border:#2b313c;--border-soft:#202631;--text:#f2f3f5;--text-soft:#c9cdd4;--muted:#858c98;--muted-strong:#a6acb6;--accent:#ef5b4f;--accent-hover:#fa685c;--accent-soft:#ff8d81;--accent-contrast:#fff;--danger:#ef5b4f;--shadow:0 24px 80px rgba(0,0,0,0.26);--sidebar-width:clamp(292px,22.8vw,332px);--font-sans:"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}:root[data-theme=light]{color-scheme:light;--canvas:#ffffff;--canvas-rgb:255,255,255;--sidebar:#f5f6f8;--surface:#ffffff;--surface-raised:#f5f6f8;--surface-soft:#fafbfc;--surface-hover:#eef0f3;--border:#dfe2e7;--border-soft:#e9ebef;--text:#171a20;--text-soft:#3e444d;--muted:#787f89;--muted-strong:#5f6670;--shadow:0 24px 80px rgba(35,42,52,0.12)}*{box-sizing:border-box}body,html{width:100%;min-height:100%}body,html{background:var(--canvas)}body{margin:0;overflow:hidden;color:var(--text);font-family:var(--font-sans);font-size:15px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{color:inherit;font:inherit}button,select{-webkit-tap-highlight-color:transparent}button{border:0}a,button,select{outline:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:inherit;text-decoration:none}::selection{background:rgba(239,91,79,.28)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.route-loading{min-height:100dvh;display:grid;place-items:center;align-content:center;grid-gap:22px;gap:22px;background:var(--canvas)}.route-loading__line{width:112px;height:2px;overflow:hidden;border-radius:999px;background:var(--border);position:relative}.route-loading__line:after{content:"";position:absolute;inset:0 auto 0 0;width:45%;background:var(--accent);animation:loading-line 1.1s ease-in-out infinite alternate}@keyframes loading-line{0%{transform:translateX(-20%)}to{transform:translateX(160%)}}.brand-logo{display:inline-flex;align-items:center;gap:13px;min-width:0;color:var(--text)}.brand-logo__mark{width:38px;height:38px;flex:0 0 auto}.brand-logo__wordmark{font-size:18px;font-weight:720;letter-spacing:.015em;white-space:nowrap}.brand-logo--compact{gap:10px}.brand-logo--compact .brand-logo__mark{width:32px;height:32px}.brand-logo--compact .brand-logo__wordmark{font-size:16px}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);color:var(--text-soft);cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease,transform .16s ease}.icon-button:hover{color:var(--text);border-color:var(--muted);background:var(--surface-hover)}.icon-button:active{transform:scale(.97)}.danger-button,.primary-button,.secondary-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 22px;border-radius:11px;font-size:15px;font-weight:650;cursor:pointer;transition:background .16s ease,transform .16s ease,border-color .16s ease}.primary-button{background:var(--accent);color:var(--accent-contrast);box-shadow:0 10px 28px rgba(239,91,79,.17)}.primary-button:hover{background:var(--accent-hover)}.danger-button:active,.primary-button:active,.secondary-button:active{transform:scale(.99)}.primary-button:disabled{cursor:wait;opacity:.74}.secondary-button{border:1px solid var(--border);background:var(--surface-raised);color:var(--text)}.danger-button{background:var(--danger);color:white}.login-page{min-height:100dvh;padding:30px 40px;position:relative;overflow:auto;background:radial-gradient(circle at 52% 43%,rgba(35,40,50,.23),transparent 34%),var(--canvas)}:root[data-theme=light] .login-page{background:var(--canvas)}.login-page__header{display:flex;align-items:center;justify-content:space-between}.login-panel{width:min(400px,calc(100vw - 40px));margin:clamp(116px,16vh,170px) auto 64px}.login-panel__heading{margin-bottom:38px}.login-panel__heading h1{margin:0;font-size:clamp(29px,2.3vw,34px);line-height:1.2;letter-spacing:-.035em;font-weight:690}.login-panel__heading p{margin:13px 0 0;color:var(--muted);font-size:16px;line-height:1.6}.login-form{display:grid;grid-gap:26px;gap:26px}.field{display:grid;grid-gap:10px;gap:10px}.field__label{color:var(--text-soft);font-size:14px;font-weight:560}.field__control{min-height:58px;display:flex;align-items:center;gap:12px;padding:0 17px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);color:var(--muted);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.field__control:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(239,91,79,.1);background:var(--surface)}.field__control input{min-width:0;flex:1 1;height:54px;padding:0;border:0;outline:0;background:transparent;color:var(--text);font-size:15px}.field__control input::placeholder{color:var(--muted)}.field__visibility{min-width:42px;padding:7px 0;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.field__visibility:hover{color:var(--text)}.checkbox{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:10px;color:var(--text-soft);font-size:14px;cursor:pointer}.checkbox input{position:absolute;opacity:0;pointer-events:none}.checkbox__box{width:20px;height:20px;display:grid;place-items:center;border:1px solid var(--muted);border-radius:5px;color:var(--accent-contrast);background:transparent}.checkbox input:checked+.checkbox__box{border-color:var(--accent);background:var(--accent)}.checkbox input:focus-visible+.checkbox__box{outline:2px solid var(--accent);outline-offset:2px}.form-error{min-height:18px;margin:-15px 0 -12px;color:var(--danger);font-size:13px}.login-form__submit{width:100%;min-height:57px;margin-top:1px;font-size:16px}.spinner{width:17px;height:17px;border:2px solid rgba(255,255,255,.45);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.settings-page{height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--canvas)}.settings-topbar{min-height:78px;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;grid-gap:16px;gap:16px;padding:15px 28px;border-bottom:1px solid var(--border-soft);background:rgba(var(--canvas-rgb),.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.settings-topbar .brand-logo{justify-self:center}.settings-topbar .theme-toggle{justify-self:end}.settings-scroll{min-height:0;flex:1 1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.settings-form{width:min(820px,calc(100% - 48px));margin:0 auto;padding:60px 0 72px}.settings-heading{margin-bottom:52px}.settings-heading h1{margin:0;font-size:clamp(32px,4vw,44px);line-height:1.12;letter-spacing:-.045em;font-weight:700}.settings-heading p{max-width:620px;margin:14px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.settings-section{padding:38px 0 44px;border-top:1px solid var(--border)}.settings-section__heading{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:start;grid-gap:15px;gap:15px;margin-bottom:30px}.settings-section__icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--text-soft)}.settings-section__heading h2{margin:1px 0 5px;font-size:19px;line-height:1.35;letter-spacing:-.02em}.settings-section__heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px 20px;gap:24px 20px}.settings-field{min-width:0;display:grid;grid-gap:9px;gap:9px}.settings-field--wide{grid-column:1/-1}.settings-field>span{color:var(--text-soft);font-size:13px;font-weight:580}.settings-field input,.settings-field textarea{width:100%;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--surface-soft);color:var(--text);font-family:inherit;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.settings-field input{height:50px;padding:0 15px}.settings-field textarea{min-height:128px;resize:vertical;padding:13px 15px;line-height:1.65}.settings-field input:focus,.settings-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(239,91,79,.1);background:var(--surface)}.settings-field input::placeholder,.settings-field textarea::placeholder{color:var(--muted)}.settings-field small{color:var(--muted);font-size:11px;line-height:1.5}.connection-state{min-height:56px;display:flex;align-items:center;gap:10px;margin-top:24px;padding:8px 9px 8px 15px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--muted-strong);font-size:13px}.connection-state__dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--muted)}.connection-state--testing .connection-state__dot{background:#e9ae4a;box-shadow:0 0 0 4px rgba(233,174,74,.12)}.connection-state--success .connection-state__dot{background:#42b77b;box-shadow:0 0 0 4px rgba(66,183,123,.12)}.connection-state--error .connection-state__dot{background:var(--danger);box-shadow:0 0 0 4px rgba(239,91,79,.12)}.connection-state>span:nth-child(2){min-width:0;flex:1 1}.connection-state button{min-height:39px;flex:0 0 auto;padding:0 13px;font-size:12px}.connection-state button:disabled,.settings-actions button:disabled{cursor:not-allowed;opacity:.62}.settings-readonly{min-height:64px;display:grid;grid-template-columns:minmax(150px,1fr) auto minmax(230px,1fr);align-items:center;grid-gap:18px;gap:18px;margin-top:26px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:10px;background:var(--surface-soft)}.settings-readonly>span{display:inline-flex;align-items:center;gap:9px;color:var(--text-soft);font-size:13px;font-weight:580}.settings-readonly strong{color:var(--muted-strong);font-size:13px}.settings-readonly small{color:var(--muted);font-size:11px;line-height:1.5;text-align:right}.settings-error{min-height:20px;margin:0 0 10px;color:var(--danger);font-size:13px}.settings-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid var(--border)}.settings-actions button{min-height:48px;padding:0 20px;font-size:14px}.app-shell{overflow:hidden;background:var(--canvas)}.app-shell,.sidebar{height:100dvh;display:flex}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);flex-direction:column;padding:28px 20px 18px;position:relative;z-index:30;border-right:1px solid var(--border-soft);background:var(--sidebar)}.sidebar__header{min-height:49px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 10px}.sidebar__close{display:none}.sidebar__mobile-actions{display:none;align-items:center;gap:7px}.new-chat-button{width:100%;min-height:52px;margin-top:30px;font-size:16px}.thread-list{min-height:0;flex:1 1;margin-top:38px;overflow-y:auto;scrollbar-width:thin}.thread-list__label{display:flex;align-items:center;gap:12px;margin:0 8px 12px;color:var(--muted);font-size:13px}.thread-list__label:after{content:"";height:1px;flex:1 1;background:var(--border-soft)}.thread-row{min-height:52px;display:flex;align-items:center;padding:3px 6px 3px 10px;position:relative;border:1px solid transparent;border-radius:10px;transition:border-color .16s ease,background .16s ease}.thread-row+.thread-row{margin-top:4px}.thread-row:before{content:"";width:3px;height:28px;position:absolute;left:-1px;border-radius:0 3px 3px 0;background:transparent}.thread-row--active{border-color:var(--border);background:var(--surface-raised)}.thread-row--active:before{background:var(--accent)}.thread-row__select{min-width:0;min-height:42px;display:flex;flex:1 1;align-items:center;gap:12px;padding:0;background:transparent;color:var(--text-soft);text-align:left;cursor:pointer}.thread-row__select span{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.thread-row--active .thread-row__select{color:var(--text)}.thread-row__more{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;opacity:0}.thread-row--active .thread-row__more,.thread-row:hover .thread-row__more,.thread-row__more:focus-visible{opacity:1}.thread-row__more:hover{color:var(--text);background:var(--surface-hover)}.thread-row__rename{width:calc(100% - 38px);height:36px;padding:0 9px;border:1px solid var(--accent);border-radius:7px;outline:0;background:var(--canvas);color:var(--text);font-size:14px}.context-menu{min-width:158px;padding:6px;position:absolute;z-index:60;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);box-shadow:var(--shadow)}.context-menu button{width:100%;min-height:39px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:7px;background:transparent;color:var(--text-soft);font-size:13px;text-align:left;cursor:pointer}.context-menu button:hover{background:var(--surface-hover);color:var(--text)}.context-menu .context-menu__danger{color:var(--danger)}.thread-row__menu{top:44px;right:4px}.account{padding-top:16px;position:relative;border-top:1px solid var(--border-soft)}.account__button{width:100%;min-height:62px;display:flex;align-items:center;gap:12px;padding:5px 8px;border-radius:10px;background:transparent;color:var(--text-soft);text-align:left;cursor:pointer}.account__button:hover{background:var(--surface-hover)}.account__avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--border);border-radius:50%;background:linear-gradient(145deg,var(--surface-raised),var(--border));color:var(--text);font-size:16px;font-weight:680}.account__identity{min-width:0;display:grid;flex:1 1;grid-gap:3px;gap:3px}.account__identity small,.account__identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account__identity strong{color:var(--text);font-size:14px;font-weight:580}.account__identity small{color:var(--muted);font-size:12px}.account__menu{right:0;bottom:68px}.sidebar-scrim{display:none}.chat-main{min-width:0;height:100dvh;flex:1 1;flex-direction:column;background:var(--canvas)}.chat-main,.chat-topbar{display:flex;position:relative}.chat-topbar{height:104px;align-items:flex-start;gap:14px;flex:0 0 auto;padding:27px 31px;z-index:15;background:linear-gradient(to bottom,var(--canvas) 72%,rgba(var(--canvas-rgb),0))}.model-selector{min-width:164px;height:48px;display:inline-flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);color:var(--text-soft);transition:border-color .16s ease,background .16s ease}.model-selector:focus-within,.model-selector:hover{border-color:var(--muted);background:var(--surface-hover)}.model-selector select{min-width:0;height:100%;flex:1 1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;outline:0;background:transparent;color:var(--text);font-size:14px;font-weight:560;cursor:pointer}.model-selector option{background:var(--surface);color:var(--text)}.chat-topbar>.theme-toggle{margin-left:auto}.mobile-brand,.mobile-menu{display:none}.conversation-scroll{min-height:0;flex:1 1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.conversation{width:min(1040px,calc(100% - 64px));min-height:100%;display:flex;flex-direction:column;gap:28px;margin:0 auto;padding:23px 0 40px}.message{width:100%}.message--user{display:flex;justify-content:flex-end;padding-left:25%}.user-bubble{max-width:610px;padding:18px 20px 12px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface-raised);color:var(--text);box-shadow:0 10px 28px rgba(0,0,0,.05)}.user-bubble>p{margin:0;font-size:15px;line-height:1.65}.user-bubble__time{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:8px;color:var(--muted);font-size:11px}.message--assistant{display:grid;grid-template-columns:52px minmax(0,760px);grid-gap:19px;gap:19px;justify-content:start}.assistant-mark{width:47px;height:47px;display:grid;place-items:center;margin-top:1px;border:1px solid var(--border);border-radius:50%;background:var(--surface-soft)}.assistant-mark .brand-logo__mark{width:30px;height:30px}.assistant-content{min-width:0;padding-top:5px}.message-rich__prose{color:var(--text-soft);font-size:15px;line-height:1.78}.message-rich__prose p{margin:0 0 13px}.message-rich__prose h3{margin:25px 0 11px;color:var(--text);font-size:16px;line-height:1.5;font-weight:680}.message-rich__prose>:first-child{margin-top:0}.message-rich__list{margin:0 0 17px;padding-left:24px;color:var(--text-soft)}.message-rich__list li{padding-left:4px;margin:7px 0}.message-rich__list li::marker{color:var(--muted-strong)}.code-block{margin:20px 0 15px;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.code-block__header{min-height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 14px;border-bottom:1px solid var(--border-soft);background:var(--surface-raised);color:var(--muted);font-family:var(--font-mono);font-size:12px}.code-block__header button{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:transparent;color:var(--muted-strong);cursor:pointer}.code-block__header button:hover{background:var(--surface-hover);color:var(--text)}.code-block pre{margin:0;padding:17px 16px 19px;overflow-x:auto;color:#cad0da;font:13px/1.65 var(--font-mono);-moz-tab-size:2;tab-size:2}:root[data-theme=light] .code-block pre{color:#303744}.streaming-caret{width:7px;height:17px;display:inline-block;margin:1px 0 -3px 2px;border-radius:1px;background:var(--accent);animation:caret .8s step-end infinite}@keyframes caret{50%{opacity:0}}.message-stopped{width:-moz-fit-content;width:fit-content;margin:14px 0 0;padding:5px 9px;border-radius:6px;background:var(--surface-raised);color:var(--muted);font-size:11px}.message-actions{min-height:31px;display:flex;align-items:center;gap:3px;margin-top:8px;color:var(--muted);font-size:11px}.message-actions span{margin-right:7px}.message-actions button{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;opacity:0}.message--assistant:hover .message-actions button,.message-actions button:focus-visible{opacity:1}.message-actions button:hover{background:var(--surface-hover);color:var(--text)}.attachment-list{display:flex;flex-wrap:wrap;gap:8px}.user-bubble .attachment-list{margin-top:12px}.attachment-chip{min-width:178px;max-width:260px;min-height:48px;display:flex;align-items:center;gap:9px;padding:6px 8px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.attachment-chip img,.attachment-chip__icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:var(--surface-raised);color:var(--muted-strong);object-fit:cover}.attachment-chip__text{min-width:0;display:grid;flex:1 1;grid-gap:2px;gap:2px}.attachment-chip__text small,.attachment-chip__text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip__text strong{font-size:11px;font-weight:570}.attachment-chip__text small{color:var(--muted);font-size:10px}.attachment-chip>button{width:27px;height:27px;display:grid;place-items:center;flex:0 0 auto;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.attachment-chip>button:hover{background:var(--surface-hover);color:var(--text)}.artifact-shelf{margin-top:24px}.artifact-shelf__title{margin:0 0 10px;color:var(--text);font-size:13px;font-weight:650}.artifact-shelf__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.artifact{min-height:58px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-soft);color:var(--text-soft);transition:border-color .16s ease,background .16s ease,transform .16s ease}.artifact:hover{transform:translateY(-1px);border-color:var(--muted);background:var(--surface-hover)}.artifact__icon{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:rgba(239,91,79,.1);color:var(--accent)}.artifact__text{min-width:0;display:grid;flex:1 1;grid-gap:2px;gap:2px}.artifact__text strong{overflow:hidden;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.artifact__text small{color:var(--muted);font-size:10px}.welcome{width:min(570px,calc(100% - 40px));margin:clamp(92px,17vh,168px) auto 80px}.welcome h1{margin:0;color:var(--text);font-size:clamp(30px,3.3vw,42px);line-height:1.2;letter-spacing:-.045em;font-weight:690}.welcome>p{margin:16px 0 38px;color:var(--muted);font-size:16px;line-height:1.6}.prompt-list{border-top:1px solid var(--border-soft)}.prompt-list button{width:100%;min-height:58px;display:grid;grid-template-columns:24px 1fr 24px;align-items:center;grid-gap:10px;gap:10px;padding:0 4px;border-bottom:1px solid var(--border-soft);background:transparent;color:var(--text-soft);text-align:left;cursor:pointer;transition:color .16s ease,padding .16s ease}.prompt-list button>svg:last-child{transform:rotate(45deg);color:var(--muted)}.prompt-list button:hover{padding-left:10px;color:var(--text)}.composer-shell{width:min(1150px,calc(100% - 58px));flex:0 0 auto;margin:0 auto;padding:0 0 18px;position:relative;z-index:14;background:var(--canvas)}.composer-shell:before{content:"";height:60px;position:absolute;right:0;bottom:100%;left:0;pointer-events:none;background:linear-gradient(to top,var(--canvas),rgba(var(--canvas-rgb),0))}.composer{min-height:108px;display:flex;flex-direction:column;padding:15px 14px 12px 18px;border:1px solid var(--border);border-radius:15px;background:var(--surface-soft);box-shadow:0 14px 34px rgba(0,0,0,.06);transition:border-color .16s ease,box-shadow .16s ease}.composer:focus-within{border-color:var(--muted);box-shadow:0 0 0 3px rgba(239,91,79,.06)}.composer>.attachment-list{margin-bottom:10px}.composer textarea{width:100%;min-height:35px;max-height:140px;flex:1 1;resize:none;field-sizing:content;overflow-y:auto;padding:3px 4px 0;border:0;outline:0;background:transparent;color:var(--text);font-size:15px;line-height:1.6}.composer textarea::placeholder{color:var(--muted)}.composer__toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:6px}.composer__tools{display:flex;align-items:center}.composer__tools input{display:none}.composer__attachment{width:38px;height:38px;border-radius:9px;background:transparent}.send-button{width:43px;height:43px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid transparent;border-radius:11px;background:var(--accent);color:white;box-shadow:0 8px 22px rgba(239,91,79,.22);cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease}.send-button:hover:not(:disabled){transform:translateY(-1px);background:var(--accent-hover)}.send-button:disabled{color:var(--muted);cursor:not-allowed}.send-button--stop,.send-button:disabled{background:var(--surface-raised);box-shadow:none}.send-button--stop{border-color:var(--border);color:var(--text)}.composer-disclaimer{margin:10px 0 0;color:var(--muted);font-size:10px;letter-spacing:.01em;text-align:center}.toast{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;position:fixed;z-index:100;right:30px;bottom:26px;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);color:var(--text);box-shadow:var(--shadow);font-size:12px;animation:toast-in .18s ease-out}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}}.dialog-backdrop{display:grid;place-items:center;padding:20px;position:fixed;z-index:110;inset:0;background:rgba(4,6,9,.68);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirm-dialog{width:min(390px,100%);padding:25px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.confirm-dialog__icon{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:rgba(239,91,79,.1);color:var(--danger)}.confirm-dialog h2{margin:18px 0 8px;font-size:19px;letter-spacing:-.02em}.confirm-dialog p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.confirm-dialog__actions button{min-height:42px;padding:0 17px;font-size:13px}@media (max-width:940px){:root{--sidebar-width:292px}.sidebar{width:var(--sidebar-width);flex-basis:var(--sidebar-width)}.composer-shell,.conversation{width:calc(100% - 36px)}.message--assistant{grid-template-columns:46px minmax(0,1fr);gap:15px}}@media (max-width:760px){.settings-form{width:calc(100% - 32px);padding:38px 0 54px}.settings-heading{margin-bottom:34px}.settings-grid{grid-template-columns:1fr}.settings-field--wide{grid-column:auto}.settings-readonly{grid-template-columns:1fr auto;gap:8px 14px}.settings-readonly small{grid-column:1/-1;text-align:left}.sidebar{width:min(322px,86vw);flex-basis:auto;padding-top:20px;position:fixed;inset:0 auto 0 0;transform:translateX(-102%);box-shadow:24px 0 80px rgba(0,0,0,.32);transition:transform .22s cubic-bezier(.22,1,.36,1)}.sidebar--open{transform:translateX(0)}.sidebar__close{display:grid}.sidebar__mobile-actions{display:flex}.sidebar-scrim{display:block;position:fixed;z-index:25;inset:0;pointer-events:none;background:rgba(4,6,9,.64);opacity:0;transition:opacity .18s ease}.sidebar-scrim--open{pointer-events:auto;opacity:1}.chat-topbar{height:84px;align-items:center;gap:9px;padding:15px 16px;border-bottom:1px solid var(--border-soft);background:rgba(var(--canvas-rgb),.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-menu{display:grid}.mobile-brand{min-width:0;display:block;margin-right:auto}.mobile-brand .brand-logo__wordmark{font-size:14px}.mobile-brand .brand-logo__mark{width:30px;height:30px}.model-selector{min-width:132px;height:44px;padding:0 9px;gap:6px}.model-selector select{font-size:12px}.chat-topbar>.theme-toggle{display:none}.conversation{width:calc(100% - 32px);gap:26px;padding:28px 0 34px}.message--user{padding-left:13%}.user-bubble{padding:15px 16px 10px;border-radius:15px}.message--assistant{grid-template-columns:38px minmax(0,1fr);gap:12px}.assistant-mark{width:38px;height:38px}.assistant-mark .brand-logo__mark{width:25px;height:25px}.assistant-content{padding-top:2px}.message-rich__prose{font-size:15px;line-height:1.75}.message-rich__prose h3{margin-top:21px}.message-actions button{opacity:1}.code-block pre{font-size:12px}.artifact-shelf__grid{grid-template-columns:1fr}.welcome{margin-top:clamp(78px,14vh,120px)}.welcome h1{font-size:31px}.welcome>p{font-size:14px}.composer-shell{width:100%;padding:0 12px max(10px,env(safe-area-inset-bottom))}.composer{min-height:92px;padding:12px 10px 9px 13px;border-radius:14px}.composer-disclaimer{margin-top:7px;font-size:9px}.attachment-chip{min-width:min(190px,100%)}.toast{right:14px;bottom:14px;left:14px;justify-content:center}}@media (max-width:430px){.settings-topbar{min-height:68px;grid-template-columns:42px 1fr 42px;gap:8px;padding:11px 14px}.settings-topbar .brand-logo__wordmark{display:none}.settings-form{width:calc(100% - 28px);padding-top:32px}.settings-heading h1{font-size:30px}.settings-section{padding:31px 0 36px}.connection-state{align-items:flex-start;flex-wrap:wrap;padding:14px}.connection-state button{width:100%;margin-top:4px}.settings-actions{display:grid;grid-template-columns:1fr 1fr}.settings-actions button{min-width:0;padding:0 12px}.login-page{padding:20px}.login-page__header .brand-logo__wordmark{font-size:16px}.login-panel{margin-top:88px}.model-selector{min-width:125px}.conversation{width:calc(100% - 28px)}.message--user{padding-left:7%}.message--assistant{grid-template-columns:34px minmax(0,1fr);gap:10px}.assistant-mark{width:34px;height:34px}.assistant-mark .brand-logo__mark{width:22px;height:22px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}