:root{--bg-0: #0b0e13;--bg-1: #11151d;--bg-2: #171d28;--bg-3: #1f2735;--stroke-1: rgba(255, 255, 255, .07);--stroke-2: rgba(255, 255, 255, .14);--accent: #41fad8;--accent-hover: #7cfce4;--accent-dim: rgba(65, 250, 216, .13);--accent-strong: #0fbfa4;--accent-contrast: #04211c;--paper: #ffffff;--paper-2: #f2f3f5;--paper-ink: #101314;--paper-ink-2: #4b555e;--paper-stroke: rgba(16, 19, 20, .12);--wood: #c89b6d;--ink-1: #f2f5f9;--ink-2: #9aa6b8;--ink-3: #5c6878;--ok: #3ecf8e;--warn: #ffc53d;--danger: #ff5c5c;--info: #58a6ff;--font-display: "Alata", "Space Grotesk", "Inter", sans-serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 20px;--text-xl: 28px;--text-2xl: 40px;--text-hero: clamp(40px, 6vw, 64px);--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--shadow-card: 0 4px 16px rgba(0, 0, 0, .35);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .5);--glass-bg: rgba(17, 21, 29, .72);--glass-blur: 14px;--dur-fast: .12s;--dur-base: .24s;--dur-slow: .42s;--ease: cubic-bezier(.22, 1, .36, 1);--topbar-h: 52px;--sidebar-w: 300px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-0);color:var(--ink-1);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;margin:0;letter-spacing:-.01em}button{font-family:var(--font-ui);cursor:pointer}input,select,textarea{font-family:var(--font-ui)}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}::selection{background:var(--accent-dim)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:5px;border:2px solid var(--bg-0)}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--stroke-1);border-radius:var(--r-lg);box-shadow:var(--shadow-modal)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
