:root{--bg-1:oklch(93% .045 320);--bg-2:oklch(94% .05 190);--bg-3:oklch(95% .05 80);--card-bg:oklch(99.5% .01 90);--card-highlight:oklch(100% 0 0/.6);--panel-bg:oklch(97% .02 320/.82);--text:oklch(28% .05 290);--muted:oklch(50% .04 290);--faint:oklch(62% .04 290);--border:oklch(86% .035 300);--toggle-bg:oklch(85% .06 300);--toggle-knob:oklch(99.5% 0 0);--success:oklch(56% .15 155);--danger:oklch(60% .19 15);--accent-pink:oklch(78% .14 350);--accent-yellow:oklch(87% .13 95);--accent-lavender:oklch(80% .1 300);--shadow-color:oklch(70% .08 320/.35)}[data-theme=dark]{--bg-1:oklch(26% .05 300);--bg-2:oklch(24% .05 250);--bg-3:oklch(23% .05 320);--card-bg:oklch(32% .04 300);--card-highlight:oklch(100% 0 0/.07);--panel-bg:oklch(30% .04 300/.82);--text:oklch(95% .01 300);--muted:oklch(78% .03 300);--faint:oklch(65% .03 300);--border:oklch(45% .05 300);--toggle-bg:oklch(50% .1 280);--toggle-knob:oklch(97% 0 0);--success:oklch(65% .14 155);--danger:oklch(65% .18 20);--accent-pink:oklch(70% .14 350);--accent-yellow:oklch(78% .13 95);--accent-lavender:oklch(68% .1 300);--shadow-color:oklch(12% .05 300/.55)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{box-sizing:border-box}body{color:var(--text);background:radial-gradient(circle at 12% 18%, var(--bg-3) 0%, transparent 42%), radial-gradient(circle at 88% 12%, var(--bg-2) 0%, transparent 48%), radial-gradient(circle at 50% 95%, var(--bg-1) 0%, transparent 55%), var(--bg-1);background-attachment:fixed;margin:0;font-family:Fredoka,sans-serif;transition:background .25s}::selection{background:oklch(80% .12 350/.35)}input::placeholder{opacity:.45}a{color:oklch(55% .16 340)}a:hover{color:oklch(45% .18 340)}.skip-link{z-index:100;background:var(--text);color:var(--card-bg);border-radius:999px;padding:10px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:top .15s;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}@keyframes revealFade{0%{opacity:0;transform:translateY(10px)scale(.92)}70%{opacity:1;transform:translateY(0)scale(1.03)}to{opacity:1;transform:translateY(0)scale(1)}}
