:root{--font-display: "General Sans", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .9375rem;--fs-md: 1.0625rem;--fs-lg: 1.375rem;--fs-xl: 1.875rem;--fs-2xl: 2.625rem;--lh-tight: 1.1;--lh-normal: 1.5;--tracking-tight: -.02em;--tracking-wide: .08em;--canvas: #0e0f12;--canvas-2: #121317;--surface: #16181d;--surface-2: #1b1e24;--surface-3: #21242b;--border: #262a32;--border-bright: #333845;--text: #e7eaf0;--text-dim: #aab2c0;--text-muted: #6b7280;--accent: #34e5c4;--accent-bright: #5cf0d4;--accent-dim: #1f8e7c;--accent-glow: rgba(52, 229, 196, .18);--accent-ink: #04221d;--ok: #34e5c4;--pending: #ffb224;--danger: #ff5c5c;--danger-dim: #7a2b2b;--danger-glow: rgba(255, 92, 92, .16);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-pill: 999px;--header-bg: rgba(14, 15, 18, .7);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .55);--shadow-glow: 0 0 0 1px var(--accent-glow), 0 8px 40px var(--accent-glow);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .12s;--dur: .24s;--dur-slow: .52s}:root[data-theme=light]{--canvas: #f6f7f9;--canvas-2: #eef0f3;--surface: #ffffff;--surface-2: #f3f4f7;--surface-3: #e9ebef;--border: #e2e5ea;--border-bright: #cdd2da;--text: #14161a;--text-dim: #4b5563;--text-muted: #8a93a2;--accent: #0d9488;--accent-bright: #0f766e;--accent-dim: #5eead4;--accent-glow: rgba(13, 148, 136, .16);--accent-ink: #ffffff;--ok: #0d9488;--pending: #d97706;--danger: #dc2626;--danger-dim: #f0c0c0;--danger-glow: rgba(220, 38, 38, .1);--header-bg: rgba(255, 255, 255, .72);--shadow-sm: 0 1px 2px rgba(16, 18, 24, .06);--shadow-md: 0 8px 24px rgba(16, 18, 24, .1);--shadow-lg: 0 24px 64px rgba(16, 18, 24, .16)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-display);font-size:var(--fs-base);line-height:var(--lh-normal);color:var(--text);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-image:radial-gradient(900px 500px at 88% -8%,rgba(52,229,196,.08),transparent 60%),radial-gradient(700px 500px at 0% 100%,rgba(52,229,196,.05),transparent 55%),linear-gradient(180deg,var(--canvas),var(--canvas-2));background-attachment:fixed}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}:root[data-theme=light] body{background-image:radial-gradient(900px 500px at 88% -8%,rgba(13,148,136,.06),transparent 60%),radial-gradient(700px 500px at 0% 100%,rgba(13,148,136,.04),transparent 55%),linear-gradient(180deg,var(--canvas),var(--canvas-2))}:root[data-theme=light] body:before{opacity:.015}app-root{position:relative;z-index:1;display:block;min-height:100%}h1,h2,h3{font-weight:600;letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-bright)}button{font-family:inherit}.mono{font-family:var(--font-mono);font-feature-settings:"zero" 1}.eyebrow{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);font-weight:500}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:var(--surface-3);border:3px solid var(--canvas);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--border-bright)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}
