@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";
:root{--accent:#1d4ed8;--accent-2:#4f46e5;--accent-soft:#eef2ff;--accent-ring:#1d4ed82e;--grad:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);--radius:14px;--radius-sm:9px;--radius-lg:20px;--radius-pill:999px;--font-scale:1;--bg:#fff;--bg-subtle:#f8fafc;--bg-sunken:#f1f5f9;--surface:#fff;--line:#e8ebf1;--line-strong:#dbe0ea;--ink:#0f172a;--ink-2:#334155;--ink-3:#64748b;--ink-4:#94a3b8;--green:#15803d;--green-bg:#ecfdf3;--green-line:#c7ecd3;--amber:#b45309;--amber-bg:#fff7ed;--amber-line:#fbe2bf;--red:#be123c;--red-bg:#fff1f2;--red-line:#fbd0d8;--blue-bg:#eff4ff;--blue-line:#d6e1fe;--shadow-xs:0 1px 2px #0f172a0d;--shadow-sm:0 1px 2px #0f172a0f, 0 1px 3px #0f172a0d;--shadow-md:0 1px 2px #0f172a0d, 0 6px 16px -6px #0f172a1f;--shadow-lg:0 2px 4px #0f172a0a, 0 18px 40px -12px #0f172a2e;--shadow-pop:0 12px 32px -8px #1d4ed847;--maxw:1140px}[data-theme=dark]{--bg:#0a0e1a;--bg-subtle:#0d1322;--bg-sunken:#111829;--surface:#121a2c;--line:#1f293f;--line-strong:#2a3650;--accent-soft:#15203c;--ink:#f1f5f9;--ink-2:#cbd5e1;--ink-3:#94a3b8;--ink-4:#64748b;--green-bg:#0e2a1c;--green-line:#1b4630;--amber-bg:#2a1f0e;--amber-line:#4a3414;--red-bg:#2a1018;--red-line:#4a1f2c;--blue-bg:#14203c;--blue-line:#233763;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 16px -6px #00000080;--shadow-lg:0 18px 40px -12px #0009}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:calc(15px * var(--font-scale));color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"cv05" 1, "ss01" 1;margin:0;line-height:1.55}h1,h2,h3,h4{letter-spacing:-.022em;color:var(--ink);margin:0;font-weight:700;line-height:1.08}p{margin:0}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;display:block}.mono,.tnum{font-variant-numeric:tabular-nums}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:12.5px;font-weight:600}.logo{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:10px;font-weight:700;display:inline-flex}.logo-mark{background:var(--grad);color:#fff;letter-spacing:-.04em;width:30px;height:30px;box-shadow:0 2px 8px -1px var(--accent-ring), inset 0 1px 0 #ffffff40;border-radius:9px;place-items:center;font-size:16px;font-weight:800;display:grid}.logo-mark.lg{border-radius:15px;width:52px;height:52px;font-size:27px}.logo-name{font-size:17px}.btn{letter-spacing:-.01em;color:var(--ink);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14.5px;font-weight:600;transition:transform .12s,box-shadow .18s,background .15s,border-color .15s;display:inline-flex}.btn:active{transform:translateY(.5px)}.btn-primary{background:var(--grad);color:#fff;box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff38}.btn-primary:hover{box-shadow:var(--shadow-pop), inset 0 1px 0 #ffffff38;transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{border-color:var(--ink-4);background:var(--bg-subtle)}.btn-ghost{color:var(--ink-2)}.btn-ghost:hover{background:var(--bg-sunken);color:var(--ink)}.btn-lg{border-radius:11px;padding:13px 22px;font-size:15.5px}.btn-sm{border-radius:8px;padding:7px 12px;font-size:13px}.btn-block{width:100%}.btn[disabled]{opacity:.5;pointer-events:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:22px}.card-hover{transition:transform .16s,box-shadow .2s,border-color .2s}.card-hover:hover{box-shadow:var(--shadow-lg);border-color:var(--line-strong);transform:translateY(-3px)}.kpi{flex-direction:column;gap:6px;display:flex}.kpi-label{color:var(--ink-3);align-items:center;gap:6px;font-size:12.5px;font-weight:500;display:flex}.kpi-value{letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1}.kpi-value.sm{font-size:22px}.kpi-delta{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:3px;font-size:12.5px;font-weight:600;display:inline-flex}.kpi-delta.up{color:var(--green)}.kpi-delta.down{color:var(--red)}.kpi-delta.flat{color:var(--ink-4)}.badge{letter-spacing:-.005em;border-radius:var(--radius-pill);border:1px solid #0000;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.badge-green{color:var(--green);background:var(--green-bg);border-color:var(--green-line)}.badge-amber{color:var(--amber);background:var(--amber-bg);border-color:var(--amber-line)}.badge-red{color:var(--red);background:var(--red-bg);border-color:var(--red-line)}.badge-blue{color:var(--accent);background:var(--blue-bg);border-color:var(--blue-line)}.badge-neutral{color:var(--ink-3);background:var(--bg-sunken);border-color:var(--line)}.field{flex-direction:column;gap:7px;display:flex}.field-label{color:var(--ink-2);font-size:13px;font-weight:550}.field-hint{color:var(--ink-3);font-size:12.5px}.input,.textarea,.select{width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;padding:10px 13px;font-family:inherit;font-size:14.5px;transition:border-color .15s,box-shadow .15s}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3.5px var(--accent-ring);outline:none}.input.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13.5px}.textarea{resize:vertical;min-height:76px;line-height:1.5}.input-group{align-items:stretch;display:flex}.input-group .input{border-top-right-radius:0;border-bottom-right-radius:0}.input-group .btn{border-top-left-radius:0;border-bottom-left-radius:0}.switch{align-items:center;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.switch .track{background:var(--line-strong);border-radius:999px;flex:none;width:40px;height:23px;transition:background .18s;position:relative}.switch .thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .18s;position:absolute;top:2.5px;left:2.5px;box-shadow:0 1px 3px #00000040}.switch input:checked+.track{background:var(--accent)}.switch input:checked+.track .thumb{transform:translate(17px)}.segmented{background:var(--bg-sunken);border:1px solid var(--line);border-radius:11px;gap:3px;padding:3px;display:inline-flex}.segmented button{color:var(--ink-3);background:0 0;border:none;border-radius:8px;padding:6px 14px;font-size:13.5px;font-weight:600;transition:all .15s}.segmented button.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.sidebar{background:var(--bg-subtle);border-right:1px solid var(--line);flex-direction:column;flex:none;gap:4px;width:244px;padding:18px 14px;display:flex}.nav-item{color:var(--ink-2);border-radius:9px;align-items:center;gap:11px;padding:9px 11px;font-size:14px;font-weight:500;transition:background .14s,color .14s;display:flex}.nav-item:hover{background:var(--bg-sunken);color:var(--ink)}.nav-item.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs);border:1px solid var(--line);font-weight:600}.nav-item svg{flex:none;width:18px;height:18px}.divider{background:var(--line);border:none;height:1px;margin:0}.tag-soft{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.kbd{background:var(--bg-sunken);border:1px solid var(--line);color:var(--ink-2);border-bottom-width:2px;border-radius:6px;padding:1px 6px;font-family:JetBrains Mono,monospace;font-size:11.5px}::selection{background:var(--accent-ring)}@keyframes rise{0%{transform:translateY(12px)}to{transform:none}}.rise{animation:.55s cubic-bezier(.2,.7,.3,1) forwards rise}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
