@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Thin.woff2) format("woff2");font-weight:100;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ThinItalic.woff2) format("woff2");font-weight:100;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraLight.woff2) format("woff2");font-weight:200;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraLightItalic.woff2) format("woff2");font-weight:200;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-MediumItalic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBoldItalic.woff2) format("woff2");font-weight:600;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraBold.woff2) format("woff2");font-weight:800;font-style:normal;font-display:optional}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-ExtraBoldItalic.woff2) format("woff2");font-weight:800;font-style:italic;font-display:optional}:root{--brand-blue:#5e83e0;--brand-blue-hover:#4a72d6;--brand-blue-soft:#eef2fc;--on-brand:#ffffff;--bg:#ffffff;--bg-soft:#f6f6f7;--bg-muted:#ecedef;--surface:#ffffff;--surface-2:#fafafb;--border:#e5e5e7;--border-strong:#d2d3d7;--fg:#0a0a0b;--fg-2:#4a4b52;--fg-3:#8a8c94;--fg-3-label:#74767e;--accent:#5e83e0;--accent-fg:#ffffff;--success:#1f9d55;--warning:#c77700;--danger:#d04a4a;--warning-text:#9a5e00;--danger-text:#b03232;--success-soft:rgba(31,157,85,0.12);--warning-soft:rgba(199,119,0,0.12);--danger-soft:rgba(208,74,74,0.12);--success-ring:rgba(31,157,85,0.32);--warning-ring:rgba(199,119,0,0.32);--danger-ring:rgba(208,74,74,0.32);--fg-3-ring:rgba(138,140,148,0.32);--row-h:44px;--pad-x:24px;--pad-y:16px;--gap:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:56px;--r-sm:2px;--r-md:4px;--r-lg:6px;--r-pill:999px;--shadow-1:0 1px 2px rgba(0,0,0,0.05);--shadow-2:0 4px 16px rgba(0,0,0,0.08);--shadow-hover:0 4px 20px rgba(0,0,0,0.12);--duration-fast:120ms;--duration-base:180ms;--duration-medium:260ms;--duration-slow:460ms;--duration-entrance:800ms;--duration-reveal:1200ms;--ease-standard:cubic-bezier(0.2,0.7,0.3,1);--ease-out:cubic-bezier(0.0,0.0,0.2,1);--ease-in:cubic-bezier(0.4,0.0,1,1);--ease-soft:cubic-bezier(0.16,1,0.3,1);--ease-elastic:cubic-bezier(0.34,1.45,0.5,1);--font-sans:var(--font-open-sans,"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif);--font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--fs-display:76px;--fs-h1:48px;--fs-h2:28px;--fs-h3:18px;--fs-body-l:16px;--fs-body:14px;--fs-body-s:13px;--fs-caption:11px;--fs-metric:var(--fs-body-l);--fs-label:var(--fs-body-s);--fs-micro-label:var(--fs-micro);--fs-page-title:22px;--fs-mono-display:56px;--fs-mono-h:22px;--fs-mono-body:13px;--fs-mono-s:11px;--fs-micro:10px;--ls-display:-0.024em;--ls-h1:-0.014em;--ls-h2:-0.004em;--ls-h2-tight:-0.021em;--ls-h3:-0.002em;--ls-eyebrow:0.08em;--lh-tight:1.1;--lh-normal:1.45;--lh-mono:1.3;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--age-0:oklch(70% 0.07 150);--age-14:oklch(72% 0.1 142);--age-30:oklch(78% 0.12 88);--age-60:oklch(70% 0.14 50);--age-60p:oklch(60% 0.16 25);--age-0-bg:oklch(96% 0.02 150);--age-14-bg:oklch(95% 0.04 142);--age-30-bg:oklch(95% 0.05 88);--age-60-bg:oklch(94% 0.06 50);--age-60p-bg:oklch(93% 0.07 25);--delta-up:oklch(55% 0.13 145);--delta-down:oklch(58% 0.16 25);--delta-flat:var(--fg-3)}[data-theme=dark]{--bg:#0b0c0f;--bg-soft:#131419;--bg-muted:#1b1d24;--surface:#131419;--surface-2:#181a20;--border:#232630;--border-strong:#2e323e;--fg:#f4f4f6;--fg-2:#b6b8c0;--fg-3:#777a85;--fg-3-label:var(--fg-3);--warning-text:var(--warning);--danger-text:var(--danger);--accent:#7b9ceb;--accent-fg:#0a0a0b;--brand-blue-soft:#1a2238;--on-brand:#ffffff;--age-0:oklch(72% 0.09 150);--age-14:oklch(74% 0.12 142);--age-30:oklch(80% 0.14 88);--age-60:oklch(72% 0.16 50);--age-60p:oklch(68% 0.18 25);--age-0-bg:oklch(22% 0.03 150);--age-14-bg:oklch(24% 0.05 142);--age-30-bg:oklch(25% 0.07 88);--age-60-bg:oklch(24% 0.09 50);--age-60p-bg:oklch(22% 0.1 25);--delta-up:oklch(70% 0.16 145);--delta-down:oklch(70% 0.18 25);--delta-flat:var(--fg-3)}[data-density=compact]{--row-h:36px;--pad-x:16px;--pad-y:10px;--gap:10px}[data-density=comfortable]{--row-h:52px;--pad-x:32px;--pad-y:20px;--gap:20px}*{box-sizing:border-box}body,html{margin:0;padding:0}.app{font-family:var(--font-sans);background:var(--bg);color:var(--fg);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11"}.mono{font-family:var(--font-mono);font-feature-settings:normal}button{font-family:inherit;cursor:pointer}a{color:inherit;text-decoration:none}@keyframes stt-spin{to{transform:rotate(1turn)}}.t-display{font-size:var(--fs-display);letter-spacing:var(--ls-display)}.t-display,.t-h1{font-family:var(--font-sans);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.t-h1{font-size:var(--fs-h1);letter-spacing:var(--ls-h1)}.t-h2{font-size:var(--fs-h2);letter-spacing:var(--ls-h2)}.t-h2,.t-h3{font-family:var(--font-sans);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.t-h3{font-size:var(--fs-h3);letter-spacing:var(--ls-h3)}.t-body-l{font-size:var(--fs-body-l)}.t-body,.t-body-l{font-family:var(--font-sans);font-weight:var(--fw-regular);letter-spacing:0;line-height:var(--lh-normal)}.t-body{font-size:var(--fs-body)}.t-body-s{font-size:var(--fs-body-s);font-weight:var(--fw-regular);letter-spacing:0}.t-body-s,.t-caption{font-family:var(--font-sans);line-height:var(--lh-normal)}.t-caption{font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:var(--ls-eyebrow)}.m-display{font-size:var(--fs-mono-display);line-height:var(--lh-tight);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.m-display,.m-h{font-family:var(--font-mono);font-weight:var(--fw-semibold);letter-spacing:0}.m-h{font-size:var(--fs-mono-h);line-height:var(--lh-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.m-body{font-size:var(--fs-mono-body);font-weight:var(--fw-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.m-body,.m-s{font-family:var(--font-mono);letter-spacing:0;line-height:var(--lh-mono)}.m-s{font-size:var(--fs-mono-s);font-weight:var(--fw-regular);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button[data-variant]{transition:background var(--duration-fast) var(--ease-out,ease-out),border-color var(--duration-fast) var(--ease-out,ease-out),color var(--duration-fast) var(--ease-out,ease-out),box-shadow var(--duration-fast) var(--ease-out,ease-out),transform var(--duration-fast) var(--ease-out,ease-out)}button[data-variant]:active:not([data-loading=true]){transform:scale(.97)}button[data-variant]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}