@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#fff;--bg-surface:#f7f7f8;--bg-elevated:#f0f0f2;--bg-overlay:#0000006b;--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--border-subtle:#f0f0f2;--border-medium:#e5e7eb;--accent:#4f46e5;--accent-hover:#4338ca;--accent-subtle:#eef2ff;--accent-soft:#e0e7ff;--accent-text:#3730a3;--accent-border:#c7d2fe;--focus-ring:#4f46e5;--focus-ring-shadow:0 0 0 3px #4f46e52e;--danger:#b91c1c;--danger-hover:#991b1b;--danger-soft:#fef2f2;--danger-border:#fecaca;--danger-text:#991b1b;--warning:#b45309;--warning-soft:#fffbeb;--warning-border:#b4530947;--warning-text:#b45309;--success:#16a34a;--success-soft:#f0fdf4;--success-border:#bbf7d0;--success-text:#15803d;--info:#2563eb;--info-soft:#dbeafe;--info-border:#2563eb3d;--info-text:#1d4ed8;--shadow-1:0 1px 2px #0000000f, 0 1px 3px #0000000a;--shadow-2:0 4px 6px #00000012, 0 2px 4px #0000000a;--shadow-3:0 10px 24px #0000001a, 0 4px 8px #0000000d;--font-sans:var(--font-inter), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:20px;--text-2xl:22px;--text-3xl:24px;--lh-tight:1.25;--lh-normal:1.45;--lh-relaxed:1.55;--lh-prose:1.65;--prose-max-width:68ch;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:56px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-pill:9999px;--ease-default:cubic-bezier(.4, 0, .2, 1);--duration-fast:.1s;--duration-base:.15s;--duration-slow:.25s;--z-dropdown:100;--z-sticky:120;--z-modal:200;--z-toast:300;--bg:var(--bg-surface);--panel:var(--bg-base);--panel-strong:var(--bg-surface);--text:var(--text-primary);--muted:var(--text-muted);--line:var(--border-medium);--accent-strong:var(--accent-hover)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0f0f0f;--bg-surface:#1a1a1a;--bg-elevated:#242424;--bg-overlay:#000000a3;--text-primary:#ececec;--text-secondary:#d1d5db;--text-muted:#9ca3af;--border-subtle:#2a2a2a;--border-medium:#333;--accent:#6366f1;--accent-hover:#818cf8;--accent-subtle:#1e1b4b;--accent-soft:#312e81;--accent-text:#a5b4fc;--accent-border:#4338ca;--focus-ring:#818cf8;--focus-ring-shadow:0 0 0 3px #818cf840;--danger:#f87171;--danger-hover:#fca5a5;--danger-soft:#2d1111;--danger-border:#7f1d1d;--danger-text:#fca5a5;--warning:#fbbf24;--warning-soft:#2d1f00;--warning-border:#fbbf244d;--warning-text:#fcd34d;--success:#4ade80;--success-soft:#052e16;--success-border:#14532d;--success-text:#86efac;--info:#60a5fa;--info-soft:#172554;--info-border:#60a5fa4d;--info-text:#93c5fd;--shadow-1:0 1px 2px #0006;--shadow-2:0 0 0 1px var(--border-medium), 0 4px 8px #0000004d;--shadow-3:0 0 0 1px var(--border-medium), 0 8px 24px #00000080}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0f0f0f;--bg-surface:#1a1a1a;--bg-elevated:#242424;--bg-overlay:#000000a3;--text-primary:#ececec;--text-secondary:#d1d5db;--text-muted:#9ca3af;--border-subtle:#2a2a2a;--border-medium:#333;--accent:#6366f1;--accent-hover:#818cf8;--accent-subtle:#1e1b4b;--accent-soft:#312e81;--accent-text:#a5b4fc;--accent-border:#4338ca;--focus-ring:#818cf8;--focus-ring-shadow:0 0 0 3px #818cf840;--danger:#f87171;--danger-hover:#fca5a5;--danger-soft:#2d1111;--danger-border:#7f1d1d;--danger-text:#fca5a5;--warning:#fbbf24;--warning-soft:#2d1f00;--warning-border:#fbbf244d;--warning-text:#fcd34d;--success:#4ade80;--success-soft:#052e16;--success-border:#14532d;--success-text:#86efac;--info:#60a5fa;--info-soft:#172554;--info-border:#60a5fa4d;--info-text:#93c5fd;--shadow-1:0 1px 2px #0006;--shadow-2:0 0 0 1px var(--border-medium), 0 4px 8px #0000004d;--shadow-3:0 0 0 1px var(--border-medium), 0 8px 24px #00000080}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#64748b47 transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#64748b47}::-webkit-scrollbar-thumb:hover{background:#64748b85}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.activity-pulse{box-shadow:none;outline:2px solid var(--accent);outline-offset:2px;animation:none}.streaming-cursor{opacity:1;animation:none}.skeleton{background:var(--bg-elevated);animation:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);letter-spacing:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background-color:#0000;background-image:none;border:0;padding:0}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}input,select,textarea{border:1px solid var(--line);background:var(--bg-base);width:100%;color:var(--text);border-radius:6px;outline:none;padding:10px 11px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring-shadow)}textarea{resize:vertical}label{color:var(--text-secondary);gap:7px;font-size:13px;font-weight:600;display:grid}.checkbox-label{align-items:center;display:flex}.checkbox-label input{width:auto}.center-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.vault-panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:18px;width:min(440px,100%);padding:28px;display:grid;box-shadow:0 1px 2px #0f172a14}.brand-mark{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-strong);border-radius:8px;place-items:center;display:grid}.vault-panel h1,.topbar h1,.chat-header h2,.section-title h2{margin:0}.vault-panel h1{font-size:24px}.provider-onboarding-backdrop{z-index:200;background:#0f172a6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.provider-onboarding-dialog{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:18px;width:min(540px,100%);max-height:calc(100dvh - 48px);padding:24px;display:grid;overflow:auto;box-shadow:0 18px 48px #0f172a3d}.provider-onboarding-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.provider-onboarding-header h2,.provider-onboarding-header p,.provider-onboarding-step p{margin:0}.provider-onboarding-header h2{font-size:22px}.provider-onboarding-header p,.provider-onboarding-step p,.provider-onboarding-option small{color:var(--muted);font-size:13px;line-height:1.5}.provider-onboarding-options,.provider-onboarding-form{gap:12px;display:grid}.provider-onboarding-option{border:1px solid var(--line);background:var(--bg-base);text-align:left;border-radius:8px;align-items:flex-start;gap:12px;width:100%;padding:12px;display:flex}.provider-onboarding-option:hover,.provider-onboarding-option:focus{border-color:var(--accent);box-shadow:var(--focus-ring-shadow)}.provider-onboarding-option span:last-child,.provider-onboarding-step{gap:4px;display:grid}.model-step-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.model-step-heading>div{gap:4px;display:grid}.provider-onboarding-option-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-strong);border-radius:8px;flex:none;place-items:center;display:grid}.provider-onboarding-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.model-allowlist{gap:8px;max-height:320px;display:grid;overflow:auto}.onboarding-model-allowlist{max-height:280px}.model-allowlist-row{border:1px solid var(--line);background:var(--bg-base);border-radius:8px;gap:8px;padding:8px;display:grid}.model-allowlist-check{align-items:flex-start}.model-allowlist-check span{gap:2px;min-width:0;display:grid}.model-allowlist-check small{color:var(--muted);font-size:12px}.model-allowlist-controls{gap:8px;padding-left:24px;display:grid}.stack,.provider-form{gap:12px;display:grid}.app-shell{height:100dvh;min-height:0;transition:grid-template-columns var(--duration-slow) var(--ease-default);grid-template-columns:minmax(260px,300px) minmax(0,1fr);grid-template-areas:"sidebar chat";display:grid;overflow:hidden}@media (min-width:761px){.app-shell.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.app-shell.sidebar-collapsed .sidebar{border-right:0;width:0;min-width:0;padding:0;overflow:hidden}}.sidebar{border-right:1px solid var(--line);background:var(--panel-strong);flex-direction:column;grid-area:sidebar;gap:10px;min-height:0;padding:12px;display:flex;overflow:hidden auto}.topbar,.chat-header,.section-title,.button-row,.composer-actions,.header-controls,.message-meta{align-items:center;display:flex}.topbar,.chat-header{justify-content:space-between;gap:14px}.chat-header-lead{align-items:center;gap:12px;min-width:0;display:flex}.topbar-actions{align-items:center;gap:8px;display:flex}.chat-header h2{font-size:20px}.topbar h1{font-size:16px}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 3px;font-size:11px;font-weight:700}.language-control{justify-self:start;display:inline-grid}.vault-controls{justify-content:center;align-items:center;gap:8px;display:flex}.language-control select{min-width:64px;padding:8px 10px}.language-control.compact{align-items:center}.language-control.compact select{min-width:58px}.panel{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;padding:12px;display:grid}.quick-config{gap:10px}.grow-panel{flex:1;grid-template-rows:auto auto minmax(0,1fr);min-height:140px}.section-title{color:var(--text-secondary);justify-content:flex-start;gap:8px}.section-title h2{flex:1;font-size:14px}.disclosure-panel{background:0 0;border:0;border-radius:0;flex:none;gap:0;padding:0;overflow:hidden}.settings-group{border-top:1px solid var(--line);flex-direction:column;flex:none;display:flex}.settings-group .disclosure-panel+.disclosure-panel{border-top:1px solid var(--border-subtle)}.disclosure-trigger{width:100%;min-height:42px;color:var(--text-secondary);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.disclosure-trigger .section-title{flex:1;min-width:0}.disclosure-title>span{flex:1;font-size:14px;font-weight:700}.chevron{color:var(--muted);flex:none;transition:transform .14s}.chevron.open{transform:rotate(180deg)}.disclosure-content{border-top:1px solid var(--line);gap:12px;max-height:80vh;padding:12px;display:grid;overflow:auto}.button-row{flex-wrap:wrap;gap:8px}.primary-button,.secondary-button,.ghost-button,.icon-button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:8px 12px;font-weight:700;display:inline-flex}.primary-button{background:var(--accent);color:#fff}.primary-button:hover{background:var(--accent-strong)}.primary-button.danger{background:var(--danger)}.primary-button.danger:hover{background:var(--danger-hover)}.secondary-button{border-color:var(--line);background:var(--bg-base);color:var(--text-secondary)}.ghost-button{color:var(--text-secondary);background:0 0;border-color:#0000}.ghost-button.danger,.icon-button.danger{color:var(--danger)}.full-width{width:100%}.icon-button{border-color:var(--line);background:var(--bg-base);width:36px;color:var(--text-secondary);padding:0}.icon-button.compact{width:28px;min-height:28px}.item-list{align-content:start;gap:8px;min-height:0;display:grid;overflow:auto}.conversation-filter{padding:7px 10px;font-size:13px}.date-group{align-content:start;gap:8px;display:grid}.sidebar-date-label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin:8px 0 2px;padding:0 4px;font-size:11px;font-weight:700}.date-group:first-child .sidebar-date-label{margin-top:0}.rename-trigger{opacity:0;transition:opacity var(--duration-base) var(--ease-default)}.list-item:hover .rename-trigger,.list-item:focus-within .rename-trigger{opacity:1}@media (hover:none){.rename-trigger{opacity:1}}.rename-input{width:100%;font:inherit;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--bg-base);box-shadow:var(--focus-ring-shadow);padding:1px 5px;font-weight:700}.list-item{border:1px solid var(--line);background:var(--bg-base);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;min-height:46px;padding:6px;display:grid}.list-item.selected,.conversation-item.selected{border-color:var(--accent);background:var(--accent-soft)}.list-item>button:first-child,.conversation-item{min-width:0;color:var(--text);text-align:left;background:0 0;border:0;gap:3px;display:grid}.list-item span,.conversation-item span{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.list-item small,.conversation-item small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.provider-builtin-tag{background:var(--line);color:var(--muted);letter-spacing:.02em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:800;display:inline-block}.conversation-item{border:1px solid var(--line);background:var(--bg-base);border-radius:8px;padding:10px}.conversation-item:disabled{cursor:not-allowed;opacity:.65}.chat-area{background:var(--bg-surface);grid-area:chat;grid-template-rows:auto minmax(0,1fr) auto auto;min-width:0;min-height:0;display:grid}.chat-header{border-bottom:1px solid var(--line);background:var(--panel);padding:16px 18px}.header-controls{gap:8px}.mode-toggle{border:1px solid var(--line);background:var(--bg-surface);border-radius:8px;grid-template-columns:repeat(4,minmax(62px,1fr));display:inline-grid;overflow:hidden}.mode-toggle button{color:var(--muted);background:0 0;border:0;padding:7px 10px;font-size:13px;font-weight:800}.mode-toggle button.selected{background:var(--accent);color:#fff}.messages{flex-direction:column;gap:14px;min-height:0;margin-bottom:40px;padding:20px;display:flex;overflow:auto}.scroll-fab{z-index:var(--z-sticky);border-radius:var(--radius-pill);background:var(--accent);color:#fff;width:36px;height:36px;box-shadow:var(--shadow-2);transition:background var(--duration-base) var(--ease-default), transform var(--duration-base) var(--ease-default);flex:none;align-self:flex-end;place-items:center;display:grid;position:sticky;bottom:16px}.scroll-fab:hover{background:var(--accent-hover);transform:translateY(-1px)}.agent-timeline{gap:10px;width:min(820px,100%);margin:0 auto;display:grid}.agent-status,.agent-event{border:1px solid var(--line);background:var(--bg-base);border-radius:8px;padding:12px;box-shadow:0 1px 2px #0f172a0a}.agent-status{color:var(--text-secondary);justify-content:space-between;gap:12px;font-weight:800;display:flex}.agent-status.awaiting_approval{border-color:var(--warning-border);background:var(--warning-soft)}.agent-status.failed,.agent-status.cancelled,.agent-event.error{border-color:var(--danger-border);background:var(--danger-soft)}.agent-usage{align-items:center;gap:10px;font-weight:600;display:flex}.context-meter{background:conic-gradient(var(--accent) var(--fill,0%), var(--line) var(--fill,0%) 100%);border-radius:50%;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;position:relative}.context-meter:after{content:"";background:var(--bg-base);border-radius:50%;position:absolute;inset:4px}.context-meter.warning{background:conic-gradient(var(--warning) var(--fill,0%), var(--line) var(--fill,0%) 100%)}.context-meter-label{z-index:1;color:var(--muted);font-size:9px;font-weight:700;position:relative}.context-meter.warning .context-meter-label{color:var(--warning)}.agent-event{gap:8px;display:grid}.agent-event.compact{background:var(--bg-surface);width:fit-content;min-width:220px;box-shadow:none}.agent-event.tool{border-left:3px solid #94a3b8}.agent-event.model-progress{border-left:3px solid var(--phase-color,#60a5fa)}.model-progress-phase{color:var(--phase-color,#60a5fa);align-items:center;gap:5px;display:inline-flex}.agent-event.model-progress.phase-thinking{--phase-color:#d97706}.agent-event.model-progress.phase-reasoning{--phase-color:#7c3aed}.agent-event.model-progress.phase-planning_tools{--phase-color:#2563eb}.agent-event.model-progress.phase-responding{--phase-color:var(--accent)}.agent-event.model-progress.phase-verifying{--phase-color:#16a34a}.agent-turn{gap:10px;width:100%;display:grid}.agent-turn-note{color:var(--muted);margin:0;font-size:12px}.agent-question-text{color:var(--text-primary);margin:0;font-size:15px;font-weight:600}.agent-activity-status{border-top:1px solid var(--line);width:min(820px,100%);color:var(--phase-color,#475569);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:9px 14px;font-size:13px;font-weight:700;display:flex}.agent-activity-label{align-items:center;gap:9px;min-width:0;display:inline-flex}.agent-activity-elapsed{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-weight:600}.agent-activity-dot{background:var(--phase-color,#94a3b8);border-radius:999px;flex:none;width:8px;height:8px}.agent-activity-status.phase-thinking{--phase-color:#d97706}.agent-activity-status.phase-reasoning{--phase-color:#7c3aed}.agent-activity-status.phase-planning_tools{--phase-color:#2563eb}.agent-activity-status.phase-responding{--phase-color:var(--accent)}.agent-activity-status.phase-verifying{--phase-color:#16a34a}.agent-event.tool.success{border-left-color:var(--accent)}.agent-event.tool.error,.agent-event.approval{border-left-color:var(--warning)}.agent-event pre{background:var(--bg-surface);max-height:260px;color:var(--text-secondary);white-space:pre-wrap;border-radius:6px;margin:0;padding:9px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45;overflow:auto}.approval-input{min-height:120px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45}.field-error{color:var(--danger);margin:0;font-size:13px}.agent-run-summary{color:var(--text-secondary);gap:5px;font-weight:800;display:grid}.agent-run-summary small{color:var(--muted);font-weight:700}.message-stream{flex-direction:column;flex:auto;gap:20px;width:min(820px,100%);min-height:0;margin:0 auto;display:flex}.message{width:100%;padding:0}.message.assistant{position:relative}.message.user{flex-direction:column;align-self:flex-end;align-items:flex-end;width:fit-content;max-width:82%;display:flex}.message.user .message-bubble{border:1px solid var(--accent-border);background:var(--accent-subtle);border-radius:16px;max-width:100%;padding:10px 15px;box-shadow:0 1px 2px #0f172a0d}.message.user .message-bubble.is-editing{border-color:var(--accent);width:min(560px,100%);box-shadow:var(--focus-ring-shadow)}.message-edit-input{width:100%;min-height:3lh;color:var(--text);font:inherit;resize:vertical;background:0 0;border:none;margin:0;padding:0;line-height:1.55}.message-edit-input:focus{box-shadow:none;outline:none}.message-edit-actions{margin-top:8px}.message.system{border:1px dashed var(--line);background:var(--panel-strong);width:fit-content;max-width:100%;color:var(--muted);border-radius:8px;padding:10px 14px}.message.tool{border:1px solid var(--border-medium);background:var(--bg-elevated);border-radius:8px;align-self:flex-start;width:min(680px,100%);padding:12px 14px}.message-actions{opacity:0;pointer-events:none;align-items:center;gap:2px;margin-top:8px;margin-left:-6px;transition:opacity .12s;display:flex}.message.assistant:hover .message-actions,.message.assistant:focus-within .message-actions,.message.user:hover .message-actions,.message.user:focus-within .message-actions{opacity:1;pointer-events:auto}.message-actions.user-actions{margin-left:0;margin-right:-6px}@media (hover:none){.message-actions{opacity:1;pointer-events:auto}}.message-action{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:inline-flex}@media (hover:none){.message-action{box-sizing:content-box;width:auto;height:auto;padding:7px}}.message-action:hover{border-color:var(--line);background:var(--panel);color:var(--text)}.message-action:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.message-action:disabled{cursor:not-allowed;opacity:.45}.message-action.is-active,.message-action.is-active:hover{color:var(--accent);background:0 0;border-color:#0000}.assistant-turn-content{gap:10px;margin-top:8px;display:grid}.activity-trace{background:var(--bg-surface);color:var(--text-secondary);border-left:3px solid #94a3b875;overflow:hidden}.activity-trace.running{border-left-color:#4f46e580}.activity-trace.error{background:var(--danger-soft);border-left-color:#b91c1c8c}.activity-trace-header{width:100%;min-height:34px;color:var(--muted);text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.activity-trace-title,.activity-trace-tools,.activity-detail-heading{align-items:center;display:flex}.activity-trace-title{color:var(--text-secondary);gap:6px;font-size:12px;font-weight:800}.activity-trace-tools{flex-wrap:wrap;justify-content:flex-end;gap:5px;min-width:0}.activity-token{background:var(--bg-elevated);max-width:170px;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;border:1px solid #94a3b852;border-radius:999px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:700;overflow:hidden}.web-search-backend{background:var(--accent-subtle);width:fit-content;max-width:190px;color:var(--accent-text);text-overflow:ellipsis;white-space:nowrap;border:1px solid #4f46e53d;border-radius:999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.3;display:inline-flex;overflow:hidden}.web-search-backend.native{border-color:var(--info-border);background:var(--info-soft);color:var(--info-text)}.limit-badge{background:var(--warning-soft);width:fit-content;max-width:190px;color:var(--warning-text);text-overflow:ellipsis;white-space:nowrap;text-transform:none;border:1px solid #b4530947;border-radius:999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.3;display:inline-flex;overflow:hidden}.activity-pulse{background:var(--accent);border-radius:999px;width:8px;height:8px;animation:1.4s ease-in-out infinite activity-pulse;box-shadow:0 0 #4f46e559}.activity-trace-preview{max-height:42px;color:var(--text-muted);padding:0 10px 9px 31px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45;overflow:hidden}.activity-trace-preview p{text-overflow:ellipsis;white-space:nowrap;margin:1px 0;overflow:hidden}.activity-trace-details{border-top:1px solid #94a3b840;gap:9px;max-height:320px;padding:10px;display:grid;overflow:auto}.activity-detail{gap:6px;display:grid}.activity-detail-heading{color:var(--text-secondary);justify-content:space-between;gap:10px;font-size:12px;font-weight:800}.activity-detail-label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.activity-detail pre{background:var(--bg-base);max-height:180px;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;border:1px solid #94a3b840;border-radius:6px;margin:0;padding:8px;overflow:auto}@keyframes activity-pulse{0%{opacity:1;box-shadow:0 0 #4f46e552}70%{opacity:.72;box-shadow:0 0 0 6px #4f46e500}to{opacity:1;box-shadow:0 0 #4f46e500}}.tool-risk-badge{background:var(--bg-surface);color:var(--muted);text-transform:uppercase;white-space:nowrap;border:1px solid #94a3b852;border-radius:999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.tool-risk-badge.read{background:var(--bg-surface);color:var(--text-secondary);border-color:#94a3b873}.tool-risk-badge.external{border-color:var(--info-border);background:var(--info-soft);color:var(--info-text)}.tool-risk-badge.write{background:var(--warning-soft);color:var(--warning);border-color:#92400e3d}.tool-risk-badge.destructive{background:var(--danger-soft);color:var(--danger);border-color:#b91c1c47}.tool-duration{background:var(--bg-base);color:var(--muted);white-space:nowrap;border:1px solid #94a3b847;border-radius:999px;align-items:center;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:700;display:inline-flex}.tool-progress-list{gap:2px;display:grid}.tool-progress-line{color:var(--muted);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.45}.tool-running-placeholder{color:var(--muted);margin:0;font-size:12px;font-style:italic}.truncated-pre-wrap{gap:4px;display:grid}.show-full-toggle{color:var(--accent);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:11px;font-weight:700;text-decoration:underline}.show-full-toggle:hover{color:var(--accent-strong)}.message-meta{color:var(--muted);text-transform:uppercase;justify-content:space-between;gap:10px;font-size:12px;font-weight:700}.message p{white-space:pre-wrap;word-break:break-word;margin:8px 0 0;line-height:1.55}.message.user .message-bubble p{margin-top:0}.message-content{overflow-wrap:anywhere;margin-top:8px;line-height:1.58}.assistant-turn-content .message-content{margin-top:0}.assistant-placeholder{color:var(--muted);margin:0}.streaming-cursor{vertical-align:text-bottom;background:var(--accent);border-radius:1px;width:2px;height:1.1em;margin-left:2px;animation:.85s step-end infinite blink-cursor;display:inline-block}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.chat-thinking{color:var(--muted);align-items:center;gap:8px;padding:4px 0;font-size:14px;display:flex}.message-content>:first-child{margin-top:0}.message-content>:last-child{margin-bottom:0}.message-content p,.message-content ul,.message-content ol,.message-content blockquote,.message-content pre,.message-content table{margin:0 0 12px}.message-content p{white-space:normal;word-break:normal}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{color:var(--text-primary);margin:16px 0 8px;line-height:1.25}.message-content h1{font-size:22px}.message-content h2{font-size:19px}.message-content h3{font-size:16px}.message-content h4{font-size:14px}.message-content h5,.message-content h6{font-size:13px}.message-content ul,.message-content ol{padding-left:22px}.message-content li{margin:4px 0}.message-content blockquote{border-left:3px solid var(--line);color:var(--text-secondary);padding-left:12px}.message-content pre{background:var(--bg-surface);white-space:pre;border:1px solid #94a3b859;border-radius:6px;padding:10px;overflow:auto}.message-content code{background:var(--bg-elevated);color:var(--text-primary);border-radius:4px;padding:2px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92em}.message-content pre code{background:0 0;padding:0}.code-block{border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-surface);margin:12px 0;overflow:hidden}.code-block-header{border-bottom:1px solid var(--border-medium);background:var(--bg-elevated);justify-content:space-between;align-items:center;gap:8px;min-height:30px;padding:4px 6px 4px 12px;display:flex}.code-block-lang{font-family:var(--font-mono);letter-spacing:.03em;color:var(--text-muted);text-transform:lowercase;font-size:11px;font-weight:700}.code-block-copy{border-radius:var(--radius-sm);color:var(--text-muted);transition:background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);align-items:center;gap:4px;padding:3px 7px;font-size:11px;display:inline-flex}.code-block-copy:hover{background:var(--bg-surface);color:var(--text-primary)}.code-block-copy.is-active{color:var(--accent)}.message-content .code-block pre.code-block-body{background:0 0;border:0;border-radius:0;margin:0;padding:12px}.code-block-body.shiki-wrap{padding:0}.code-block-body.shiki-wrap pre.shiki{border:0;border-radius:0;margin:0;padding:12px;overflow:auto}.message-content table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.message-content th,.message-content td{border:1px solid var(--line);text-align:left;padding:6px 8px}.message-content th{background:var(--bg-surface);font-weight:800}.message-content a{color:var(--accent-strong);font-weight:700}.markdown-image-placeholder{color:var(--muted);font-style:italic}.empty-state{color:var(--muted);text-align:center;place-items:center;margin:auto;display:grid}.composer{border-top:1px solid var(--line);background:var(--panel);gap:10px;padding:14px 18px;display:grid}.composer textarea{resize:none;min-height:86px;max-height:160px}.composer-actions{justify-content:space-between}.composer-options{align-items:center;gap:6px;display:flex}.composer.composer-drag-over{outline:2px dashed var(--accent);outline-offset:-4px}.attachment-tray{flex-wrap:wrap;gap:8px;display:flex}.attachment-chip{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;align-items:center;gap:6px;max-width:200px;padding:4px 6px 4px 8px;font-size:12px;display:flex}.attachment-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:32px;height:32px}.attachment-icon{color:var(--muted);align-items:center;display:flex}.attachment-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.message-attachments{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.message-attachment-image{border:1px solid var(--line);object-fit:contain;border-radius:8px;max-width:320px;max-height:220px}.message-attachment-chip{border:1px solid var(--line);background:var(--panel-strong);color:var(--muted);border-radius:8px;align-items:center;gap:5px;padding:4px 9px;font-size:12px;display:inline-flex}.effort-select{border:1px solid var(--line);width:auto;min-height:36px;color:var(--text);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:600}.effort-select:disabled{color:var(--muted);cursor:not-allowed}.thinking-toggle{border:1px solid var(--line);width:auto;min-height:36px;color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600}.thinking-toggle.active{border-color:var(--accent);color:var(--accent)}.thinking-toggle:disabled{color:var(--muted);cursor:not-allowed}.dropup-anchor{position:relative}.dropup-panel{z-index:100;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;min-width:240px;max-width:calc(100vw - 32px);padding:14px;display:grid;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 4px 16px #0f172a1f}.dropup-row{gap:8px;display:grid}.dropup-checkbox-label{cursor:pointer;gap:8px}.dropup-slider-row{align-items:center;gap:10px;display:flex}.dropup-slider{width:auto;min-height:0;accent-color:var(--accent);cursor:pointer;background:0 0;border:none;flex:1;padding:0}.dropup-slider:focus{box-shadow:none;border-color:#0000}.dropup-value{text-align:right;min-width:30px;color:var(--muted);flex:none;font-size:13px;font-weight:600}.dropup-number-input{width:auto;min-height:36px;padding:6px 10px;font-size:13px}.info-anchor{position:relative}.info-panel{z-index:100;border:1px solid var(--line);background:var(--panel);min-width:220px;max-width:calc(100vw - 32px);color:var(--text);border-radius:8px;gap:8px;padding:12px 14px;font-size:13px;font-weight:400;line-height:1.5;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #0f172a1f}.info-panel p{margin:0}.error-text,.error-banner{color:var(--danger)}.error-text,.status-text{margin:0;font-size:13px}.error-banner,.status-banner,.warning-banner{border-radius:8px;margin:0 18px;padding:10px 12px;font-weight:700}.error-banner{border:1px solid var(--danger-border);background:var(--danger-soft)}.status-banner{border:1px solid var(--success-border);background:var(--success-soft);color:var(--success-text)}.warning-banner{background:var(--warning-soft);color:var(--warning-text);border:1px solid #b4530947}.status-text{color:var(--warning)}.capabilities{flex-wrap:wrap;gap:6px;display:flex}.capability{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.capability.on{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent-text)}.toast-container{z-index:var(--z-toast);pointer-events:none;gap:8px;display:grid;position:fixed;bottom:20px;right:20px}.toast{border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:var(--bg-base);min-width:220px;max-width:380px;color:var(--text-primary);box-shadow:var(--shadow-3);pointer-events:auto;animation:toast-in .18s var(--ease-default);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast-success{border-color:var(--success-border);background:var(--success-soft);color:var(--success-text)}.toast-error{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger-text)}.toast-info{border-color:var(--info-border);background:var(--info-soft);color:var(--info-text)}.confirm-backdrop{z-index:var(--z-modal);background:var(--bg-overlay);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:var(--bg-base);width:min(400px,100%);box-shadow:var(--shadow-3);gap:16px;padding:24px;display:grid}.confirm-dialog h2{margin:0;font-size:16px}.confirm-dialog p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}@media (max-width:900px){.app-shell{grid-template-columns:minmax(230px,270px) minmax(0,1fr)}}@media (max-width:760px){.app-shell{flex-direction:column;height:auto;min-height:100dvh;display:flex;overflow:visible}.sidebar,.chat-area{min-height:auto}.chat-area{height:72dvh;min-height:520px}.sidebar{border-right:0;border-top:1px solid var(--line);overflow:visible}.grow-panel{flex:none}.disclosure-content{max-height:none}.chat-header,.header-controls{flex-direction:column;align-items:stretch}}
