:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6fa;--surface:#fff;--surface-subtle:#f2f4f9;--surface-strong:#e8ecf4;--surface-inset:#eef1f7;--border:#e3e7f0;--border-strong:#c7d0e0;--text:#0d1526;--muted:#5f6b80;--muted-strong:#3b4658;--on-accent:#fff;--primary:#2f66f5;--primary-strong:#1e4fd0;--primary-soft:#e9effe;--primary-border:#c6d7fd;--secondary:#7c3aed;--secondary-soft:#f2eaff;--success:#0f7a52;--success-soft:#e4f4ed;--danger:#c53434;--danger-soft:#fbeaea;--danger-border:#f2c8c8;--warning:#92640a;--warning-soft:#fdf1d4;--nav-bg:#ffffffdb;--bottom-nav-bg:#fffffff0;--overlay-blur:saturate(180%) blur(20px);--harness-omp:#6d28d9;--harness-omp-soft:#f2eaff;--harness-omp-border:#dcf;--harness-pi:#0d7a70;--harness-pi-soft:#e0f4f1;--harness-pi-border:#bde5df;--harness-claude:#b45309;--harness-claude-soft:#fdefdb;--harness-claude-border:#f5d9ae;--harness-codex:#047857;--harness-codex-soft:#e2f5ec;--harness-codex-border:#c1e9d5;--focus-ring:#2f66f557;--selection:#2f66f52e;--code-bg:#0f1524;--code-text:#e8edf7;--modal-backdrop:#0d152666;--sheet-backdrop:#0d15265c;--font-family:Inter, "Inter var", -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"Cascadia Code", "JetBrains Mono", "SF Mono", ui-monospace, Consolas, monospace;--font-2xs:.6875rem;--font-xs:.75rem;--font-sm:.8125rem;--font-md:.875rem;--font-lg:.9375rem;--font-xl:1.0625rem;--font-2xl:1.25rem;--tracking-caps:.06em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-pill:999px;--shadow-sm:0 1px 2px #0d15260f, 0 1px 1px #0d15260a;--shadow-md:0 8px 24px #0d152617, 0 2px 6px #0d15260d;--shadow-lg:0 24px 56px #0d15262e, 0 4px 12px #0d152614;--control-h:2rem;--control-h-lg:2.25rem;--control-px:.625rem;--tap-min:2rem;--menubar-h:2.5rem;--motion-fast:.11s;--motion-base:.18s;--ease:cubic-bezier(.2, .8, .3, 1);--z-sticky:20;--z-menu:30;--z-modal-backdrop:40;--z-modal:50}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090c13;--surface:#10141d;--surface-subtle:#161b26;--surface-strong:#1f2634;--surface-inset:#0c1017;--border:#222a3a;--border-strong:#3a4557;--text:#e7ecf6;--muted:#8d9ab0;--muted-strong:#bcc6d8;--on-accent:#06122c;--primary:#7ea6ff;--primary-strong:#a7c2ff;--primary-soft:#7ea6ff24;--primary-border:#7ea6ff52;--secondary:#c4b5fd;--secondary-soft:#7c3aed3d;--success:#45d6a0;--success-soft:#0f7a523d;--danger:#ff8a8a;--danger-soft:#c534343d;--danger-border:#ff8a8a5c;--warning:#f3ba3f;--warning-soft:#92640a47;--nav-bg:#10141dd6;--bottom-nav-bg:#10141df0;--harness-omp:#c4b5fd;--harness-omp-soft:#7c3aed38;--harness-omp-border:#c4b5fd5c;--harness-pi:#5eead4;--harness-pi-soft:#0d7a7042;--harness-pi-border:#5eead452;--harness-claude:#f6ad55;--harness-claude-soft:#b4530942;--harness-claude-border:#f6ad5557;--harness-codex:#34d399;--harness-codex-soft:#0478573d;--harness-codex-border:#34d39952;--focus-ring:#7ea6ff66;--selection:#7ea6ff38;--code-bg:#070a11;--code-text:#e7ecf6;--modal-backdrop:#02050cad;--sheet-backdrop:#02050c99;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px #00000073, 0 2px 6px #0000004d;--shadow-lg:0 24px 56px #0009, 0 4px 12px #0006}*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-family);font-size:var(--font-md);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-variant-numeric:tabular-nums;margin:0;line-height:1.5;overflow-x:hidden}::selection{background:var(--selection)}h1,h2,h3,h4,h5,p,ul,ol{margin:0}h1{font-size:var(--font-md);letter-spacing:-.01em;font-weight:650;line-height:1.2}h2{font-size:var(--font-xl);letter-spacing:-.015em;font-weight:650;line-height:1.25}h3{font-size:var(--font-lg);letter-spacing:-.01em;font-weight:620;line-height:1.3}h4{font-size:var(--font-md);font-weight:620}p{color:var(--muted)}a{color:var(--primary);text-underline-offset:.2em}.subtle{color:var(--muted);font-size:var(--font-sm)}.eyebrow{color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.positive{color:var(--success)}.negative{color:var(--danger)}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--border-strong);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-track{background:0 0}button,input,textarea,select{font:inherit}button{min-height:var(--control-h);border-radius:var(--radius-md);padding:0 var(--control-px);justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--font-sm);color:var(--text);background:var(--surface);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease), color var(--motion-fast) var(--ease), box-shadow var(--motion-fast) var(--ease);border:1px solid #0000;font-weight:550;display:inline-flex}button:active:not(:disabled){transform:translateY(.5px)}button:disabled{opacity:.45;cursor:not-allowed}button svg{flex:none}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-accent);box-shadow:var(--shadow-sm);font-weight:600}.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn-ghost{color:var(--muted-strong);background:0 0;border-color:#0000}.btn-danger{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.btn-icon{min-width:var(--control-h);min-height:var(--control-h);border-radius:var(--radius-md);justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}button.compact{min-height:1.75rem;padding:0 var(--space-2);font-size:var(--font-xs)}@media (hover:hover){.btn-primary:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-subtle);border-color:var(--border-strong)}.btn-ghost:hover:not(:disabled){background:var(--surface-strong);color:var(--text)}.btn-danger:hover:not(:disabled){background:var(--danger);border-color:var(--danger);color:var(--on-accent)}}input,textarea,select{width:100%;min-height:var(--control-h-lg);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-size:var(--font-sm);transition:border-color var(--motion-fast) var(--ease), box-shadow var(--motion-fast) var(--ease);padding:.3rem .55rem}input::placeholder,textarea::placeholder{color:var(--muted)}select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right .85rem center,right .6rem center;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:1.75rem}textarea{resize:vertical;min-height:4.5rem;padding:var(--space-2) var(--space-3);line-height:1.5}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring);outline:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[role=option]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.field{gap:var(--space-2);min-width:0;display:grid}.field>span,.form-grid label,.settings label{color:var(--muted-strong);font-size:var(--font-xs);font-weight:600;display:block}.field-hint{color:var(--muted);font-size:var(--font-xs);margin:0;line-height:1.45}.kbd{border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-subtle);min-width:1.35rem;height:1.25rem;color:var(--muted-strong);font-family:var(--font-family);font-size:var(--font-2xs);border-bottom-width:2px;justify-content:center;align-items:center;padding:0 .3rem;font-weight:600;line-height:1;display:inline-flex}.pill{border-radius:var(--radius-pill);min-height:1.25rem;font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap;align-items:center;gap:.3rem;padding:0 .45rem;font-weight:700;display:inline-flex}.pill.idle{color:var(--muted-strong);background:var(--surface-strong)}.pill.busy,.pill.retry{color:var(--warning);background:var(--warning-soft)}.pill.waiting{color:var(--primary);background:var(--primary-soft)}.status-dot{border-radius:var(--radius-pill);background:var(--muted);flex:none;width:.5rem;height:.5rem}.status-dot.connected{background:var(--success)}.status-dot.connecting,.status-dot.reconnecting{background:var(--warning);animation:1.4s ease-in-out infinite pulse-dot}.status-dot.offline{background:var(--danger)}.harness-badge{border:1px solid var(--primary-border);border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-strong);font-size:var(--font-2xs);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;flex:none;align-items:center;padding:0 .3rem;font-weight:700;line-height:1.5;display:inline-flex}.harness-badge.harness-omp{border-color:var(--harness-omp-border);background:var(--harness-omp-soft);color:var(--harness-omp)}.harness-badge.harness-pi{border-color:var(--harness-pi-border);background:var(--harness-pi-soft);color:var(--harness-pi)}.harness-badge.harness-claude{border-color:var(--harness-claude-border);background:var(--harness-claude-soft);color:var(--harness-claude)}.harness-badge.harness-codex{border-color:var(--harness-codex-border);background:var(--harness-codex-soft);color:var(--harness-codex)}.brand-text{min-width:0}.brand-meta{align-items:center;gap:var(--space-2);min-width:0;display:flex}.brand-server{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:var(--font-xs);overflow:hidden}.app-icon{border-radius:var(--radius-sm);flex:none;width:1.25rem;height:1.25rem}.menu-surface{min-width:14rem;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);gap:1px;display:grid}.menu-item{align-items:center;gap:var(--space-2);width:100%;min-height:1.9rem;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text);font-size:var(--font-sm);text-align:left;background:0 0;border:0;justify-content:flex-start;font-weight:500;display:flex}.menu-item[aria-checked=true]:before{content:"✓";color:var(--primary);font-weight:700}.menu-item-label{text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.menu-item-shortcut{color:var(--muted);font-size:var(--font-xs);font-variant-numeric:tabular-nums;flex:none}.menu-separator{height:1px;margin:var(--space-1) var(--space-2);background:var(--border)}.menu-group-label{padding:var(--space-2) var(--space-2) var(--space-1);color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.app-shell{background:var(--bg);flex-direction:column;width:100%;min-height:100dvh;display:flex}.app-shell-desktop{--chat-measure:clamp(52rem, 58vw, 64rem);width:100%;max-width:100%;height:100dvh;overflow:hidden}.app-body{flex:auto;align-items:stretch;min-height:0;display:flex}.main-content{flex-direction:column;flex:auto;min-width:0;display:flex;position:relative}.app-menubar{align-items:center;gap:var(--space-2);height:var(--menubar-h);padding:0 var(--space-2);border-bottom:1px solid var(--border);background:var(--surface);-webkit-app-region:drag;flex:none;display:flex}.app-menubar>*{-webkit-app-region:no-drag}.menubar-brand{align-items:center;gap:var(--space-2);padding:0 var(--space-2) 0 var(--space-1);min-width:0;display:flex}.menubar-brand h1{font-size:var(--font-sm);white-space:nowrap}.menubar-menus{align-items:center;gap:1px;display:flex}.menubar-root{position:relative}.menubar-trigger{min-height:1.75rem;padding:0 var(--space-2);color:var(--muted-strong);background:0 0;border-color:#0000;font-weight:500}.menubar-trigger[aria-expanded=true]{background:var(--surface-strong);color:var(--text)}.menubar-dropdown{top:calc(100% + var(--space-1));z-index:var(--z-menu);position:absolute;left:0}.menubar-spacer{flex:auto}.menubar-right{align-items:center;gap:var(--space-2);min-width:0;display:flex}.palette-hint{align-items:center;gap:var(--space-2);min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);color:var(--muted);font-size:var(--font-xs);display:inline-flex}.server-switcher{min-width:0;position:relative}.server-switcher-trigger{align-items:center;gap:var(--space-2);max-width:15rem;min-height:1.75rem;padding:0 var(--space-2);border-color:var(--border);background:var(--surface-subtle);color:var(--text);display:flex}.server-switcher-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:550;overflow:hidden}.server-switcher-menu{top:calc(100% + var(--space-1));z-index:var(--z-menu);width:min(18rem, calc(100vw - 2 * var(--space-3)));min-width:0;max-height:min(70dvh,30rem);position:absolute;right:0;overflow-y:auto}.server-option{align-items:center;gap:var(--space-2);width:100%;min-height:2.5rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);text-align:left;background:0 0;border:0;grid-template-columns:auto 1fr auto;display:grid}.server-option.active{background:var(--primary-soft)}.server-option-text{gap:.05rem;min-width:0;display:grid}.server-option-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-sm);font-weight:600;overflow:hidden}.server-option-text small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:var(--font-xs);overflow:hidden}.desktop-sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.sidebar-brand{align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border);min-width:0;display:flex}.sidebar-brand .brand-text{min-width:0}.sidebar-brand h1,.sidebar-brand .subtle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-toolbar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);display:flex}.sidebar-toolbar .search{flex:auto;min-width:0}.search-field{flex:auto;align-items:center;min-width:0;display:flex;position:relative}.search-field svg{left:var(--space-2);color:var(--muted);pointer-events:none;position:absolute}.search-field input{padding-left:1.9rem}.sidebar-sessions{min-height:0;padding:0 var(--space-2);padding-bottom:calc(5.5rem + var(--space-3));flex-direction:column;flex:auto;gap:1px;display:flex;overflow:hidden auto}.sidebar-empty{padding:var(--space-4) var(--space-3);text-align:center}.sidebar-group-label{z-index:1;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2) var(--space-1);background:linear-gradient(var(--surface) 65%, transparent);color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700;display:flex;position:sticky;top:0}.sidebar-group-label span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-group-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.sidebar-footer{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);display:flex;container-type:inline-size}.sidebar-footer button{flex:1 1 0;justify-content:center;min-width:0}@container (width<=240px){.sidebar-footer-label{display:none}}.resize-handle{cursor:col-resize;z-index:5;touch-action:none;width:10px;position:absolute;top:0;bottom:0}.resize-handle:after{content:"";width:2px;transition:background var(--motion-fast) var(--ease);background:0 0;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.resize-handle:hover:after,.resize-handle:active:after{background:var(--primary)}.resize-handle--end{right:0;transform:translate(50%)}.resize-handle--start{left:0;transform:translate(-50%)}.inspector{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.inspector-header{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);display:flex}.inspector-header h3{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-sm);flex:auto;overflow:hidden}.inspector-body{min-height:0;padding:var(--space-3);align-content:start;gap:var(--space-4);flex:auto;display:grid;overflow-y:auto}.inspector-section{gap:var(--space-2);min-width:0;display:grid}.inspector-section-title{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700;display:flex}.inspector-section-title button{margin-left:auto}.segmented{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);gap:2px;padding:2px;display:inline-flex}.segmented button{min-height:1.6rem;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--muted-strong);font-size:var(--font-xs);background:0 0;border:0}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.mobile-appbar{z-index:var(--z-sticky);align-items:center;gap:var(--space-2);min-height:3.25rem;padding:var(--space-2) var(--space-3);padding-top:calc(var(--space-2) + env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--nav-bg);-webkit-backdrop-filter:var(--overlay-blur);display:flex;position:sticky;top:0}.mobile-appbar-brand{align-items:center;gap:var(--space-2);min-width:0;display:flex}.mobile-appbar-brand .brand-text,.mobile-appbar-brand h1{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-appbar-spacer{flex:auto}.mobile-global-appbar .server-switcher{flex:0 auto;margin-left:auto}.mobile-global-appbar .server-switcher-trigger{max-width:min(13rem,52vw)}.mobile-session-appbar{min-height:calc(3.75rem + env(safe-area-inset-top));padding-block:calc(var(--space-1) + env(safe-area-inset-top)) var(--space-1)}.mobile-back-button,.mobile-session-appbar .session-actions-toggle{width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0}.mobile-back-button{margin-left:calc(-1 * var(--space-1));color:var(--muted-strong)}.appbar-lead{align-items:center;gap:var(--space-2);flex:auto;min-width:0;display:flex}.appbar-titles{gap:.05rem;min-width:0;display:grid}.appbar-titles h1{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-lg);overflow:hidden}.appbar-titles p{min-width:0;color:var(--muted);font-size:var(--font-xs);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.appbar-actions{align-items:center;gap:var(--space-1);flex:none;display:flex}.bottom-nav{display:none}.panel{min-width:0;padding:var(--space-4) var(--space-5);background:0 0}.section-heading,.header-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.section-heading{margin-bottom:var(--space-4)}.section-heading-text{gap:var(--space-1);min-width:0;display:grid}.inline-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.toolbar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid label,.settings label{display:block}.form-grid input,.form-grid select,.settings input,.settings select{margin-top:var(--space-4)}.field-row-span,.settings .form-grid label.field-row-span,.settings .form-grid label[for=password]{grid-column:1/-1}.connection-help{gap:var(--space-2);margin-top:var(--space-3);color:var(--muted);font-size:var(--font-xs);display:flex}.connection-help span{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:var(--space-2) var(--space-3)}.connection-status-row{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.connection-status-row .connection-status{margin-top:0}.connection-status{align-items:center;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--font-xs);font-weight:600;display:flex}.connection-status.connected{color:var(--success)}.connection-status.connecting,.connection-status.reconnecting{color:var(--primary)}.connection-status.offline{color:var(--danger)}.connection-pending{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-subtle)}.session-list{gap:var(--space-2);flex-direction:column;display:flex}.session-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-3) var(--space-4);cursor:pointer;transition:border-color var(--motion-fast) var(--ease), background var(--motion-fast) var(--ease), box-shadow var(--motion-fast) var(--ease);position:relative}.session-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.session-card.active{border-color:var(--primary-border);background:var(--primary-soft)}.session-card-main{align-items:start;gap:var(--space-2);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.session-card h3{overflow-wrap:break-word;font-size:var(--font-md);font-weight:600}.session-card-main p,.session-card>p{margin-top:var(--space-1);overflow-wrap:anywhere;color:var(--muted);font-size:var(--font-xs)}.session-stats{align-items:center;gap:var(--space-3);margin-top:var(--space-2);color:var(--muted);font-size:var(--font-xs);flex-wrap:wrap;display:flex}.session-stats .pill{margin-left:auto}.change-summary{align-items:center;gap:var(--space-2);color:var(--muted-strong);font-variant-numeric:tabular-nums;display:inline-flex}.session-meta-line{gap:var(--space-1);min-width:0;display:flex}.session-directory-compact{display:none}.sidebar-sessions .session-card{align-items:center;column-gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border-radius:var(--radius-md);background:0 0;border:1px solid #0000;grid-template-columns:1fr auto;grid-template-areas:"title actions""meta actions";row-gap:0;display:grid}.sidebar-sessions .session-card.active{border-color:var(--primary-border);background:var(--primary-soft)}.sidebar-sessions .session-card.busy:before,.sidebar-sessions .session-card.retry:before,.sidebar-sessions .session-card.waiting:before{content:"";left:2px;top:var(--space-2);bottom:var(--space-2);border-radius:var(--radius-pill);background:linear-gradient(var(--primary-soft), var(--primary), var(--primary-soft));background-repeat:repeat-y;background-size:100% 24px;width:2px;animation:1s linear infinite session-busy-sweep;position:absolute}.sidebar-sessions .session-card.waiting:before{background-image:linear-gradient(var(--secondary-soft), var(--secondary), var(--secondary-soft));animation-name:session-waiting-sweep}.sidebar-sessions .session-card-main{grid-area:title;min-width:0;display:block}.sidebar-sessions .session-card-main>div{min-width:0}.sidebar-sessions .session-card h3{font-size:var(--font-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:550;overflow:hidden}.sidebar-sessions .session-card.active h3{font-weight:650}.sidebar-sessions .session-card-main p,.sidebar-sessions .session-card>p{display:none}.sidebar-sessions .session-directory-compact{text-overflow:ellipsis;display:inline;overflow:hidden}.sidebar-sessions .session-directory-compact:after{content:"·";margin-left:var(--space-1)}.sidebar-sessions .session-stats{display:contents}.sidebar-sessions .session-stats .change-summary,.sidebar-sessions .session-stats .pill{display:none}.sidebar-sessions .session-stats>.subtle{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-2xs);grid-area:meta;margin-top:0;overflow:hidden}.sidebar-sessions .inline-actions{opacity:0;flex-wrap:nowrap;flex:none;grid-area:actions;gap:1px;width:0;overflow:hidden}.sidebar-sessions .session-card:hover .inline-actions,.sidebar-sessions .session-card:focus-within .inline-actions{opacity:1;width:auto}.sidebar-sessions .inline-actions button{width:1.375rem;height:1.375rem;min-height:0;color:var(--muted);box-shadow:none;background:0 0;border:none;gap:0;padding:0;font-size:0}.sidebar-sessions .inline-actions button.btn-danger:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.sidebar-sessions .session-card.renaming .inline-actions{display:none}.sidebar-sessions .session-card.renaming .session-card-main{grid-column:1/-1}.sidebar-sessions .rename-inline{gap:var(--space-1);width:100%}.sidebar-sessions .rename-input{width:100%;min-width:0;height:1.375rem;min-height:0;padding:0 var(--space-1);font-size:var(--font-xs)}.sidebar-sessions .rename-inline button{width:1.375rem;height:1.375rem;min-height:0;color:var(--muted);box-shadow:none;background:0 0;border:none;flex:none;padding:0;font-size:0}.sidebar-sessions .rename-inline button.btn-primary{color:var(--primary)}.detail{flex-direction:column;min-height:0;padding:0;display:flex}.detail-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-direction:row;display:flex}.detail-header{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface);display:flex}.detail-header>div:first-child{flex:auto;min-width:0}.detail-header h2{align-items:center;gap:var(--space-2);font-size:var(--font-lg);display:flex}.detail-title-row{flex-wrap:wrap;align-items:center;min-width:0;display:flex}.detail-title-row .rename-input{max-width:20rem}.detail-subline{align-items:center;gap:var(--space-2);min-width:0;margin-top:.1rem;display:flex}.detail-subline-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-xs);overflow:hidden}.detail-subline-note{text-overflow:ellipsis;white-space:nowrap;border-left:1px solid var(--border);padding-left:var(--space-2);color:var(--muted);font-size:var(--font-xs);flex:0 auto;overflow:hidden}.detail-header-actions{align-items:center;gap:var(--space-1);flex:none;display:flex}.session-context-strip{gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}.session-context-strip::-webkit-scrollbar{display:none}.context-chip{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);min-width:7rem;min-height:2.5rem;color:var(--text);padding:var(--space-1) var(--space-3);text-align:left;flex-direction:column;flex:1 1 0;justify-content:center;align-items:flex-start;gap:0;display:flex}.context-chip span{color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.context-chip strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:var(--font-sm);font-weight:550;overflow:hidden}.context-chip.ghost{background:var(--surface)}.context-chip.chip-warning{border-color:var(--warning);background:var(--warning-soft)}.context-chip.chip-warning strong{color:var(--warning)}.todo-box{border-bottom:1px solid var(--border);background:var(--surface-subtle);padding:var(--space-2) var(--space-4)}.todo-header-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.todo-header-row h3{font-size:var(--font-sm);align-items:center;display:flex}.todo-toggle-btn{min-height:1.6rem;padding:0 var(--space-2);color:var(--primary);font-size:var(--font-xs);background:0 0;border-color:#0000}.todo-item{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--font-sm);display:flex}.todo-status{color:var(--muted);font-weight:700}.todo-status.completed{color:var(--success)}.todo-status.in_progress{color:var(--primary)}.messages-wrap{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;position:relative}.messages{gap:var(--space-4);min-width:0;min-height:0;padding:var(--space-4);padding-bottom:var(--chat-bottom-clearance,140px);scroll-padding-bottom:var(--chat-bottom-clearance,140px);flex-direction:column;flex:auto;display:flex;overflow:hidden auto}.messages-end{min-height:1px;scroll-margin-bottom:var(--chat-bottom-clearance,140px)}.message{border-radius:var(--radius-lg);background:0 0;border:1px solid #0000;width:100%;min-width:0;max-width:100%;padding:0}.message.user{border-color:var(--primary-border);background:var(--primary-soft);width:fit-content;max-width:min(100%,42rem);padding:var(--space-3) var(--space-4);align-self:flex-end}.message.assistant{align-self:stretch}.message-content{overflow-wrap:anywhere;min-width:0;font-size:var(--font-lg);line-height:1.62}.message-attachment{width:auto;max-width:100%;max-height:22rem;margin-top:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);display:block}.message-content>:first-child{margin-top:0}.message-content p{margin-top:var(--space-3);white-space:pre-wrap;color:var(--text)}.message.user .message-content{font-size:var(--font-md)}.message-content h1,.message-content h2,.message-content h3{margin-top:var(--space-5);margin-bottom:var(--space-2)}.message-content ul,.message-content ol{margin-top:var(--space-2);padding-left:var(--space-5)}.message-content li{margin-top:var(--space-1)}.message-content blockquote{margin:var(--space-3) 0;padding-left:var(--space-3);border-left:2px solid var(--border-strong);color:var(--muted)}.message-content table{margin-top:var(--space-3);border-collapse:collapse;font-size:var(--font-sm)}.message-content th,.message-content td{border:1px solid var(--border);padding:var(--space-1) var(--space-2);text-align:left}.message-content pre{margin-top:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-text);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-sm);white-space:pre;overflow-x:auto}.message-content pre code{color:inherit;background:0 0;border:0;padding:0}.message code,.help code,.command-name{font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-strong);padding:.05rem .3rem;font-size:.9em}.typing-bubble{width:auto;padding:var(--space-2) 0;align-self:flex-start}.typing-dots{align-items:center;gap:.28rem;display:inline-flex}.typing-dot{border-radius:var(--radius-pill);background:var(--muted);width:.4rem;height:.4rem;animation:1.2s ease-in-out infinite typing-dot}.typing-dot:nth-child(2){animation-delay:.16s}.typing-dot:nth-child(3){animation-delay:.32s}.message-reasoning-summary,.message-action-summary,.message-tool-summary{justify-content:space-between;align-items:center;gap:var(--space-2);white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;margin-top:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:var(--space-1) var(--space-3);min-height:1.9rem;color:var(--muted-strong);font-size:var(--font-xs);text-align:left;cursor:pointer;font-weight:500;display:flex}.message-reasoning-summary>*,.message-action-summary>*,.message-tool-summary>*{overflow-wrap:anywhere;min-width:0}.model-option>*,.palette-item>*,.menu-item>*,.folder-row>*,.context-chip>*{text-overflow:ellipsis;min-width:0;overflow:hidden}.message-reasoning-summary+.message-content,.message-action-summary+.message-content,.message-tool-summary+.message-content,.message-reasoning-summary{margin-top:var(--space-4)}.message>.message-reasoning-summary:first-child,.message>.message-action-summary:first-child,.message>.message-tool-summary:first-child{margin-top:0}.message-reasoning-text{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font-family:var(--font-mono);font-size:var(--font-sm);margin:0;overflow-x:auto}.message-action-details>:first-child{margin-top:0}.message-action-divider{border:0;border-top:1px solid var(--border);margin:var(--space-3) 0}.message-tool-summary{min-width:0}.message-tool-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);overflow:hidden}.message-tool-meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.message-tool-diff-stats{gap:var(--space-2);font-family:var(--font-mono);display:flex}.message-tool-status-error{color:var(--danger);font-weight:700;font-size:var(--font-xs);line-height:1}.message-tool-status-pending{color:var(--muted);font-size:var(--font-xs);line-height:1}.message-tool-error.message-tool-output{color:var(--danger)}.message-tool-command,.message-tool-output{margin:0;margin-top:var(--space-2);white-space:pre;font-family:var(--font-mono);font-size:var(--font-sm);overflow-x:auto}.message-tool-command:first-child{margin-top:0}.message-patch{margin-top:var(--space-2);gap:var(--space-1);flex-direction:column;display:flex}.message-patch-file{font-family:var(--font-mono);font-size:var(--font-xs);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);padding:.15rem .45rem}.message-diff-row{justify-content:space-between;align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;width:100%;min-height:1.9rem;padding:0 var(--space-3);background:var(--surface-subtle);color:inherit;font-family:var(--font-mono);font-size:var(--font-xs);text-align:left;display:flex}.message-diff-file{overflow-wrap:anywhere}.message-diff-stats{gap:var(--space-2);white-space:nowrap;display:flex}.diff-stat-add{color:var(--success)}.diff-stat-del{color:var(--danger)}.message-diff-patch{width:fit-content;min-width:100%;font-family:var(--font-mono);font-size:var(--font-sm);margin:0;line-height:1.5;overflow-x:auto}.message-diff-patch div{padding:0 var(--space-3);white-space:pre}.diff-line-add{background:var(--success-soft);color:var(--success)}.diff-line-del{background:var(--danger-soft);color:var(--danger)}.diff-line-hunk{color:var(--muted);background:var(--surface-subtle)}.diff-line-meta{color:var(--muted)}.diff-line-context{color:var(--text)}.message-todo-list{flex-direction:column;display:flex}.message-todo-list .todo-item{padding:var(--space-2) 0;margin-top:0}.message-todo-list .todo-item+.todo-item{border-top:1px solid var(--border)}.question-card{gap:var(--space-4);border-color:var(--primary-border);border-radius:var(--radius-lg);background:var(--surface);padding:var(--space-4);box-shadow:var(--shadow-sm);flex-direction:column;align-self:stretch;display:flex}.question-block{gap:var(--space-2);flex-direction:column;display:flex}.question-header{font-size:var(--font-2xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--muted);font-weight:700}.question-text{color:var(--text);font-weight:550}.question-options{gap:var(--space-2);flex-direction:column;display:flex}.question-option{min-height:var(--control-h-lg);text-align:left;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:var(--space-2) var(--space-3);cursor:pointer;white-space:normal;flex-direction:column;align-items:flex-start;gap:.1rem;display:flex}.question-option.selected{border-color:var(--primary);background:var(--primary-soft)}.question-option-label{font-weight:600}.question-option-description{font-size:var(--font-xs);color:var(--muted);font-weight:400}.question-option.static{cursor:default}.question-custom-input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--font-sm)}.question-error{color:var(--danger);font-size:var(--font-sm)}.question-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.composer{z-index:var(--z-sticky);gap:var(--space-2);margin:0 var(--space-4) var(--space-4);padding:var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);transition:border-color var(--motion-fast) var(--ease), box-shadow var(--motion-fast) var(--ease);display:grid;position:relative}.composer:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring), var(--shadow-md)}.composer textarea{border-radius:var(--radius-md);min-height:2.75rem;max-height:14rem;padding:var(--space-2);font-size:var(--font-md);resize:none;background:0 0;border:0}.composer textarea:focus{box-shadow:none;outline:none}.composer-bar{align-items:center;gap:var(--space-2);min-width:0;display:flex}.composer-chips{align-items:center;gap:var(--space-1);min-width:0;display:flex;overflow:hidden}.composer-chip{align-items:center;gap:var(--space-1);max-width:12rem;min-height:1.6rem;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-subtle);color:var(--muted-strong);font-size:var(--font-xs);display:inline-flex}.composer-chip strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:550;overflow:hidden}.composer-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.composer-hint{color:var(--muted);font-size:var(--font-2xs);white-space:nowrap}.composer-send{min-width:var(--control-h-lg);min-height:var(--control-h-lg);padding:0 var(--space-3)}.jump-controls{right:var(--space-4);z-index:var(--z-sticky);gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:absolute}.jump-controls--chat{bottom:var(--chat-bottom-clearance,140px)}.jump-controls--page{bottom:var(--space-3)}.jump-controls--sidebar{right:var(--space-3);bottom:calc(var(--control-h) + var(--space-2) * 2 + var(--space-4))}.jump-button{pointer-events:auto;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--nav-bg);width:2rem;height:2rem;min-height:0;color:var(--muted);box-shadow:var(--shadow-md);-webkit-backdrop-filter:var(--overlay-blur);place-items:center;padding:0;display:grid}.message-context-menu{z-index:var(--z-menu);min-width:14rem;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);gap:1px;display:grid;position:fixed}.message-context-menu button{width:100%;min-height:1.9rem;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text);text-align:left;background:0 0;border:0;justify-content:flex-start;font-weight:500}.message-context-menu__separator{height:1px;margin:var(--space-1) var(--space-2);background:var(--border)}.message-context-menu--touch{left:50%;bottom:max(var(--space-4), env(safe-area-inset-bottom));width:min(360px, calc(100vw - var(--space-6)));padding:var(--space-2);border-radius:var(--radius-xl);transform:translate(-50%)}.message-context-menu--touch button{min-height:3rem;padding:0 var(--space-4);font-size:var(--font-md);font-weight:550}.message-context-menu--touch button:active{background:var(--primary-soft);color:var(--primary)}.session-actions{flex:none;position:relative}.session-actions-toggle{width:var(--control-h-lg);height:var(--control-h-lg);border-radius:var(--radius-md);min-height:0;color:var(--muted);background:0 0;border-color:#0000;justify-content:center;align-items:center;display:inline-flex}.session-actions-toggle[aria-expanded=true]{color:var(--primary);background:var(--primary-soft)}.session-actions-menu{top:calc(100% + var(--space-1));z-index:var(--z-menu);min-width:14rem;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);gap:1px;display:grid;position:absolute;right:0}.session-actions-menu button{width:100%;min-height:1.9rem;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--text);text-align:left;background:0 0;border:0;justify-content:flex-start;font-weight:500}@media (hover:hover){.message-context-menu button:hover,.session-actions-menu button:hover,.menu-item:hover:not(:disabled),.server-option:hover{background:var(--surface-strong)}.session-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.sidebar-sessions .session-card:hover{background:var(--surface-subtle);box-shadow:none;border-color:#0000}.sidebar-sessions .session-card.active:hover{background:var(--primary-soft);border-color:var(--primary-border)}.sidebar-sessions .inline-actions button:hover:not(:disabled),.sidebar-sessions .rename-inline button:hover:not(:disabled){background:var(--surface-strong);color:var(--text)}.session-actions-toggle:hover:not(:disabled){color:var(--text);background:var(--surface-strong)}.message-reasoning-summary:hover,.message-action-summary:hover,.message-tool-summary:hover,.message-diff-row:hover,.context-chip:hover,.composer-chip:hover,.question-option:hover:not(:disabled),.folder-row:hover{border-color:var(--border-strong);background:var(--surface-strong)}.jump-button:hover{color:var(--text);border-color:var(--border-strong)}.todo-toggle-btn:hover:not(:disabled){background:var(--primary-soft)}.session-title-button:hover .session-title-pencil{color:var(--primary)}}@media (pointer:coarse){.message{-webkit-user-select:none;user-select:none}:root{--control-h:2.75rem;--control-h-lg:2.875rem;--control-px:.875rem;--tap-min:2.75rem;--font-sm:.875rem;--font-md:.9375rem}button.compact{min-height:44px}input,textarea,select{font-size:1rem}}.palette-backdrop{z-index:var(--z-modal-backdrop);padding:max(12vh, var(--space-8)) var(--space-4) var(--space-4);background:var(--modal-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.palette{z-index:var(--z-modal);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);width:min(100%,40rem);max-height:min(60dvh,32rem);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.palette-input-row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--muted);display:flex}.palette-input{min-height:0;color:var(--text);font-size:var(--font-xl);background:0 0;border:0;flex:auto;padding:0}.palette-input:focus{box-shadow:none;outline:none}.palette-list{min-height:0;padding:var(--space-2);flex:auto;overflow-y:auto}.palette-item{align-items:center;gap:var(--space-3);width:100%;min-height:2.25rem;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text);text-align:left;background:0 0;border:0;font-weight:500;display:flex}.palette-item.active{background:var(--primary-soft);color:var(--primary-strong)}.palette-item-icon{color:var(--muted);flex:none;place-items:center;display:grid}.palette-item.active .palette-item-icon{color:var(--primary)}.palette-item-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.palette-item-hint{color:var(--muted);font-size:var(--font-xs);text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:14rem;overflow:hidden}.palette-empty{padding:var(--space-6);text-align:center}.palette-footer{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);color:var(--muted);font-size:var(--font-xs);display:flex}.palette-footer span{align-items:center;gap:var(--space-1);display:inline-flex}.modal-backdrop{z-index:var(--z-modal-backdrop);--modal-margin:var(--space-4);padding:var(--modal-margin);background:var(--modal-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{z-index:var(--z-modal);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);width:min(100%,28rem);padding:var(--space-5);box-shadow:var(--shadow-lg)}.modal-card h2{margin-bottom:var(--space-3)}.modal-card .subtle{margin-top:var(--space-2);overflow-wrap:anywhere}.modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);display:flex}.diff-modal{width:min(94vw,68rem);max-height:calc(100dvh - 2 * var(--modal-margin));flex-direction:column;padding:0;display:flex}.diff-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);display:flex}.diff-modal-heading{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.diff-modal-header h2{font-size:var(--font-sm);font-family:var(--font-mono);overflow-wrap:anywhere}.diff-modal-timestamp{color:var(--muted);font-size:var(--font-xs);white-space:nowrap}.diff-modal-body{padding:var(--space-4);overflow:auto}.diff-modal-body .message-diff-patch{padding-bottom:var(--space-4)}.desktop-panel-modal{width:min(94vw,56rem);max-height:calc(100dvh - 2 * var(--modal-margin) - 2px);flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.desktop-panel-modal>.panel{border-radius:inherit;min-height:0;box-shadow:none;border:0;flex:auto;overflow-y:auto}.desktop-panel-modal .settings .section-heading{padding-right:calc(var(--control-h-lg) + var(--space-3))}.desktop-modal-close{top:var(--space-3);right:var(--space-3);width:var(--control-h-lg);height:var(--control-h-lg);z-index:1;min-height:0;padding:0;position:absolute}.sheet-backdrop{z-index:var(--z-modal-backdrop);--modal-margin:var(--space-4);padding:var(--modal-margin);background:var(--sheet-backdrop);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bottom-sheet{z-index:var(--z-modal);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);width:min(100%,45rem);max-height:min(86dvh,46rem);padding:var(--space-4);box-shadow:var(--shadow-lg);overflow-y:auto}.sheet-handle{border-radius:var(--radius-pill);background:var(--border-strong);width:2.5rem;height:.25rem;margin:0 auto var(--space-3);display:none}.sheet-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.sheet-header h3{margin:0}.sheet-content{gap:var(--space-4);display:grid}.wizard{width:min(94vw,40rem);max-height:calc(100dvh - 2 * var(--modal-margin));flex-direction:column;padding:0;display:flex;overflow:hidden}.wizard-header{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-3);border-bottom:1px solid var(--border);display:flex}.wizard-header-text{gap:var(--space-1);min-width:0;display:grid}.wizard-header h2{font-size:var(--font-xl);margin:0}.wizard-steps{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-bottom:1px solid var(--border);background:var(--surface-subtle);display:flex}.wizard-step{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--font-xs);font-weight:550;display:inline-flex}.wizard-step-button{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.wizard-step-button:disabled{cursor:default;opacity:.55}.wizard-step-index{border-radius:var(--radius-pill);border:1px solid var(--border-strong);width:1.25rem;height:1.25rem;font-size:var(--font-2xs);place-items:center;font-weight:700;display:grid}.wizard-step.active{color:var(--text)}.wizard-step.active .wizard-step-index{border-color:var(--primary);background:var(--primary);color:var(--on-accent)}.wizard-step.done .wizard-step-index{border-color:var(--success);background:var(--success);color:var(--on-accent)}.wizard-step-divider{background:var(--border);flex:auto;height:1px}.wizard-body{min-height:0;padding:var(--space-5);align-content:start;gap:var(--space-4);flex:auto;display:grid;overflow-y:auto}.wizard-test{gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);flex:0 auto;min-height:0;display:grid;overflow-y:auto}.wizard-header,.wizard-steps,.wizard-footer{flex:none}.wizard-test .notice{margin:0}.wizard-footer{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--surface-subtle);display:flex}.wizard-footer .spacer{flex:auto}.choice-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));display:grid}.choice-card{align-content:start;gap:var(--space-1);min-height:5rem;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);text-align:left;white-space:normal;display:grid}.choice-card.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary)}.choice-card strong{align-items:center;gap:var(--space-2);font-size:var(--font-md);font-weight:600;display:flex}.choice-card small{color:var(--muted);font-size:var(--font-xs);font-weight:400;line-height:1.45}.code-callout{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle);display:grid}.code-callout-head{align-items:center;gap:var(--space-2);display:flex}.code-callout-head .eyebrow{flex:auto}.code-callout pre{border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-text);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-xs);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.6;overflow-x:auto}.folder-picker{width:min(94vw,40rem);max-height:calc(100dvh - 2 * var(--modal-margin));flex-direction:column;padding:0;display:flex;overflow:hidden}.folder-picker-current{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);overflow-wrap:anywhere;display:grid}.folder-picker-current strong{font-family:var(--font-mono);font-size:var(--font-sm)}.path-breadcrumb{flex-wrap:wrap;align-items:center;gap:.15rem;min-width:0;display:flex}.path-breadcrumb button{min-height:1.6rem;padding:0 var(--space-2);color:var(--muted-strong);font-family:var(--font-mono);font-size:var(--font-xs);background:0 0;border-color:#0000}.path-breadcrumb button:last-child{color:var(--text);font-weight:600}.path-breadcrumb-sep{color:var(--muted);font-size:var(--font-xs)}.folder-list{min-height:8rem;max-height:40vh;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle);align-content:start;gap:1px;display:grid;overflow-y:auto}.folder-row{width:100%;min-height:2rem;color:var(--text);background:0 0;border-color:#0000;justify-content:flex-start;font-weight:500}.recent-projects{gap:var(--space-1);display:grid}.recent-project{align-items:center;gap:var(--space-2);width:100%;min-height:2.25rem;padding:0 var(--space-2);border-radius:var(--radius-md);text-align:left;background:0 0;border:1px solid #0000;justify-content:flex-start;display:flex}.recent-project.selected{border-color:var(--primary);background:var(--primary-soft)}.recent-project span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:var(--font-xs);overflow:hidden}.settings-layout{gap:var(--space-5);grid-template-columns:12rem minmax(0,1fr);align-items:start;display:grid}.settings-nav{gap:1px;display:grid;position:sticky;top:0}.settings-nav button{color:var(--muted-strong);background:0 0;border-color:#0000;justify-content:flex-start}.settings-nav button.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.settings-nav-inline{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);width:fit-content;max-width:100%;padding:2px;display:flex;position:static}.settings-nav-inline button{justify-content:center}.settings[data-settings-tab=server] .settings-appearance-field,.settings[data-settings-tab=appearance] .settings-server-field,.settings[data-settings-tab=appearance] .server-profile-actions,.settings[data-settings-tab=appearance]>.actions,.settings[data-settings-tab=appearance]>.connection-help,.settings[data-settings-tab=appearance]>.notice{display:none}.settings-section{gap:var(--space-4);min-width:0;display:grid}.settings-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid}.settings-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.settings-card-head h3{font-size:var(--font-md)}.server-profile-actions{gap:var(--space-2);flex-shrink:0;display:flex}.server-profile-actions button{white-space:nowrap}.settings .section-heading-text{min-width:0}.help-tabs{gap:var(--space-1);padding:var(--space-1);margin-top:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-subtle);scrollbar-width:none;display:flex;overflow-x:auto}.help-tabs::-webkit-scrollbar{display:none}.help-tabs button{white-space:nowrap;color:var(--muted-strong);background:0 0;border-color:#0000;flex:auto}.help-tabs button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.help-content{margin-top:var(--space-4);max-width:46rem}.help-content h3,.help-content h4,.help-content h5{margin-top:var(--space-5);margin-bottom:var(--space-2)}.help-content .note{margin-top:var(--space-2);font-size:var(--font-sm);color:var(--muted)}.help ul,.help ol{margin-top:var(--space-2);padding-left:var(--space-5)}.help li{margin-top:var(--space-2);color:var(--muted)}.help li strong{color:var(--text)}.help pre,.example-commands pre{white-space:pre-wrap;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--code-bg);color:var(--code-text);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-sm);overflow-x:auto}.example-commands{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.example-commands pre{white-space:nowrap;margin:0}.commands-grid{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.command-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--surface)}.command-description{margin-top:var(--space-2);font-size:var(--font-sm)}.no-commands{padding:var(--space-8) var(--space-4);text-align:center}.project-dashboard{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-dashboard.single-column{grid-template-columns:1fr}.dashboard-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);min-width:0;padding:var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.dashboard-card strong,.dashboard-card small{overflow-wrap:anywhere}.dashboard-card strong{font-size:var(--font-sm)}.dashboard-card small{color:var(--muted);font-size:var(--font-xs)}.dashboard-label{color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.agent-controls,.model-controls{gap:var(--space-3);display:grid}.model-option-list{gap:var(--space-1);max-height:24rem;display:grid;overflow-y:auto}.model-option{justify-content:space-between;align-items:center;gap:var(--space-3);border-color:var(--border);background:var(--surface);width:100%;min-height:2.75rem;padding:var(--space-2) var(--space-3);text-align:left}.model-option.active{border-color:var(--primary);background:var(--primary-soft)}.model-option span{flex:auto;gap:.1rem;min-width:0;line-height:1.3;display:grid}.model-option strong,.model-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-option strong{font-size:var(--font-sm);font-weight:600}.model-option small{color:var(--muted);font-size:var(--font-xs);font-weight:400}.model-option em{color:var(--muted);font-size:var(--font-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;flex:none;font-style:normal;font-weight:700}.model-empty{padding:var(--space-3);text-align:center;margin:0}.model-meta{gap:var(--space-1);flex-wrap:wrap;display:flex}.model-meta span{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-subtle);color:var(--muted-strong);font-size:var(--font-2xs);padding:.1rem .45rem;font-weight:550}.notice,.error{margin-top:var(--space-3);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);align-items:center;gap:var(--space-2);font-size:var(--font-sm);border:1px solid #0000;font-weight:550;display:flex}.notice.info{color:var(--primary-strong);background:var(--primary-soft);border-color:var(--primary-border)}.notice.success{color:var(--success);background:var(--success-soft)}.notice.error,.error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.empty-state{text-align:center;max-width:26rem;padding:var(--space-8) var(--space-4);color:var(--muted);margin:auto}.empty-state p+p{margin-top:var(--space-2)}.empty-state.compact{padding:var(--space-6) var(--space-3)}.icon-empty-state{margin:0 auto var(--space-3);color:var(--border-strong);display:block}.empty-state-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.empty-state-actions button{flex:0 auto;min-width:8.5rem}.crash-screen{max-width:34rem;padding:var(--space-8) var(--space-4);gap:var(--space-3);flex-direction:column;margin:0 auto;display:flex}.crash-screen pre{white-space:pre-wrap;word-break:break-word;padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-subtle)}.crash-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.rename-inline{align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.rename-input{font-size:inherit;min-height:var(--control-h);padding:.15rem var(--space-2);border:1px solid var(--primary);border-radius:var(--radius-md);background:var(--surface);color:var(--text);width:100%;min-width:8rem;font-family:inherit}.rename-inline .rename-input{flex:10rem}.rename-save{flex:none}.app-shell-desktop .detail{height:100%;min-height:0}.app-shell-desktop .detail>*{flex:none}.app-shell-desktop .messages-wrap{flex:auto;min-height:0}.app-shell-desktop .messages{min-height:0;padding-bottom:var(--space-2);scroll-padding-bottom:var(--space-2)}.app-shell-desktop .messages-end{scroll-margin-bottom:0}.app-shell-desktop .jump-controls--chat{bottom:var(--space-3);right:max(var(--space-3), calc((100% - var(--chat-measure)) / 2 + var(--space-3)))}.app-shell-desktop .messages>*,.app-shell-desktop .composer{width:100%;max-width:var(--chat-measure);margin-inline:auto}.app-shell-desktop .panel{overflow-y:auto}@media (width<=780px){.app-shell{padding-bottom:calc(4.75rem + env(safe-area-inset-bottom))}.app-body{display:block}.panel{padding:var(--space-4) var(--space-3)}.section-heading,.header-row{align-items:stretch;gap:var(--space-3);flex-direction:column}.form-grid,.settings-layout{grid-template-columns:1fr}.settings-nav{gap:var(--space-1);display:flex;position:static;overflow-x:auto}.settings-nav button{flex:1 0 auto;justify-content:center}.connection-help{flex-direction:column}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.session-card .inline-actions{margin-top:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.project-dashboard{grid-template-columns:1fr}.detail{min-height:calc(100dvh - 9rem)}.desktop-detail-header{display:none}.detail-topbar{padding:var(--space-2) var(--space-3) 0;flex-direction:row;align-items:center;display:flex}.detail-topbar .session-actions{margin-left:auto}.detail-back-button{min-height:2rem;padding:0 var(--space-2);color:var(--primary);font-size:var(--font-sm);background:0 0;border-color:#0000}.detail-header{padding:var(--space-2) var(--space-3) var(--space-3)}.session-context-strip{top:calc(3.75rem + env(safe-area-inset-top));z-index:calc(var(--z-sticky) - 1);padding:var(--space-1) var(--space-3);background:var(--nav-bg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:var(--overlay-blur);position:sticky}.session-context-strip .context-chip{min-height:2.375rem;padding:.25rem var(--space-2)}.session-context-strip .context-chip span{font-size:.625rem}.session-context-strip .context-chip strong{font-size:var(--font-xs)}.messages{min-height:15rem;padding:var(--space-3);padding-bottom:var(--chat-bottom-clearance,140px);scroll-padding-bottom:var(--chat-bottom-clearance,140px);overflow:visible}.jump-controls{right:var(--space-3);position:fixed}.jump-controls--page{bottom:calc(5rem + env(safe-area-inset-bottom))}.jump-button{width:2.75rem;height:2.75rem}.composer{left:calc(var(--space-3) + env(safe-area-inset-left));right:calc(var(--space-3) + env(safe-area-inset-right));bottom:calc(4.5rem + env(safe-area-inset-bottom));margin:0;position:fixed}.composer-hint{display:none}.bottom-nav{left:var(--space-3);right:var(--space-3);bottom:calc(var(--space-2) + env(safe-area-inset-bottom));z-index:var(--z-sticky);gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bottom-nav-bg);box-shadow:var(--shadow-md);padding:var(--space-1);-webkit-backdrop-filter:var(--overlay-blur);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed}.bottom-nav button{min-height:3.25rem;padding:var(--space-1);font-size:var(--font-2xs);border-radius:var(--radius-md);color:var(--muted);background:0 0;border-color:#0000;flex-direction:column;gap:.1rem;font-weight:550}.bottom-nav button.active{color:var(--primary);background:var(--primary-soft)}.wizard,.folder-picker,.diff-modal{width:100%;max-height:calc(100dvh - 2 * var(--modal-margin))}.wizard-header,.wizard-body,.wizard-footer,.wizard-steps,.wizard-test{padding-left:var(--space-4);padding-right:var(--space-4)}.wizard-footer{flex-wrap:wrap}.wizard-footer button{flex:auto}.palette-backdrop{padding:var(--space-4) var(--space-3);align-items:flex-end}.palette{max-height:70dvh}.sheet-backdrop{align-items:flex-end;padding:0}.bottom-sheet{border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-3) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));border-bottom:0}.sheet-handle{display:block}}@media (height<=560px){.wizard-header{padding-top:var(--space-3);padding-bottom:var(--space-2)}.wizard-header-text p.subtle{display:none}.wizard-steps{padding-top:var(--space-1);padding-bottom:var(--space-1)}.wizard-test{padding-top:var(--space-2);padding-bottom:var(--space-2)}.wizard-test .notice{max-height:4.5rem;overflow-y:auto}.wizard-footer{padding-top:var(--space-2);padding-bottom:var(--space-2);flex-wrap:nowrap}.wizard-footer button{white-space:nowrap;flex:0 auto}}@media (width<=430px){h2{font-size:var(--font-lg)}.session-card{padding:var(--space-3)}.empty-state-actions button{flex:auto}}.fade-in{animation:fade-in .14s var(--ease)}.animate-spin{animation:1s linear infinite spin}@keyframes fade-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@keyframes pulse-dot{0%,to{opacity:.45}50%{opacity:1}}@keyframes session-busy-sweep{0%{background-position:0 0}to{background-position:0 24px}}@keyframes session-waiting-sweep{0%{background-position:0 24px}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button,.session-card,.context-chip,.model-option,.folder-row,.recent-project,.choice-card,.palette-item,.message-diff-row{-webkit-tap-highlight-color:transparent}button,a,label,select,summary,[role=button],[role=option],[role=menuitem],[role=tab]{touch-action:manipulation}.model-option-list,.folder-list,.bottom-sheet,.palette-list,.inspector-body,.sidebar-sessions,.diff-modal-body{overscroll-behavior:contain}.session-title-button{align-items:flex-start;gap:var(--space-2);min-width:0;max-width:100%;min-height:0;padding:0 var(--space-1) 0 0;color:inherit;font:inherit;text-align:left;background:0 0;border:0;display:inline-flex}.session-title-button:hover:not(:disabled),.session-title-button:active:not(:disabled){box-shadow:none;border-color:#0000;transform:none}.session-title-text{overflow-wrap:break-word;white-space:normal;min-width:0}.session-title-pencil{color:var(--muted);transition:color var(--motion-fast) var(--ease);flex:none;margin-top:.2em}@media (hover:hover){.session-title-pencil{visibility:hidden}.session-title-button:hover .session-title-pencil,.session-title-button:focus-visible .session-title-pencil{visibility:visible}}
