:root{--neutral-100:#f3f5fe;--neutral-200:#e4e7f5;--neutral-300:#cfd3e5;--neutral-400:#b2b6ca;--neutral-500:#9397ab;--neutral-600:#75798c;--neutral-700:#595d6c;--neutral-800:#3f424d;--neutral-900:#292b31;--accent-100:#f5f4ff;--accent-200:#e7e5fe;--accent-300:#d2cefd;--accent-400:#b5abfc;--accent-500:#968ae0;--accent-600:#796cbf;--accent-700:#5d5294;--accent-800:#423a6a;--accent-900:#2b2741;--ink-900:#07080c;--ink-800:#0b0d13;--ink-700:#0d0f17;--ink-600:#161826;--ink-500:#1b2230;--ink-400:#232532;--color-bg:var(--ink-600);--color-bg-deep:var(--ink-800);--color-surface:var(--ink-400);--color-surface-hover:#2b2d3b;--color-surface-sunken:var(--ink-700);--color-border:color-mix(in srgb, var(--neutral-100) 14%, transparent);--color-border-strong:color-mix(in srgb, var(--neutral-100) 26%, transparent);--color-text:#e9e9ed;--color-text-muted:#e9e9eda8;--color-text-subtle:#e9e9ed6b;--color-accent:#9184d9;--color-accent-hover:#a7a1db;--color-accent-soft:#9184d92e;--color-accent-contrast:#0b0d13;--color-accent-text:#c3bcf0;--color-accent-tint:#9184d91a;--color-accent-tint-hover:#9184d92e;--color-danger:#e5484d;--color-danger-soft:#e5484d29;--color-danger-text:#ffb3b6;--color-success:#3ddc97;--color-success-soft:#3ddc9729;--color-success-text:#8df0c4;--color-warning:#f5c451;--color-warning-soft:#f5c45129;--color-warning-text:#ffd08a;--color-info:#5ccfe6;--color-info-soft:#5ccfe629;--chart-1:#9184d9;--chart-2:#4d8dfa;--chart-3:#3ddc97;--chart-4:#f5c451;--chart-5:#e5484d;--chart-6:#e58fb8;--chart-7:#5ccfe6;--chart-8:#8b8fa6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--radius-pill:999px;--shadow-sm:0 0 0 1px var(--neutral-800);--shadow-md:0 0 0 1px var(--neutral-700), 0 6px 18px #0000008c;--shadow-lg:0 0 0 1px var(--neutral-500), 0 16px 40px #000000a6;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.6875rem;--text-sm:.8125rem;--text-md:.875rem;--text-lg:1rem;--text-xl:1.25rem;--text-2xl:1.625rem;--weight-medium:500;--weight-semibold:600;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.08em;--tracking-caps:.12em;--sidebar-width:248px;--header-height:56px;--transition-fast:.15s ease;--transition-base:.2s ease}:root[data-theme=light]{--color-bg:#fff;--color-bg-deep:var(--neutral-100);--color-surface:#fff;--color-surface-hover:var(--neutral-100);--color-surface-sunken:var(--neutral-100);--color-border:color-mix(in srgb, var(--neutral-900) 12%, transparent);--color-border-strong:color-mix(in srgb, var(--neutral-900) 24%, transparent);--color-text:#1a1b22;--color-text-muted:var(--neutral-700);--color-text-subtle:var(--neutral-500);--color-accent:var(--accent-600);--color-accent-hover:var(--accent-700);--color-accent-soft:var(--accent-200);--color-accent-contrast:#fff;--color-accent-text:var(--accent-700);--color-accent-tint:color-mix(in srgb, var(--accent-600) 8%, transparent);--color-accent-tint-hover:color-mix(in srgb, var(--accent-600) 14%, transparent);--color-danger-text:#ac363a;--color-success-text:#288f62;--color-warning-text:#937631;--shadow-sm:0 0 0 1px color-mix(in srgb, var(--neutral-900) 10%, transparent);--shadow-md:0 0 0 1px color-mix(in srgb, var(--neutral-900) 12%, transparent), 0 6px 18px #10121a14;--shadow-lg:0 0 0 1px color-mix(in srgb, var(--neutral-900) 14%, transparent), 0 16px 40px #10121a1f}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100vh}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-md);letter-spacing:var(--tracking-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.5}h1,h2,h3,h4{font-weight:var(--weight-medium);letter-spacing:var(--tracking-tight);margin:0;line-height:1.25}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-accent-soft);color:var(--color-text)}*{scrollbar-color:var(--color-border-strong) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--color-border-strong);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--color-text-subtle);background-clip:content-box}.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4)}.caps{color:var(--color-text-subtle);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.tabular{font-variant-numeric:tabular-nums}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;white-space:nowrap;border:1px solid #0000;display:inline-flex}.badge--success{border-color:color-mix(in srgb, var(--color-success) 40%, transparent);background:var(--color-success-soft);color:var(--color-success-text)}.badge--danger{border-color:color-mix(in srgb, var(--color-danger) 40%, transparent);background:var(--color-danger-soft);color:var(--color-danger-text)}.badge--warning{border-color:color-mix(in srgb, var(--color-warning) 40%, transparent);background:var(--color-warning-soft);color:var(--color-warning-text)}.badge--info{border-color:color-mix(in srgb, var(--color-info) 40%, transparent);background:var(--color-info-soft);color:var(--color-info)}.badge--neutral{border-color:var(--color-border);background:var(--color-surface-hover);color:var(--color-text-muted)}.dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=760px){input,select,textarea{font-size:16px}}@media (hover:none) and (pointer:coarse){button,[role=button],[role=switch],select{min-height:40px}button:has(>svg:only-child){min-width:40px}.badge,.dot{min-height:0}}#app{overflow-x:clip}
