:root{--surface-0:#f7f7f5;--surface-1:#fff;--surface-2:#f1f2f0;--surface-3:#fff;--surface-hover:#1118270b;--surface-active:#11182714;--hairline:#fff9;--scrim:#1118276b;--fg:#1b2230;--fg-muted:#5f6b7a;--fg-subtle:#8a94a3;--fg-on-accent:#fff;--fg-on-danger:#fff;--border:#e2e5e9;--border-soft:#eef0f2;--border-strong:#c9cfd7;--accent:#2f9370;--accent-hover:#27805f;--accent-active:#216e52;--accent-text:#24785c;--accent-soft:#2f937014;--accent-tint:#2f937024;--accent-ring:#2f937059;--status-success:#107636;--status-warning:#985404;--status-danger:#c42020;--status-info:#1557e6;--status-neutral:#566881;--status-muted:#556376;--status-await:#6d28d9;--status-await-bg:#6d28d91f;--status-success-bg:#16a34a1f;--status-warning-bg:#d977061f;--status-danger-bg:#dc26261a;--status-info-bg:#2563eb1a;--status-neutral-bg:#94a3b829;--status-muted-bg:#64748b24;--status-missed:#64748b59;--neutral-pill-bg:#94a3b829;--project-color-red:#dc2626;--project-color-orange:#c2410c;--project-color-amber:#b45309;--project-color-green:#047857;--project-color-teal:#0f766e;--project-color-blue:#2563eb;--project-color-violet:#7c3aed;--project-color-pink:#db2777;--shadow-1:0 1px 2px #1118270d, 0 0 0 1px #11182708;--shadow-2:0 6px 20px #1118271f, 0 1px 3px #1118270f;--shadow-3:0 18px 48px #11182733, 0 2px 8px #11182714;--shadow-card:var(--shadow-1);--shadow-hover:var(--shadow-2);--shadow-lg:var(--shadow-3);--radius-xs:3px;--radius-sm:5px;--radius-md:7px;--radius-lg:10px;--radius-xl:14px;--radius-pill:999px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--space-7:20px;--space-8:24px;--space-9:32px;--space-10:48px;--font-sans:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:"Playfair Display", Georgia, serif;--font-mono:ui-monospace, "JetBrains Mono", SFMono-Regular, Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--leading-tight:1.25;--leading:1.45;--tracking-caps:.08em;--header-h:44px;--tabstrip-h:36px;--control-h:28px;--control-h-sm:24px;--control-h-lg:32px;--row-h:28px;--row-h-sm:26px;--rail-w:272px;--rail-right-w:248px;--inspector-w:320px;--panel-pad:8px;--content-pad:16px;--content-max:1080px;--ring-color:var(--accent);--focus-color:var(--accent);--focus-gap-color:var(--surface-1);--focus-ring:0 0 0 1px var(--focus-gap-color), 0 0 0 3px var(--focus-color);--dur-instant:50ms;--dur-fast:80ms;--dur:.14s;--dur-slow:.22s;--dur-deliberate:.32s;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-linear:linear;--tr-control:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);--tr-colors:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);--tr-elevate:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);--tr-fade:opacity var(--dur) var(--ease);--z-rail:10;--z-sticky:20;--z-drawer:30;--z-menu:40;--z-overlay:60;--z-toast:80;--z-palette:90;--bg:var(--surface-0);--bg-panel:var(--surface-1);--bg-page:var(--surface-0);--bg-card:var(--surface-1);--bg-sunken:var(--surface-2);--bg-chat-fg:var(--fg);--bg-chat-accent:var(--accent);--bg-chat-accent-fg:var(--fg-on-accent);--bg-chat-bubble-asst-bg:var(--surface-1);--bg-chat-bubble-asst-fg:var(--fg);--bg-chat-border:var(--border);--bg-chat-label:var(--fg-muted);--bg-chat-bubble-user-bg:#2f937012;--bg-chat-bubble-user-fg:var(--fg);--bg-chat-bubble-user-border:#2f937061;--bg-chat-bubble-user-label:var(--fg-muted);--bg-chat-panel-bg:var(--surface-1);--bg-chat-input-bg:var(--surface-2);--bg-chat-input-fg:var(--fg);--bg-chat-typing:var(--fg-muted);--bg-chat-danger:var(--status-danger);--bg-chat-warn:var(--status-warning);--bg-chat-error-bg:var(--status-danger-bg);--bg-chat-error-border:var(--status-danger);--bg-chat-error-fg:var(--status-danger);--bg-chat-font:var(--font-sans);--bg-agent-fg:var(--fg);--bg-agent-label:var(--fg-muted);--bg-agent-border:var(--border);--bg-agent-border-strong:var(--border-strong);--bg-agent-panel-bg:var(--surface-1);--bg-agent-input-bg:var(--surface-2);--bg-agent-input-fg:var(--fg);--bg-agent-accent:var(--accent);--bg-agent-accent-tint:var(--accent-tint);--bg-agent-warn-fg:var(--status-warning);--bg-agent-warn-bg:var(--status-warning-bg);--bg-agent-warn-border:var(--status-warning)}[data-theme=dark]{--surface-0:#0b1220;--surface-1:#111a2b;--surface-2:#182336;--surface-3:#1c2a40;--surface-hover:#e2e8f00d;--surface-active:#e2e8f017;--hairline:#ffffff0d;--scrim:#02060e9e;--fg:#e3e8ef;--fg-muted:#94a0b3;--fg-subtle:#64708a;--fg-on-accent:#07110d;--fg-on-danger:#fff;--border:#263349;--border-soft:#1e2a3d;--border-strong:#35455f;--accent:#4dbf96;--accent-hover:#5ed0a6;--accent-active:#3fae86;--accent-text:#62d3ab;--accent-soft:#4dbf9617;--accent-tint:#4dbf9629;--accent-ring:#4dbf9666;--status-success:#22c55e;--status-warning:#f59e0b;--status-danger:#f37878;--status-info:#6ca1f8;--status-neutral:#9aa8bc;--status-muted:#94a0b2;--status-await:#c4b5fd;--status-await-bg:#c4b5fd29;--status-success-bg:#22c55e29;--status-warning-bg:#f59e0b29;--status-danger-bg:#ef444429;--status-info-bg:#3b82f629;--status-neutral-bg:#94a3b829;--status-muted-bg:#64748b2e;--status-missed:#94a3b866;--neutral-pill-bg:#94a3b829;--project-color-red:#f87171;--project-color-orange:#fb923c;--project-color-amber:#fbbf24;--project-color-green:#34d399;--project-color-teal:#2dd4bf;--project-color-blue:#60a5fa;--project-color-violet:#a78bfa;--project-color-pink:#f472b6;--shadow-1:0 1px 2px #00000059, inset 0 1px 0 var(--hairline);--shadow-2:0 8px 24px #00000073, 0 1px 3px #0006, inset 0 1px 0 var(--hairline);--shadow-3:0 24px 64px #0009, 0 2px 8px #0006, inset 0 1px 0 var(--hairline);--shadow-card:var(--shadow-1);--shadow-hover:var(--shadow-2);--shadow-lg:var(--shadow-3);--ring-color:var(--accent);--bg:var(--surface-0);--bg-panel:var(--surface-1);--bg-page:var(--surface-0);--bg-card:var(--surface-1);--bg-sunken:var(--surface-2);--bg-chat-fg:var(--fg);--bg-chat-accent:var(--accent);--bg-chat-accent-fg:var(--fg-on-accent);--bg-chat-bubble-asst-bg:var(--surface-2);--bg-chat-bubble-asst-fg:var(--fg);--bg-chat-border:var(--border);--bg-chat-label:var(--fg-muted);--bg-chat-bubble-user-bg:#4dbf9624;--bg-chat-bubble-user-fg:var(--fg);--bg-chat-bubble-user-border:#4dbf9657;--bg-chat-bubble-user-label:var(--fg-muted);--bg-chat-panel-bg:var(--surface-1);--bg-chat-input-bg:var(--surface-2);--bg-chat-input-fg:var(--fg);--bg-chat-typing:var(--fg-muted);--bg-chat-danger:var(--status-danger);--bg-chat-warn:var(--status-warning);--bg-chat-error-bg:var(--status-danger-bg);--bg-chat-error-border:var(--status-danger);--bg-chat-error-fg:var(--status-danger);--bg-chat-font:var(--font-sans);--bg-agent-fg:var(--fg);--bg-agent-label:var(--fg-muted);--bg-agent-border:var(--border);--bg-agent-border-strong:var(--border-strong);--bg-agent-panel-bg:var(--surface-1);--bg-agent-input-bg:var(--surface-2);--bg-agent-input-fg:var(--fg);--bg-agent-accent:var(--accent);--bg-agent-accent-tint:var(--accent-tint);--bg-agent-warn-fg:var(--status-warning);--bg-agent-warn-bg:var(--status-warning-bg);--bg-agent-warn-border:var(--status-warning)}@media (prefers-reduced-motion:reduce){:root{--dur-instant:.01ms;--dur-fast:.01ms;--dur:.01ms;--dur-slow:.01ms;--dur-deliberate:.01ms}}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;height:100%}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--surface-0);min-height:100%;color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}code,kbd,pre,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}:focus{outline:none}:focus-visible{box-shadow:var(--focus-ring);outline:none}::selection{background:var(--accent-tint)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-track{background:0 0}.microcaps{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);font-weight:600}.muted{color:var(--fg-muted)}.subtle{color:var(--fg-subtle)}.text-sm{font-size:var(--text-sm)}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tnum{font-variant-numeric:tabular-nums}.h1{font-size:var(--text-xl);font-weight:600;line-height:var(--leading-tight);letter-spacing:-.01em;margin:0}.h2{font-size:var(--text-lg);font-weight:600;line-height:var(--leading-tight);margin:0}.h3{font-size:var(--text-md);font-weight:600;line-height:var(--leading-tight);margin:0}.kbd{border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-2);min-width:18px;color:var(--fg-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-align:center;border-bottom-width:2px;padding:0 5px;line-height:16px;display:inline-block}.btn{justify-content:center;align-items:center;gap:var(--space-3);height:var(--control-h);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--fg);font-size:var(--text-base);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--tr-control);padding:0 10px;font-weight:500;line-height:1;display:inline-flex}.btn:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-2);border-color:var(--border-strong)}.btn:not(:disabled):not([aria-disabled=true]):active{background:var(--surface-active)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn[data-busy=true]:before{content:"";opacity:.8;width:10px;height:10px;animation:ui-spin .8s var(--ease-linear) infinite;border:2px solid;border-top-color:#0000;border-radius:50%;flex:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--fg-on-accent)}.btn-primary:not(:disabled):not([aria-disabled=true]):hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:not(:disabled):not([aria-disabled=true]):active{background:var(--accent-active)}.btn-secondary{border-color:var(--accent);color:var(--accent-text);background:0 0}.btn-secondary:not(:disabled):not([aria-disabled=true]):hover{background:var(--accent-soft);border-color:var(--accent-hover)}.btn-ghost{color:var(--fg-muted);background:0 0;border-color:#0000}.btn-ghost:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-hover);color:var(--fg);border-color:#0000}.btn-danger{border-color:var(--status-danger);color:var(--status-danger);background:0 0}.btn-danger:not(:disabled):not([aria-disabled=true]):hover{background:var(--status-danger-bg);border-color:var(--status-danger)}.btn-danger-solid{background:var(--status-danger);border-color:var(--status-danger);color:var(--fg-on-danger)}.btn-danger-solid:not(:disabled):not([aria-disabled=true]):hover{filter:brightness(1.08);border-color:var(--status-danger);background:var(--status-danger)}.btn-link{height:auto;color:var(--accent-text);background:0 0;border:0;padding:0;font-weight:500}.btn-link:not(:disabled):not([aria-disabled=true]):hover{background:0 0;text-decoration:underline}.btn-sm{height:var(--control-h-sm);font-size:var(--text-sm);padding:0 8px}.btn-lg{height:var(--control-h-lg);font-size:var(--text-md);padding:0 14px}.btn-icon{width:var(--control-h);color:var(--fg-muted);font-size:var(--text-md);background:0 0;border-color:#0000;padding:0;line-height:1}.btn-icon:not(:disabled):not([aria-disabled=true]):hover{background:var(--surface-hover);color:var(--fg);border-color:#0000}.btn-icon.btn-sm{width:var(--control-h-sm);font-size:var(--text-base)}.btn[aria-pressed=true],.btn.is-active{background:var(--accent-tint);border-color:var(--accent);color:var(--accent-text)}.btn-block{width:100%}.btn-group{gap:var(--space-3);align-items:center;display:inline-flex}.input,.select,.textarea{width:100%;min-width:0;height:var(--control-h-lg);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--fg);font-size:var(--text-base);transition:var(--tr-control);padding:0 10px;display:block}.input::placeholder,.textarea::placeholder{color:var(--fg-subtle)}.input:hover,.select:hover,.textarea:hover{border-color:var(--border-strong)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring);background:var(--surface-1)}.input:disabled,.select:disabled,.textarea:disabled{opacity:.6;cursor:not-allowed}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--status-danger)}.input-sm{height:var(--control-h);font-size:var(--text-sm);padding:0 8px}.textarea{resize:vertical;height:auto;min-height:72px;line-height:var(--leading);padding:7px 10px}.select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%238A94A3' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 9px center;background-repeat:no-repeat;padding-right:28px}.checkbox{align-items:center;gap:var(--space-4);font-size:var(--text-base);color:var(--fg);cursor:pointer;display:inline-flex}.checkbox input,input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:14px;height:14px;margin:0}.field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.field-label{font-size:var(--text-sm);color:var(--fg-muted);font-weight:500}.field-hint{font-size:var(--text-xs);color:var(--fg-subtle)}.field-error{font-size:var(--text-xs);color:var(--status-danger)}.field-row{gap:var(--space-4);flex-wrap:wrap;align-items:flex-end;display:flex}.field-row>*{flex:1 1 var(--field-row-basis,10rem);min-width:0}.form{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.form-actions{gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);gap:var(--space-4);flex-direction:column;min-width:0;margin:0;padding:10px 12px 12px;display:flex}.fieldset>legend{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);padding:0 4px;font-weight:600}.search{position:relative}.search .input{padding-left:26px}.search:before{content:"";border:1.5px solid var(--fg-subtle);pointer-events:none;border-radius:50%;width:11px;height:11px;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.search:after{content:"";background:var(--fg-subtle);pointer-events:none;width:5px;height:1.5px;position:absolute;top:calc(50% + 3px);left:18px;transform:rotate(45deg)}.menu{z-index:var(--z-menu);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-3);min-width:176px;max-width:320px;box-shadow:var(--shadow-2);animation:ui-pop var(--dur) var(--ease-out);flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute}.menu-right{top:calc(100% + 4px);right:0}.menu-anchor{display:inline-flex;position:relative}.menu-label{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-subtle);-webkit-user-select:none;user-select:none;padding:6px 8px 3px;font-weight:600}.menu-note{max-width:280px;font-size:var(--text-xs);color:var(--fg-muted);margin:0;padding:2px 8px 6px;line-height:1.4}.menu-sep{background:var(--border-soft);height:1px;margin:3px 6px}.menu-item{align-items:center;gap:var(--space-4);width:100%;height:var(--row-h);border-radius:var(--radius-sm);color:var(--fg);font-size:var(--text-base);text-align:left;cursor:pointer;white-space:nowrap;transition:var(--tr-colors);background:0 0;border:0;padding:0 8px;display:flex}.menu-item:hover{background:var(--surface-hover)}.menu-item:focus-visible{background:var(--surface-hover);box-shadow:inset var(--focus-ring)}.menu-item:disabled{opacity:.45;cursor:not-allowed}.menu-item[data-danger=true]{color:var(--status-danger)}.menu-item[data-danger=true]:hover{background:var(--status-danger-bg)}.menu-item-sub{font-size:var(--text-sm);padding-left:24px}.menu-item-icon{text-align:center;width:16px;color:var(--fg-muted);flex:none}.menu-item-kbd{color:var(--fg-subtle);font-family:var(--font-mono);font-size:var(--text-xs);margin-left:auto}.menu-item[role=menuitemcheckbox]:before,.menu-item[role=menuitemradio]:before{content:"";border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--surface-2);flex:none;width:12px;height:12px}.menu-item[role=menuitemradio]:before{border-radius:50%}.menu-item[aria-checked=true]:before{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--surface-3)}.overlay{z-index:var(--z-overlay);background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ui-fade var(--dur) var(--ease-out);justify-content:center;align-items:flex-start;padding:8vh 16px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.overlay-center{align-items:center;padding:16px}.dialog{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-3);width:min(92vw,520px);max-height:min(86vh,900px);box-shadow:var(--shadow-3);animation:ui-rise var(--dur-slow) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.dialog-sm{width:min(92vw,420px)}.dialog-lg{width:min(94vw,760px)}.dialog-xl{width:min(96vw,1080px)}.dialog-header{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border-soft);flex:none;padding:12px 12px 12px 16px;display:flex}.dialog-title{min-width:0;font-size:var(--text-md);flex:1;margin:0;font-weight:600}.dialog-body{gap:var(--space-5);flex-direction:column;min-height:0;padding:14px 16px;display:flex;overflow-y:auto}.dialog-footer{justify-content:flex-end;align-items:center;gap:var(--space-4);border-top:1px solid var(--border-soft);flex:none;padding:10px 16px 12px;display:flex}.dialog-footer .spacer{flex:1}.drawer{border-left:1px solid var(--border);background:var(--surface-1);flex-direction:column;min-width:0;min-height:0;display:flex}.drawer-header{align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border-soft);flex:none;padding:8px 8px 8px 12px;display:flex}.drawer-title{min-width:0;font-size:var(--text-base);flex:1;margin:0;font-weight:600}.drawer-body{gap:var(--space-5);flex-direction:column;min-height:0;padding:12px;display:flex;overflow-y:auto}.sheet{z-index:var(--z-overlay);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border:1px solid var(--border);background:var(--surface-3);max-height:80vh;box-shadow:var(--shadow-3);animation:ui-slide-up var(--dur-deliberate) var(--ease-out);border-bottom:0;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.sheet-handle{border-radius:var(--radius-pill);background:var(--border-strong);flex:none;width:36px;height:4px;margin:8px auto 4px}.seg{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);gap:2px;padding:2px;display:inline-flex}.seg-btn{height:calc(var(--control-h) - 6px);border-radius:var(--radius-sm);color:var(--fg-muted);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:var(--tr-colors), box-shadow var(--dur) var(--ease);background:0 0;border:0;padding:0 9px;font-weight:500}.seg-btn:hover{color:var(--fg)}.seg-btn.is-active,.seg-btn[aria-pressed=true],.seg-btn[aria-selected=true]{background:var(--surface-1);color:var(--fg);box-shadow:var(--shadow-1)}.subnav{flex-direction:column;gap:2px;display:flex}.subnav-item{align-items:center;gap:var(--space-4);height:var(--row-h);border-radius:var(--radius-sm);color:var(--fg-muted);font-size:var(--text-base);text-align:left;cursor:pointer;transition:var(--tr-colors);background:0 0;border:0;padding:0 10px;display:flex}.subnav-item:hover{background:var(--surface-hover);color:var(--fg)}.subnav-item.is-active{background:var(--accent-tint);color:var(--accent-text);font-weight:600}.card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-1)}.card-pad{padding:12px 14px}.card-hover{cursor:pointer;transition:var(--tr-elevate)}.card-hover:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2)}.card.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.well{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-2);padding:10px 12px}.stat{flex-direction:column;gap:2px;min-width:0;display:flex}.stat-label{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-subtle);font-weight:600}.stat-value{font-size:var(--text-md);font-variant-numeric:tabular-nums;color:var(--fg);font-weight:600}.disclosure{min-width:0}.disclosure-section{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-1)}.disclosure-section[data-open=true]{border-color:var(--border)}.disclosure-trigger{align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-h);border-radius:var(--radius-md);color:var(--fg);font:inherit;font-size:var(--text-base);text-align:left;cursor:pointer;transition:var(--tr-control);background:0 0;border:0;padding:0 10px;display:flex}.disclosure-trigger:hover{background:var(--surface-hover);color:var(--fg)}.disclosure-inline>.disclosure-trigger{min-height:var(--control-h-sm);font-size:var(--text-sm);color:var(--fg-muted);width:auto;padding:0 6px 0 0}.disclosure-inline>.disclosure-trigger:hover{color:var(--fg);background:0 0}.disclosure-chevron{transform-origin:60% 60%;opacity:.75;width:8px;height:8px;transition:transform var(--dur) var(--ease);border-bottom:1.5px solid;border-right:1.5px solid;flex:none;margin-left:2px;transform:rotate(-45deg)}.disclosure[data-open=true]>.disclosure-trigger .disclosure-chevron{transform:rotate(45deg)}.disclosure-label{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.disclosure-inline .disclosure-label{font-weight:500}.disclosure-summary{min-width:0;padding-left:var(--space-3);color:var(--fg-subtle);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;overflow:hidden}.disclosure-panel{padding:var(--space-3) 10px var(--space-4);animation:ui-fade var(--dur) var(--ease-out)}.disclosure-section>.disclosure-panel{border-top:1px solid var(--border-soft);margin-top:2px}.disclosure-inline>.disclosure-panel{padding:var(--space-2) 0 var(--space-3)}.badge{border-radius:var(--radius-xs);background:var(--surface-2);height:16px;color:var(--fg-muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;flex:none;align-items:center;padding:0 5px;font-size:10px;font-weight:600;display:inline-flex}.badge[data-tone=warning]{color:var(--status-warning)}.pill{border-radius:var(--radius-pill);background:var(--neutral-pill-bg);height:20px;color:var(--fg-muted);font-size:var(--text-sm);white-space:nowrap;flex:none;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.pill-accent{background:var(--accent-tint);color:var(--accent-text)}.chip{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);height:22px;color:var(--fg-muted);font-size:var(--text-sm);align-items:center;gap:6px;min-width:0;padding:0 8px 0 3px;display:inline-flex}.avatar{background:var(--surface-3);border:1px solid var(--border);width:18px;height:18px;color:var(--fg);text-transform:uppercase;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:inline-flex}.avatar-lg{width:26px;height:26px;font-size:11px}.status-dot{background:var(--status-neutral);width:8px;height:8px;transition:var(--tr-colors);border-radius:50%;flex:none;display:inline-block}.status-dot[data-status=succeeded],.status-pill[data-status=succeeded]{--sc:var(--status-success);--sb:var(--status-success-bg)}.status-dot[data-status=running],.status-pill[data-status=running]{--sc:var(--status-info);--sb:var(--status-info-bg)}.status-dot[data-status=failed],.status-pill[data-status=failed],.status-dot[data-status=error],.status-pill[data-status=error]{--sc:var(--status-danger);--sb:var(--status-danger-bg)}.status-dot[data-status=blocked],.status-pill[data-status=blocked],.status-dot[data-status=warning],.status-pill[data-status=warning],.status-dot[data-status=paused],.status-pill[data-status=paused]{--sc:var(--status-warning);--sb:var(--status-warning-bg)}.status-dot[data-status=awaiting],.status-pill[data-status=awaiting]{--sc:var(--status-await);--sb:var(--status-await-bg)}.status-dot[data-status=cancelled],.status-pill[data-status=cancelled],.status-dot[data-status=stopped],.status-pill[data-status=stopped],.status-dot[data-status=archived],.status-pill[data-status=archived]{--sc:var(--status-muted);--sb:var(--status-muted-bg)}.status-dot[data-status=queued],.status-pill[data-status=queued],.status-dot[data-status=scheduled],.status-pill[data-status=scheduled],.status-dot[data-status=missed],.status-pill[data-status=missed]{--sc:var(--status-neutral);--sb:var(--status-neutral-bg)}.run-toggle{appearance:none;border-radius:var(--radius-sm);width:18px;height:18px;color:var(--status-success);font:inherit;cursor:pointer;transition:var(--tr-colors);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.run-toggle[data-status=stopped]{color:var(--status-muted)}.run-toggle-glyph{fill:currentColor;width:12px;height:12px}.run-toggle:hover:not(:disabled):not([data-readonly]){background:var(--status-success-bg)}.run-toggle[data-status=stopped]:hover:not(:disabled):not([data-readonly]){background:var(--status-muted-bg)}.run-toggle[data-readonly]{cursor:default}.run-toggle:disabled{cursor:default;opacity:.6}.run-toggle[data-status=running] .run-toggle-glyph{animation:1.4s ease-in-out infinite run-toggle-pulse}@keyframes run-toggle-pulse{0%,to{opacity:1}50%{opacity:.45}}.status-dot[data-status]{background:var(--sc)}.status-dot[data-status=queued],.status-dot[data-status=scheduled]{border:1.5px dashed var(--sc);background:0 0}.status-dot[data-status=missed]{background:repeating-linear-gradient(135deg, var(--sc) 0 1.5px, transparent 1.5px 3px)}.status-dot[data-status=running]{animation:1.4s ease-in-out infinite ui-pulse}.status-pill{border-radius:var(--radius-pill);background:var(--sb,var(--neutral-pill-bg));height:18px;color:var(--sc,var(--fg-muted));font-size:var(--text-xs);letter-spacing:.02em;text-transform:capitalize;white-space:nowrap;transition:var(--tr-colors);flex:none;align-items:center;gap:5px;padding:0 7px;font-weight:600;display:inline-flex}.status-pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status-pill[data-mode],.status-dot[data-mode]{--sc:var(--accent-text);--sb:var(--accent-tint)}.status-pill[data-mode]{border:1px solid var(--accent)}.status-pill[data-mode]:before{display:none}.status-pill[data-mode=agent-test]{border-style:dashed}.status-pill[data-mode=sandbox]{border-left-style:double;border-left-width:3px}.status-dot[data-mode]{background:var(--accent-tint);border:1.5px solid var(--accent)}.empty{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;color:var(--fg-muted);flex-direction:column;padding:28px 16px;display:flex}.empty-compact{text-align:left;align-items:flex-start;padding:12px 8px}.empty-icon{color:var(--fg-subtle);font-size:22px;line-height:1}.empty-title{font-size:var(--text-md);color:var(--fg);font-weight:600}.empty-caption{font-size:var(--text-sm);color:var(--fg-muted);max-width:44ch}.empty-actions{gap:var(--space-4);margin-top:var(--space-3);display:flex}.skeleton{border-radius:var(--radius-xs);background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-hover) 37%, var(--surface-2) 63%);background-size:400% 100%;height:12px;animation:1.4s infinite ui-shimmer;display:block}.skeleton-row{height:var(--row-h);border-radius:var(--radius-sm);margin:2px 0}.skeleton-stack{flex-direction:column;gap:6px;display:flex}.skeleton-rows{padding:8px 0}.skeleton-rows.is-compact{padding:4px 0}.skeleton-rows>.skeleton:nth-child(3n+1){width:88%}.skeleton-rows>.skeleton:nth-child(3n+2){width:74%}.skeleton-rows>.skeleton:nth-child(3n){width:60%}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);width:14px;height:14px;animation:ui-spin .8s var(--ease-linear) infinite;border-radius:50%;flex:none;display:inline-block}.notice{align-items:flex-start;gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--fg);font-size:var(--text-sm);padding:8px 12px;display:flex}.notice-danger{border-color:var(--status-danger);background:var(--status-danger-bg);color:var(--status-danger)}.notice-warning{border-color:var(--status-warning);background:var(--status-warning-bg);color:var(--status-warning)}.notice-success{border-color:var(--status-success);background:var(--status-success-bg);color:var(--status-success)}.notice-info{border-color:var(--status-info);background:var(--status-info-bg);color:var(--status-info)}.notice-accent{border-color:var(--accent);background:var(--accent-soft);color:var(--fg)}.notice-tight{margin:6px 0 0}.notice .btn-link{color:inherit}.toast-stack{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;width:min(92vw,380px);display:flex;position:fixed;bottom:16px;right:16px}.toast{align-items:center;gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-3);color:var(--fg);box-shadow:var(--shadow-2);font-size:var(--text-base);pointer-events:auto;animation:ui-slide-in var(--dur-slow) var(--ease-out);transition:opacity var(--dur) var(--ease-in), transform var(--dur) var(--ease-in);border-left-width:3px;padding:10px 12px;display:flex}.toast.is-leaving{opacity:0;pointer-events:none;transform:translate(12px)}.toast-success{border-left-color:var(--status-success)}.toast-danger{border-left-color:var(--status-danger)}.toast-warning{border-left-color:var(--status-warning)}.toast-info{border-left-color:var(--status-info)}.toast-body{flex:1;min-width:0}.toast-title{font-weight:600}.toast-caption{font-size:var(--text-sm);color:var(--fg-muted)}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.table-sm{font-size:var(--text-sm)}.table th,.table td{height:var(--control-h-lg);text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-soft);white-space:nowrap;padding:0 12px}.table th{z-index:1;background:var(--surface-1);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-subtle);font-weight:600;position:sticky;top:0}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--surface-hover)}.table tr.is-selected td{background:var(--accent-soft)}.table td.num{font-variant-numeric:tabular-nums;text-align:right}.table td.wrap{white-space:normal}.shortcut-keys .kbd{margin-right:3px}.table-actions{text-align:right}.table-actions .btn{opacity:.6;transition:var(--tr-fade)}.table tr:hover .table-actions .btn,.table tr:focus-within .table-actions .btn,.table-actions .btn:focus-visible{opacity:1}.rail-pane{min-height:0;padding:var(--panel-pad);flex-direction:column;display:flex}.rail-head{align-items:center;gap:var(--space-2);height:var(--control-h);flex:none;margin-bottom:4px;padding:0 0 0 4px;display:flex}.rail-head-title{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-muted);flex:1;align-items:center;gap:4px;min-width:0;font-weight:600;display:flex}.rail-head-tools{align-items:center;gap:1px;display:flex}.rail-scroll{flex:1;min-height:0;overflow:hidden auto}.rail-list{margin:0;padding:0;list-style:none}.rail-row{content-visibility:auto;contain-intrinsic-size:auto 28px;min-height:var(--row-h);border-radius:var(--radius-sm);color:var(--fg);font-size:var(--text-base);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--tr-colors);border:1px solid #0000;align-items:center;gap:6px;padding:0 4px 0 8px;display:flex;position:relative}.rail-row:hover{background:var(--surface-hover)}.rail-row:focus-visible{box-shadow:inset var(--focus-ring)}.rail-row.is-selected{background:var(--accent-tint);color:var(--fg)}.rail-row.is-selected:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:5px;bottom:5px;left:0}.rail-row.is-checked{background:var(--accent-soft)}.rail-row-sm{min-height:var(--row-h-sm);font-size:var(--text-sm)}.rail-row-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail-row-meta{font-size:var(--text-xs);color:var(--fg-subtle);font-variant-numeric:tabular-nums;flex:none}.rail-row-icon{text-align:center;width:14px;color:var(--fg-muted);font-size:var(--text-sm);flex:none}.rail-row-tools{opacity:0;transition:var(--tr-fade);flex:none;align-items:center;gap:0;display:flex}.rail-row:hover .rail-row-tools,.rail-row:focus-within .rail-row-tools,.rail-row.is-menu-open .rail-row-tools,.rail-row.is-selected .rail-row-tools{opacity:1}.rail-row-check{opacity:0;width:14px;height:14px;transition:var(--tr-fade);flex:none}.rail-row:hover .rail-row-check,.rail-row.is-checked .rail-row-check,.rail-pane.is-selecting .rail-row-check{opacity:1}.rail-row-nested{padding-left:22px}.rail-section{margin-bottom:4px}.rail-section-head{border-radius:var(--radius-sm);background:var(--surface-2);min-height:26px;color:var(--fg-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--tr-control);border:1px solid #0000;align-items:center;gap:6px;padding:0 4px 0 6px;font-weight:600;display:flex;position:relative}.rail-section-head:hover{background:var(--surface-active)}.rail-section-head.is-drop{background:var(--accent-tint);border-color:var(--accent)}.rail-section-head.is-dragging{border-style:dashed;border-color:var(--accent);opacity:.7}.rail-section-chevron{width:10px;color:var(--fg-subtle);transition:transform var(--dur) var(--ease);flex:none;font-size:9px}.rail-section-head[aria-expanded=false] .rail-section-chevron{transform:rotate(-90deg)}.rail-section-name{flex:1;min-width:0}.rail-section-count{font-size:var(--text-xs);color:var(--fg-subtle);font-variant-numeric:tabular-nums;letter-spacing:0;margin-left:auto}.rail-section-note{text-transform:none;padding:3px 8px}.rail-section-head .rail-row-tools{margin-left:0}.rail-section-head .rail-inline-form{text-transform:none;letter-spacing:normal}.rail-section-body{padding:2px 0}.rail-filter{flex:none;margin:0 0 6px}.rail-bulkbar{border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-soft);font-size:var(--text-sm);flex-wrap:wrap;flex:none;align-items:center;gap:4px;margin-top:6px;padding:6px 8px;display:flex}.rail-bulkbar-count{margin-right:4px;font-weight:600}.rail-divider{cursor:row-resize;touch-action:none;border-top:1px solid var(--border);background:0 0;flex:0 0 5px;position:relative}.rail-divider:after{content:"";background:var(--border-strong);opacity:0;width:28px;height:3px;transition:var(--tr-fade);border-radius:2px;position:absolute;top:1px;left:50%;transform:translate(-50%)}.rail-divider:hover:after,.rail-divider:focus-visible:after{opacity:1;background:var(--accent)}.tabstrip{height:var(--tabstrip-h);background:var(--surface-1);border-bottom:1px solid var(--border);flex:none;align-items:stretch;display:flex;position:relative}.tabstrip-scroll{scrollbar-width:none;flex:1;align-items:stretch;gap:1px;min-width:0;padding:0 4px;display:flex;overflow:auto hidden}.tabstrip-scroll::-webkit-scrollbar{display:none}.tab{min-width:96px;max-width:220px;color:var(--fg-muted);font-size:var(--text-base);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--tr-colors);border-bottom:2px solid #0000;flex:none;align-items:center;gap:6px;padding:0 6px 0 10px;display:inline-flex;position:relative}.tab:hover{color:var(--fg);background:var(--surface-hover)}.tab.is-active{color:var(--fg);border-bottom-color:var(--accent)}.tab:focus-visible{box-shadow:inset var(--focus-ring);border-radius:0}.tab.tab-has-color:before{content:"";border-radius:var(--radius-xs);background:var(--tab-accent);width:3px;position:absolute;top:6px;bottom:6px;left:2px}.tab-icon{color:var(--fg-subtle);font-size:var(--text-sm);flex:none;align-items:center;display:inline-flex}.tab-icon svg{display:block}.tab.is-active .tab-icon{color:var(--accent-text)}.tab-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.tab-dirty{background:var(--status-warning);border-radius:50%;flex:none;width:6px;height:6px}.tab-close{border-radius:var(--radius-xs);width:18px;height:18px;color:var(--fg-subtle);cursor:pointer;opacity:0;background:0 0;border:0;flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tab:hover .tab-close,.tab.is-active .tab-close,.tab:focus-within .tab-close{opacity:1}.tab-close:hover{background:var(--surface-active);color:var(--fg)}.tabstrip-end{border-left:1px solid var(--border-soft);flex:none;align-items:center;gap:2px;padding:0 6px 0 4px;display:flex;position:relative}.palette{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-3);width:min(94vw,600px);box-shadow:var(--shadow-3);animation:ui-rise var(--dur-slow) var(--ease-out);flex-direction:column;margin-top:6vh;display:flex;overflow:hidden}.palette-input{border:0;border-bottom:1px solid var(--border-soft);height:44px;font-size:var(--text-md);background:0 0;border-radius:0;padding:0 16px}.palette-input:focus-visible{box-shadow:none}.palette-list{max-height:52vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.palette-group{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-subtle);padding:8px 10px 4px;font-weight:600}.palette-item{border-radius:var(--radius-md);height:32px;color:var(--fg);font-size:var(--text-base);cursor:pointer;align-items:center;gap:10px;padding:0 10px;display:flex}.palette-item.is-active{background:var(--accent-tint)}.palette-item-icon{text-align:center;width:16px;color:var(--fg-muted);flex:none}.palette-item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.palette-item-hint{font-size:var(--text-xs);color:var(--fg-subtle);flex:none}.palette-foot{border-top:1px solid var(--border-soft);font-size:var(--text-xs);color:var(--fg-subtle);gap:14px;padding:6px 14px 8px;display:flex}.row{align-items:center;gap:var(--space-4);min-width:0;display:flex}.row-wrap{flex-wrap:wrap}.stack{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.stack-lg{gap:var(--space-6)}.grow{flex:1;min-width:0}.spacer{flex:1}.m-0{margin:0}.hide{display:none!important}.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}.divider{background:var(--border-soft);height:1px;margin:4px 0}.section-title{align-items:center;gap:var(--space-4);min-height:var(--control-h);display:flex}.section-title h3{font-size:var(--text-md);margin:0;font-weight:600}.section-caption{font-size:var(--text-sm);color:var(--fg-muted)}@keyframes ui-pop{0%{opacity:0;transform:translateY(-3px)scale(.98)}to{opacity:1;transform:none}}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes ui-slide-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@keyframes ui-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes ui-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-pulse{0%,to{box-shadow:0 0 0 0 var(--status-info-bg)}50%{box-shadow:0 0 0 4px var(--status-info-bg)}}.stop-dialog{gap:var(--space-3);flex-direction:column;display:flex}.stop-dialog-quiet{color:var(--fg-muted)}.stop-dialog-list{gap:var(--space-2);flex-direction:column;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.stop-dialog-list li{align-items:baseline;gap:var(--space-2);padding:var(--space-2);background:var(--surface-2);border-radius:var(--radius-sm);display:flex}.stop-dialog-task{font-weight:500}.stop-dialog-meta{color:var(--fg-subtle);font-size:var(--text-xs)}.stop-dialog-cancel{align-items:center;gap:var(--space-2);color:var(--fg-muted);font-size:var(--text-sm);margin-right:auto;display:flex}.helptip{vertical-align:middle;margin-left:var(--space-1);display:inline-flex;position:relative}.helptip-btn{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-1);width:16px;height:16px;color:var(--fg-muted);cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);justify-content:center;align-items:center;padding:0;font-size:10px;font-weight:600;line-height:1;display:inline-flex}.helptip-btn:hover,.helptip-btn[aria-expanded=true]{border-color:var(--ring-color);color:var(--fg)}.helptip-panel{z-index:var(--z-menu);top:calc(100% + var(--space-2));width:max-content;max-width:min(280px, calc(100vw - var(--space-8)));padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-0);color:var(--fg);font-size:var(--text-xs);text-align:left;white-space:normal;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);font-weight:400;line-height:1.45;position:absolute;transform:translateY(-2px)}.helptip-panel[data-align=start]{left:0}.helptip-panel[data-align=end]{right:0}.helptip-panel:not(.is-open){max-width:0;max-height:0;overflow:hidden}.helptip-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.helptip-panel p{margin:0}.helptip-panel p+p{margin-top:var(--space-2)}.helptip-panel code{font-size:.95em}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{align-items:center;gap:var(--space-4);height:var(--header-h);padding:0 var(--space-5) 0 var(--space-5);background:var(--surface-1);border-bottom:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hairline);z-index:var(--z-sticky);flex:none;display:flex;position:relative}.brand{color:var(--fg);font-weight:700;font-size:var(--text-md);letter-spacing:-.01em;flex:none;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.brand:hover{text-decoration:none}.brand-mark{background:var(--accent);width:22px;height:22px;color:var(--fg-on-accent);letter-spacing:0;border-radius:6px;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.brand-sub{font-size:var(--text-xs);color:var(--fg-subtle);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin-left:2px;font-weight:500}.header-context{min-width:0;color:var(--fg-muted);font-size:var(--text-base);align-items:center;gap:6px;display:flex}.header-context-sep{color:var(--fg-subtle)}.header-context-name{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;max-width:28vw;font-weight:500;overflow:hidden}.header-search{height:var(--control-h);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--fg-subtle);font-size:var(--text-sm);cursor:pointer;flex:1;align-items:center;gap:8px;min-width:200px;max-width:320px;margin:0 auto;padding:0 8px 0 10px;display:inline-flex}.header-search:hover{border-color:var(--border-strong);color:var(--fg-muted)}.header-search .kbd{margin-left:auto}.header-right{flex:none;align-items:center;gap:4px;margin-left:auto;display:flex}.user-chip{height:var(--control-h);border-radius:var(--radius-pill);color:var(--fg);font-size:var(--text-sm);align-items:center;gap:8px;max-width:260px;padding:0 6px 0 3px;display:inline-flex}.user-chip-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-pill{border-radius:var(--radius-pill);background:var(--neutral-pill-bg);height:18px;color:var(--fg-muted);font-size:var(--text-xs);text-transform:capitalize;flex:none;align-items:center;padding:0 7px;display:inline-flex}.activity-btn{position:relative}.activity-dot{background:var(--status-danger);width:7px;height:7px;box-shadow:0 0 0 2px var(--surface-1);border-radius:50%;position:absolute;top:5px;right:5px}.activity-dot[data-kind=ok]{background:var(--status-success)}.activity-list{width:340px;max-height:60vh;margin:0;padding:0;list-style:none;overflow-y:auto}.activity-item{border-radius:var(--radius-sm);width:100%;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:8px;padding:7px 8px;display:flex}.activity-item:hover{background:var(--surface-hover)}.activity-item .status-dot{margin-top:5px}.activity-item-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.activity-item-title{font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-item-meta{font-size:var(--text-xs);color:var(--fg-muted);font-variant-numeric:tabular-nums}.offline-banner{background:var(--status-warning-bg);color:var(--status-warning);border-bottom:1px solid var(--status-warning);font-size:var(--text-sm);align-items:center;gap:10px;padding:6px 16px;display:flex}.app-main{flex-direction:column;flex:1;min-height:0;display:flex}.page{width:100%;max-width:1100px;margin:0 auto;padding:16px 24px 48px}.loading{color:var(--fg-muted);align-items:center;gap:8px;padding:24px;display:flex}.error{color:var(--status-danger);background:var(--status-danger-bg);border:1px solid var(--status-danger);border-radius:var(--radius-md);font-size:var(--text-sm);padding:8px 12px}.auth{min-height:calc(100vh - var(--header-h));background:var(--surface-0);flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.auth-aside{background:radial-gradient(1200px 600px at -10% -10%, var(--accent-tint), transparent 60%), linear-gradient(160deg, var(--surface-1), var(--surface-0));border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.auth-aside:after{content:"";background-image:linear-gradient(var(--border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--border-soft) 1px, transparent 1px);opacity:.35;pointer-events:none;background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.auth-aside>*{z-index:1;position:relative}.auth-aside-title{font-family:var(--font-serif);color:var(--fg);max-width:14ch;margin:24px 0 12px;font-size:34px;font-weight:500;line-height:1.15}.auth-aside-caption{color:var(--fg-muted);font-size:var(--text-md);max-width:40ch;margin:0}.auth-aside-points{color:var(--fg-muted);font-size:var(--text-base);flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.auth-aside-points li{align-items:flex-start;gap:10px;display:flex}.auth-aside-points li:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px;margin-top:7px}.auth-main{justify-content:center;align-items:center;padding:48px 24px;display:flex}.auth-card{flex-direction:column;gap:18px;width:min(100%,400px);display:flex}.auth-card h1{font-size:var(--text-2xl);letter-spacing:-.01em;margin:0;font-weight:600}.auth-card-caption{color:var(--fg-muted);font-size:var(--text-md);margin:4px 0 0}.auth-or{color:var(--fg-subtle);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;align-items:center;gap:12px;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--border);flex:1;height:1px}.auth-foot{color:var(--fg-subtle);font-size:var(--text-sm)}.auth .btn-lg,.auth .input{height:38px;font-size:var(--text-md)}.auth-card-wide{width:min(100%,620px)}.approve-facts{gap:var(--space-2) var(--space-5);grid-template-columns:auto 1fr;align-items:baseline;margin:0;display:grid}.approve-facts dt{font-size:var(--text-sm);color:var(--fg-muted)}.approve-facts dd{font-size:var(--text-md);color:var(--fg);overflow-wrap:anywhere;min-width:0;margin:0}.approve-summary{padding:var(--space-4);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);max-height:320px;color:var(--fg);font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5;overflow:auto}.approve-actions{gap:var(--space-4);flex-wrap:wrap;display:flex}.approve-actions .btn{flex:1;min-width:140px}@media (width<=900px){.auth{grid-template-columns:1fr}.auth-aside{display:none}.auth-main{align-items:flex-start;padding-top:48px}}@media (width<=860px){.brand-sub,.header-context,.user-chip-name,.role-pill{display:none}.header-search{flex:1;min-width:0}.header-search span:nth-child(2){display:none}}@media (width<=520px){.app-header{gap:var(--space-3);padding:0 var(--space-3)}.header-search{width:var(--control-h);flex:none;justify-content:center;padding:0}.header-search .kbd{display:none}}.bg-chat{min-height:0;color:var(--bg-chat-fg,#1f2937);font-family:var(--bg-chat-font,inherit);flex-direction:column;gap:8px;font-size:13px;display:flex}.bg-chat-transcript{flex-direction:column;gap:8px;min-height:0;display:flex;overflow-y:auto}.bg-chat-row{display:flex}.bg-chat-row-user{justify-content:flex-end}.bg-chat-row-asst{justify-content:flex-start}.bg-chat-bubble{white-space:pre-wrap;word-break:break-word;border:1px solid var(--bg-chat-border,#e5e7eb);background:var(--bg-chat-bubble-asst-bg,#fff);max-width:74%;color:var(--bg-chat-bubble-asst-fg,#1f2937);border-radius:8px;padding:6px 10px;line-height:1.5}.bg-chat-bubble-user{background:var(--bg-chat-bubble-user-bg,#2f937014);color:var(--bg-chat-bubble-user-fg,#1f2937);border-color:var(--bg-chat-bubble-user-border,#2f937059)}.bg-chat-bubble-error{background:var(--bg-chat-error-bg,#fef2f2);border-color:var(--bg-chat-error-border,#fecaca);color:var(--bg-chat-error-fg,#b91c1c)}.bg-chat-role{color:var(--bg-chat-label,#6b7280);margin-bottom:2px;font-size:11px;display:block}.bg-chat-content{white-space:pre-wrap}.bg-chat-time{color:var(--bg-chat-label,#6b7280);margin-top:2px;font-size:10px;display:block}.bg-chat-bubble-user .bg-chat-role,.bg-chat-bubble-user .bg-chat-time{color:var(--bg-chat-bubble-user-label,#ffffffd9)}.bg-chat-typing{align-items:center;gap:3px;padding:4px 0;display:inline-flex}.bg-chat-typing-dot{background:var(--bg-chat-typing,#9ca3af);border-radius:999px;width:6px;height:6px;animation:1.4s ease-in-out infinite bg-chat-bounce}.bg-chat-typing-dot:nth-child(2){animation-delay:.16s}.bg-chat-typing-dot:nth-child(3){animation-delay:.32s}@keyframes bg-chat-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.bg-chat-error{color:var(--bg-chat-error-fg,#b91c1c);border:1px solid var(--bg-chat-error-border,#fecaca);background:var(--bg-chat-error-bg,#fef2f2);border-radius:6px;padding:6px 8px;font-size:12px}.bg-chat-composer{border-top:1px solid var(--bg-chat-border,#e5e7eb);align-items:flex-end;gap:6px;padding-top:8px;display:flex}.bg-chat-input{resize:none;border:1px solid var(--bg-chat-border,#e5e7eb);background:var(--bg-chat-input-bg,#f3f4f6);color:var(--bg-chat-input-fg,#1f2937);border-radius:6px;flex:1;max-height:120px;padding:7px 10px;font-family:inherit;font-size:13px;overflow-y:auto}.bg-chat-input:disabled{opacity:.5}.bg-chat-btn{border:1px solid var(--bg-chat-border,#e5e7eb);cursor:pointer;background:var(--bg-chat-panel-bg,#fff);color:var(--bg-chat-fg,#1f2937);border-radius:6px;flex-shrink:0;padding:7px 12px;font-size:13px}.bg-chat-btn-send{background:var(--bg-chat-accent,#349674);color:var(--bg-chat-accent-fg,#fff);border-color:#0000}.bg-chat-btn-send:disabled{opacity:.4;cursor:not-allowed}.bg-chat-btn-stop{color:var(--bg-chat-danger,#ef4444);border-color:var(--bg-chat-danger,#ef4444);background:0 0}.bg-chat-toolbar{color:var(--bg-chat-label,#6b7280);flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.bg-chat-toolbar-btn{color:var(--bg-chat-fg,#1f2937);border:1px solid var(--bg-chat-border,#e5e7eb);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:12px}.bg-chat-toolbar-btn:disabled{opacity:.55;cursor:default}.bg-chat-context{flex:1;align-items:center;gap:8px;min-width:160px;display:flex}.bg-chat-context-track{background:var(--bg-chat-input-bg,#f3f4f6);border-radius:999px;flex:1;height:6px;overflow:hidden}.bg-chat-context-fill{background:var(--bg-chat-accent,#349674);height:100%;transition:width .2s;display:block}.bg-chat-context-warn .bg-chat-context-fill{background:var(--bg-chat-warn,#d97706)}.bg-chat-context-danger .bg-chat-context-fill{background:var(--bg-chat-danger,#dc2626)}.bg-chat-context-text{white-space:nowrap}.bg-agent{color:var(--bg-agent-fg,#1f2937);flex-direction:column;gap:14px;max-width:680px;font-size:13px;display:flex}.bg-agent-section{border:1px solid var(--bg-agent-border,#e5e7eb);background:var(--bg-agent-panel-bg,#fff);border-radius:8px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.bg-agent-group{flex-direction:column;gap:6px;display:flex}.bg-agent-label{color:var(--bg-agent-label,#6b7280);font-size:12px;font-weight:600}.bg-agent-hint{color:var(--bg-agent-label,#6b7280);font-size:11px}.bg-agent-field{color:var(--bg-agent-label,#6b7280);flex-direction:column;gap:4px;font-size:12px;display:flex}.bg-agent-input{background:var(--bg-agent-input-bg,#f9fafb);color:var(--bg-agent-input-fg,#1f2937);border:1px solid var(--bg-agent-border,#e5e7eb);font:inherit;border-radius:6px;padding:6px 10px;font-size:13px}.bg-agent-input:focus{outline:2px solid var(--bg-agent-accent,#349674);outline-offset:0}.bg-agent-textarea{resize:vertical}.bg-agent-card{border:1px solid var(--bg-agent-border,#e5e7eb);cursor:pointer;background:var(--bg-agent-panel-bg,#fff);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.bg-agent-card:hover{border-color:var(--bg-agent-border-strong,#d1d5db)}.bg-agent-card.is-selected{border-color:var(--bg-agent-accent,#349674);background:var(--bg-agent-accent-tint,#3496741a)}.bg-agent-card.is-unavailable{cursor:not-allowed;opacity:.62;background:var(--bg-agent-muted-bg,#f9fafb)}.bg-agent-card.is-unavailable:hover{border-color:var(--bg-agent-border,#e5e7eb)}.bg-agent-card input{accent-color:var(--bg-agent-accent,#349674);margin-top:2px}.bg-agent-card-body{flex-direction:column;gap:2px;display:flex}.bg-agent-card-title{color:var(--bg-agent-fg,#1f2937);font-size:13px;font-weight:600}.bg-agent-card-desc{color:var(--bg-agent-label,#6b7280);font-size:11px}.bg-agent-cards-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.bg-agent-card-compact{padding:8px 10px}.bg-agent-note{border:1px solid var(--bg-agent-border,#e5e7eb);border-radius:6px;padding:8px 10px;font-size:11.5px}.bg-agent-note-warn{color:var(--bg-agent-warn-fg,#b45309);background:var(--bg-agent-warn-bg,#fffbeb);border-color:var(--bg-agent-warn-border,#fcd34d)}.bg-agent-checks{grid-template-columns:1fr 1fr;gap:6px;display:grid}.bg-agent-checks-list{grid-template-columns:1fr;gap:10px}.bg-agent-check{color:var(--bg-agent-fg,#1f2937);flex-direction:column;gap:2px;font-size:13px;display:flex}.bg-agent-check-row{cursor:pointer;align-items:center;gap:8px;display:flex}.bg-agent-check input{accent-color:var(--bg-agent-accent,#349674)}.bg-agent-check-title{font-weight:600}.bg-agent-check-desc{color:var(--bg-agent-label,#6b7280);margin-left:22px;font-size:11.5px}.bg-agent-check.is-planned{opacity:.72}.bg-agent-grid{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.bg-agent-status{white-space:nowrap;height:18px;color:var(--bg-agent-status-fg,#6b7280);background:var(--bg-agent-status-bg,#f3f4f6);border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.bg-agent-status[data-status=connected]{color:var(--bg-agent-status-ok-fg,#15803d);background:var(--bg-agent-status-ok-bg,#dcfce7)}.bg-agent-status[data-status=error]{color:var(--bg-agent-status-error-fg,#b91c1c);background:var(--bg-agent-status-error-bg,#fee2e2)}.bg-agent-status[data-status=starting]{color:var(--bg-agent-status-info-fg,#1d4ed8);background:var(--bg-agent-status-info-bg,#dbeafe)}.bg-agent-range{accent-color:var(--bg-agent-accent,#349674)}.bg-agent-field.is-planned{opacity:.72}.bg-agent-help{vertical-align:middle;margin-left:5px;display:inline-flex;position:relative}.bg-agent-help-btn{border:1px solid var(--bg-agent-border-strong,#d1d5db);background:var(--bg-agent-panel-bg,#fff);width:15px;height:15px;color:var(--bg-agent-label,#6b7280);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:10px;font-weight:600;line-height:1;display:inline-flex}.bg-agent-help-btn:hover,.bg-agent-help-btn:focus-visible{border-color:var(--bg-agent-accent,#349674);color:var(--bg-agent-accent,#349674);outline:none}.bg-agent-help-panel{z-index:5;border:1px solid var(--bg-agent-border,#e5e7eb);background:var(--bg-agent-panel-bg,#fff);width:max-content;max-width:260px;color:var(--bg-agent-fg,#1f2937);opacity:0;pointer-events:none;border-radius:6px;padding:8px 10px;font-size:11.5px;font-weight:400;line-height:1.4;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-2px);box-shadow:0 4px 14px #0000001f}.bg-agent-help-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}
