:root{--font-serif:'Source Serif 4', 'Source Serif Pro', Charter, Georgia, 'Times New Roman', serif;--font-sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;--font-mono:'JetBrains Mono', 'SF Mono', 'Fira Code', Menlo, Monaco, Consolas, monospace;--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.25rem;--fs-xl:1.5625rem;--fs-2xl:1.953rem;--fs-3xl:2.441rem;--fs-4xl:3.052rem;--fs-5xl:3.815rem;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.5;--lh-relaxed:1.7;--lh-loose:1.85;--sp-1:0.25rem;--sp-2:0.5rem;--sp-3:0.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--sp-24:6rem;--r-xs:3px;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-xl:24px;--r-pill:9999px;--reading-col:720px;--container:1200px;--container-wide:1440px;--easing:cubic-bezier(0.2, 0.8, 0.2, 1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--z-base:1;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400}:root,[data-theme=light]{--bg-base:oklch(98.5% 0.002 270);--bg-elev-1:oklch(96% 0.003 270);--bg-elev-2:oklch(93% 0.004 270);--bg-elev-3:oklch(88% 0.006 270);--bg-inset:oklch(99% 0.001 270);--fg:oklch(20% 0.01 270);--fg-muted:oklch(40% 0.012 270);--fg-subtle:oklch(56% 0.012 270);--fg-faint:oklch(70% 0.01 270);--fg-on-accent:oklch(98% 0.002 270);--border:oklch(88% 0.005 270);--border-strong:oklch(78% 0.007 270);--border-faint:oklch(94% 0.003 270);--accent-warm:oklch(74% 0.16 65);--accent-warm-fg:oklch(35% 0.12 65);--accent-warm-bg:oklch(96% 0.04 80);--accent-cool:oklch(68% 0.13 220);--accent-cool-fg:oklch(40% 0.13 220);--accent-cool-bg:oklch(96% 0.03 220);--link:var(--accent-cool-fg);--link-hover:var(--accent-warm-fg);--focus-ring:oklch(68% 0.16 220 / 60%);--selection:oklch(85% 0.13 80);--code-bg:oklch(94% 0.005 270);--code-fg:oklch(28% 0.04 280);--shadow-sm:0 1px 2px oklch(0% 0 0 / 6%);--shadow-md:0 4px 12px oklch(0% 0 0 / 8%), 0 1px 3px oklch(0% 0 0 / 4%);--shadow-lg:0 12px 32px oklch(0% 0 0 / 10%), 0 2px 6px oklch(0% 0 0 / 5%);--shadow-glow:0 0 0 1px var(--accent-warm), 0 0 24px oklch(74% 0.16 65 / 30%)}[data-theme=dark],:root:not([data-theme]){--bg-base:oklch(14% 0.008 265);--bg-elev-1:oklch(18% 0.009 265);--bg-elev-2:oklch(22% 0.010 265);--bg-elev-3:oklch(28% 0.011 265);--bg-inset:oklch(11% 0.007 265);--fg:oklch(94% 0.005 270);--fg-muted:oklch(76% 0.008 270);--fg-subtle:oklch(60% 0.008 270);--fg-faint:oklch(46% 0.008 270);--fg-on-accent:oklch(15% 0.01 270);--border:oklch(30% 0.012 265);--border-strong:oklch(40% 0.014 265);--border-faint:oklch(24% 0.010 265);--accent-warm:oklch(80% 0.16 65);--accent-warm-fg:oklch(80% 0.16 65);--accent-warm-bg:oklch(28% 0.06 65);--accent-cool:oklch(74% 0.14 220);--accent-cool-fg:oklch(74% 0.14 220);--accent-cool-bg:oklch(28% 0.05 220);--link:var(--accent-cool-fg);--link-hover:var(--accent-warm-fg);--focus-ring:oklch(74% 0.14 220 / 60%);--selection:oklch(40% 0.14 65);--code-bg:oklch(20% 0.012 265);--code-fg:oklch(86% 0.02 80);--shadow-sm:0 1px 2px oklch(0% 0 0 / 30%);--shadow-md:0 4px 14px oklch(0% 0 0 / 35%), 0 1px 3px oklch(0% 0 0 / 25%);--shadow-lg:0 14px 40px oklch(0% 0 0 / 45%), 0 2px 8px oklch(0% 0 0 / 30%);--shadow-glow:0 0 0 1px var(--accent-warm), 0 0 28px oklch(80% 0.16 65 / 35%)}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg-base:oklch(98.5% 0.002 270);--bg-elev-1:oklch(96% 0.003 270);--bg-elev-2:oklch(93% 0.004 270);--bg-elev-3:oklch(88% 0.006 270);--bg-inset:oklch(99% 0.001 270);--fg:oklch(20% 0.01 270);--fg-muted:oklch(40% 0.012 270);--fg-subtle:oklch(56% 0.012 270);--fg-faint:oklch(70% 0.01 270);--fg-on-accent:oklch(98% 0.002 270);--border:oklch(88% 0.005 270);--border-strong:oklch(78% 0.007 270);--border-faint:oklch(94% 0.003 270);--accent-warm:oklch(74% 0.16 65);--accent-warm-fg:oklch(35% 0.12 65);--accent-warm-bg:oklch(96% 0.04 80);--accent-cool:oklch(68% 0.13 220);--accent-cool-fg:oklch(40% 0.13 220);--accent-cool-bg:oklch(96% 0.03 220);--link:var(--accent-cool-fg);--link-hover:var(--accent-warm-fg);--focus-ring:oklch(68% 0.16 220 / 60%);--selection:oklch(85% 0.13 80);--code-bg:oklch(94% 0.005 270);--code-fg:oklch(28% 0.04 280);--shadow-sm:0 1px 2px oklch(0% 0 0 / 6%);--shadow-md:0 4px 12px oklch(0% 0 0 / 8%), 0 1px 3px oklch(0% 0 0 / 4%);--shadow-lg:0 12px 32px oklch(0% 0 0 / 10%), 0 2px 6px oklch(0% 0 0 / 5%);--shadow-glow:0 0 0 1px var(--accent-warm), 0 0 24px oklch(74% 0.16 65 / 30%)}}