agent-nuvira 3.3.6 → 3.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/step-handoff.d.ts.map +1 -1
- package/dist/agents/step-handoff.js +11 -2
- package/dist/agents/step-handoff.js.map +1 -1
- package/dist/cli/process-control.d.ts.map +1 -1
- package/dist/cli/process-control.js +60 -37
- package/dist/cli/process-control.js.map +1 -1
- package/dist/learning/autonomy-policy.d.ts.map +1 -1
- package/dist/learning/autonomy-policy.js +10 -3
- package/dist/learning/autonomy-policy.js.map +1 -1
- package/dist/observability/debug-log.d.ts.map +1 -1
- package/dist/observability/debug-log.js +19 -1
- package/dist/observability/debug-log.js.map +1 -1
- package/package.json +3 -1
- package/src/web-dashboard/public/assets/index-J3sGSCLr.js +207 -0
- package/src/web-dashboard/public/assets/index-J3sGSCLr.js.map +1 -0
- package/src/web-dashboard/public/assets/index-u7mu-fxK.css +1 -0
- package/src/web-dashboard/public/index.html +2 -2
- package/dist/forwarded.d.ts +0 -2
- package/dist/forwarded.d.ts.map +0 -1
- package/dist/forwarded.js +0 -2
- package/dist/forwarded.js.map +0 -1
- package/dist/tools/child-agent-worker.d.ts +0 -15
- package/dist/tools/child-agent-worker.d.ts.map +0 -1
- package/dist/tools/child-agent-worker.js.map +0 -1
- package/src/web-dashboard/public/assets/index-BFquuwq9.js +0 -207
- package/src/web-dashboard/public/assets/index-BFquuwq9.js.map +0 -1
- package/src/web-dashboard/public/assets/index-CIJ6FHHZ.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 5px;--radius-lg: 8px;--radius-full: 999px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-scale: 1;--text-2xs: 10px;--text-xs: 11px;--text-sm: 12px;--text-md: 13px;--text-base: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 28px;--leading-tight: 1.25;--leading-normal: 1.55;--motion-fast: .12s;--motion-base: .2s;--ease: cubic-bezier(.4, 0, .2, 1);--transition: background-color var(--motion-base) var(--ease), color var(--motion-base) var(--ease), border-color var(--motion-base) var(--ease);--elevation-1: 0 1px 2px var(--p-shadow);--elevation-2: 0 2px 6px var(--p-shadow);--elevation-3: 0 10px 28px var(--p-shadow);--focus-ring-color: var(--p-focus);--focus-ring-width: 2px;--focus-ring-offset: 2px;--target-min: 32px;--nav-width: 258px;--topbar-height: 58px;--content-max: 1600px;--z-base: 1;--z-sticky: 100;--z-sidebar: 200;--z-topbar: 300;--z-overlay: 400;--z-palette: 500;--z-toast: 600}html[data-palette=enterprise][data-mode=light]{--p-canvas: #eef1f7;--p-surface: #ffffff;--p-sunken: #f6f8fc;--p-raised: #ffffff;--p-hover: #e9eff9;--p-input: #ffffff;--p-ink: #0b2a54;--p-ink-2: #46587a;--p-ink-3: #5c6e88;--p-ink-inverse: #ffffff;--p-line: #c7d2e4;--p-line-soft: #dfe6f1;--p-line-strong: #9db0cd;--p-accent: #075bc2;--p-accent-strong: #064da5;--p-accent-soft: #e2ebf8;--p-on-accent: #ffffff;--p-chrome: #06295c;--p-chrome-ink: #ffffff;--p-chrome-ink-2: #c3d7f2;--p-chrome-hover: #154a86;--p-chrome-line: #1d407a;--p-sidebar: #04203f;--p-sidebar-ink: #ffffff;--p-sidebar-ink-2: #bccfe6;--p-sidebar-hover: #123a68;--p-sidebar-active: #17457c;--p-sidebar-line: #1b4272;--p-sidebar-line-control: #5b83bd;--p-ok: #1c7038;--p-ok-soft: #e3f2e7;--p-warn: #8a5600;--p-warn-soft: #fbf0dc;--p-danger: #ab2318;--p-danger-soft: #fbe7e4;--p-info: #075bc2;--p-info-soft: #e2ebf8;--p-purple: #6b3fa0;--p-cyan: #0b6e7a;--p-focus: #0b4f9e;--p-focus-chrome: #ffffff;--p-line-control: #5f7691;--p-shadow: rgba(9, 30, 66, .16)}:root,html[data-palette=enterprise][data-mode=dark]{--p-canvas: #0c1523;--p-surface: #142033;--p-sunken: #101a2b;--p-raised: #1a2941;--p-hover: #1f3252;--p-input: #16233a;--p-ink: #e9eff9;--p-ink-2: #aab9d0;--p-ink-3: #8a9cb6;--p-ink-inverse: #0c1523;--p-line: #2b3d59;--p-line-soft: #1f2e46;--p-line-strong: #46608a;--p-accent: #6aa8ff;--p-accent-strong: #8dbcff;--p-accent-soft: #1b3355;--p-on-accent: #08192e;--p-chrome: #071a38;--p-chrome-ink: #eef4fd;--p-chrome-ink-2: #b6c9e4;--p-chrome-hover: #123c74;--p-chrome-line: #1c3766;--p-sidebar: #04122b;--p-sidebar-ink: #eef4fd;--p-sidebar-ink-2: #aebdd6;--p-sidebar-hover: #0f2c55;--p-sidebar-active: #143565;--p-sidebar-line: #1a3562;--p-sidebar-line-control: #6d8cbe;--p-ok: #55c877;--p-ok-soft: #14301f;--p-warn: #e3ab4c;--p-warn-soft: #362a12;--p-danger: #ff8f85;--p-danger-soft: #3d1f1c;--p-info: #6aa8ff;--p-info-soft: #1b3355;--p-purple: #c0a0ff;--p-cyan: #5ed4e0;--p-focus: #9cc6ff;--p-focus-chrome: #ffffff;--p-line-control: #6d8cbe;--p-shadow: rgba(0, 0, 0, .55)}html[data-palette=neutral][data-mode=light]{--p-canvas: #f6f7f9;--p-surface: #ffffff;--p-sunken: #f0f2f5;--p-raised: #ffffff;--p-hover: #eef1f5;--p-input: #ffffff;--p-ink: #1f2328;--p-ink-2: #57606a;--p-ink-3: #636b74;--p-ink-inverse: #ffffff;--p-line: #d8dee4;--p-line-soft: #e6eaef;--p-line-strong: #afb8c1;--p-accent: #0969da;--p-accent-strong: #0757b8;--p-accent-soft: #e8f4ff;--p-on-accent: #ffffff;--p-chrome: #1f2937;--p-chrome-ink: #f0f3f6;--p-chrome-ink-2: #b9c2cd;--p-chrome-hover: #35414f;--p-chrome-line: #3a4552;--p-sidebar: #131a24;--p-sidebar-ink: #f2f5f8;--p-sidebar-ink-2: #b4bec8;--p-sidebar-hover: #25313f;--p-sidebar-active: #2b3846;--p-sidebar-line: #2f3b49;--p-sidebar-line-control: #7a8794;--p-ok: #1a7f37;--p-ok-soft: #dafbe1;--p-warn: #8a5a00;--p-warn-soft: #fff1d6;--p-danger: #b3261e;--p-danger-soft: #ffebe9;--p-info: #0969da;--p-info-soft: #ddf0ff;--p-purple: #8250df;--p-cyan: #0f6b78;--p-focus: #0969da;--p-focus-chrome: #ffffff;--p-line-control: #5f6b78;--p-shadow: rgba(31, 35, 40, .14)}html[data-palette=neutral][data-mode=dark]{--p-canvas: #0d1117;--p-surface: #161b22;--p-sunken: #12171e;--p-raised: #1c2333;--p-hover: #1f2733;--p-input: #0d1117;--p-ink: #e6edf3;--p-ink-2: #adb6c0;--p-ink-3: #939ca6;--p-ink-inverse: #0d1117;--p-line: #30363d;--p-line-soft: #21262d;--p-line-strong: #4d565f;--p-accent: #6cb6ff;--p-accent-strong: #8cc8ff;--p-accent-soft: #1b2b42;--p-on-accent: #08192e;--p-chrome: #010409;--p-chrome-ink: #e6edf3;--p-chrome-ink-2: #adb6c0;--p-chrome-hover: #161b22;--p-chrome-line: #30363d;--p-sidebar: #0d1117;--p-sidebar-ink: #e6edf3;--p-sidebar-ink-2: #aeb7c1;--p-sidebar-hover: #222a35;--p-sidebar-active: #2a323d;--p-sidebar-line: #2a3340;--p-sidebar-line-control: #768390;--p-ok: #56d364;--p-ok-soft: #132f1c;--p-warn: #e3b341;--p-warn-soft: #33280f;--p-danger: #ff8a80;--p-danger-soft: #3a1d1a;--p-info: #6cb6ff;--p-info-soft: #1b2b42;--p-purple: #d2a8ff;--p-cyan: #56d4dd;--p-focus: #8cc8ff;--p-focus-chrome: #ffffff;--p-line-control: #768390;--p-shadow: rgba(0, 0, 0, .5)}html[data-palette=pastel][data-mode=light]{--p-canvas: #f0effa;--p-surface: #ffffff;--p-sunken: #f6f6fc;--p-raised: #ffffff;--p-hover: #e9eaf7;--p-input: #ffffff;--p-ink: #253c6b;--p-ink-2: #4c5f88;--p-ink-3: #54668a;--p-ink-inverse: #ffffff;--p-line: #d1d8ea;--p-line-soft: #e4e8f4;--p-line-strong: #a8b4d0;--p-accent: #35619f;--p-accent-strong: #2b5187;--p-accent-soft: #e4ecf9;--p-on-accent: #ffffff;--p-chrome: #dce8f7;--p-chrome-ink: #24406f;--p-chrome-ink-2: #44598b;--p-chrome-hover: #c9dbf1;--p-chrome-line: #b7cbe6;--p-sidebar: #cfe0f4;--p-sidebar-ink: #1f3a66;--p-sidebar-ink-2: #3d5482;--p-sidebar-hover: #a9c6e8;--p-sidebar-active: #9dbde2;--p-sidebar-line: #adc4e2;--p-sidebar-line-control: #5a6f9c;--p-ok: #23704a;--p-ok-soft: #dff2e7;--p-warn: #8a5a12;--p-warn-soft: #fbeed8;--p-danger: #b12f56;--p-danger-soft: #fbe4ec;--p-info: #3e6db1;--p-info-soft: #e4ecf9;--p-purple: #7a4fb3;--p-cyan: #0f6a80;--p-focus: #2f5aa0;--p-focus-chrome: #12408f;--p-line-control: #5a6f9c;--p-shadow: rgba(52, 64, 110, .15)}html[data-palette=pastel][data-mode=dark]{--p-canvas: #191c2b;--p-surface: #212537;--p-sunken: #1c2030;--p-raised: #282d43;--p-hover: #2e3450;--p-input: #232840;--p-ink: #e8ebf7;--p-ink-2: #b3bad4;--p-ink-3: #9aa2c0;--p-ink-inverse: #191c2b;--p-line: #363d59;--p-line-soft: #2a3048;--p-line-strong: #55608a;--p-accent: #9db8f0;--p-accent-strong: #b9cdfb;--p-accent-soft: #2b3355;--p-on-accent: #161a2c;--p-chrome: #121524;--p-chrome-ink: #e8ebf7;--p-chrome-ink-2: #b3bad4;--p-chrome-hover: #262c45;--p-chrome-line: #333a58;--p-sidebar: #0d0f1c;--p-sidebar-ink: #e8ebf7;--p-sidebar-ink-2: #b0b7d2;--p-sidebar-hover: #20253c;--p-sidebar-active: #252b45;--p-sidebar-line: #2e3450;--p-sidebar-line-control: #8b98c4;--p-ok: #6fd39c;--p-ok-soft: #12301f;--p-warn: #e5b567;--p-warn-soft: #33280f;--p-danger: #f79ab0;--p-danger-soft: #3a1c26;--p-info: #9db8f0;--p-info-soft: #2b3355;--p-purple: #c6a6f5;--p-cyan: #74d3e4;--p-focus: #b9cdfb;--p-focus-chrome: #ffffff;--p-line-control: #8b98c4;--p-shadow: rgba(0, 0, 0, .5)}html[data-palette=executive][data-mode=light]{--p-canvas: #f2f2ef;--p-surface: #ffffff;--p-sunken: #f7f7f4;--p-raised: #ffffff;--p-hover: #ebebe7;--p-input: #ffffff;--p-ink: #202624;--p-ink-2: #4f5754;--p-ink-3: #636b68;--p-ink-inverse: #ffffff;--p-line: #d6d9d4;--p-line-soft: #e7e9e5;--p-line-strong: #a9aeaa;--p-accent: #0f6055;--p-accent-strong: #0b4c44;--p-accent-soft: #e0efec;--p-on-accent: #ffffff;--p-chrome: #23282a;--p-chrome-ink: #f2f3f1;--p-chrome-ink-2: #bcc1bd;--p-chrome-hover: #343a3c;--p-chrome-line: #3b4143;--p-sidebar: #171b1c;--p-sidebar-ink: #f2f3f1;--p-sidebar-ink-2: #b9bfba;--p-sidebar-hover: #2a3033;--p-sidebar-active: #31383b;--p-sidebar-line: #333a3c;--p-sidebar-line-control: #838b86;--p-ok: #2c6b45;--p-ok-soft: #e0f0e6;--p-warn: #7d5a12;--p-warn-soft: #f7efdc;--p-danger: #a33a2c;--p-danger-soft: #f7e6e2;--p-info: #2f6079;--p-info-soft: #e2eef4;--p-purple: #6b4a8f;--p-cyan: #16636e;--p-focus: #0b4c44;--p-focus-chrome: #ffffff;--p-line-control: #5f6663;--p-shadow: rgba(32, 38, 36, .16)}html[data-palette=executive][data-mode=dark]{--p-canvas: #171a19;--p-surface: #1f2422;--p-sunken: #1a1e1d;--p-raised: #272d2b;--p-hover: #2d3431;--p-input: #222825;--p-ink: #e9ece9;--p-ink-2: #b0b7b3;--p-ink-3: #969d99;--p-ink-inverse: #171a19;--p-line: #343b38;--p-line-soft: #282e2c;--p-line-strong: #525b57;--p-accent: #5fc7b6;--p-accent-strong: #85d8ca;--p-accent-soft: #1b3833;--p-on-accent: #0e1a18;--p-chrome: #101312;--p-chrome-ink: #e9ece9;--p-chrome-ink-2: #b0b7b3;--p-chrome-hover: #242927;--p-chrome-line: #2f3634;--p-sidebar: #0a0d0c;--p-sidebar-ink: #e9ece9;--p-sidebar-ink-2: #adb4b0;--p-sidebar-hover: #232a27;--p-sidebar-active: #2a312d;--p-sidebar-line: #2a312e;--p-sidebar-line-control: #7d8783;--p-ok: #6ecf95;--p-ok-soft: #16301f;--p-warn: #dfb45f;--p-warn-soft: #322713;--p-danger: #ef9584;--p-danger-soft: #391f1a;--p-info: #86c3dd;--p-info-soft: #1a363f;--p-purple: #c0a2e0;--p-cyan: #6fd0dc;--p-focus: #85d8ca;--p-focus-chrome: #ffffff;--p-line-control: #7d8783;--p-shadow: rgba(0, 0, 0, .55)}html[data-palette=contrast][data-mode=light]{--p-canvas: #ffffff;--p-surface: #ffffff;--p-sunken: #f2f2f2;--p-raised: #ffffff;--p-hover: #e0e0e0;--p-input: #ffffff;--p-ink: #000000;--p-ink-2: #1a1a1a;--p-ink-3: #2b2b2b;--p-ink-inverse: #ffffff;--p-line: #000000;--p-line-soft: #767676;--p-line-strong: #000000;--p-accent: #0b3d91;--p-accent-strong: #062a66;--p-accent-soft: #dde7f7;--p-on-accent: #ffffff;--p-chrome: #000000;--p-chrome-ink: #ffffff;--p-chrome-ink-2: #ffffff;--p-chrome-hover: #2b2b2b;--p-chrome-line: #767676;--p-sidebar: #000000;--p-sidebar-ink: #ffffff;--p-sidebar-ink-2: #ffffff;--p-sidebar-hover: #2b2b2b;--p-sidebar-active: #3a3a3a;--p-sidebar-line: #767676;--p-sidebar-line-control: #767676;--p-ok: #0a5c23;--p-ok-soft: #ddf0e2;--p-warn: #6b4300;--p-warn-soft: #f7ecd6;--p-danger: #8f1409;--p-danger-soft: #f8e0dd;--p-info: #0b3d91;--p-info-soft: #dde7f7;--p-purple: #4a1f7a;--p-cyan: #0a4f57;--p-focus: #0b3d91;--p-focus-chrome: #ffe066;--p-line-control: #000000;--p-shadow: rgba(0, 0, 0, .4)}html[data-palette=contrast][data-mode=dark]{--p-canvas: #000000;--p-surface: #000000;--p-sunken: #0a0a0a;--p-raised: #141414;--p-hover: #2b2b2b;--p-input: #000000;--p-ink: #ffffff;--p-ink-2: #f0f0f0;--p-ink-3: #dcdcdc;--p-ink-inverse: #000000;--p-line: #ffffff;--p-line-soft: #8f8f8f;--p-line-strong: #ffffff;--p-accent: #ffe066;--p-accent-strong: #fff2a8;--p-accent-soft: #332c00;--p-on-accent: #000000;--p-chrome: #000000;--p-chrome-ink: #ffffff;--p-chrome-ink-2: #f0f0f0;--p-chrome-hover: #2b2b2b;--p-chrome-line: #8f8f8f;--p-sidebar: #000000;--p-sidebar-ink: #ffffff;--p-sidebar-ink-2: #f0f0f0;--p-sidebar-hover: #2b2b2b;--p-sidebar-active: #3a3a3a;--p-sidebar-line: #8f8f8f;--p-sidebar-line-control: #8f8f8f;--p-ok: #7ef29a;--p-ok-soft: #062b11;--p-warn: #ffd166;--p-warn-soft: #2e2400;--p-danger: #ff9d92;--p-danger-soft: #340b06;--p-info: #8fc4ff;--p-info-soft: #001a3d;--p-purple: #d9b8ff;--p-cyan: #8bf0f7;--p-focus: #ffe066;--p-focus-chrome: #ffe066;--p-line-control: #ffffff;--p-shadow: rgba(255, 255, 255, .25)}.theme-swatch[data-swatch=enterprise]{background:linear-gradient(135deg,#06295c 50%,#075bc2 50%)}.theme-swatch[data-swatch=neutral]{background:linear-gradient(135deg,#1f2937 50%,#0969da 50%)}.theme-swatch[data-swatch=pastel]{background:linear-gradient(135deg,#dce8f7 50%,#35619f 50%)}.theme-swatch[data-swatch=executive]{background:linear-gradient(135deg,#23282a 50%,#0f6055 50%)}.theme-swatch[data-swatch=contrast]{background:linear-gradient(135deg,#000 50%,#0b3d91 50%)}:root{--bg-primary: var(--p-canvas);--bg-secondary: var(--p-sunken);--bg-tertiary: var(--p-raised);--bg-card: var(--p-surface);--bg-hover: var(--p-hover);--surface-canvas: var(--p-canvas);--surface-raised: var(--p-raised);--surface-sunken: var(--p-sunken);--surface-inset: var(--p-sunken);--text-primary: var(--p-ink);--text-secondary: var(--p-ink-2);--text-muted: var(--p-ink-3);--text-inverse: var(--p-ink-inverse);--text-on-accent: var(--p-on-accent);--border: var(--p-line);--border-light: var(--p-line-soft);--border-hover: var(--p-line-strong);--line-strong: var(--p-line-strong);--accent: var(--p-accent);--accent-blue: var(--p-info);--accent-green: var(--p-ok);--accent-yellow: var(--p-warn);--accent-warn: var(--p-warn);--accent-red: var(--p-danger);--accent-purple: var(--p-purple);--accent-cyan: var(--p-cyan);--danger: var(--p-danger);--ok: var(--p-ok);--warn: var(--p-warn);--info: var(--p-info);--accent-soft: var(--p-accent-soft);--bg-input: var(--p-input);--bg: var(--p-canvas);--chrome-bg: var(--p-chrome);--chrome-ink: var(--p-chrome-ink);--chrome-ink-muted: var(--p-chrome-ink-2);--chrome-hover: var(--p-chrome-hover);--chrome-line: var(--p-chrome-line);--sidebar-bg: var(--p-sidebar);--sidebar-ink: var(--p-sidebar-ink);--sidebar-ink-muted: var(--p-sidebar-ink-2);--sidebar-hover: var(--p-sidebar-hover);--sidebar-active: var(--p-sidebar-active);--sidebar-line: var(--p-sidebar-line);--sidebar-line-control: var(--p-sidebar-line-control);--shadow: var(--p-shadow);--ok-soft: var(--p-ok-soft);--warn-soft: var(--p-warn-soft);--danger-soft: var(--p-danger-soft);--info-soft: var(--p-info-soft);--purple-soft: color-mix(in srgb, var(--p-purple) 14%, var(--p-surface));--scrim: var(--p-shadow);--qr-background: #ffffff}html[data-mode=light]{--code-text: #383a42;--code-keyword: #8c1d95;--code-string: #17683a;--code-number: #93520d;--code-comment: #5a616b;--code-function: #1c4f9c;--code-error: #a5231b}html[data-mode=dark]{--code-text: #cfd6e4;--code-keyword: #d2a8ff;--code-string: #7ee787;--code-number: #f0b072;--code-comment: #98a3b3;--code-function: #79c0ff;--code-error: #ff9d92}html[data-a11y=on]{--target-min: 44px;--focus-ring-width: 3px;--focus-ring-offset: 2px;--focus-ring-color: var(--p-focus);--transition: none;--border: var(--p-line-strong);--border-light: var(--p-line-strong)}html[data-font-scale="100"]{--font-scale: 1}html[data-font-scale="112"]{--font-scale: 1.125}html[data-font-scale="125"]{--font-scale: 1.25}html[data-font-scale="150"]{--font-scale: 1.5}html[data-font-scale="125"]{--nav-width: 288px}html[data-font-scale="150"]{--nav-width: 320px}@media (prefers-reduced-motion: reduce){:root{--transition: none;--motion-fast: 0ms;--motion-base: 0ms}}@media (prefers-contrast: more){:root{--border: var(--p-line-strong);--border-light: var(--p-line-strong)}}@media (forced-colors: active){:root{--focus-ring-color: Highlight;--shadow: transparent}}*{margin:0;padding:0;box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}html .layout input:focus-visible,html .layout textarea:focus-visible,html .layout select:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-3);background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:calc(var(--text-sm) * var(--font-scale));cursor:pointer;transition:var(--transition)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-hover)}.btn-secondary:disabled{opacity:.6;cursor:progress}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;font-size:14px;min-height:100vh}#root{min-height:100vh}.layout{display:flex;flex-direction:column;min-height:100vh}.layout-body{display:flex;flex:1;min-height:0}.topbar{position:sticky;top:0;z-index:var(--z-topbar);display:flex;align-items:center;gap:var(--space-4);height:var(--topbar-height);padding:0 var(--space-4);background:var(--chrome-bg);color:var(--chrome-ink);border-bottom:1px solid var(--chrome-line)}.topbar-brand{display:flex;align-items:center;gap:var(--space-2);flex:none}.topbar-logo{font-size:calc(20px * var(--font-scale))}.topbar-title{font-size:calc(15px * var(--font-scale));font-weight:600;white-space:nowrap}.topbar-menu{display:none;align-items:center;justify-content:center;min-width:var(--target-min);min-height:var(--target-min);background:transparent;color:var(--chrome-ink);border:1px solid var(--chrome-line);border-radius:var(--radius-md);font:inherit;font-size:calc(14px * var(--font-scale));cursor:pointer;transition:var(--transition)}.topbar-menu:hover{background:var(--chrome-hover)}.primary-nav{display:flex;align-items:center;gap:var(--space-1);flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.primary-nav::-webkit-scrollbar{display:none}.primary-link{display:inline-flex;align-items:center;gap:var(--space-1);min-height:var(--target-min);padding:0 var(--space-3);color:var(--chrome-ink-muted);text-decoration:none;font-size:calc(13px * var(--font-scale));white-space:nowrap;border-bottom:2px solid transparent;transition:var(--transition)}.primary-link:hover{background:var(--chrome-hover);color:var(--chrome-ink)}.primary-link.active{color:var(--chrome-ink);font-weight:600;border-bottom-color:var(--chrome-ink)}.topbar-actions{display:flex;align-items:center;gap:var(--space-2);flex:none;margin-left:auto}.topbar-action,.theme-trigger{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-3);background:transparent;color:var(--chrome-ink);border:1px solid var(--chrome-line);border-radius:var(--radius-md);font:inherit;font-size:calc(12px * var(--font-scale));cursor:pointer;transition:var(--transition)}.topbar-action:hover:not(:disabled),.theme-trigger:hover{background:var(--chrome-hover)}.topbar-action:disabled{opacity:.7;cursor:progress}.nav{flex:none;position:sticky;top:var(--topbar-height);width:var(--nav-width);height:calc(100vh - var(--topbar-height));display:flex;flex-direction:column;background:var(--sidebar-bg);color:var(--sidebar-ink);border-right:1px solid var(--sidebar-line);overflow-y:auto;z-index:var(--z-sidebar)}.nav-scrim{position:fixed;inset:var(--topbar-height) 0 0 0;z-index:calc(var(--z-sidebar) - 1);background:var(--scrim)}.nav-search{padding:var(--space-4) var(--space-3) var(--space-1)}.nav-search-input{width:100%;min-height:var(--target-min);padding:0 var(--space-3);background:var(--sidebar-hover);color:var(--sidebar-ink);border:1px solid var(--sidebar-line-control);border-radius:var(--radius-md);font:inherit;font-size:calc(12px * var(--font-scale))}.nav-search-input::placeholder{color:var(--sidebar-ink-muted)}.nav-links{flex:1;padding:var(--space-2) var(--space-3) var(--space-3)}.nav-group{padding-top:var(--space-2)}.nav-group-title{margin:0 0 var(--space-1);padding:var(--space-2) var(--space-3);background:var(--sidebar-hover);color:var(--sidebar-ink);border-radius:var(--radius-sm);font-size:calc(10px * var(--font-scale));font-weight:700;text-transform:uppercase;letter-spacing:1.2px}.nav-icon{flex:none;width:18px;text-align:center}.nav-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--target-min);margin:2px 0;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-ink-muted);text-decoration:none;font-size:calc(13px * var(--font-scale));transition:var(--transition)}.nav-link:hover{background:var(--sidebar-hover);color:var(--sidebar-ink)}.nav-link.active{background:var(--sidebar-active);color:var(--sidebar-ink);font-weight:600}.nav-empty{margin:0;padding:var(--space-3);color:var(--sidebar-ink-muted);font-size:calc(12px * var(--font-scale))}.nav-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--sidebar-line);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.connected{background:var(--accent-green);box-shadow:0 0 6px color-mix(in srgb,var(--accent-green) 40%,transparent)}.status-dot.reconnecting{background:var(--accent-yellow);animation:pulse 1s infinite}.status-text{font-size:calc(11px * var(--font-scale));color:var(--sidebar-ink-muted);flex:1}.last-updated{font-size:calc(10px * var(--font-scale));color:var(--sidebar-ink-muted)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--scrim)}.shortcuts-dialog{width:100%;max-width:520px;max-height:80vh;overflow-y:auto;padding:var(--space-5);background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elevation-3)}.shortcuts-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.shortcuts-title{margin:0;font-size:calc(var(--text-lg) * var(--font-scale));font-weight:600}.shortcuts-group{margin-bottom:var(--space-4)}.shortcuts-group-title{margin:0 0 var(--space-2);color:var(--text-muted);font-size:calc(var(--text-2xs) * var(--font-scale));font-weight:700;text-transform:uppercase;letter-spacing:.6px}.shortcuts-list{margin:0}.shortcuts-row{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-1) 0}.shortcuts-keys{display:flex;gap:var(--space-1);flex:none;min-width:96px}.shortcuts-key{display:inline-block;min-width:20px;padding:2px var(--space-2);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:calc(var(--text-xs) * var(--font-scale));text-align:center}.shortcuts-description{margin:0;color:var(--text-secondary);font-size:calc(var(--text-md) * var(--font-scale))}.shortcuts-note{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:calc(var(--text-sm) * var(--font-scale))}.main{flex:1;min-width:0;width:100%;max-width:var(--content-max);margin:0 auto;padding:var(--space-8) var(--space-10)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.page-header-text{min-width:0}.page-header-title{margin:0;color:var(--text-primary);font-size:calc(var(--text-2xl) * var(--font-scale));font-weight:600;line-height:var(--leading-tight)}.page-header-description{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:calc(var(--text-md) * var(--font-scale));max-width:90ch}.page-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.help-section{max-width:82ch;margin-bottom:var(--space-8)}.help-body{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:calc(var(--text-md) * var(--font-scale));line-height:var(--leading-normal)}.help-steps{margin:0;padding-left:var(--space-5);color:var(--text-secondary);font-size:calc(var(--text-md) * var(--font-scale));line-height:var(--leading-normal)}.help-steps li{margin-bottom:var(--space-2)}.help-steps strong{color:var(--text-primary)}.help-anatomy{display:grid;grid-template-columns:minmax(150px,max-content) 1fr;gap:var(--space-2) var(--space-4);margin:0;font-size:calc(var(--text-md) * var(--font-scale))}.help-anatomy dt{color:var(--text-primary);font-weight:600}.help-anatomy dd{margin:0;color:var(--text-secondary);line-height:var(--leading-normal)}.help-group{margin-top:var(--space-3)}.help-links{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.help-links a{color:var(--accent-blue);text-decoration:none;border-bottom:1px solid transparent;transition:var(--transition)}.help-links a:hover{border-bottom-color:var(--accent-blue)}.help-shortcuts{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-8);margin-bottom:var(--space-3)}.help-note{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:calc(var(--text-sm) * var(--font-scale));line-height:var(--leading-normal)}@media (max-width: 720px){.help-anatomy{grid-template-columns:1fr;gap:var(--space-1) 0}.help-anatomy dd{margin-bottom:var(--space-2)}}.command-browser{margin-top:var(--space-6)}.command-browser-head{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.command-browser-title{margin-bottom:0}.command-browser-count{margin:0;color:var(--text-muted);font-size:calc(var(--text-sm) * var(--font-scale))}.command-browser-search{width:100%;margin:var(--space-3) 0}.command-browser-empty{margin:0;color:var(--text-muted);font-size:calc(var(--text-md) * var(--font-scale))}.command-browser-groups{display:flex;flex-direction:column;gap:var(--space-2)}.command-group{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md)}.command-group-summary{display:flex;align-items:baseline;gap:var(--space-3);min-height:var(--target-min);padding:var(--space-2) var(--space-3);color:var(--text-primary);font-size:calc(var(--text-md) * var(--font-scale));cursor:pointer;border-radius:var(--radius-md) var(--radius-md) 0 0}.command-group-summary:hover{background:var(--bg-hover)}.command-group-summary:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.command-group-name{flex:none;color:var(--accent-blue);font-family:var(--font-mono);font-weight:600}.command-group-description{flex:1;min-width:0;overflow:hidden;color:var(--text-secondary);font-size:calc(var(--text-sm) * var(--font-scale));text-overflow:ellipsis;white-space:nowrap}.command-group[open] .command-group-description{white-space:normal}.command-group-count{flex:none;margin-left:auto;color:var(--text-muted);font-family:var(--font-mono);font-size:calc(var(--text-xs) * var(--font-scale))}.command-list{margin:0;padding:var(--space-1) 0 var(--space-2);border-top:1px solid var(--border-light);list-style:none}.command-item{margin:0;padding:0 var(--space-1)}.command-use{display:flex;align-items:baseline;gap:var(--space-1) var(--space-3);width:100%;min-height:var(--target-min);padding:var(--space-1) var(--space-2);background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;flex-wrap:wrap}.command-use:hover{background:var(--bg-hover)}.command-use:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(var(--focus-ring-offset) * -1)}.command-item-name{flex:none;color:var(--accent-blue);font-family:var(--font-mono);font-size:calc(var(--text-sm) * var(--font-scale));font-weight:600}.command-item-description{flex:1;min-width:14ch;color:var(--text-secondary);font-size:calc(var(--text-sm) * var(--font-scale))}.command-item-flags{display:flex;flex:none;gap:var(--space-1);flex-wrap:wrap}.command-item-flags code{padding:1px var(--space-1);background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius-xs);color:var(--text-muted);font-family:var(--font-mono);font-size:calc(var(--text-2xs) * var(--font-scale))}.section-title{font-size:22px;font-weight:600;margin-bottom:24px;color:var(--text-primary)}.section-subtitle{font-size:15px;font-weight:500;color:var(--text-secondary);margin:28px 0 14px}.section-description{color:var(--text-secondary);font-size:13px;margin-bottom:24px;line-height:1.6}.metric-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3);margin:0 0 var(--space-6);padding:0;list-style:none}.metric-tile{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--metric-soft);border:1px solid var(--border);border-left:4px solid var(--metric-tone);border-radius:var(--radius-md);box-shadow:var(--elevation-1)}.metric-tile-icon{display:grid;flex:none;place-items:center;width:38px;height:38px;background:var(--bg-card);color:var(--metric-tone);border-radius:var(--radius-md);font-size:calc(var(--text-lg) * var(--font-scale))}.metric-tile-value{display:block;color:var(--metric-tone);font-size:calc(var(--text-2xl) * var(--font-scale));font-weight:700;line-height:var(--leading-tight)}.metric-tile-label{display:block;color:var(--text-secondary);font-size:calc(var(--text-sm) * var(--font-scale))}.metric-tile--accent{--metric-tone: var(--accent);--metric-soft: var(--accent-soft)}.metric-tile--ok{--metric-tone: var(--accent-green);--metric-soft: var(--ok-soft)}.metric-tile--warn{--metric-tone: var(--accent-yellow);--metric-soft: var(--warn-soft)}.metric-tile--danger{--metric-tone: var(--accent-red);--metric-soft: var(--danger-soft)}.overview-summary{display:grid;grid-template-columns:minmax(0,3fr) minmax(180px,1fr);gap:var(--space-4);margin-bottom:var(--space-6);align-items:start}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}.summary-card,.quick-actions{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--elevation-1)}.summary-card-title{margin:0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border);color:var(--text-primary);font-size:calc(var(--text-base) * var(--font-scale));font-weight:600}.summary-rows{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.summary-row{display:flex;align-items:baseline;gap:var(--space-2)}.summary-row-value{color:var(--text-primary);font-size:calc(var(--text-xl) * var(--font-scale));font-weight:700;line-height:var(--leading-tight)}.summary-row-label,.summary-note{color:var(--text-secondary);font-size:calc(var(--text-sm) * var(--font-scale))}.summary-card-link{align-self:flex-start;display:inline-flex;align-items:center;min-height:var(--target-min);padding:0 var(--space-3);background:var(--accent);color:var(--text-on-accent);border-radius:var(--radius-sm);font-size:calc(var(--text-sm) * var(--font-scale));font-weight:600;text-decoration:none;transition:var(--transition)}.summary-card-link:hover{filter:brightness(1.1)}.quick-action{display:flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-3);background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font-size:calc(var(--text-sm) * var(--font-scale));text-decoration:none;transition:var(--transition)}.quick-action:hover{background:var(--bg-hover);border-color:var(--border-hover)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:10px}.stats-grid.mini{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:18px 16px;display:flex;align-items:center;gap:14px;transition:var(--transition)}.stat-card:hover{border-color:var(--accent-blue);box-shadow:0 4px 12px var(--shadow)}.stat-icon{font-size:24px}.stat-body{min-width:0}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.stat-label{font-size:11px;color:var(--text-secondary);margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.chart-container{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:10px}.recharts-cartesian-grid line{stroke:var(--border-light)}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:var(--border)}.recharts-cartesian-axis-tick-value{fill:var(--text-secondary);font-size:calc(11px * var(--font-scale))}.recharts-legend-item-text{color:var(--text-secondary)}.recharts-default-tooltip{background-color:var(--bg-card)!important;border:1px solid var(--border)!important}.recharts-tooltip-label,.recharts-tooltip-item{color:var(--text-primary)!important}.recharts-legend-icon[fill="var(--accent-blue)"]{fill:var(--accent-blue)}.recharts-legend-icon[fill="var(--accent-green)"]{fill:var(--accent-green)}.recharts-legend-icon[fill="var(--accent-yellow)"]{fill:var(--accent-yellow)}.recharts-legend-icon[fill="var(--accent-red)"]{fill:var(--accent-red)}.recharts-legend-icon[fill="var(--accent-purple)"]{fill:var(--accent-purple)}.recharts-legend-icon[fill="var(--accent-cyan)"]{fill:var(--accent-cyan)}.cost-summary{display:flex;gap:24px;margin-bottom:20px}.cost-summary-sub{margin-bottom:20px}.cost-summary-sub .cost-total{padding:10px 16px;background:transparent;border-style:dashed}.cost-summary-sub .cost-amount{font-size:20px}.cost-total{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px 24px;text-align:center;flex:1}.cost-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.cost-amount{font-size:28px;font-weight:700;color:var(--accent-green);display:block;margin-top:4px}.cost-list{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:16px}.cost-row{display:flex;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border-light);transition:var(--transition)}.cost-row:last-child{border-bottom:none}.cost-row:hover{background:var(--bg-hover)}.cost-row-name{flex:1;font-size:13px;font-weight:500}.cost-row-bar{width:200px;height:6px;background:var(--bg-tertiary);border-radius:3px;margin:0 16px;overflow:hidden}.cost-row-fill{height:100%;background:linear-gradient(90deg,var(--accent-blue),var(--accent-cyan));border-radius:3px;transition:width .5s ease}.cost-row-value{font-size:13px;font-weight:600;color:var(--accent-green);min-width:70px;text-align:right}.request-list{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.request-row{display:flex;align-items:center;padding:8px 14px;border-bottom:1px solid var(--border-light);font-size:12px;transition:var(--transition)}.request-row:last-child{border-bottom:none}.request-row:hover{background:var(--bg-hover)}.request-time{color:var(--text-muted);min-width:70px}.request-provider{min-width:80px;font-weight:500}.request-model{flex:1;color:var(--text-secondary)}.request-cost{min-width:60px;text-align:right;color:var(--accent-green);font-weight:500}.request-tokens{min-width:60px;text-align:right;color:var(--text-secondary)}.history-stats{margin-bottom:14px;font-size:13px;color:var(--text-secondary)}.history-list{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.history-item{padding:12px 16px;border-bottom:1px solid var(--border-light);transition:var(--transition)}.history-item:last-child{border-bottom:none}.history-item:hover{background:var(--bg-hover)}.history-summary{font-size:13px;color:var(--text-primary);margin-bottom:4px;line-height:1.5}.history-meta{font-size:11px;color:var(--text-secondary);display:flex;gap:12px;flex-wrap:wrap;align-items:center}.history-meta span{display:inline-flex;align-items:center;gap:4px}.history-tag{background:color-mix(in srgb,var(--accent-blue) 15%,transparent);color:var(--accent-blue);padding:1px 6px;border-radius:3px;font-size:10px;margin-left:2px}.benchmark-latest{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:16px}.benchmark-header{margin-bottom:8px;font-size:13px;color:var(--text-primary)}.benchmark-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:12px}.benchmark-stat{text-align:center;padding:12px;background:var(--bg-tertiary);border-radius:8px}.benchmark-stat-value{font-size:18px;font-weight:700}.benchmark-stat-label{font-size:10px;color:var(--text-secondary);margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.benchmark-stat.pass .benchmark-stat-value{color:var(--accent-green)}.benchmark-stat.fail .benchmark-stat-value{color:var(--accent-red)}.benchmark-stat.quality .benchmark-stat-value{color:var(--accent-purple)}.benchmark-stat.latency .benchmark-stat-value{color:var(--accent-yellow)}.benchmark-stat.deps .benchmark-stat-value{color:var(--accent-blue)}.benchmark-list{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.benchmark-item{display:flex;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border-light);font-size:12px;transition:var(--transition)}.benchmark-item:last-child{border-bottom:none}.benchmark-item:hover{background:var(--bg-hover)}.benchmark-date{min-width:100px;color:var(--text-muted)}.benchmark-model{flex:1;font-weight:500}.benchmark-score{min-width:50px;text-align:right}.benchmark-score.high{color:var(--accent-green)}.benchmark-score.medium{color:var(--accent-yellow)}.benchmark-score.low{color:var(--accent-red)}.dag-container{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:24px;margin-bottom:16px;overflow-x:auto}.dag-container svg{display:block;margin:0 auto}.dag-legend{display:flex;flex-wrap:wrap;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.legend-icon{font-size:12px}.legend-label{font-size:11px}.memory-list{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.memory-item{display:flex;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border-light);font-size:13px;transition:var(--transition)}.memory-item:last-child{border-bottom:none}.memory-item:hover{background:var(--bg-hover)}.memory-project{flex:1;font-weight:500}.memory-count{min-width:50px;text-align:right;color:var(--text-secondary)}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:20px}.health-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;display:flex;align-items:center;gap:14px;transition:var(--transition)}.health-card:hover{border-color:var(--accent-blue)}.health-icon{font-size:22px}.health-body{min-width:0}.health-title{font-size:12px;color:var(--text-secondary);margin-bottom:2px}.health-path{font-size:11px;color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace}.health-value{font-size:16px;font-weight:600;color:var(--text-primary)}.server-info{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden}.info-row{display:flex;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border-light);font-size:13px}.info-row:last-child{border-bottom:none}.info-label{min-width:140px;color:var(--text-secondary)}.info-value{color:var(--text-primary);font-weight:500}.loading-state{text-align:center;padding:80px 20px;color:var(--text-muted)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent-blue);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{padding:32px;text-align:center;color:var(--text-muted);font-size:13px}.empty-state code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--accent-blue)}.dag-engine-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;cursor:default}.dag-engine-loop{color:var(--accent-cyan, #39d2c0);background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 40%,transparent)}.dag-engine-pipeline{color:var(--accent-purple, #bc8cff);background:color-mix(in srgb,var(--accent-purple) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-purple) 40%,transparent)}.dag-loop-turn-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px;margin-bottom:14px}.dag-loop-turn-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dag-loop-turn-icon{font-size:15px}.dag-loop-turn-title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.dag-loop-turn-live{font-size:10px;font-weight:700;color:var(--accent-green, #3fb950);letter-spacing:.4px;text-transform:uppercase;animation:dag-loop-pulse 1.6s ease-in-out infinite}@keyframes dag-loop-pulse{0%,to{opacity:1}50%{opacity:.35}}.dag-loop-turn-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.dag-loop-turn-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500;color:var(--text-primary);background:var(--bg-tertiary, #1c2333);border:1px solid var(--border)}.dag-loop-turn-chip-error{color:var(--accent-red, #f85149);border-color:color-mix(in srgb,var(--accent-red) 40%,transparent)}.dag-loop-turn-chip-dim{color:var(--text-secondary, #8b949e)}.dag-loop-turn-tools{display:flex;flex-wrap:wrap;gap:5px}.dag-loop-tool{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;color:var(--accent-green, #3fb950);background:color-mix(in srgb,var(--accent-green) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent-green) 25%,transparent);border-radius:4px;padding:1px 6px}.dag-loop-tool-error{color:var(--accent-red, #f85149);background:color-mix(in srgb,var(--accent-red) 8%,transparent);border-color:color-mix(in srgb,var(--accent-red) 30%,transparent)}.phase-run-chip-engine{font-size:10px;line-height:1;opacity:.9}.phase-run-chip-engine-loop{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--accent-cyan) 60%,transparent))}.dag-status-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 18px;margin-bottom:14px;transition:var(--transition)}.dag-status-bar.active{border-color:var(--accent-blue);box-shadow:0 0 12px color-mix(in srgb,var(--accent-blue) 10%,transparent)}.dag-pipeline-name{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.dag-live-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-green);box-shadow:0 0 8px color-mix(in srgb,var(--accent-green) 60%,transparent);animation:pulse 1.5s infinite}.dag-live-badge{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.5px;animation:pulse 2s infinite}.dag-pipeline-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dag-step-count{font-size:11px;color:var(--text-secondary)}.dag-running-badge{background:color-mix(in srgb,var(--accent-blue) 15%,transparent);color:var(--accent-blue);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600}.dag-completed-badge{background:color-mix(in srgb,var(--accent-green) 12%,transparent);color:var(--accent-green);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600}.dag-pending-badge{background:color-mix(in srgb,var(--text-muted) 15%,transparent);color:var(--text-secondary);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600}.dag-failed-badge{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600}.dag-empty{text-align:center;padding:60px 20px;background:var(--bg-card);border:1px dashed var(--border);border-radius:12px}.dag-empty-icon{font-size:48px;margin-bottom:16px}.dag-empty h2{font-size:18px;color:var(--text-primary);margin-bottom:8px}.dag-empty p{color:var(--text-secondary);font-size:13px;max-width:400px;margin:0 auto}.dag-empty-hint{margin-top:12px!important;font-size:12px!important;color:var(--text-muted)!important}.dag-empty-hint code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--accent-blue)}.dag-node-group{transition:opacity .3s ease}.dag-node-group:hover rect:first-of-type{filter:brightness(1.2)}.dag-node-running{animation:dag-node-pulse 2s ease-in-out infinite}.dag-edge{transition:stroke .5s ease,stroke-width .5s ease,stroke-opacity .5s ease}@keyframes dag-node-pulse{0%,to{stroke-opacity:.9}50%{stroke-opacity:.5}}.dag-node-summary{pointer-events:none;animation:fadeIn .2s ease-out}.dag-table-wrapper{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:16px}.dag-table{width:100%;border-collapse:collapse;font-size:12px}.dag-table th{background:var(--bg-tertiary);padding:10px 14px;text-align:left;font-weight:600;color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}.dag-table td{padding:8px 14px;border-bottom:1px solid var(--border-light)}.dag-row:last-child td{border-bottom:none}.dag-row:hover td{background:var(--bg-hover)}.dag-cell-step{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace;width:40px}.dag-cell-agent{display:flex;align-items:center;gap:6px;font-weight:500;color:var(--text-primary)}.dag-agent-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.dag-cell-status{font-weight:500}.dag-status-pending{color:var(--text-muted)}.dag-status-running{color:var(--accent-blue)}.dag-status-completed{color:var(--accent-green)}.dag-status-failed{color:var(--accent-red)}.dag-cell-duration{color:var(--text-secondary);font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.dag-cell-time{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.dag-cell-summary{color:var(--text-secondary);font-size:11px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes typingBlink{0%,60%,to{opacity:.2}30%{opacity:1}}.stat-card,.health-card,.cost-row,.history-item,.benchmark-item,.dag-row,.dag-status-bar{animation:fadeIn .3s ease-out}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (max-width: 900px){.nav{position:fixed;top:var(--topbar-height);bottom:0;left:0;height:auto;width:min(88vw,var(--nav-width));transform:translate(-100%);visibility:hidden;transition:transform var(--motion-base) var(--ease),visibility 0s linear var(--motion-base)}.nav.open{transform:none;visibility:visible;transition:transform var(--motion-base) var(--ease)}.topbar-menu{display:inline-flex}.topbar-title{display:none}.topbar{gap:var(--space-2)}.main{padding:var(--space-5)}.overview-summary{grid-template-columns:1fr}.stats-grid,.benchmark-stats{grid-template-columns:repeat(2,1fr)}.cost-summary{flex-direction:column;gap:var(--space-3)}}.dag-timeline-section{margin-bottom:16px}.timeline-subtitle{font-weight:400;font-size:11px;color:var(--text-muted);margin-left:6px}.phase-timeline{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;transition:var(--transition)}.phase-timeline:hover{border-color:var(--border-light)}.phase-timeline-empty{color:var(--text-secondary);font-size:13px}.phase-timeline-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}.phase-timeline-runs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.phase-run-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:5px 10px;border-radius:16px;font-size:11px;cursor:pointer;transition:var(--transition);max-width:260px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.phase-run-chip:hover{border-color:var(--accent-blue);color:var(--text-primary)}.phase-run-chip.active{border-color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 10%,transparent);color:var(--text-primary)}.phase-run-chip.live{border-color:var(--accent-green)}.phase-run-chip-time{color:var(--text-muted);font-size:10px}.phase-timeline-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--text-secondary)}.phase-meta-ok{color:var(--accent-green)}.phase-meta-bad{color:var(--accent-red)}.phase-timeline-controls{display:flex;align-items:center;gap:12px;margin-bottom:10px}.phase-play-btn{background:color-mix(in srgb,var(--accent-blue) 12%,transparent);color:var(--accent-blue);border:1px solid color-mix(in srgb,var(--accent-blue) 35%,transparent);border-radius:6px;padding:4px 12px;font-size:11px;font-weight:600;cursor:pointer;transition:var(--transition)}.phase-play-btn:hover{background:color-mix(in srgb,var(--accent-blue) 22%,transparent)}.phase-play-btn.paused{background:color-mix(in srgb,var(--accent-red) 12%,transparent);color:var(--accent-red);border-color:color-mix(in srgb,var(--accent-red) 35%,transparent)}.phase-time-label{font-size:11px;color:var(--text-secondary);font-variant-numeric:tabular-nums;min-width:96px}.phase-range{flex:1;accent-color:var(--accent-blue);cursor:pointer}.phase-track-wrap{padding:8px 0 2px}.phase-track{position:relative;height:46px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;overflow:visible;-webkit-user-select:none;user-select:none;touch-action:none}.phase-block{position:absolute;top:5px;bottom:5px;border:none;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-on-accent);cursor:pointer;min-width:10px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;font-size:10px}.phase-block:hover{filter:brightness(1.15);transform:translateY(-1px)}.phase-block-pending{opacity:.55}.phase-block-failed{outline:1px solid color-mix(in srgb,var(--accent-red) 60%,transparent)}.phase-block.active{z-index:2}.phase-block-icon{font-size:13px;line-height:1}.phase-block-label{font-size:9px;font-weight:600;text-shadow:0 1px 2px var(--shadow);max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 3px}.phase-caret{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text-primary);box-shadow:0 0 8px color-mix(in srgb,var(--text-primary) 80%,transparent);cursor:ew-resize;z-index:3;transform:translate(-1px);border-radius:2px}.phase-caret:after{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);border:5px solid transparent;border-top:6px solid var(--text-primary)}.phase-ticks{display:flex;justify-content:space-between;color:var(--text-muted);font-size:9px;padding:3px 2px 0;font-variant-numeric:tabular-nums}.phase-detail{margin-top:12px;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;min-height:58px}.phase-detail-title{display:flex;align-items:center;gap:8px;margin-bottom:4px}.phase-detail-icon{font-size:14px}.phase-detail-agent{font-size:13px;font-weight:700}.phase-status-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;margin-left:auto}.phase-status-pending{background:color-mix(in srgb,var(--text-muted) 15%,transparent);color:var(--text-muted)}.phase-status-running{background:color-mix(in srgb,var(--accent-blue) 15%,transparent);color:var(--accent-blue)}.phase-status-completed{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green)}.phase-status-failed{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.phase-detail-desc{color:var(--text-primary);font-size:12px;margin:0 0 4px}.phase-detail-meta{display:flex;gap:12px;color:var(--text-secondary);font-size:10px;font-variant-numeric:tabular-nums}.phase-detail-summary{color:var(--text-secondary);font-size:11px;margin:6px 0 0;border-top:1px solid var(--border-light);padding-top:6px}.phase-detail-gap{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:4px}.admin-refresh-btn{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer;transition:var(--transition)}.admin-refresh-btn:hover:not(:disabled){border-color:var(--accent-blue);color:var(--accent-blue);box-shadow:0 0 8px color-mix(in srgb,var(--accent-blue) 15%,transparent)}.admin-refresh-btn:disabled{opacity:.6;cursor:wait}.admin-subtitle{color:var(--text-secondary);font-size:12px;margin:0 0 16px;max-width:720px}.admin-error{background:color-mix(in srgb,var(--accent-red) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-red) 40%,transparent);color:var(--accent-red);border-radius:8px;padding:10px 14px;font-size:13px;margin-bottom:16px}.admin-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px}.admin-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px;text-align:center;transition:var(--transition)}.admin-summary-card:hover{border-color:var(--accent-blue)}.admin-summary-pass .admin-summary-value{color:var(--accent-green)}.admin-summary-warn .admin-summary-value{color:var(--accent-yellow)}.admin-summary-fail .admin-summary-value{color:var(--accent-red)}.admin-summary-value{font-size:26px;font-weight:700}.admin-summary-label{color:var(--text-secondary);font-size:12px;margin-top:2px}.admin-check-list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.admin-check-row{display:flex;gap:12px;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;padding:10px 14px;transition:var(--transition)}.admin-check-row:hover{border-color:var(--accent-blue)}.admin-check-row[data-status=pass]{border-left-color:var(--accent-green)}.admin-check-row[data-status=warn]{border-left-color:var(--accent-yellow)}.admin-check-row[data-status=fail]{border-left-color:var(--accent-red)}.admin-check-badge{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;height:fit-content;margin-top:2px}.admin-check-pass{background:color-mix(in srgb,var(--accent-green) 15%,transparent);color:var(--accent-green)}.admin-check-warn{background:color-mix(in srgb,var(--accent-yellow) 15%,transparent);color:var(--accent-yellow)}.admin-check-fail{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.admin-check-body{min-width:0}.admin-check-name{font-weight:600;font-size:13px}.admin-check-message{color:var(--text-primary);font-size:12px;margin-top:2px}.admin-check-detail{color:var(--text-secondary);font-size:11px;margin-top:4px;white-space:pre-wrap}.admin-check-fix{color:var(--accent-cyan);font-size:11px;margin-top:4px}.admin-table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:8px;margin-bottom:24px}.admin-table{width:100%;border-collapse:collapse;font-size:12px}.admin-table th{text-align:left;padding:10px 14px;background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border)}.admin-table td{padding:10px 14px;border-bottom:1px solid var(--border-light)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--bg-hover)}.admin-provider-type{font-weight:600;color:var(--accent-blue)}.admin-key-masked{color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.admin-endpoint{color:var(--text-secondary);font-size:11px}.admin-header-actions{display:flex;gap:8px;align-items:center}.admin-logout-btn{background:transparent;border:1px solid var(--border, #333);color:var(--text-secondary);border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer;transition:all .15s ease}.admin-logout-btn:hover{border-color:var(--accent-red);color:var(--accent-red)}.admin-gate-form{max-width:380px;display:flex;flex-direction:column;gap:14px;margin-top:18px;padding:20px;background:color-mix(in srgb,var(--text-primary) 3%,transparent);border:1px solid var(--border, #333);border-radius:10px}.admin-gate-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--text-secondary)}.admin-input{background:var(--scrim);border:1px solid var(--border, #333);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:12px;min-width:0;width:100%;transition:border-color .15s ease}.admin-input:focus{outline:none;border-color:var(--accent, #4c9aff)}.admin-key-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.admin-provider-sub{font-size:11px;color:var(--text-secondary);margin-top:2px}.admin-hint{font-size:11px;color:var(--text-secondary);opacity:.8;margin-top:4px}.admin-hint code{background:color-mix(in srgb,var(--text-primary) 6%,transparent);padding:1px 4px;border-radius:4px;font-size:10px}.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-mini-btn{background:color-mix(in srgb,var(--text-primary) 6%,transparent);border:1px solid var(--border, #333);color:var(--text-primary);border-radius:6px;padding:4px 8px;font-size:11px;cursor:pointer;transition:all .15s ease}.admin-mini-btn:hover:not(:disabled){border-color:var(--accent, #4c9aff);color:var(--accent, #4c9aff)}.admin-mini-btn:disabled{opacity:.5;cursor:default}.admin-mini-danger:hover:not(:disabled){border-color:var(--accent-red);color:var(--accent-red)}.admin-quota-panel{margin-top:22px}.admin-quota-note{font-size:11px;color:var(--text-secondary);margin:0 0 10px;max-width:760px;line-height:1.5}.admin-quota-table{display:flex;flex-direction:column;gap:4px;max-width:820px}.admin-quota-row{display:grid;grid-template-columns:120px 1fr 1fr 1fr 90px;gap:8px;align-items:center}.admin-quota-row.admin-quota-head{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding:0 4px}.admin-quota-row .admin-input{min-width:0}.admin-quota-row .admin-input:disabled{opacity:.55;cursor:default}.admin-quota-cost{margin-top:12px;max-width:820px}.admin-quota-cost-hint{font-size:10px;color:var(--text-secondary);grid-column:2 / span 3}.admin-quota-actions{display:flex;align-items:center;gap:10px;margin-top:12px}.admin-quota-ok{font-size:12px;color:var(--accent-green, #4ade80)}.admin-quota-err{font-size:12px;color:var(--accent-red)}.admin-row-msg{font-size:11px;margin-top:6px;color:var(--text-secondary)}.admin-row-msg-err{color:var(--accent-red)}.admin-empty-cell{text-align:center;color:var(--text-secondary);padding:16px!important}.admin-add-provider{display:flex;gap:8px;align-items:center;margin-top:12px}.admin-add-provider .admin-input{max-width:320px}.admin-role-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:10px;font-size:11px;vertical-align:middle;background:color-mix(in srgb,var(--text-primary) 6%,transparent);border:1px solid var(--border, #333);color:var(--text-secondary)}.admin-role-admin{background:color-mix(in srgb,var(--accent-green) 12%,transparent);border-color:color-mix(in srgb,var(--accent-green) 35%,transparent);color:var(--accent-green)}.admin-role-operator{background:color-mix(in srgb,var(--accent-yellow) 12%,transparent);border-color:color-mix(in srgb,var(--accent-yellow) 35%,transparent);color:var(--accent-yellow)}.admin-role-viewer{background:color-mix(in srgb,var(--text-muted) 12%,transparent);border-color:color-mix(in srgb,var(--text-muted) 35%,transparent);color:var(--text-secondary)}.admin-readonly-note{margin-top:12px;padding:10px 14px;border:1px solid color-mix(in srgb,var(--accent-yellow) 35%,transparent);background:color-mix(in srgb,var(--accent-yellow) 8%,transparent);border-radius:8px;font-size:12px;color:var(--accent-yellow)}.admin-readonly-note code{background:color-mix(in srgb,var(--text-primary) 6%,transparent);padding:1px 4px;border-radius:4px;font-size:11px}.admin-users-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.admin-user-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--border, #333);border-radius:8px;background:color-mix(in srgb,var(--text-primary) 2%,transparent)}.admin-user-name{font-weight:600;font-size:13px}.admin-user-since{font-size:11px;color:var(--text-secondary);flex:1}.admin-user-form{margin-top:0;max-width:420px}.admin-user-form select{background:var(--scrim);border:1px solid var(--border, #333);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:12px}.hub-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0;border-bottom:1px solid var(--border-light);padding-bottom:10px}.hub-tab{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer;transition:var(--transition)}.hub-tab:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.hub-tab.active{background:var(--accent-blue);border-color:var(--accent-blue);color:var(--bg-primary);font-weight:600}.hub-tab-count{margin-left:6px;background:var(--scrim);border-radius:10px;padding:1px 8px;font-size:11px;font-weight:700}.hub-tab.active .hub-tab-count{background:var(--scrim)}.hub-toolset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:14px}.hub-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:10px;padding:14px;transition:var(--transition)}.hub-card:hover{border-color:var(--border)}.hub-card-disabled{opacity:.72;border-color:var(--accent-red)}.hub-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.hub-card-title{display:flex;flex-direction:column;gap:2px;min-width:0}.hub-card-name{font-weight:600;font-size:14px}.hub-card-id{font-size:11px;color:var(--text-muted);font-family:SF Mono,Menlo,Consolas,monospace}.hub-card-desc{margin:8px 0;color:var(--text-secondary);font-size:12px}.hub-card-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.hub-chip{background:color-mix(in srgb,var(--accent-blue) 12%,transparent);color:var(--accent-blue);border:1px solid color-mix(in srgb,var(--accent-blue) 25%,transparent);border-radius:6px;padding:2px 8px;font-size:11px;font-family:SF Mono,Menlo,Consolas,monospace}.hub-chip-pending{background:color-mix(in srgb,var(--accent-yellow) 14%,transparent);color:var(--accent-warn, #d97706);border:1px dashed color-mix(in srgb,var(--accent-yellow) 45%,transparent)}.chat-resolve-card{margin:10px 0;padding:10px 14px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent-blue) 45%,transparent);background:color-mix(in srgb,var(--accent-blue) 6%,transparent);font-size:13px}.chat-resolve-head{margin-bottom:6px;color:var(--text-primary)}.chat-resolve-cmd{margin:6px 0;padding:6px 10px;background:var(--bg-tertiary);border-radius:6px;overflow-x:auto}.chat-resolve-options{display:flex;flex-direction:column;gap:6px;margin:8px 0}.chat-resolve-options .chat-chip{text-align:left}.chat-resolve-foot{display:flex;align-items:center;gap:8px;margin-top:8px}.hub-reveal-row{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:12px}.hub-reveal-toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:500}.hub-reveal-toggle input[type=checkbox]{accent-color:var(--accent-blue);cursor:pointer}.hub-unsaved-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:4px 0 12px;padding:8px 12px;border-radius:6px;border:1px solid color-mix(in srgb,var(--accent-yellow) 45%,transparent);background:color-mix(in srgb,var(--accent-yellow) 8%,transparent);color:var(--text-primary);font-size:12px}.hub-card-note{margin-top:10px;font-size:11px;color:var(--accent-yellow)}.hub-switch{position:relative;width:40px;height:22px;border-radius:12px;border:1px solid var(--border);background:var(--scrim);cursor:pointer;transition:var(--transition);flex-shrink:0}.hub-switch:hover:not(:disabled){border-color:var(--accent-blue)}.hub-switch:disabled{opacity:.5;cursor:not-allowed}.hub-switch.on{background:var(--accent-green);border-color:var(--accent-green)}.hub-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-primary);transition:var(--transition)}.hub-switch.on .hub-switch-knob{left:20px}.hub-alias-list,.hub-platform-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.hub-platform{display:flex;align-items:center;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;padding:6px 10px;font-size:12px}.hub-platform.configured{border-color:color-mix(in srgb,var(--accent-green) 40%,transparent)}.hub-platform-label{font-weight:600;color:var(--text-primary)}.hub-platform-env{color:var(--text-muted);font-size:11px;font-family:SF Mono,Menlo,Consolas,monospace}.hub-alias-row{display:flex;align-items:center;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;padding:6px 10px}.hub-send-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:8px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.hub-send-form label{display:flex;flex-direction:column;gap:4px;min-width:0}.hub-send-form .hub-send-target{flex:2;min-width:240px}.hub-send-form .hub-send-message{flex:3;min-width:240px}.hub-send-form input{background:var(--scrim);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:8px 10px;font-size:12px;min-width:0;width:100%;transition:border-color .15s ease}.hub-send-form input:focus{outline:none;border-color:var(--accent-blue)}.hub-send-form input:disabled{opacity:.55}.hub-send-form .admin-refresh-btn{flex-shrink:0}.hub-session-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.hub-artifact-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin-top:8px}.hub-artifact-list li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.hub-artifact-title{color:var(--text-primary);font-weight:500}.hub-artifact-preview{flex-basis:100%;color:var(--text-muted);font-size:11px;background:var(--scrim);border-radius:6px;padding:6px 8px;white-space:pre-wrap;word-break:break-word;font-family:SF Mono,Menlo,Consolas,monospace;max-height:60px;overflow:hidden}.task-run-form{display:flex;gap:8px;margin:12px 0 4px;align-items:stretch}.task-cmd-input{flex:1;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px}.task-timeout-select{width:auto;flex:0 0 auto}.task-hint{color:var(--text-muted);font-size:12px;margin:4px 0 12px}.task-console-wrap{margin:12px 0 16px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-inset)}.task-console-header{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border);font-size:12px;flex-wrap:wrap}.task-console-cmd{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:var(--text-primary);overflow-wrap:anywhere}.task-meta{color:var(--text-muted);margin-left:auto}.task-cancel-btn{color:var(--accent-red)}.task-console{height:320px;overflow-y:auto;padding:8px 12px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.task-line-stdout{color:var(--text-primary)}.task-line-stderr{color:var(--accent-red)}.task-line-system{color:var(--text-muted);font-style:italic}.task-autoscroll{display:block;padding:6px 12px;border-top:1px solid var(--border-light);color:var(--text-muted);font-size:11px;cursor:pointer}.task-status{font-size:12px;font-weight:600;padding:1px 8px;border-radius:999px;border:1px solid var(--border);background:var(--bg-tertiary);white-space:nowrap}.task-status-running{color:var(--accent-yellow);border-color:var(--accent-yellow)}.task-status-done{color:var(--accent-green);border-color:var(--accent-green)}.task-status-failed{color:var(--accent-red);border-color:var(--accent-red)}.task-status-cancelled{color:var(--text-muted)}.task-status-timeout{color:var(--accent-yellow)}.task-status-error{color:var(--accent-red)}.task-history-title{font-size:14px;margin:8px 0}.task-table tbody tr{cursor:pointer}.task-table tbody tr:hover{background:var(--bg-hover)}.task-table tbody tr.task-row-active{background:color-mix(in srgb,var(--accent-blue) 8%,transparent);border-left:3px solid var(--accent-blue)}.task-table code{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;color:var(--text-primary)}.wa-panel{margin-top:8px;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.wa-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}.wa-panel-title{font-weight:600;font-size:13px;color:var(--text-primary)}.wa-badge{font-size:11px;padding:2px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-secondary);background:var(--scrim)}.wa-badge-paired{color:var(--accent-green);border-color:color-mix(in srgb,var(--accent-green) 40%,transparent)}.wa-badge-pairing{color:var(--accent-yellow);border-color:color-mix(in srgb,var(--accent-yellow) 40%,transparent)}.wa-actions,.wa-pairing{display:flex;flex-direction:column;gap:10px;margin-top:10px}.wa-action-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wa-phone-row{gap:8px}.wa-phone-input{background:var(--scrim);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:8px 10px;font-size:12px;min-width:240px;transition:border-color .15s ease}.wa-phone-input:focus{outline:none;border-color:var(--accent-blue)}.wa-phone-input:disabled{opacity:.55}.wa-qr-box{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;background:var(--qr-background);border-radius:10px;border:1px solid var(--border)}.wa-qr-box .admin-hint{color:var(--text-muted);max-width:360px;text-align:center}.wa-qr-img{width:240px;height:240px;image-rendering:pixelated;border-radius:6px}.wa-code-box{padding:14px;background:var(--scrim);border:1px dashed var(--border);border-radius:10px;display:flex;flex-direction:column;gap:8px;align-items:center}.wa-code{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:28px;font-weight:700;letter-spacing:6px;color:var(--accent-blue, #3b82f6)}.wa-unpair-btn{border-color:color-mix(in srgb,var(--accent-red) 50%,transparent);color:var(--accent-red)}.admin-login-hint{margin:16px 0;padding:14px;border:1px dashed var(--border);border-radius:10px;color:var(--text-secondary);background:var(--scrim)}.md-root{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.55}.md-root p.md-para{margin:0}.md-blank{height:6px}.md-heading{margin:4px 0 2px;font-weight:700;color:var(--text-primary)}.md-h1{font-size:17px}.md-h2{font-size:15px}.md-h3{font-size:14px}.md-h4,.md-h5,.md-h6{font-size:13px}.md-list{margin:0;padding-left:20px}.md-list li{margin:2px 0}.md-quote{margin:0;padding:4px 10px;border-left:3px solid var(--accent-blue, #3b82f6);color:var(--text-secondary);background:color-mix(in srgb,var(--accent-blue) 8%,transparent);border-radius:0 6px 6px 0}.md-hr{border:none;border-top:1px solid var(--border);margin:4px 0}.md-inline-code,.md-root :not(pre)>code{background:color-mix(in srgb,var(--text-muted) 20%,transparent);border:1px solid color-mix(in srgb,var(--text-muted) 30%,transparent);border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.md-root ul:has(input[type=checkbox]){list-style:none;padding-left:4px}.md-root input[type=checkbox]{margin-right:6px;accent-color:var(--accent-blue, #3b82f6)}.md-code-pre code .hljs-keyword,.md-code-pre code .hljs-selector-tag,.md-code-pre code .hljs-built_in{color:var(--code-keyword)}.md-code-pre code .hljs-string,.md-code-pre code .hljs-attr,.md-code-pre code .hljs-template-tag{color:var(--code-string)}.md-code-pre code .hljs-number,.md-code-pre code .hljs-literal,.md-code-pre code .hljs-symbol{color:var(--code-number)}.md-code-pre code .hljs-comment,.md-code-pre code .hljs-quote{color:var(--code-comment);font-style:italic}.md-code-pre code .hljs-function,.md-code-pre code .hljs-title,.md-code-pre code .hljs-title.function_{color:var(--code-function)}.md-code-pre code .hljs-variable,.md-code-pre code .hljs-params,.md-code-pre code .hljs-property{color:var(--code-error)}.md-code-pre code .hljs-meta{color:var(--code-text)}.md-code-pre code .hljs-emphasis{font-style:italic}.md-code-pre code .hljs-strong{font-weight:700}.md-root a{color:var(--accent-blue, #60a5fa);text-decoration:underline}.md-code-block{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--scrim)}.md-code-head{display:flex;justify-content:space-between;align-items:center;padding:4px 10px;background:color-mix(in srgb,var(--text-muted) 15%,transparent);border-bottom:1px solid var(--border)}.md-code-lang{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.md-code-copy{background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;padding:1px 8px;font-size:11px;cursor:pointer}.md-code-copy:hover{color:var(--text-primary);border-color:var(--accent-blue, #3b82f6)}.md-code-pre{margin:0;padding:10px 12px;overflow-x:auto}.md-code-pre code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5;white-space:pre;color:var(--text-primary)}.md-table{border-collapse:collapse;font-size:12px;margin:2px 0;width:100%}.md-table th,.md-table td{border:1px solid var(--border);padding:4px 8px;text-align:left}.md-table th{background:color-mix(in srgb,var(--text-muted) 15%,transparent);font-weight:600}.empty-state-title{margin:0 0 10px;color:var(--text-secondary)}.empty-state-chips{display:flex;flex-wrap:wrap;gap:8px}.chat-project-bar{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);padding:8px 10px;margin-bottom:10px}.chat-project-attached{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.chat-project-icon{font-size:14px}.chat-project-name{font-weight:700}.chat-project-meta{color:var(--text-secondary)}.chat-project-path{color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-project-pick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.chat-project-hint{color:var(--text-secondary)}.chat-project-chips{display:flex;gap:6px;flex-wrap:wrap}.chat-project-input{flex:1;min-width:180px;background:var(--scrim);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:6px 10px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.chat-project-input:focus{outline:none;border-color:var(--accent-blue)}.chat-project-error{color:var(--accent-red)}.chat-project-pick{position:relative}.chat-browse-popover{position:absolute;top:100%;left:0;z-index:100;width:380px;max-height:360px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px var(--shadow);display:flex;flex-direction:column;overflow:hidden;margin-top:4px}.chat-browse-head{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);font-size:11px}.chat-browse-path{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-secondary)}.chat-browse-list{flex:1;overflow-y:auto;padding:4px;display:flex;flex-direction:column;gap:1px}.chat-browse-entry{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:none;background:transparent;color:var(--text-primary);font-size:12px;border-radius:6px;cursor:pointer;text-align:left}.chat-browse-entry:hover{background:color-mix(in srgb,var(--text-primary) 6%,transparent)}.chat-browse-foot{display:flex;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid var(--border)}.chat-browse-breadcrumbs{flex:1;display:flex;align-items:center;gap:2px;overflow-x:auto;white-space:nowrap;font-size:11px}.chat-breadcrumb{background:none;border:none;color:var(--accent);cursor:pointer;padding:2px 4px;border-radius:4px;font-size:11px}.chat-breadcrumb:hover{background:color-mix(in srgb,var(--text-primary) 10%,transparent)}.chat-breadcrumb-sep{color:var(--text-secondary);font-size:10px}.chat-browse-drives{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);flex-wrap:wrap}.chat-browse-drive{padding:4px 10px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);border-radius:6px;cursor:pointer;font-size:11px}.chat-browse-drive:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent);border-color:var(--accent)}.chat-browse-search{padding:6px 10px;border-bottom:1px solid var(--border)}.chat-browse-filter{width:100%;padding:4px 8px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);border-radius:6px;font-size:12px;outline:none}.chat-browse-filter:focus{border-color:var(--accent)}.chat-browse-entry-icon{font-size:14px}.chat-browse-entry-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-browse-entry-date{font-size:10px;color:var(--text-secondary)}.chat-session-project-banner{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;margin:0 14px 8px;font-size:13px;color:var(--text-secondary)}.chat-session-project-banner code{background:var(--bg-primary);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--text-primary);word-break:break-all}.chat-layout{display:flex;gap:12px;min-height:380px}.chat-rail{width:34px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding-top:8px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card)}.chat-rail-btn{background:transparent;border:none;font-size:16px;cursor:pointer;padding:6px;border-radius:6px}.chat-rail-btn:hover{background:color-mix(in srgb,var(--accent-blue) 12%,transparent)}.chat-sidebar{width:260px;flex-shrink:0;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);display:flex;flex-direction:column;max-height:480px;overflow:hidden}.chat-sidebar-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;font-size:12px;font-weight:600;border-bottom:1px solid var(--border);color:var(--text-secondary)}.chat-sidebar-head-actions{display:flex;gap:4px;align-items:center}.chat-mini-action{background:transparent;border:none;cursor:pointer;font-size:11px;padding:2px 5px;border-radius:5px;color:var(--text-secondary)}.chat-mini-action:hover{background:color-mix(in srgb,var(--accent-blue) 15%,transparent);color:var(--text-primary)}.chat-session-search{width:calc(100% - 20px);margin:8px 10px;padding:6px 8px;font-size:12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-input, #0d1117);color:var(--text-primary)}.chat-session-group{margin-bottom:4px}.chat-session-group-label{padding:6px 10px 2px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);opacity:.8}.chat-session-main{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;padding:4px 0;color:var(--text-primary);min-width:0}.chat-session-preview{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-session-actions{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:none;gap:2px}.chat-session-rename{display:flex;gap:4px;align-items:center;padding:4px 0}.chat-session-rename input{flex:1;min-width:0;font-size:12px;padding:4px 6px;border:1px solid var(--accent-blue, #3b82f6);border-radius:6px;background:var(--bg-input, #0d1117);color:var(--text-primary)}.chat-sidebar-empty{padding:14px 10px;font-size:12px;color:var(--text-secondary)}.chat-sidebar-list{overflow-y:auto;flex:1}.chat-session-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:8px 10px;background:transparent;border:none;border-bottom:1px solid color-mix(in srgb,var(--text-muted) 15%,transparent);cursor:pointer;color:var(--text-primary)}.chat-session-item{position:relative;padding-right:40px}.chat-session-item:hover{background:color-mix(in srgb,var(--accent-blue) 10%,transparent)}.chat-session-item:hover .chat-session-actions{display:flex}.chat-session-item.chat-session-active{background:color-mix(in srgb,var(--accent-blue) 18%,transparent);border-left:3px solid var(--accent-blue, #3b82f6)}.chat-session-title{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-session-meta{font-size:11px;color:var(--text-secondary)}.chat-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}.ops-console{margin:10px 0;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.ops-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ops-custom-row{display:flex;gap:8px;align-items:center}.ops-custom-row input{flex:1;background:var(--scrim);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:8px 10px;font-size:12px;min-width:0;transition:border-color .15s ease}.ops-custom-row input:focus{outline:none;border-color:var(--accent-blue)}.ops-console-box{margin:12px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--scrim)}.ops-console-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-secondary)}.ops-console{max-height:320px;overflow-y:auto;margin:0;padding:12px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;line-height:1.5;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.chat-head-actions{display:flex;align-items:center;gap:10px}.chat-thread{display:flex;flex-direction:column;gap:10px;margin:14px 0;padding:14px;max-height:60vh;overflow-y:auto;background:var(--scrim);border:1px solid var(--border);border-radius:10px}.chat-bubble{max-width:85%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);white-space:pre-wrap;word-break:break-word}.chat-user{align-self:flex-end;background:color-mix(in srgb,var(--accent-blue) 18%,transparent);border-color:color-mix(in srgb,var(--accent-blue) 40%,transparent)}.chat-assistant{align-self:flex-start}.chat-error{border-color:color-mix(in srgb,var(--accent-red) 50%,transparent)}.chat-bubble-role{font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.chat-bubble-text{font-size:13px;line-height:1.5;color:var(--text-primary)}.chat-streaming .chat-bubble-text{margin:0 0 6px}.chat-streaming .chat-bubble-text>:last-child:after{content:"▍";color:var(--accent-blue, #4da3ff);animation:chat-stream-cursor .9s step-end infinite}@keyframes chat-stream-cursor{0%,to{opacity:1}50%{opacity:0}}.chat-working{display:flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:13px}.chat-dots:after{content:"…";animation:chat-dots 1.2s infinite}.chat-cancel-btn{align-self:center;white-space:nowrap}.chat-cancel-btn:hover{border-color:var(--danger, #e5534b);color:var(--danger, #e5534b)}.chat-retry-row{display:flex;align-items:center;gap:10px;margin:0 0 10px}@keyframes chat-dots{0%{content:""}33%{content:"."}66%{content:".."}to{content:"..."}}.chat-followups{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.chat-chip{background:color-mix(in srgb,var(--accent-blue) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent-blue) 45%,transparent);color:var(--text-primary);border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer;transition:background .15s ease;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-chip:hover{background:color-mix(in srgb,var(--accent-blue) 28%,transparent)}.chat-composer{border:1px solid var(--border);border-radius:10px;padding:6px 8px;background:var(--bg-card);display:flex;flex-direction:column;gap:6px}.chat-composer:focus-within{border-color:var(--accent-blue, #3b82f6)}.chat-composer-drag{border-color:var(--accent-blue, #3b82f6);background:color-mix(in srgb,var(--accent-blue) 6%,transparent)}.chat-attach-row{display:flex;flex-wrap:wrap;gap:6px}.chat-attach-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--accent-blue) 8%,transparent);color:var(--text-primary);max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-paste-offer{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border:1px dashed var(--border);border-radius:8px;background:color-mix(in srgb,var(--accent-yellow) 5%,transparent)}.chat-attach-btn{background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:14px;padding:6px 8px;line-height:1;color:var(--text-secondary)}.chat-attach-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-blue) 12%,transparent)}.chat-attach-btn:disabled{opacity:.4;cursor:not-allowed}.chat-attach-content{margin-top:6px}.chat-attach-content pre{margin:4px 0 0;padding:8px 10px;font-size:11px;line-height:1.4;max-height:200px;overflow:auto;background:var(--bg-input, #0d1117);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.chat-input-row{display:flex;gap:8px;align-items:center}.chat-input-row textarea.chat-input-box{flex:1;background:var(--scrim);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;padding:10px 12px;font-size:13px;min-width:0;resize:vertical;min-height:40px;max-height:160px;font-family:inherit;line-height:1.4;transition:border-color .15s ease}.chat-input-row textarea.chat-input-box:focus{outline:none;border-color:var(--accent-blue)}.chat-input-row textarea.chat-input-box:disabled{opacity:.55}.chat-working-lines{display:flex;flex-direction:column;gap:2px}.chat-step-line{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11.5px;color:var(--text-secondary);line-height:1.5}.chat-steps{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border)}.chat-steps summary{cursor:pointer;font-size:11px;color:var(--accent-blue, #3b82f6);-webkit-user-select:none;user-select:none}.chat-steps>div{margin-top:6px}.chat-tool-cards{display:flex;flex-direction:column;gap:6px;margin:8px 0 2px}.chat-tool-card{border:1px solid var(--border);border-left:3px solid var(--accent-blue, #3b82f6);border-radius:8px;padding:6px 8px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-tool-card.chat-tool-ok{border-left-color:var(--accent-green)}.chat-tool-card.chat-tool-err{border-left-color:var(--accent-red)}.chat-tool-card.chat-tool-running{border-left-color:var(--accent-blue, #3b82f6);opacity:.92}.chat-tool-head{display:flex;align-items:center;gap:6px;min-width:0}.chat-tool-icon{font-size:12px;flex:none}.chat-tool-name{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;font-weight:600;color:var(--text-primary);flex:none}.chat-tool-args{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.chat-tool-status{font-size:12px;flex:none}.chat-tool-dur{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:10.5px;color:var(--text-secondary);flex:none}.chat-tool-detail{margin-top:5px}.chat-tool-detail summary{cursor:pointer;font-size:10.5px;color:var(--accent-blue, #3b82f6);-webkit-user-select:none;user-select:none}.chat-tool-body{margin:5px 0 0;padding:6px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:180px;overflow:auto;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border-radius:6px;color:var(--text-secondary)}.chat-finding-cards{display:flex;flex-direction:column;gap:6px;margin:8px 0 2px}.chat-finding-card{border:1px solid var(--border);border-left:3px solid var(--accent-purple);border-radius:8px;padding:7px 9px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-finding-card.chat-finding-confirmed{border-left-color:var(--accent-green)}.chat-finding-card.chat-finding-plausible{border-left-color:var(--accent-yellow)}.chat-finding-head{display:flex;align-items:center;gap:6px;min-width:0}.chat-finding-icon{font-size:12px;flex:none}.chat-finding-claim{font-size:12.5px;font-weight:600;color:var(--text-primary);min-width:0;flex:1}.chat-finding-verdict{flex:none;font-size:9.5px;font-weight:700;letter-spacing:.04em;padding:1px 7px;border-radius:10px;border:1px solid}.chat-finding-verdict-ok{color:var(--accent-green);background:var(--ok-soft);border-color:var(--accent-green)}.chat-finding-verdict-guess{color:var(--accent-yellow);background:var(--warn-soft);border-color:var(--accent-yellow)}.chat-finding-outcome{margin-top:3px;font-size:11.5px;color:var(--text-secondary)}.chat-finding-evidence{list-style:none;margin:5px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.chat-finding-evidence li{display:flex;align-items:baseline;gap:5px;min-width:0;font-size:11px;color:var(--text-secondary)}.chat-finding-kind{flex:none;font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-blue)}.chat-finding-ref{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;color:var(--text-primary);word-break:break-word;min-width:0}.chat-finding-detail{color:var(--text-secondary);word-break:break-word}.chat-finding-noevidence{margin-top:5px;font-size:11px;color:var(--accent-yellow)}.chat-finding-source{margin-top:4px;font-size:10px;color:var(--text-secondary);opacity:.8}.chat-attach-btn-on{border-color:var(--accent-green);color:var(--accent-green);background:color-mix(in srgb,var(--accent-green) 12%,transparent)}.chat-attach-btn-on:hover:not(:disabled){background:color-mix(in srgb,var(--accent-green) 20%,transparent)}.chat-worktree-card{margin-top:8px;border:1px solid var(--border);border-left:3px solid var(--accent-green);border-radius:8px;padding:8px 10px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-worktree-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.chat-worktree-icon{font-size:12px;flex:none}.chat-worktree-title{font-size:12.5px;font-weight:600}.chat-worktree-state{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.04em;border:1px solid currentColor;border-radius:999px;padding:0 6px}.chat-worktree-state.chat-worktree-kept{color:var(--accent-green)}.chat-worktree-state.chat-worktree-gone{color:var(--text-secondary);opacity:.85}.chat-worktree-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:4px}.chat-worktree-dir{font-size:11px;word-break:break-all}.chat-worktree-note{margin-top:3px}.chat-refused-line{margin-top:8px;border:1px solid var(--border);border-left:3px solid var(--accent-red);border-radius:8px;padding:7px 9px;font-size:11.5px;color:var(--text-secondary)}.chat-resume-line{margin-top:6px;font-size:11px;color:var(--text-secondary);white-space:pre-line}.chat-resume-card{margin-top:8px;border:1px solid var(--border);border-left:3px solid var(--accent-purple);border-radius:8px;padding:8px 10px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-resume-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.chat-resume-icon{font-size:12px;flex:none}.chat-resume-title{font-size:12.5px;font-weight:600}.chat-resume-state{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.04em;border:1px solid currentColor;border-radius:999px;padding:0 6px}.chat-resume-state.chat-resume-saved{color:var(--accent-purple)}.chat-resume-state.chat-resume-unsaved{color:var(--accent-yellow)}.chat-resume-meta{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:4px;font-size:11px;color:var(--text-secondary)}.chat-resume-id{font-size:11px;word-break:break-all;opacity:.85}.chat-resume-note{margin-top:3px;font-size:11px;color:var(--text-secondary);white-space:pre-line}.chat-resume-input{max-width:220px;font-size:11px;padding:4px 6px}.chat-plan-card{border:1px solid var(--border);border-left:3px solid var(--accent-purple);border-radius:8px;padding:8px 10px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-plan-head{display:flex;align-items:center;gap:6px}.chat-plan-icon{font-size:12px;flex:none}.chat-plan-goal{font-size:12.5px;font-weight:600;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-plan-count{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;color:var(--text-secondary);flex:none}.chat-plan-steps{margin-top:7px;display:flex;flex-direction:column;gap:3px}.chat-plan-step{display:flex;align-items:center;gap:6px;min-width:0}.chat-plan-step-icon{font-size:11px;flex:none}.chat-plan-step-text{font-size:12px;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-plan-step-status{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:10px;color:var(--text-secondary);flex:none;text-transform:uppercase}.chat-plan-step-done .chat-plan-step-text{text-decoration:line-through;opacity:.65}.chat-plan-step-blocked .chat-plan-step-text{color:var(--accent-red)}.chat-diff-card{border:1px solid var(--border);border-left:3px solid var(--accent-yellow);border-radius:8px;padding:8px 10px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-diff-head{display:flex;align-items:center;gap:6px}.chat-diff-icon{font-size:12px;flex:none}.chat-diff-title{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;font-weight:600;color:var(--text-primary)}.chat-diff-meta{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;color:var(--text-secondary);margin-left:auto}.chat-diff-files{margin-top:6px;display:flex;flex-direction:column;gap:4px}.chat-diff-file{border:1px solid var(--border);border-radius:6px}.chat-diff-file summary{cursor:pointer;padding:4px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11.5px;color:var(--accent-blue, #3b82f6);-webkit-user-select:none;user-select:none}.chat-diff-body{margin:0;padding:6px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border-top:1px dashed var(--border)}.chat-diff-line{min-height:1.5em}.chat-diff-line.diff-add{color:var(--accent-green);background:color-mix(in srgb,var(--accent-green) 12%,transparent)}.chat-diff-line.diff-del{color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 12%,transparent)}.chat-diff-line.diff-hunk{color:var(--text-secondary);background:color-mix(in srgb,var(--accent-blue) 10%,transparent)}.chat-diff-file-path{display:flex;align-items:center;gap:6px}.chat-diff-toggle{flex:none;width:18px;height:18px;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:11px;line-height:1;cursor:pointer;padding:0}.chat-diff-toggle-on{background:color-mix(in srgb,var(--accent-green) 22%,transparent);border-color:var(--accent-green);color:var(--accent-green)}.chat-diff-file-rejected{opacity:.55}.chat-diff-file-rejected .chat-diff-toggle{background:color-mix(in srgb,var(--accent-red) 18%,transparent);border-color:var(--accent-red);color:var(--accent-red)}.chat-diff-actions{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}.chat-diff-locked{font-style:italic}.chat-artifacts{display:flex;flex-direction:column;gap:6px;margin:8px 0 2px}.chat-artifact-item{border-radius:8px}.chat-artifact-item:focus{outline:2px solid var(--accent-blue, #3b82f6);outline-offset:2px}.chat-card-copy{background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;padding:1px 8px;font-size:11px;cursor:pointer;flex:none;margin-left:6px}.chat-card-copy:hover{color:var(--text-primary);border-color:var(--accent-blue, #3b82f6)}.chat-result-card{border:1px solid var(--border);border-left:3px solid var(--text-muted);border-radius:8px;padding:8px 10px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-result-pass{border-left-color:var(--accent-green)}.chat-result-fail{border-left-color:var(--accent-red)}.chat-result-head{display:flex;align-items:center;gap:6px}.chat-result-icon{font-size:12px;flex:none}.chat-result-title{font-size:12.5px;font-weight:600;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-result-meta{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:10.5px;color:var(--text-secondary);flex:none;text-transform:uppercase}.chat-result-body{margin:6px 0 0;padding:6px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border-radius:6px;color:var(--text-secondary)}.chat-deploy-card{border:1px solid var(--border);border-left:3px solid var(--accent-cyan);border-radius:8px;padding:8px 10px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-deploy-head{display:flex;align-items:center;gap:6px}.chat-deploy-icon{font-size:12px;flex:none}.chat-deploy-title{font-size:12.5px;font-weight:600;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-deploy-url{display:block;margin-top:6px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11.5px;color:var(--accent-blue, #3b82f6);word-break:break-all}.chat-task-card{border:1px solid var(--border);border-left:3px solid var(--accent-blue, #3b82f6);border-radius:8px;padding:8px 10px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-task-running{border-left-color:var(--accent-blue, #3b82f6)}.chat-task-ok{border-left-color:var(--accent-green)}.chat-task-err{border-left-color:var(--accent-red)}.chat-task-head{display:flex;align-items:center;gap:8px;min-width:0}.chat-task-icon{font-size:12px;flex:none}.chat-task-cmd{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.chat-task-status{font-size:11.5px;color:var(--text-secondary);flex:none}.chat-task-exit,.chat-task-dur{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:10.5px;color:var(--text-secondary);flex:none}.chat-task-logs{margin:6px 0 0;padding:6px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:240px;overflow:auto;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border-radius:6px;color:var(--text-secondary)}.chat-task-log{white-space:pre-wrap;word-break:break-word}.chat-task-log-stdout{color:var(--text-secondary)}.chat-task-log-stderr{color:var(--accent-red)}.chat-task-log-system{color:var(--text-secondary);font-style:italic;opacity:.85}.chat-task-log-sep{margin:4px 0 2px;padding:1px 6px;border-top:1px dashed var(--border);font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.chat-task-log-sep-stderr{color:var(--accent-red)}.chat-task-log-sep-system{color:var(--text-secondary)}.chat-draft-card{border:1px solid var(--border);border-left:3px solid var(--accent-purple);border-radius:8px;padding:10px 12px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-draft-card.chat-draft-saved{border-left-color:var(--accent-green)}.chat-draft-card.chat-draft-rejected{border-left-color:var(--text-muted);opacity:.75}.chat-draft-head{display:flex;align-items:center;gap:6px}.chat-draft-icon{font-size:12px;flex:none}.chat-draft-title{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:12px;font-weight:600;color:var(--text-primary)}.chat-draft-meta{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;color:var(--text-secondary);margin-left:auto}.chat-draft-desc{margin:6px 0 0;font-size:12.5px;color:var(--text-secondary)}.chat-draft-body{margin:6px 0 0;padding:6px 8px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-size:11px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow:auto;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border:1px dashed var(--border);border-radius:6px}.chat-draft-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.chat-secret-card{border:1px solid var(--border);border-left:3px solid var(--accent-yellow, #d29922);border-radius:8px;padding:10px 12px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-secret-head{display:flex;align-items:center;gap:6px}.chat-secret-icon{font-size:12px;flex:none}.chat-secret-title{font-size:12px;font-weight:600;color:var(--text-primary)}.chat-secret-persisted{font-size:12px;color:var(--accent-green);margin:6px 0 0}.chat-secret-persisted code{background:color-mix(in srgb,var(--accent-green, #3fb950) 15%,transparent);padding:1px 5px;border-radius:3px;font-size:11px;margin:0 2px}.chat-secret-fields{margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.chat-secret-row{display:flex;align-items:center;gap:8px}.chat-secret-label{font-size:12px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:var(--text-secondary);min-width:160px}.chat-secret-input{flex:1;background:color-mix(in srgb,var(--bg, #14171c) 70%,transparent);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:12px;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);color:var(--text-primary)}.chat-secret-input:focus{outline:none;border-color:var(--accent-blue)}.chat-exec-card{border:1px solid var(--border);border-left:3px solid var(--accent-green, #3fb950);border-radius:8px;padding:10px 12px;margin:8px 0 2px;background:color-mix(in srgb,var(--bg-secondary, #1b1f27) 55%,transparent)}.chat-exec-card.chat-exec-failure{border-left-color:var(--accent-red, #f85149)}.chat-exec-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.chat-exec-icon{font-size:12px;flex:none}.chat-exec-title{font-size:12px;font-weight:600;color:var(--text-primary)}.chat-exec-status{font-size:11px;color:var(--accent-green)}.chat-exec-card.chat-exec-failure .chat-exec-status{color:var(--accent-red)}.chat-exec-meta{font-size:11px;color:var(--text-secondary, #8b949e);margin-left:auto}.chat-exec-expand{font-size:10px;color:var(--text-secondary, #8b949e);flex:none}.chat-exec-body{margin-top:8px;border-top:1px solid var(--border);padding-top:8px}.chat-exec-section{margin-bottom:8px}.chat-exec-section-title{font-size:11px;font-weight:600;color:var(--text-secondary, #8b949e);margin-bottom:4px;text-transform:uppercase}.chat-exec-output{font-family:SF Mono,Fira Code,monospace;font-size:11px;line-height:1.4;background:var(--bg-primary, #0d1117);border:1px solid var(--border);border-radius:4px;padding:8px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto;color:var(--text-primary)}.chat-exec-section.chat-exec-stderr .chat-exec-output{border-color:var(--accent-red, #f85149);color:var(--accent-red, #f85149)}.chat-exec-details{display:flex;gap:12px;font-size:11px;color:var(--text-secondary, #8b949e)}.env-var-editor{padding:12px;background:var(--bg-secondary, #1b1f27);border:1px solid var(--border);border-radius:8px}.env-var-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.env-var-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.env-var-add-form{display:flex;gap:8px;margin-bottom:12px;padding:8px;background:var(--bg-primary, #0d1117);border-radius:6px}.env-var-input{flex:1;padding:6px 8px;font-size:12px;background:var(--bg-secondary, #1b1f27);border:1px solid var(--border);border-radius:4px;color:var(--text-primary)}.env-var-input:focus{outline:none;border-color:var(--accent-blue)}.env-var-list{display:flex;flex-direction:column;gap:8px}.env-var-empty{font-size:12px;color:var(--text-secondary, #8b949e);text-align:center;padding:20px}.env-var-row{padding:8px 10px;background:var(--bg-primary, #0d1117);border:1px solid var(--border);border-radius:6px}.env-var-row.env-var-set{border-left:3px solid var(--accent-green, #3fb950)}.env-var-row.env-var-missing{border-left:3px solid var(--accent-red, #f85149)}.env-var-row.env-var-blocked{border-left:3px solid var(--accent-yellow, #d29922);opacity:.7}.env-var-row-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.env-var-name{font-size:12px;font-weight:600;color:var(--text-primary);font-family:SF Mono,Fira Code,monospace}.env-var-required-badge,.env-var-blocked-badge{font-size:10px;font-weight:400;color:var(--accent-yellow, #d29922);margin-left:6px}.env-var-status{font-size:11px;color:var(--text-secondary, #8b949e)}.env-var-description{font-size:11px;color:var(--text-secondary, #8b949e);margin:4px 0}.env-var-edit,.env-var-actions{display:flex;gap:6px;margin-top:6px}.env-var-test-result{font-size:11px;margin-left:auto}.env-var-test-pass{color:var(--accent-green, #3fb950)}.env-var-test-fail{color:var(--accent-red, #f85149)}.env-var-help{margin-top:12px;padding:8px;background:var(--bg-primary, #0d1117);border-radius:4px;font-size:11px;color:var(--text-secondary, #8b949e)}.env-var-help code{background:var(--bg-secondary, #1b1f27);padding:1px 4px;border-radius:3px;font-family:SF Mono,Fira Code,monospace}.env-var-notice{margin:8px 0;padding:8px 10px;background:var(--bg-secondary, #1b1f27);border-left:3px solid var(--accent, #58a6ff);border-radius:4px;font-size:12px;color:var(--text-secondary, #8b949e)}.env-var-notice-error{border-left-color:var(--danger, #f85149);color:var(--danger, #f85149)}.process-env-group{margin-bottom:18px}.process-env-group-title{font-size:13px;font-weight:600;color:var(--text-primary);margin:0 0 2px}.process-env-group-blurb{font-size:11px;color:var(--text-secondary, #8b949e);margin:0 0 8px}.admin-mini-btn.process-env-active{border-color:var(--accent, #58a6ff);color:var(--accent, #58a6ff);font-weight:600}.env-var-warning{margin:6px 0 0;padding:6px 8px;background:var(--bg-secondary, #1b1f27);border-left:3px solid var(--accent-yellow, #d29922);border-radius:4px;font-size:11px;color:var(--accent-yellow, #d29922)}.execution-history{padding:12px;background:var(--bg-secondary, #1b1f27);border:1px solid var(--border);border-radius:8px}.execution-history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.execution-history-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.execution-history-actions{display:flex;gap:6px}.execution-history-stats{display:flex;gap:16px;margin-bottom:12px;padding:8px;background:var(--bg-primary, #0d1117);border-radius:6px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-value{font-size:16px;font-weight:600;color:var(--text-primary)}.stat-label{font-size:10px;color:var(--text-secondary, #8b949e);text-transform:uppercase}.stat-success .stat-value{color:var(--accent-green, #3fb950)}.stat-failure .stat-value{color:var(--accent-red, #f85149)}.execution-history-filters{display:flex;gap:8px;margin-bottom:12px}.execution-history-filters .env-var-input{flex:1}.execution-history-list{display:flex;flex-direction:column;gap:6px;max-height:400px;overflow-y:auto}.execution-history-empty{text-align:center;padding:20px;color:var(--text-secondary, #8b949e);font-size:12px}.execution-history-entry{padding:8px 10px;background:var(--bg-primary, #0d1117);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:background .15s}.execution-history-entry:hover{background:var(--bg-secondary, #1b1f27)}.execution-history-entry.success{border-left:3px solid var(--accent-green, #3fb950)}.execution-history-entry.failure{border-left:3px solid var(--accent-red, #f85149)}.execution-history-entry.timeout{border-left:3px solid var(--accent-yellow, #d29922)}.entry-header{display:flex;align-items:center;gap:8px}.entry-icon{font-size:12px;flex:none}.entry-skill{font-size:12px;font-weight:600;color:var(--text-primary)}.entry-runtime{font-size:11px;color:var(--text-secondary, #8b949e)}.entry-duration{font-size:11px;color:var(--text-secondary, #8b949e);margin-left:auto}.entry-time{font-size:10px;color:var(--text-secondary, #8b949e)}.entry-expand{font-size:10px;color:var(--text-secondary, #8b949e);flex:none}.entry-details{margin-top:8px;padding-top:8px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.entry-detail-row{display:flex;gap:8px;font-size:11px}.detail-label{color:var(--text-secondary, #8b949e);min-width:80px}.detail-value{color:var(--text-primary)}.detail-value.entry-error{color:var(--accent-red, #f85149)}.detail-value code{background:var(--bg-secondary, #1b1f27);padding:1px 4px;border-radius:3px;font-family:SF Mono,Fira Code,monospace}.platform-config{margin-top:10px}.platform-config .hub-platform{flex-direction:column;align-items:stretch;width:100%;gap:6px;padding:8px 10px}.platform-config .hub-platform-head{display:flex;align-items:center;gap:8px}.platform-config .hub-platform-head .admin-refresh-btn{margin-left:auto}.platform-config .hub-platform-env{display:flex;flex-wrap:wrap;gap:4px 12px}.platform-config-form{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px dashed var(--border-light)}.platform-config-form .hub-send-target{width:100%}.platform-config-form input{width:100%;box-sizing:border-box}.platform-config-actions{display:flex;gap:8px}.hub-remove-btn{background:transparent;border:1px solid color-mix(in srgb,var(--accent-red) 50%,transparent);color:var(--accent-red);border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer}.hub-remove-btn:hover{background:color-mix(in srgb,var(--accent-red) 10%,transparent)}.platform-docs-link{text-decoration:none;font-size:11px;padding:2px 6px;border-radius:4px;color:var(--accent-blue, #58a6ff);border:1px solid color-mix(in srgb,var(--accent-blue) 30%,transparent)}.platform-docs-link:hover{background:color-mix(in srgb,var(--accent-blue) 10%,transparent)}.platform-setup-hint{font-size:12px;color:var(--text-secondary, #8b949e);padding:4px 8px;background:color-mix(in srgb,var(--accent-blue) 6%,transparent);border-radius:4px;border-left:2px solid color-mix(in srgb,var(--accent-blue) 30%,transparent);line-height:1.4}.wizard-start-btn{background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent-cyan) 40%,transparent);color:var(--accent-cyan);border-radius:6px;padding:2px 8px;font-size:11px;cursor:pointer;white-space:nowrap}.wizard-start-btn:hover{background:color-mix(in srgb,var(--accent-cyan) 25%,transparent)}.wizard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:1000}.wizard-modal{background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:12px;width:520px;max-width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 16px 48px var(--shadow)}.wizard-header{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid var(--border-light, #30363d)}.wizard-icon{font-size:20px}.wizard-title{font-size:16px;font-weight:600;color:var(--text-primary, #e6edf3);flex:1}.wizard-body{padding:20px}.wizard-section-title{font-size:14px;font-weight:600;color:var(--text-primary, #e6edf3);margin:0 0 12px}.wizard-steps{margin:0 0 16px;padding-left:20px;color:var(--text-secondary, #8b949e);font-size:13px;line-height:1.8}.wizard-steps li{margin-bottom:4px}.wizard-nav{display:flex;gap:8px;margin-top:16px}.wizard-steps-indicator{display:flex;gap:4px;margin-left:auto;margin-right:8px}.wizard-step-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;background:var(--bg-tertiary, #1c2333);color:var(--text-secondary, #8b949e);border:1px solid var(--border-light, #30363d)}.wizard-step-dot.active{background:color-mix(in srgb,var(--accent-blue) 20%,transparent);color:var(--accent-blue, #58a6ff);border-color:var(--accent-blue)}.wizard-verify-status{padding:10px 12px;border-radius:6px;font-size:13px;margin-bottom:12px;background:var(--bg-tertiary, #1c2333);color:var(--text-secondary, #8b949e)}.wizard-verify-status.ok{background:color-mix(in srgb,var(--accent-cyan) 10%,transparent);color:var(--accent-cyan);border:1px solid color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.wizard-verify-status.err{background:color-mix(in srgb,var(--accent-red) 10%,transparent);color:var(--accent-red);border:1px solid color-mix(in srgb,var(--accent-red) 30%,transparent)}.wizard-test-section{margin-top:12px;padding:12px;background:var(--bg-tertiary, #1c2333);border-radius:8px;border:1px solid var(--border-light, #30363d)}.wizard-test-row{display:flex;gap:8px;margin-bottom:8px}.wizard-test-input{flex:1;background:var(--bg-primary, #0d1117);border:1px solid var(--border-light, #30363d);border-radius:6px;padding:6px 10px;font-size:13px;color:var(--text-primary, #e6edf3)}.wizard-hint{margin-top:12px;font-size:12px;color:var(--text-secondary, #8b949e);line-height:1.4}.platforms-summary{display:flex;align-items:center;gap:20px;padding:12px 16px;background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px;margin-bottom:16px}.platforms-summary-stat{display:flex;flex-direction:column;align-items:center;min-width:60px}.platforms-summary-number{font-size:24px;font-weight:700;color:var(--text-primary, #e6edf3)}.platforms-summary-label{font-size:11px;color:var(--text-secondary, #8b949e);text-transform:uppercase}.platforms-summary-filters{display:flex;gap:6px;margin-left:auto}.platforms-filter-btn{background:transparent;border:1px solid var(--border-light, #30363d);color:var(--text-secondary, #8b949e);border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer}.platforms-filter-btn:hover{background:var(--bg-hover, #1c2538)}.platforms-filter-btn.active{background:color-mix(in srgb,var(--accent-blue) 15%,transparent);border-color:var(--accent-blue);color:var(--accent-blue, #58a6ff)}.platforms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.platform-card{background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px;padding:14px;transition:border-color .2s}.platform-card:hover{border-color:var(--border-hover, #484f58)}.platform-card.configured{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent);background:color-mix(in srgb,var(--accent-cyan) 4%,transparent)}.platform-card-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.platform-card-icon{font-size:24px;width:32px;text-align:center}.platform-card-info{flex:1;display:flex;flex-direction:column}.platform-card-name{font-size:14px;font-weight:600;color:var(--text-primary, #e6edf3)}.platform-card-category{font-size:11px;color:var(--text-secondary, #8b949e)}.platform-card-vars{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.platform-var-chip{font-size:11px;padding:2px 6px;border-radius:4px;background:var(--bg-tertiary, #1c2333);color:var(--text-secondary, #8b949e);font-family:monospace}.platform-var-chip.set{background:color-mix(in srgb,var(--accent-cyan) 12%,transparent);color:var(--accent-cyan)}.platform-card-actions{display:flex;gap:6px;align-items:center}.platform-card-badge{font-size:12px;color:var(--accent-cyan);font-weight:500}.platform-card-hint{margin-top:8px;font-size:11px;color:var(--text-secondary, #8b949e);line-height:1.4;padding:6px 8px;background:color-mix(in srgb,var(--accent-blue) 6%,transparent);border-radius:4px;border-left:2px solid color-mix(in srgb,var(--accent-blue) 30%,transparent)}.platforms-cli-hint{margin-top:16px;padding:10px 14px;background:var(--bg-secondary, #161b22);border:1px dashed var(--border-light, #30363d);border-radius:8px;font-size:13px}.platforms-cli-hint code{background:var(--bg-tertiary, #1c2333);padding:2px 6px;border-radius:4px;font-size:12px}.hub-chip-bundled{background:color-mix(in srgb,var(--accent-purple) 18%,transparent)!important;color:var(--accent-purple, #bc8cff)!important;border:1px solid color-mix(in srgb,var(--accent-purple) 40%,transparent)}.hub-market-search{display:flex;gap:8px;margin:0 0 10px}.hub-market-search input{flex:1;min-width:0}.hub-card-actions{display:flex;align-items:center;gap:8px}.hub-mini-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;padding:3px 10px;font-size:12px;cursor:pointer;transition:var(--transition)}.hub-mini-btn:hover{border-color:color-mix(in srgb,var(--accent-red) 50%,transparent);color:var(--accent-red);background:color-mix(in srgb,var(--accent-red) 8%,transparent)}.hub-mini-btn:disabled{opacity:.5;cursor:not-allowed}.chat-chip-selected{background:color-mix(in srgb,var(--accent-blue) 45%,transparent)!important;border-color:color-mix(in srgb,var(--accent-blue) 90%,transparent)!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-blue) 90%,transparent)}.chat-question-card{border-color:color-mix(in srgb,var(--accent-yellow) 50%,transparent)}.chat-question-card .chat-chip{max-width:none;white-space:normal;text-align:left}.timeline-bar-container{display:flex;flex-direction:column;gap:2px;min-width:120px;max-width:200px}.timeline-bar{height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden;width:100%}.timeline-bar.small{height:3px}.timeline-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.timeline-bar-fill.probe{background:var(--accent-blue)}.timeline-bar-fill.verify{background:var(--accent-green)}.timeline-bar-fill.use{background:var(--accent-yellow)}.bedrock-onboarding{max-width:900px}.bedrock-status-bar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px;margin-bottom:20px;flex-wrap:wrap}.bedrock-status-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary, #8b949e)}.bedrock-status-label{color:var(--text-secondary, #8b949e);font-size:12px}.bedrock-status-actions{margin-left:auto;display:flex;gap:8px}.bedrock-setup-wizard{background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px;padding:20px;margin-top:16px}.bedrock-wizard-step{margin-bottom:24px}.bedrock-wizard-step h4{font-size:15px;font-weight:600;color:var(--text-primary, #e6edf3);margin-bottom:10px}.bedrock-auth-options{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.bedrock-auth-option{display:flex;align-items:flex-start;gap:10px;padding:12px;background:var(--bg-tertiary, #1c2333);border:1px solid var(--border-light, #30363d);border-radius:8px;cursor:pointer;transition:border-color .15s}.bedrock-auth-option:hover{border-color:var(--accent-blue, #58a6ff)}.bedrock-auth-option.selected{border-color:var(--accent-blue, #58a6ff);background:color-mix(in srgb,var(--accent-blue) 8%,transparent)}.bedrock-auth-option strong{display:block;color:var(--text-primary, #e6edf3);font-size:14px}.bedrock-auth-option span{display:block;color:var(--text-secondary, #8b949e);font-size:12px;margin-top:2px}.bedrock-auth-option input[type=radio]{margin-top:2px;accent-color:var(--accent-blue, #58a6ff)}.bedrock-wizard-fields{display:flex;flex-direction:column;gap:10px}.bedrock-setup-hint{padding:10px 12px;background:var(--bg-tertiary, #1c2333);border:1px solid var(--border-light, #30363d);border-radius:6px;font-size:13px;color:var(--text-secondary, #8b949e);margin-bottom:10px}.bedrock-setup-hint strong{color:var(--text-primary, #e6edf3);display:block;margin-bottom:4px}.bedrock-setup-hint ol{margin:4px 0 0 18px;padding:0}.bedrock-setup-hint li{margin-bottom:2px}.bedrock-region-select{width:100%;max-width:400px;padding:8px 12px;background:var(--bg-tertiary, #1c2333);color:var(--text-primary, #e6edf3);border:1px solid var(--border-light, #30363d);border-radius:6px;font-size:14px}.bedrock-model-access-hint{margin-bottom:12px}.bedrock-family-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.bedrock-family-card{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg-tertiary, #1c2333);border:1px solid var(--border-light, #30363d);border-radius:6px;cursor:pointer;transition:border-color .15s}.bedrock-family-card:hover{border-color:var(--accent-blue, #58a6ff)}.bedrock-family-card.selected{border-color:var(--accent-blue, #58a6ff);background:color-mix(in srgb,var(--accent-blue) 8%,transparent)}.bedrock-family-card input[type=checkbox]{accent-color:var(--accent-blue, #58a6ff)}.bedrock-family-card strong{display:block;font-size:13px;color:var(--text-primary, #e6edf3)}.bedrock-family-card span{display:block;font-size:11px;color:var(--text-secondary, #8b949e)}.bedrock-wizard-actions{display:flex;gap:10px;margin-top:16px}.bedrock-getting-started{margin-top:20px}.bedrock-steps{display:flex;flex-direction:column;gap:12px;margin-top:12px}.bedrock-step{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px}.bedrock-step-num{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--accent-blue, #58a6ff);color:var(--text-on-accent);border-radius:50%;font-weight:700;font-size:14px;flex-shrink:0}.bedrock-step strong{display:block;color:var(--text-primary, #e6edf3);font-size:14px}.bedrock-step span{display:block;color:var(--text-secondary, #8b949e);font-size:12px;margin-top:2px}.bedrock-quick-status,.bedrock-probe-results{margin-top:16px}.bedrock-probe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;margin-top:12px}.bedrock-probe-card{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:6px;font-size:12px}.bedrock-probe-card.bedrock-probe-accessible{border-color:color-mix(in srgb,var(--accent-cyan) 30%,transparent)}.bedrock-probe-card.bedrock-probe-permission-denied{border-color:color-mix(in srgb,var(--accent-yellow) 30%,transparent)}.bedrock-probe-id{flex:1;color:var(--text-primary, #e6edf3);font-family:monospace;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bedrock-probe-status{color:var(--text-secondary, #8b949e);font-size:11px;white-space:nowrap}.bedrock-probe-action{margin-top:16px;padding:12px;background:color-mix(in srgb,var(--accent-yellow) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent-yellow) 30%,transparent);border-radius:6px;display:flex;align-items:center;gap:12px}.bedrock-probe-action p{margin:0;color:var(--text-primary, #e6edf3);font-size:13px}.contacts-page{max-width:1200px}.contacts-filters{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.contacts-filters .admin-refresh-btn{margin-left:auto}.contacts-table-wrapper{overflow-x:auto}.contacts-table{width:100%;border-collapse:collapse;font-size:13px}.contacts-table th{text-align:left;padding:8px 10px;background:var(--bg-secondary, #161b22);border-bottom:1px solid var(--border-light, #30363d);color:var(--text-secondary, #8b949e);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.contacts-table td{padding:8px 10px;border-bottom:1px solid var(--border-light, #30363d);color:var(--text-primary, #e6edf3)}.contact-row:hover{background:color-mix(in srgb,var(--accent-blue) 4%,transparent)}.contact-row.status-pending{background:color-mix(in srgb,var(--accent-yellow) 4%,transparent)}.contact-row.status-rejected{background:color-mix(in srgb,var(--accent-red) 4%,transparent)}.contact-name{font-weight:600}.contact-id code{background:var(--bg-tertiary, #1c2333);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--text-secondary, #8b949e)}.contact-phone{color:var(--text-secondary, #8b949e)}.contact-date{color:var(--text-secondary, #8b949e);font-size:12px}.contact-actions{display:flex;gap:4px;flex-wrap:nowrap}.contact-status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.contact-status-badge.approved{background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);color:var(--accent-cyan)}.contact-status-badge.pending{background:color-mix(in srgb,var(--accent-yellow) 15%,transparent);color:var(--accent-yellow)}.contact-status-badge.rejected{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.contact-approve-btn{color:var(--accent-cyan)}.contact-reject-btn{color:var(--accent-yellow)}.contact-delete-btn{color:var(--accent-red)}.platform-config-table-wrapper{overflow-x:auto}.platform-config-table{width:100%;border-collapse:collapse;font-size:13px}.platform-config-table th{text-align:left;padding:8px 10px;background:var(--bg-secondary, #161b22);border-bottom:1px solid var(--border-light, #30363d);color:var(--text-secondary, #8b949e);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.platform-config-table td{padding:8px 10px;border-bottom:1px solid var(--border-light, #30363d);color:var(--text-primary, #e6edf3);vertical-align:middle}.platform-config-row:hover{background:color-mix(in srgb,var(--accent-blue) 4%,transparent)}.platform-config-row.configured{background:color-mix(in srgb,var(--accent-cyan) 3%,transparent)}.platform-config-name{display:flex;flex-direction:column;gap:2px}.platform-config-name .hub-card-id{font-size:11px;color:var(--text-secondary, #8b949e)}.platform-config-status-text{margin-left:6px;font-size:12px}.platform-config-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.platform-config-cli{font-size:12px}.platform-config-cli code{background:var(--bg-tertiary, #1c2333);padding:2px 6px;border-radius:4px;font-size:11px;color:var(--text-secondary, #8b949e)}.platform-config-expanded td{background:var(--bg-secondary, #161b22);padding:16px}.platform-config-form{display:flex;flex-direction:column;gap:10px;max-width:500px}.platform-config-readonly{background:var(--bg-tertiary, #1c2333);border:1px solid var(--border-light, #30363d);border-radius:6px;padding:8px 12px;color:var(--text-secondary, #8b949e);font-size:13px;width:100%}.onboarding-summary{background:var(--bg-secondary, #161b22);border:1px solid var(--border-light, #30363d);border-radius:8px;padding:16px}.onboarding-stats{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.onboarding-stat{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500}.onboarding-stat.pending{background:color-mix(in srgb,var(--accent-yellow) 15%,transparent);color:var(--accent-yellow)}.onboarding-stat.approved{background:color-mix(in srgb,var(--accent-cyan) 15%,transparent);color:var(--accent-cyan)}.onboarding-stat.rejected{background:color-mix(in srgb,var(--accent-red) 15%,transparent);color:var(--accent-red)}.onboarding-steps{display:flex;flex-direction:column;gap:10px}.onboarding-step{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-primary, #e6edf3)}.onboarding-step-num{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--accent-blue, #58a6ff);color:var(--text-on-accent);border-radius:50%;font-weight:700;font-size:12px;flex-shrink:0}.onboarding-step code{background:var(--bg-tertiary, #1c2333);padding:2px 6px;border-radius:4px;font-size:12px;color:var(--accent-blue, #58a6ff)}.theme-switcher{position:relative}.theme-panel{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:var(--z-palette);display:flex;flex-direction:column;gap:var(--space-4);width:268px;max-height:calc(100vh - var(--topbar-height) - var(--space-6));overflow-y:auto;padding:var(--space-4);background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elevation-3);text-align:left}.theme-group{display:flex;flex-direction:column;gap:2px;border:0}.theme-group-label{padding:0 0 var(--space-1);color:var(--text-muted);font-size:calc(10px * var(--font-scale));font-weight:700;text-transform:uppercase;letter-spacing:.6px}.theme-option{display:flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:calc(12px * var(--font-scale));cursor:pointer}.theme-option:hover{background:var(--bg-hover)}.theme-option input,.theme-switch input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}.theme-swatch{flex:none;width:18px;height:18px;border:1px solid var(--border);border-radius:var(--radius-full)}.theme-option input:checked~.theme-option-label{font-weight:700}.theme-option input:checked~.theme-swatch{box-shadow:0 0 0 2px var(--border-hover)}.theme-option input:focus-visible~.theme-option-label{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-xs)}.theme-switch{display:flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);border-radius:var(--radius-sm);font-size:calc(12px * var(--font-scale));cursor:pointer}.theme-switch input:focus-visible~.theme-switch-track{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.theme-switch-track{position:relative;flex:none;width:34px;height:20px;background:var(--bg-hover);border:1px solid var(--border-hover);border-radius:var(--radius-full);transition:var(--transition)}.theme-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;background:var(--text-muted);border-radius:var(--radius-full);transition:var(--transition)}.theme-switch input:checked~.theme-switch-track{background:var(--accent-blue);border-color:var(--accent-blue)}.theme-switch input:checked~.theme-switch-track:after{left:17px;background:var(--text-on-accent)}.theme-hint{margin-top:var(--space-1);color:var(--text-muted);font-size:calc(11px * var(--font-scale));line-height:1.45}.theme-reset{align-self:flex-start;min-height:var(--target-min);padding:0 var(--space-3);background:transparent;color:var(--accent-blue);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:calc(11px * var(--font-scale));cursor:pointer;transition:var(--transition)}.theme-reset:hover{background:var(--bg-hover);border-color:var(--border-hover)}.theme-trigger:focus-visible,.theme-reset:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Agent-Nuvira Dashboard</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-J3sGSCLr.js"></script>
|
|
8
|
+
<link rel="stylesheet" crossorigin href="/assets/index-u7mu-fxK.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
|
11
11
|
<div id="root"></div>
|
package/dist/forwarded.d.ts
DELETED
package/dist/forwarded.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forwarded.d.ts","sourceRoot":"","sources":["../src/forwarded.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE,OAAO,CAAC"}
|
package/dist/forwarded.js
DELETED
package/dist/forwarded.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"forwarded.js","sourceRoot":"","sources":["../src/forwarded.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Child Agent Worker — Runs in forked process.
|
|
3
|
-
*
|
|
4
|
-
* This is the REAL implementation that:
|
|
5
|
-
* 1. Initializes its own LLM client
|
|
6
|
-
* 2. Builds a focused system prompt
|
|
7
|
-
* 3. Runs the agent loop (think → act → observe)
|
|
8
|
-
* 4. Makes real LLM calls
|
|
9
|
-
* 5. Executes real tool calls
|
|
10
|
-
* 6. Returns real results
|
|
11
|
-
*
|
|
12
|
-
* Unlike subagent-worker.js (placeholder), this does actual work.
|
|
13
|
-
*/
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=child-agent-worker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child-agent-worker.d.ts","sourceRoot":"","sources":["../../src/tools/child-agent-worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child-agent-worker.js","sourceRoot":"","sources":["../../src/tools/child-agent-worker.ts"],"names":[],"mappings":"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"}
|