:root{--font-sans:"Inter", "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", "Cascadia Code", "SF Mono", ui-monospace, Consolas, monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:28px;--msg-font:15px;--msg-line:1.7;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-2xl:22px;--r-full:999px;--sidebar-w:272px;--rail-w:60px;--panel-w:320px;--header-h:56px;--content-w:768px;--ease:cubic-bezier(.2, .7, .2, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.28s;--z-drawer:40;--z-popover:50;--z-tooltip:70}:root,[data-theme=dark]{--bg-app:#0b0b0d;--bg-sidebar:#111113;--bg-surface:#151518;--bg-elevated:#1c1c20;--bg-input:#161619;--bg-hover:#ffffff0b;--bg-active:#ffffff14;--bg-selected:#fff1;--bg-user-msg:#1d1d21;--bg-code:#0e0e11;--glow:#e9b44c0b;--border-subtle:#ffffff0e;--border:#ffffff17;--border-strong:#ffffff29;--text-primary:#ececef;--text-secondary:#a4a4ad;--text-tertiary:#8a8a94;--text-inverse:#0b0b0d;--accent:#e9b44c;--accent-hover:#f2c56a;--accent-soft:#e9b44c1f;--accent-text:#f0c46c;--danger:#f07670;--danger-soft:#f076701a;--danger-border:#f0767047;--success:#5fcf8c;--success-soft:#5fcf8c1f;--warning:#e9b44c;--btn-primary-bg:#ececef;--btn-primary-fg:#0b0b0d;--btn-primary-hover:#fff;--focus-ring:0 0 0 2px var(--bg-app), 0 0 0 4px #e9b44c99;--shadow-sm:0 1px 2px #0006;--shadow-popover:0 16px 40px -12px #000000bf, 0 0 0 1px var(--border);--shadow-composer:0 10px 40px -16px #000c;--backdrop:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-elevated-hover:#232328;--bg-tooltip:#26262b;--fg-tooltip:#ececef;--bg-toast:#222227;--bg-composer-focus:#17171b;--border-focus:#fff3;--control-track:#2b2b31;--switch-thumb:#a4a4ad;--switch-thumb-on:#141416;--slider-thumb:#f4f4f5;--slider-thumb-shadow:0 1px 4px #00000080;--send-disabled-bg:#2a2a2f;--drop-overlay:#0b0b0de0;--shadow-drawer:#000c;--selection:#e9b44c47;--scrollbar-thumb:#ffffff1a;--scrollbar-thumb-hover:#ffffff2e;--skeleton-base:#ffffff0a;--skeleton-shine:#ffffff17;--accent-border:#e9b44c59;--accent-focus:#e9b44c80;--accent-focus-glow:#e9b44c1f;--accent-ring:#e9b44c99;--accent-underline:#f0c46c59;--danger-contrast:#1a0807;--danger-hover:#f68a85;--logo-bg:#18181b;--logo-border:#ffffff14;--logo-mark:#e9b44c;--code-inline-bg:#ffffff12;--code-head-bg:#ffffff05;--table-head-bg:#ffffff08;--hl-comment:#8b8b96;--hl-keyword:#f0c46c;--hl-string:#a8d18d;--hl-number:#f0a27a;--hl-title:#8cc4ec;--hl-type:#cdaaf2;--hl-attr:#e3c9a0;--hl-tag:#f08f8a;--hl-meta:#9a9aa6;--hl-deletion-bg:#f076701a;--hl-addition-bg:#5fcf8c14}[data-theme=black]{--bg-app:#000;--bg-sidebar:#070708;--bg-surface:#0d0d0f;--bg-elevated:#141417;--bg-input:#0c0c0e;--bg-user-msg:#151518;--bg-code:#08080a;--glow:#e9b44c08;--border-subtle:#ffffff0d;--border:#ffffff14;--focus-ring:0 0 0 2px #000, 0 0 0 4px #e9b44c99;--bg-composer-focus:#101012;--bg-elevated-hover:#1c1c20;--drop-overlay:#000000e6}[data-theme=light]{--bg-app:#fff;--bg-sidebar:#f6f4ef;--bg-surface:#fff;--bg-elevated:#fff;--bg-input:#faf8f4;--bg-hover:#3c2d0a0d;--bg-active:#3c2d0a17;--bg-selected:#3c2d0a12;--bg-user-msg:#f2efe8;--bg-code:#faf8f3;--glow:#c9971f12;--border-subtle:#281e0a12;--border:#281e0a1f;--border-strong:#281e0a38;--text-primary:#1c1b19;--text-secondary:#55524b;--text-tertiary:#6b665c;--text-inverse:#fff;--accent:#b8860b;--accent-hover:#a3770a;--accent-soft:#b8860b1a;--accent-text:#7d5a0c;--danger:#b8322b;--danger-soft:#b8322b12;--danger-border:#b8322b47;--success:#1d7a44;--success-soft:#1d7a441f;--warning:#8a5a00;--btn-primary-bg:#1c1b19;--btn-primary-fg:#fff;--btn-primary-hover:#000;--focus-ring:0 0 0 2px #fff, 0 0 0 4px #b8860bb3;--shadow-sm:0 1px 2px #281e0a1f;--shadow-popover:0 16px 40px -14px #281e0a38, 0 0 0 1px var(--border);--shadow-composer:0 10px 34px -18px #281e0a4d;--backdrop:#1c1b1952;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-elevated-hover:#f3f0e9;--bg-tooltip:#1c1b19;--fg-tooltip:#fff;--bg-toast:#fff;--bg-composer-focus:#fff;--border-focus:#b8860b73;--control-track:#e2ddd2;--switch-thumb:#fff;--switch-thumb-on:#fff;--slider-thumb:#fff;--slider-thumb-shadow:0 1px 3px #281e0a59, 0 0 0 1px #281e0a1f;--send-disabled-bg:#ebe7de;--drop-overlay:#ffffffe6;--shadow-drawer:#281e0a40;--selection:#c9971f40;--scrollbar-thumb:#281e0a29;--scrollbar-thumb-hover:#281e0a47;--skeleton-base:#281e0a0d;--skeleton-shine:#281e0a1a;--accent-border:#b8860b66;--accent-focus:#b8860b8c;--accent-focus-glow:#b8860b24;--accent-ring:#b8860bb3;--accent-underline:#7d5a0c66;--danger-contrast:#fff;--danger-hover:#a12a24;--logo-bg:#1c1b19;--logo-border:#0000;--logo-mark:#d9a53a;--code-inline-bg:#3c2d0a0f;--code-head-bg:#3c2d0a08;--table-head-bg:#3c2d0a09;--hl-comment:#6b6760;--hl-keyword:#8a5a00;--hl-string:#2d6a2e;--hl-number:#a1461b;--hl-title:#1f5f99;--hl-type:#6e3fa3;--hl-attr:#75562a;--hl-tag:#b0352e;--hl-meta:#6b6760;--hl-deletion-bg:#b8322b14;--hl-addition-bg:#1d7a4414}[data-font-size=small]{--msg-font:14px;--msg-line:1.65}[data-font-size=large]{--msg-font:16.5px;--msg-line:1.72}[data-chat-width=wide]{--content-w:960px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-md);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.5;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}:focus-visible{box-shadow:var(--focus-ring);outline:none}::selection{background:var(--selection)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.btn{justify-content:center;align-items:center;gap:var(--sp-2);height:36px;padding:0 var(--sp-4);border-radius:var(--r-md);font-size:var(--text-md);white-space:nowrap;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), opacity var(--dur-fast);font-weight:500;display:inline-flex}.btn svg{flex:none}.btn-sm{height:30px;padding:0 var(--sp-3);font-size:var(--text-sm);border-radius:var(--r-sm)}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-secondary{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated-hover);border-color:var(--border-strong)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--danger);color:var(--danger-contrast)}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn:disabled{opacity:.45}.icon-btn{border-radius:var(--r-md);width:32px;height:32px;color:var(--text-secondary);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);flex:none;place-items:center;display:inline-grid;position:relative}.icon-btn:hover:not(:disabled),.icon-btn[aria-expanded=true]{background:var(--bg-hover);color:var(--text-primary)}.icon-btn:active:not(:disabled){background:var(--bg-active)}.icon-btn[aria-pressed=true]{color:var(--text-primary);background:var(--bg-active)}.icon-btn:disabled{opacity:.4}.icon-btn-sm{border-radius:var(--r-sm);width:28px;height:28px}@media (hover:hover){[data-tooltip]:after{content:attr(data-tooltip);border-radius:var(--r-sm);background:var(--bg-tooltip);border:1px solid var(--border);color:var(--fg-tooltip);font-size:var(--text-xs);white-space:nowrap;pointer-events:none;opacity:0;z-index:var(--z-tooltip);transition:opacity var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);padding:5px 8px;font-weight:500;line-height:1.2;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-2px)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1;transition-delay:.35s;transform:translate(-50%)}[data-tooltip-side=top]:after{top:auto;bottom:calc(100% + 6px)}[data-tooltip-side=right]:after{top:50%;left:calc(100% + 8px);transform:translate(-2px,-50%)}[data-tooltip-side=right]:hover:after,[data-tooltip-side=right]:focus-visible:after{transform:translateY(-50%)}[data-tooltip-align=end]:after{left:auto;right:0;transform:translateY(-2px)}[data-tooltip-align=end]:hover:after,[data-tooltip-align=end]:focus-visible:after{transform:none}[aria-expanded=true][data-tooltip]:after{display:none}}.input{width:100%;height:36px;padding:0 var(--sp-3);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-primary);font-size:var(--text-md);transition:border-color var(--dur-fast), background var(--dur-fast)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.input:hover{border-color:var(--border-strong)}.input:focus-visible,.textarea:focus-visible{border-color:var(--accent-focus);box-shadow:0 0 0 3px var(--accent-focus-glow)}.textarea{width:100%;padding:var(--sp-3);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-md);resize:vertical;line-height:1.55;font-size:var(--text-md)}kbd,.kbd{border-radius:var(--r-xs);border:1px solid var(--border);background:var(--bg-elevated);min-width:20px;height:20px;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-2xs);justify-content:center;align-items:center;padding:0 5px;font-weight:500;display:inline-flex}.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--skeleton-base), var(--skeleton-shine), var(--skeleton-base));background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.toasts:popover-open{inset:max(16px, env(safe-area-inset-top)) auto auto 50%;color:inherit;align-items:center;gap:var(--sp-2);pointer-events:none;background:0 0;border:0;flex-direction:column;width:max-content;max-width:calc(100vw - 32px);margin:0;padding:0;display:flex;position:fixed;overflow:visible;transform:translate(-50%)}.toast{align-items:center;gap:var(--sp-2);border-radius:var(--r-lg);background:var(--bg-toast);border:1px solid var(--border);box-shadow:var(--shadow-popover);font-size:var(--text-sm);color:var(--text-primary);pointer-events:auto;animation:toast-in var(--dur) var(--ease);padding:6px 6px 6px 12px;display:flex}.toast>svg{color:var(--text-secondary);flex:none}.toast-success>svg{color:var(--success)}.toast-error>svg{color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.md{font-size:var(--msg-font);line-height:var(--msg-line);color:var(--text-primary);overflow-wrap:anywhere}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p,.md ul,.md ol,.md blockquote,.md .md-table,.md .code-block{margin:0 0 .9em}.md h1,.md h2,.md h3,.md h4{letter-spacing:-.01em;margin:1.4em 0 .55em;font-weight:650;line-height:1.3}.md h1{font-size:1.45em}.md h2{font-size:1.25em}.md h3{font-size:1.1em}.md h4{font-size:1em}.md ul,.md ol{padding-left:1.4em}.md li{margin:.25em 0}.md li::marker{color:var(--text-tertiary)}.md strong{font-weight:650}.md a{color:var(--accent-text);text-decoration:underline;-webkit-text-decoration-color:var(--accent-underline);text-decoration-color:var(--accent-underline);text-underline-offset:3px}.md a:hover{text-decoration-color:currentColor}.md blockquote{border-left:2px solid var(--border-strong);color:var(--text-secondary);padding:.1em 0 .1em 1em}.md hr{border:0;border-top:1px solid var(--border);margin:1.5em 0}.md :not(pre)>code{font-variant-ligatures:none;border-radius:var(--r-xs);background:var(--code-inline-bg);border:1px solid var(--border-subtle);font-family:var(--font-mono);padding:.12em .4em;font-size:.87em}.code-block{border-radius:var(--r-lg);border:1px solid var(--border);background:var(--bg-code);overflow:hidden}.code-head{border-bottom:1px solid var(--border-subtle);background:var(--code-head-bg);justify-content:space-between;align-items:center;height:36px;padding:0 6px 0 14px;display:flex}.code-lang{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary)}.code-actions{gap:2px;display:flex}.code-btn{border-radius:var(--r-sm);height:28px;font-size:var(--text-xs);color:var(--text-secondary);align-items:center;gap:6px;padding:0 8px;display:inline-flex}.code-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.code-btn[aria-pressed=true]{color:var(--accent-text)}@media (width<=480px){.code-btn-label{display:none}.code-btn{justify-content:center;width:32px;padding:0}}.code-block pre{font-variant-ligatures:none;font-family:var(--font-mono);tab-size:2;margin:0;padding:14px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.code-block code{white-space:pre;overflow-wrap:normal;font-family:inherit}.code-block.is-wrapped code{white-space:pre-wrap;overflow-wrap:anywhere}.code-block pre:focus-visible,.md-table:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-ring)}.hljs-comment,.hljs-quote{color:var(--hl-comment);font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-doctag,.hljs-section{color:var(--hl-keyword)}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-template-tag,.hljs-template-variable{color:var(--hl-string)}.hljs-number,.hljs-literal,.hljs-symbol,.hljs-bullet{color:var(--hl-number)}.hljs-title,.hljs-title.function_,.hljs-function .hljs-title{color:var(--hl-title)}.hljs-type,.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:var(--hl-type)}.hljs-attr,.hljs-attribute,.hljs-property,.hljs-variable,.hljs-params{color:var(--hl-attr)}.hljs-tag,.hljs-name,.hljs-selector-id,.hljs-selector-class{color:var(--hl-tag)}.hljs-meta,.hljs-meta .hljs-keyword{color:var(--hl-meta)}.hljs-deletion{color:var(--hl-tag);background:var(--hl-deletion-bg)}.hljs-addition{background:var(--hl-addition-bg)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:650}.md .katex{font-size:1.08em}.md .katex-display{margin:.4em 0 .9em;padding:.2em 0;overflow:auto hidden}.md .katex-error{font-family:var(--font-mono);font-size:.9em}.md-fallback pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);color:var(--text-secondary);margin:0;font-size:13px}.md-fallback-note{margin:0 0 var(--sp-2);font-size:var(--text-xs);color:var(--text-tertiary);align-items:center;gap:6px;display:flex}.md-table{border:1px solid var(--border);border-radius:var(--r-md);overflow-x:auto}.md table{border-collapse:collapse;width:100%;font-size:.93em}.md th,.md td{text-align:left;border-bottom:1px solid var(--border-subtle);vertical-align:top;padding:8px 12px}.md th{background:var(--table-head-bg);white-space:nowrap;font-weight:600}.md tr:last-child td{border-bottom:0}.md.is-streaming>:last-child:after{content:"";vertical-align:-.15em;background:var(--accent);border-radius:1px;width:7px;height:1em;margin-left:3px;animation:1s steps(2,end) infinite caret;display:inline-block}.md.is-streaming>.code-block:last-child:after,.md.is-streaming>ul:last-child:after,.md.is-streaming>ol:last-child:after,.md.is-streaming>.md-table:last-child:after{display:none}@keyframes caret{50%{opacity:0}}.msg{flex-direction:column;min-width:0;display:flex;position:relative}.msg+.msg{margin-top:var(--sp-6)}.msg-user{align-items:flex-end}.msg-bubble{background:var(--bg-user-msg);border:1px solid var(--border-subtle);max-width:min(85%,640px);font-size:var(--msg-font);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 18px 6px;padding:10px 16px;line-height:1.6}.msg-files{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:85%;margin-bottom:6px;display:flex}.file-chip{border-radius:var(--r-md);background:var(--bg-surface);border:1px solid var(--border);max-width:240px;height:30px;font-size:var(--text-xs);color:var(--text-secondary);align-items:center;gap:6px;padding:0 10px;display:inline-flex}.file-chip>svg{color:var(--accent);flex:none}.file-chip-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);overflow:hidden}.file-chip-size{color:var(--text-tertiary);flex:none}.msg-edit{width:min(100%,640px)}.msg-edit .textarea{font-size:var(--msg-font);border-radius:var(--r-lg)}.msg-edit-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-2);display:flex}.msg-actions{opacity:0;min-height:28px;transition:opacity var(--dur-fast);align-items:center;gap:2px;margin-top:4px;display:flex}.msg:hover .msg-actions,.msg:focus-within .msg-actions,.msg-assistant:last-child .msg-actions{opacity:1}@media (hover:none){.msg-actions{opacity:1}}.msg-actions-assistant{margin-left:-6px}.msg-usage{margin-left:var(--sp-2);font-size:var(--text-xs);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.msg-meta{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--text-sm);color:var(--text-secondary);font-weight:500;display:flex}.msg-avatar{flex:none;display:inline-flex}.reasoning{margin-bottom:var(--sp-3)}.reasoning-toggle{border-radius:var(--r-sm);height:28px;font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:6px;margin-left:-6px;padding:0 8px 0 6px;display:inline-flex}.reasoning-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.reasoning-toggle>svg:first-child{color:var(--accent)}.reasoning-toggle.is-active span{background:linear-gradient(90deg, var(--text-secondary) 0%, var(--text-primary) 50%, var(--text-secondary) 100%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:1.6s linear infinite shimmer}.reasoning-chevron{color:var(--text-tertiary);transition:transform var(--dur) var(--ease)}.reasoning.is-open .reasoning-chevron{transform:rotate(90deg)}.reasoning-body{border-left:2px solid var(--border);font-size:var(--text-sm);color:var(--text-tertiary);white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;margin-top:6px;padding:2px 0 2px 14px;line-height:1.65;overflow-y:auto}.typing{font-size:var(--text-sm);color:var(--text-tertiary);align-items:center;gap:10px;display:inline-flex}.typing-elapsed{font-variant-numeric:tabular-nums}.typing-note{color:var(--text-tertiary)}.typing-dots{gap:4px;display:inline-flex}.typing-dots i{background:var(--text-secondary);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite bounce}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}.msg-note{margin:var(--sp-2) 0 0;font-size:var(--text-xs);color:var(--text-tertiary);align-items:center;gap:6px;display:inline-flex}.msg-error{align-items:flex-start;gap:var(--sp-3);margin-top:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--danger-soft);border:1px solid var(--danger-border);display:flex}.msg-error>svg{color:var(--danger);flex:none;margin-top:1px}.msg-error.is-paused{background:var(--accent-soft);border-color:var(--accent-border)}.msg-error.is-paused>svg{color:var(--accent-text)}.msg-error-text{flex:1;min-width:0}.msg-error-text strong{font-size:var(--text-md);font-weight:600}.msg-error-text p{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere;margin:2px 0 0}.msg-error .btn{flex:none}.msg-error-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.msg-note-row{align-items:center;gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;display:flex}.msg-note-row .msg-note{margin:0}.msg-note-row{margin-top:var(--sp-2)}@media (width<=480px){.msg-error{flex-wrap:wrap}.msg-error-actions{margin-left:30px}}.msg-route-row{margin:-4px 0 var(--sp-2)}.msg-route{border-radius:var(--r-sm);height:24px;font-size:var(--text-xs);color:var(--text-tertiary);align-items:center;gap:6px;margin-left:-8px;padding:0 8px;display:inline-flex}.msg-route:hover{background:var(--bg-hover);color:var(--text-secondary)}.msg-route-flag{border-radius:var(--r-sm);background:var(--accent-soft);color:var(--text-secondary);padding:0 6px}.msg-route-chevron{transition:transform var(--dur) var(--ease)}.msg-route.is-open .msg-route-chevron{transform:rotate(90deg)}.msg-route-panel{border-left:2px solid var(--border);font-size:var(--text-sm);color:var(--text-tertiary);margin-top:4px;padding:2px 0 2px 12px;line-height:1.6}.msg-route-panel p{margin:0 0 4px}.msg-route-debug{border-radius:var(--r-md);background:var(--bg-code);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0;padding:8px 10px;line-height:1.6}.career-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow:hidden auto}.career-inner{width:100%;max-width:calc(var(--content-w) + 2 * var(--sp-6));padding:var(--sp-6) var(--sp-6) var(--sp-10);gap:var(--sp-5);flex-direction:column;margin:0 auto;display:flex}.career-hero{text-align:center;padding-top:var(--sp-4);flex-direction:column;align-items:center;display:flex}.career-hero-icon{border-radius:var(--r-lg);background:var(--accent-soft);width:48px;height:48px;color:var(--accent-text);place-items:center;display:grid}.career-title{margin:var(--sp-4) 0 var(--sp-2);font-size:var(--text-2xl);letter-spacing:-.025em;font-weight:650;line-height:1.2}.career-sub{max-width:560px;color:var(--text-secondary);font-size:var(--text-md);margin:0;line-height:1.55}.career-alert{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--text-primary);font-size:var(--text-sm);display:flex}.career-alert svg{color:var(--danger);flex:none}.career-form{gap:var(--sp-4);padding:var(--sp-5);border-radius:var(--r-xl);background:var(--bg-surface);border:1px solid var(--border);flex-direction:column;display:flex}.career-form-head{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.career-form-head h2{font-size:var(--text-lg);margin:0;font-weight:600}.career-form-tools{gap:var(--sp-1);display:flex}.career-fields{gap:var(--sp-4);display:grid}.career-field{flex-direction:column;gap:6px;min-width:0;display:flex}.career-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:550}.career-required{color:var(--accent-text)}.career-hint{font-size:var(--text-xs);color:var(--text-tertiary)}.career-field .textarea{color:var(--text-primary)}.career-submit{justify-content:space-between;align-items:center;gap:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle);display:flex}.career-note{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.5}.career-note strong{color:var(--text-primary);font-weight:550}.career-disclaimer{text-align:center;font-size:var(--text-xs);color:var(--text-tertiary);margin:0}.pipeline{gap:var(--sp-2);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.pipeline-step{min-width:0;padding:10px var(--sp-3);border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);align-items:center;gap:10px;display:flex;position:relative}.pipeline-icon{border-radius:var(--r-md);background:var(--accent-soft);width:30px;height:30px;color:var(--accent-text);flex:none;place-items:center;display:grid}.pipeline-text{flex-direction:column;min-width:0;display:flex}.pipeline-name{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:550;overflow:hidden}.pipeline-role{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pipeline-step.is-pending .pipeline-icon,.pipeline-step.is-stopped .pipeline-icon{background:var(--bg-hover);color:var(--text-tertiary)}.pipeline-step.is-done .pipeline-icon{background:var(--success-soft);color:var(--success)}.pipeline-step.is-error{border-color:var(--danger-border)}.pipeline-step.is-error .pipeline-icon{background:var(--danger-soft);color:var(--danger)}.pipeline-step.is-live{border-color:var(--accent)}.pipeline-step.is-live .pipeline-icon{animation:1.4s ease-in-out infinite agent-pulse}@keyframes agent-pulse{50%{opacity:.55}}.roadmap-head{gap:var(--sp-3);flex-direction:column;display:flex}.career-kicker{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);align-items:center;gap:6px;font-weight:600;display:inline-flex}.roadmap-title{font-size:var(--text-xl);letter-spacing:-.015em;overflow-wrap:anywhere;margin:0;font-weight:650;line-height:1.3}.profile-summary{gap:var(--sp-2) var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0;display:grid}.profile-summary div{min-width:0}.profile-summary dt{font-size:var(--text-2xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);font-weight:600}.profile-summary dd{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere;margin:2px 0 0;line-height:1.5}.roadmap-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.agent-card{scroll-margin-top:var(--sp-4);padding:var(--sp-4) var(--sp-5) var(--sp-5);border-radius:var(--r-xl);background:var(--bg-surface);border:1px solid var(--border)}.agent-card.is-pending{padding-bottom:var(--sp-4);background:0 0;border-style:dashed}.agent-card.is-error{border-color:var(--danger-border)}.agent-head{align-items:center;gap:var(--sp-3);display:flex}.agent-icon{border-radius:var(--r-md);background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);flex:none;place-items:center;display:grid}.agent-card.is-pending .agent-icon{background:var(--bg-hover);color:var(--text-tertiary)}.agent-heading{flex:1;min-width:0}.agent-heading h2{font-size:var(--text-lg);margin:0;font-weight:600;line-height:1.3}.agent-role{font-size:var(--text-xs);color:var(--text-tertiary);margin:2px 0 0}.agent-status{border-radius:var(--r-full);font-size:var(--text-xs);background:var(--bg-hover);color:var(--text-secondary);flex:none;padding:3px 10px;font-weight:550}.agent-status.is-running{background:var(--accent-soft);color:var(--accent-text)}.agent-status.is-done{background:var(--success-soft);color:var(--success)}.agent-status.is-error{background:var(--danger-soft);color:var(--danger)}.agent-wait{align-items:center;gap:var(--sp-2);margin:var(--sp-3) 0 0;font-size:var(--text-sm);color:var(--text-tertiary);display:flex}.agent-body{margin-top:var(--sp-4);font-size:var(--msg-font);line-height:var(--msg-line)}.agent-body>.reasoning{margin-bottom:var(--sp-3)}.agent-links{margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--bg-elevated);border:1px solid var(--border-subtle)}.agent-links h3{margin:0 0 var(--sp-2);font-size:var(--text-sm);color:var(--text-primary);align-items:center;gap:6px;font-weight:600;display:flex}.agent-links ul{margin:0;padding:0;list-style:none}.agent-links li{justify-content:space-between;align-items:center;gap:var(--sp-3);border-top:1px solid var(--border-subtle);font-size:var(--text-sm);padding:6px 0;display:flex}.agent-links li:first-child{border-top:0}.agent-link-item{min-width:0;color:var(--text-primary);overflow-wrap:anywhere}.agent-link-sites{flex:none;gap:6px;display:flex}.agent-link{border-radius:var(--r-full);border:1px solid var(--border);font-size:var(--text-xs);color:var(--accent-text);transition:background var(--dur-fast), border-color var(--dur-fast);padding:2px 10px;font-weight:550;text-decoration:none}.agent-link:hover{background:var(--accent-soft);border-color:var(--accent)}.agent-problem{align-items:center;gap:var(--sp-2) var(--sp-3);margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:var(--text-sm);color:var(--text-secondary);flex-wrap:wrap;display:flex}.agent-problem.is-error{background:var(--danger-soft);border-color:var(--danger-border);color:var(--text-primary)}.agent-problem>svg{flex:none}.agent-problem.is-error>svg{color:var(--danger)}.agent-problem span{flex:1;min-width:180px}.agent-foot{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);font-size:var(--text-xs);color:var(--text-tertiary);flex-wrap:wrap;display:flex}.agent-fallback{flex-basis:100%}.career-promo{align-items:center;gap:var(--sp-3);width:100%;margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--accent-soft);color:var(--text-primary);text-align:left;transition:border-color var(--dur-fast);border:1px solid #0000;display:flex}.career-promo:hover{border-color:var(--accent)}.career-promo>svg:first-child{color:var(--accent-text);flex:none}.career-promo-text{flex-direction:column;flex:1;min-width:0;display:flex}.career-promo-title{font-size:var(--text-md);font-weight:600}.career-promo-desc{font-size:var(--text-sm);color:var(--text-secondary)}@media (width<=760px){.pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.career-inner{padding:var(--sp-4) var(--sp-4) var(--sp-8);gap:var(--sp-4)}.career-form{padding:var(--sp-4)}.career-submit{flex-direction:column;align-items:stretch}.career-submit .btn{width:100%}.agent-card{padding:var(--sp-4)}.agent-links li{flex-direction:column;align-items:flex-start;gap:6px}}.messages-wrap{flex:1;min-height:0;display:flex;position:relative}.messages{overscroll-behavior:contain;flex:1;overflow:hidden auto}.messages-inner{width:100%;max-width:calc(var(--content-w) + 2 * var(--sp-6));padding:var(--sp-4) var(--sp-6) var(--sp-8);margin:0 auto}.jump-bottom{left:50%;bottom:var(--sp-3);background:var(--bg-elevated);border:1px solid var(--border-strong);width:34px;height:34px;color:var(--text-primary);box-shadow:var(--shadow-popover);animation:pop-in var(--dur-fast) var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%)}.jump-bottom:hover{background:var(--bg-elevated-hover)}.empty{flex:1;min-height:0;display:flex;overflow-y:auto}.empty-inner{width:100%;max-width:720px;padding:var(--sp-8) var(--sp-6);text-align:center;flex-direction:column;align-items:center;margin:auto;display:flex}.empty-title{margin:var(--sp-5) 0 var(--sp-2);font-size:var(--text-2xl);letter-spacing:-.025em;font-weight:650;line-height:1.2}.empty-sub{color:var(--text-secondary);font-size:var(--text-md);margin:0}.empty-sub strong{color:var(--text-primary);font-weight:500}.empty-alert{gap:var(--sp-3);margin-top:var(--sp-5);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--danger-soft);border:1px solid var(--danger-border);text-align:left;font-size:var(--text-sm);display:flex}.empty-alert>svg{color:var(--danger);flex:none;margin-top:1px}.empty-alert p{color:var(--text-secondary);margin:2px 0 0}.suggestions{gap:var(--sp-3);width:100%;margin-top:var(--sp-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.suggestion{column-gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);text-align:left;transition:background var(--dur-fast), border-color var(--dur-fast), transform var(--dur-fast) var(--ease);grid-template-rows:auto auto;grid-template-columns:auto 1fr;row-gap:2px;display:grid}.suggestion:hover{background:var(--bg-elevated);border-color:var(--border)}.suggestion:active{transform:scale(.99)}.suggestion>svg{color:var(--accent);grid-row:span 2;margin-top:1px}.suggestion-title{font-size:var(--text-md);color:var(--text-primary);font-weight:500}.suggestion-prompt{font-size:var(--text-xs);color:var(--text-tertiary);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}@media (width<=640px){.messages-inner{padding:var(--sp-3) var(--sp-4) var(--sp-6)}.empty-inner{padding:var(--sp-6) var(--sp-4)}.empty-title{font-size:23px}.suggestions{gap:var(--sp-2);margin-top:var(--sp-6);grid-template-columns:1fr}.suggestion{padding:var(--sp-3) var(--sp-4)}.suggestion-prompt{-webkit-line-clamp:1}}.composer-wrap{width:100%;max-width:calc(var(--content-w) + 2 * var(--sp-6));padding:0 var(--sp-6) max(var(--sp-3), env(safe-area-inset-bottom));flex:none;margin:0 auto}.composer{border-radius:var(--r-2xl);background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-composer);transition:border-color var(--dur-fast), background var(--dur-fast);flex-direction:column;display:flex;position:relative}.composer:hover{border-color:var(--border-strong)}.composer:focus-within{border-color:var(--border-focus);background:var(--bg-composer-focus)}.composer.is-dragging{border-color:var(--accent)}.composer-input{resize:none;width:100%;min-height:52px;font-size:var(--msg-font);color:var(--text-primary);background:0 0;border:0;padding:16px 18px 6px;line-height:1.55;display:block}.composer-input:focus-visible{box-shadow:none}.composer-input::placeholder{color:var(--text-tertiary)}.composer-bar{align-items:center;gap:6px;padding:6px 10px 10px;display:flex}.composer-spacer{flex:1}.chip{border-radius:var(--r-full);border:1px solid var(--border);height:32px;color:var(--text-secondary);font-size:var(--text-sm);white-space:nowrap;transition:background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);align-items:center;gap:6px;padding:0 12px 0 10px;font-weight:500;display:inline-flex;position:relative}.chip:hover{background:var(--bg-hover);color:var(--text-primary)}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text)}.chip-static{cursor:default;color:var(--text-tertiary);border-style:dashed}.chip-static:hover{color:var(--text-tertiary);background:0 0}.send-btn{background:var(--btn-primary-bg);width:36px;height:36px;color:var(--btn-primary-fg);transition:background var(--dur-fast), opacity var(--dur-fast), transform var(--dur-fast) var(--ease);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.send-btn:hover:not(:disabled){background:var(--btn-primary-hover)}.send-btn:active:not(:disabled){transform:scale(.94)}.send-btn:disabled{background:var(--send-disabled-bg);color:var(--text-tertiary);opacity:1}.send-btn.is-stop{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-strong)}.send-btn.is-stop:hover{background:var(--bg-elevated-hover)}.composer-files{flex-wrap:wrap;gap:6px;margin:0;padding:12px 12px 0;list-style:none;display:flex}.composer-file{border-radius:var(--r-lg);background:var(--bg-elevated);border:1px solid var(--border);align-items:center;gap:8px;max-width:100%;height:44px;padding:0 4px 0 10px;display:flex}.composer-file>svg{color:var(--accent);flex:none}.composer-file-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.composer-file-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:var(--text-sm);overflow:hidden}.composer-file-size{font-size:var(--text-2xs);color:var(--text-tertiary)}.composer-drop{border-radius:inherit;background:var(--drop-overlay);color:var(--accent-text);pointer-events:none;justify-content:center;align-items:center;gap:8px;font-weight:500;display:flex;position:absolute;inset:0}.composer-hint{text-align:center;font-size:var(--text-2xs);color:var(--text-tertiary);margin:8px 0 0}@media (width<=640px){.composer-wrap{padding:0 var(--sp-3) max(var(--sp-2), env(safe-area-inset-bottom))}.composer{border-radius:var(--r-xl)}.composer-input{padding:14px 14px 4px;font-size:16px}.composer-bar{padding:4px 8px 8px}.composer-hint{display:none}}.field-row{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-3) 0;display:flex}.field-row.is-disabled .field-label{color:var(--text-secondary)}.field-text{min-width:0}.field-label{font-size:var(--text-md);color:var(--text-primary);font-weight:500;display:block}.field-desc{font-size:var(--text-xs);color:var(--text-tertiary);margin:2px 0 0;line-height:1.45}.switch{border-radius:var(--r-full);background:var(--control-track);border:1px solid var(--border);width:36px;height:20px;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);flex:none;position:relative}.switch-thumb{box-shadow:var(--shadow-sm);background:var(--switch-thumb);width:14px;height:14px;transition:transform var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:50%;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] .switch-thumb{background:var(--switch-thumb-on);transform:translate(16px)}.switch:hover:not(:disabled){border-color:var(--border-strong)}.switch:disabled{opacity:.4}.segmented{border-radius:var(--r-md);background:var(--bg-input);border:1px solid var(--border);flex:none;gap:2px;padding:3px;display:inline-flex}.segmented-item{white-space:nowrap;height:28px;padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--text-secondary);font-size:var(--text-sm);transition:background var(--dur-fast), color var(--dur-fast);font-weight:500}.segmented-item:hover{color:var(--text-primary)}.segmented-item[aria-checked=true]{background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-sm), inset 0 0 0 1px var(--border)}.slider-field{padding:var(--sp-2) 0 var(--sp-3)}.slider-head{margin-bottom:var(--sp-2);justify-content:space-between;align-items:baseline;display:flex}.slider-value{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);border-radius:var(--r-xs);background:var(--bg-input);border:1px solid var(--border-subtle);padding:2px 6px}.slider{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}.slider:focus-visible{box-shadow:none}.slider::-webkit-slider-runnable-track{border-radius:var(--r-full);background:linear-gradient(to right, var(--accent) var(--pct), var(--control-track) var(--pct));height:4px}.slider::-moz-range-track{border-radius:var(--r-full);background:linear-gradient(to right, var(--accent) var(--pct), var(--control-track) var(--pct));height:4px}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--slider-thumb);width:16px;height:16px;box-shadow:var(--slider-thumb-shadow);transition:transform var(--dur-fast);border:0;border-radius:50%;margin-top:-6px}.slider::-moz-range-thumb{background:var(--slider-thumb);width:16px;height:16px;box-shadow:var(--slider-thumb-shadow);border:0;border-radius:50%}.slider:hover::-webkit-slider-thumb{transform:scale(1.1)}.slider:focus-visible::-webkit-slider-thumb{box-shadow:var(--focus-ring)}.slider:focus-visible::-moz-range-thumb{box-shadow:var(--focus-ring)}.popover{z-index:var(--z-popover);border-radius:var(--r-lg);background:var(--bg-elevated);min-width:180px;box-shadow:var(--shadow-popover);animation:pop-in var(--dur-fast) var(--ease);padding:4px;position:fixed;overflow-y:auto}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.menu{flex-direction:column;gap:1px;display:flex}.menu-item{align-items:center;gap:var(--sp-3);width:100%;height:34px;padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--text-primary);font-size:var(--text-sm);text-align:left;display:flex}.menu-item svg{color:var(--text-secondary)}.menu-item:hover,.menu-item:focus-visible{background:var(--bg-hover);box-shadow:none}.menu-item:focus-visible{background:var(--bg-active)}.menu-item.is-danger,.menu-item.is-danger svg{color:var(--danger)}.menu-item.is-danger:hover,.menu-item.is-danger:focus-visible{background:var(--danger-soft)}.dialog{border-radius:var(--r-xl);background:var(--bg-surface);width:min(560px,100vw - 32px);max-height:min(720px,100dvh - 32px);color:var(--text-primary);box-shadow:var(--shadow-popover);border:0;padding:0;overflow:hidden}.dialog[open]{animation:dialog-in var(--dur) var(--ease);flex-direction:column;display:flex}.dialog::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.dialog-sm{width:min(420px,100vw - 32px)}.dialog-inner{flex-direction:column;flex:1;min-height:0;display:flex}.dialog-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-5) var(--sp-5) var(--sp-3) var(--sp-6);display:flex}.dialog-title{font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:600}.dialog-desc{color:var(--text-secondary);font-size:var(--text-md);margin:6px 0 0;line-height:1.5}.dialog-body{padding:var(--sp-2) var(--sp-6) var(--sp-5);min-height:0;overflow-y:auto}.dialog-footer{justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5) var(--sp-5);display:flex}.panel{width:var(--panel-w);background:var(--bg-sidebar);border-left:1px solid var(--border-subtle);flex-direction:column;flex:none;height:100%;display:flex}.panel-overlay{z-index:var(--z-drawer);width:min(var(--panel-w), 92vw);transition:transform var(--dur-slow) var(--ease), box-shadow var(--dur-slow);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);position:fixed;inset:0 0 0 auto;transform:translate(100%)}.panel-overlay.is-open{box-shadow:-24px 0 60px -20px var(--shadow-drawer);transform:none}.panel-header{height:var(--header-h);padding:0 var(--sp-3) 0 var(--sp-5);flex:none;justify-content:space-between;align-items:center;display:flex}.panel-title{font-size:var(--text-md);margin:0;font-weight:600}.panel-body{min-height:0;padding:0 var(--sp-5) var(--sp-4);flex:1;overflow-y:auto}.panel-model{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);flex-direction:column;gap:2px;display:flex}.panel-model-label{font-weight:600}.panel-model-meta{font-size:var(--text-xs);color:var(--text-tertiary)}.panel-section{padding:var(--sp-3) 0;border-bottom:1px solid var(--border-subtle)}.panel-section:last-child{border-bottom:0}.token-presets{margin:calc(var(--sp-1) * -1) 0 var(--sp-2);flex-wrap:wrap;gap:6px;display:flex}.token-preset{border-radius:var(--r-full);border:1px solid var(--border);min-width:48px;height:30px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-secondary);transition:background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);padding:0 10px;font-weight:500}.token-preset:hover{background:var(--bg-hover);color:var(--text-primary)}.token-preset[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text)}.panel-field-head{margin:var(--sp-2) 0;justify-content:space-between;align-items:baseline;display:flex}.panel-count{font-size:var(--text-xs);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.panel-textarea{min-height:96px;max-height:320px;font-size:var(--text-sm)}.panel-footer{justify-content:space-between;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-5);border-top:1px solid var(--border-subtle);flex:none;display:flex}.panel-note{font-size:var(--text-2xs);color:var(--text-tertiary)}.header{align-items:center;gap:var(--sp-1);height:var(--header-h);padding:0 var(--sp-3);padding-top:env(safe-area-inset-top);box-sizing:content-box;flex:none;display:flex}.header-spacer{flex:1}.model-trigger{border-radius:var(--r-md);min-width:0;height:36px;font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text-primary);transition:background var(--dur-fast);align-items:center;gap:6px;padding:0 8px 0 12px;font-weight:600;display:inline-flex}.model-trigger:hover,.model-trigger[aria-expanded=true]{background:var(--bg-hover)}.model-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-chevron{color:var(--text-tertiary);transition:transform var(--dur) var(--ease);flex:none}.model-trigger[aria-expanded=true] .model-chevron{transform:rotate(180deg)}.model-trigger.is-loading{cursor:default}.model-trigger.is-error{font-size:var(--text-md);color:var(--danger);font-weight:500}.model-retry{border-radius:var(--r-sm);background:var(--danger-soft);font-size:var(--text-xs);margin-left:4px;padding:2px 8px}.model-popover{padding:6px}.model-menu-head{font-size:var(--text-xs);color:var(--text-tertiary);padding:6px 10px;font-weight:500}.model-group-head{border-top:1px solid var(--border-subtle);font-size:var(--text-xs);letter-spacing:.02em;color:var(--text-secondary);margin-top:6px;padding:8px 10px 4px;font-weight:600}.model-badge-busy{background:var(--bg-hover);color:var(--text-secondary)}.model-option{align-items:center;gap:var(--sp-3);border-radius:var(--r-md);text-align:left;width:100%;padding:9px 10px;display:flex}.model-option:hover,.model-option:focus-visible{background:var(--bg-hover);box-shadow:none}.model-option:focus-visible{background:var(--bg-active)}.model-option-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.model-option-title{font-size:var(--text-md);color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:6px;font-weight:500;display:flex}.model-vendor{font-size:var(--text-xs);color:var(--text-tertiary);font-weight:400}.model-badge{border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent-text);font-size:var(--text-2xs);padding:1px 6px;font-weight:500}.model-option-desc{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}.model-check{width:16px;color:var(--accent);flex:none}.model-menu-foot{border-top:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-tertiary);margin:4px 0 0;padding:8px 10px 4px}.settings-dialog{width:min(720px,100vw - 32px);height:min(520px,100dvh - 32px)}.settings-dialog .dialog-body{flex:1;padding:0;display:flex}.settings{border-top:1px solid var(--border-subtle);flex:1;min-height:0;display:flex}.settings-tabs{width:190px;padding:var(--sp-3);border-right:1px solid var(--border-subtle);flex-direction:column;flex:none;gap:2px;display:flex}.settings-tab{border-radius:var(--r-md);height:36px;color:var(--text-secondary);font-size:var(--text-md);text-align:left;align-items:center;gap:10px;padding:0 10px;display:flex}.settings-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-tab[aria-selected=true]{background:var(--bg-selected);color:var(--text-primary)}.settings-panel{min-width:0;padding:var(--sp-2) var(--sp-6) var(--sp-5);flex:1;overflow-y:auto}.settings-panel .field-row+.field-row{border-top:1px solid var(--border-subtle)}.settings-danger{border:1px solid var(--danger-border);color:var(--danger)}.settings-danger:hover:not(:disabled){background:var(--danger-soft)}.shortcuts{padding:var(--sp-2) 0;margin:0;list-style:none}.shortcuts li{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.shortcuts li:last-child{border-bottom:0}.shortcut-keys{gap:4px;display:inline-flex}@media (width<=640px){.settings-dialog{height:min(620px,100dvh - 32px)}.settings{flex-direction:column}.settings-tabs{border-right:0;border-bottom:1px solid var(--border-subtle);width:auto;padding:var(--sp-2) var(--sp-3);flex-direction:row;overflow-x:auto}.settings-tab{height:32px;font-size:var(--text-sm);flex:none}.settings-panel{padding:var(--sp-1) var(--sp-4) var(--sp-4)}.settings-panel .field-row{flex-wrap:wrap}}.sidebar{width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);height:100%;padding:var(--sp-3) var(--sp-2) var(--sp-2);gap:var(--sp-2);flex-direction:column;flex:none;display:flex}.sidebar-drawer{z-index:var(--z-drawer);width:min(var(--sidebar-w), 86vw);transition:transform var(--dur-slow) var(--ease), box-shadow var(--dur-slow);padding-top:max(var(--sp-3), env(safe-area-inset-top));padding-bottom:max(var(--sp-2), env(safe-area-inset-bottom));position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar-drawer.is-open{box-shadow:24px 0 60px -20px var(--shadow-drawer);transform:none}.sidebar-top{padding:0 var(--sp-1) var(--sp-2) var(--sp-2);justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-name{letter-spacing:-.01em;font-size:15px;font-weight:650}.brand-tag{font-size:var(--text-2xs);color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase}.new-chat{border-radius:var(--r-md);background:var(--bg-elevated);border:1px solid var(--border);height:38px;font-weight:500;font-size:var(--text-md);color:var(--text-primary);transition:background var(--dur-fast), border-color var(--dur-fast);align-items:center;gap:10px;padding:0 10px 0 12px;display:flex}.new-chat:hover{background:var(--bg-elevated-hover);border-color:var(--border-strong)}.career-nav{border-radius:var(--r-md);height:36px;font-size:var(--text-md);color:var(--text-secondary);transition:background var(--dur-fast), color var(--dur-fast);align-items:center;gap:10px;padding:0 10px 0 12px;display:flex}.career-nav svg{color:var(--accent-text)}.career-nav:hover{background:var(--bg-hover);color:var(--text-primary)}.career-nav.is-active{background:var(--bg-selected);color:var(--text-primary)}.new-chat-kbd,.search-kbd{gap:2px;margin-left:auto;display:inline-flex}.sidebar-search{align-items:center;gap:var(--sp-2);border-radius:var(--r-md);height:36px;color:var(--text-tertiary);transition:border-color var(--dur-fast), background var(--dur-fast);border:1px solid #0000;padding:0 6px 0 10px;display:flex}.sidebar-search:hover{background:var(--bg-hover)}.sidebar-search:focus-within{background:var(--bg-input);border-color:var(--accent-focus)}.sidebar-search-input{min-width:0;height:100%;font-size:var(--text-md);background:0 0;border:0;flex:1}.sidebar-search-input:focus-visible{box-shadow:none}.sidebar-search-input::placeholder{color:var(--text-tertiary)}.sidebar-search-input::-webkit-search-cancel-button{display:none}.conv-list{min-height:0;margin:0 calc(var(--sp-2) * -1);padding:0 var(--sp-2);flex:1;overflow-y:auto}.conv-group+.conv-group{margin-top:var(--sp-3)}.conv-group-label{margin:var(--sp-2) 0 var(--sp-1);font-size:var(--text-xs);color:var(--text-tertiary);padding:0 10px;font-weight:500}.conv-group ul{margin:0;padding:0;list-style:none}.conv-item{border-radius:var(--r-md);transition:background var(--dur-fast);align-items:center;display:flex;position:relative}.conv-item:hover{background:var(--bg-hover)}.conv-item.is-active{background:var(--bg-selected)}.conv-link{align-items:center;gap:var(--sp-2);border-radius:var(--r-md);text-align:left;min-width:0;height:36px;color:var(--text-secondary);font-size:var(--text-md);flex:1;padding:0 10px;display:flex}.conv-item:hover .conv-link,.conv-item.is-active .conv-link{color:var(--text-primary)}.conv-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conv-item:hover .conv-link,.conv-item:focus-within .conv-link,.conv-item.is-active .conv-link{padding-right:36px}@media (hover:none){.conv-link{padding-right:36px}}.conv-kind{color:var(--accent-text);flex:none}.conv-live{background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.conv-menu{opacity:0;position:absolute;right:4px}.conv-item:hover .conv-menu,.conv-item:focus-within .conv-menu,.conv-item.is-active .conv-menu,.conv-menu[aria-expanded=true]{opacity:1}@media (hover:none){.conv-menu{opacity:1}}.conv-rename{border-radius:var(--r-md);border:1px solid var(--accent-focus);background:var(--bg-input);width:100%;height:36px;font-size:var(--text-md);padding:0 10px}.conv-rename:focus-visible{box-shadow:0 0 0 3px var(--accent-focus-glow)}.conv-empty{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-tertiary);flex-direction:column;align-items:center;gap:4px;display:flex}.conv-empty p{margin:var(--sp-2) 0 0;color:var(--text-secondary);font-weight:500}.conv-empty span{font-size:var(--text-xs)}.sidebar-footer{justify-content:space-between;align-items:center;gap:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--border-subtle);display:flex}.status{align-items:center;gap:var(--sp-2);border-radius:var(--r-md);min-width:0;height:32px;color:var(--text-secondary);font-size:var(--text-xs);padding:0 10px;display:inline-flex;position:relative}.status:hover{background:var(--bg-hover);color:var(--text-primary)}.status-compact{justify-content:center;width:32px;padding:0}.status-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-dot{background:var(--text-tertiary);border-radius:50%;flex:none;width:8px;height:8px}.status[data-status=ok] .status-dot{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.status[data-status=checking] .status-dot{background:var(--text-secondary);animation:1s ease-in-out infinite pulse}.status[data-status=missing_key] .status-dot,.status[data-status=auth_failed] .status-dot,.status[data-status=unreachable] .status-dot{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.rail{align-items:center;gap:var(--sp-1);width:var(--rail-w);height:100%;padding:var(--sp-3) 0;background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);flex-direction:column;flex:none;display:flex}.rail .icon-btn{width:38px;height:38px}.rail-logo{margin-bottom:var(--sp-3)}.rail-spacer{flex:1}@media (hover:none){.new-chat-kbd,.search-kbd{display:none}}.app{background:var(--bg-app);height:100dvh;display:flex;position:relative;overflow:hidden}.workspace{background:radial-gradient(1200px 420px at 50% -180px, var(--glow), transparent 70%), var(--bg-app);flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.backdrop{z-index:calc(var(--z-drawer) - 1);background:var(--backdrop);opacity:0;pointer-events:none;transition:opacity var(--dur-slow) var(--ease);position:fixed;inset:0}.backdrop.is-visible{opacity:1;pointer-events:auto}.crash{place-content:center;justify-items:center;gap:var(--sp-3);height:100%;padding:var(--sp-6);text-align:center;display:grid}.crash h1{font-size:var(--text-xl);margin:0}.crash p{margin:0 0 var(--sp-2);color:var(--text-secondary)}.skip-link{z-index:var(--z-tooltip);border-radius:var(--r-md);background:var(--btn-primary-bg);color:var(--btn-primary-fg);padding:8px 12px;font-weight:500;text-decoration:none;position:absolute;top:-48px;left:12px}.skip-link:focus-visible{top:12px}
