:root{--bg:#0c1120;--bg-raised:#10172b;--surface:#151d36;--surface-2:#1b2544;--border:#253055;--border-strong:#34416d;--text:#e9edf8;--muted:#a1abcb;--faint:#5f6a92;--accent:#8b97ff;--accent-strong:#a3adff;--on-accent:#0b1020;--accent-glow:#8b97ff38;--accent-chip:#8b97ff1f;--gold:#ffd166;--rule:#1c2543;--ok:#5ee0a0;--err:#ff8a8a;--grid-line:#2b365d;--grid-strong:#8a96c4;--cat:var(--accent);--radius:16px;--shadow:0 10px 30px -12px #0009;--font-display:"Fredoka", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--wrap:1200px;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem}body{background:radial-gradient(1200px 600px at 85% -10%, #8b97ff1a, transparent 60%), radial-gradient(900px 500px at -10% 10%, #5cc2ff12, transparent 60%), var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-attachment:fixed;flex-direction:column;margin:0;font-size:1rem;line-height:1.6;display:flex}body>main{flex:1;width:100%}img{max-width:100%}::selection{background:var(--accent-glow)}a{color:var(--accent-strong);text-underline-offset:3px}a:hover{color:var(--text)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;font-weight:600;line-height:1.15}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:16px}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(14px);border-bottom:1px solid var(--rule);position:sticky;top:0}.header-inner{max-width:var(--wrap);align-items:center;gap:1rem;margin:0 auto;padding:.7rem 16px;display:flex}.site-nav{scrollbar-width:none;gap:.35rem;margin-left:auto;padding:2px;display:flex;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav a{white-space:nowrap;color:var(--muted);border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.92rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.site-nav a:hover{color:var(--text);background:var(--surface)}.site-nav a[aria-current=page]{color:var(--text);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border-strong)}.nav-dot{width:1.35rem;height:1.35rem;font-family:var(--font-display);color:var(--cat);background:color-mix(in srgb, var(--cat) 16%, transparent);border-radius:7px;place-items:center;font-size:.85rem;font-weight:700;line-height:1;display:grid}.streak{color:var(--gold);background:#ffd1661a;border:1px solid #ffd16640;border-radius:999px;flex-shrink:0;align-items:center;gap:.3rem;padding:.3rem .7rem;font-size:.85rem;font-weight:800;display:inline-flex}.streak[hidden]{display:none}.streak svg{width:.95rem;height:.95rem}@media (width<=1100px){.header-inner{flex-wrap:wrap;row-gap:.5rem;padding-block:.6rem}.site-nav{order:3;width:calc(100% + 32px);margin:0 -16px;padding:2px 16px}.streak{margin-left:auto}}.site-footer{border-top:1px solid var(--rule);background:var(--bg-raised);margin-top:4rem}.footer-inner{max-width:var(--wrap);grid-template-columns:1.4fr 1fr 1fr;gap:2rem;margin:0 auto;padding:2.5rem 16px 2rem;display:grid}.footer-brand p{color:var(--muted);max-width:34ch;margin:.75rem 0 0;font-size:.92rem}.site-footer h2{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:0 0 .75rem;font-size:.75rem;font-weight:800}.site-footer nav{gap:.45rem;display:grid}.site-footer nav a{color:var(--muted);font-size:.95rem;text-decoration:none}.site-footer nav a:hover{color:var(--text)}.footer-base{max-width:var(--wrap);border-top:1px solid var(--rule);color:var(--faint);margin:0 auto;padding:1.25rem 16px 2rem;font-size:.85rem}.footer-base p{margin:0}@media (width<=700px){.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}.btn{background:linear-gradient(180deg, var(--accent-strong), var(--accent));color:var(--on-accent);font:700 1rem var(--font-body);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:transform .12s,box-shadow .2s,filter .2s;display:inline-flex;box-shadow:0 8px 20px -8px #8b97ffa6,inset 0 1px #ffffff40}.btn:hover{color:var(--on-accent);filter:brightness(1.06);transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.6;cursor:progress}.btn.big{border-radius:14px;padding:.95rem 2rem;font-size:1.08rem}.btn-soft{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:12px;align-items:center;gap:.4rem;padding:.75rem 1.3rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn-soft:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.crumbs{color:var(--faint);flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;font-size:.85rem;display:flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--text)}.crumbs [aria-current]{color:var(--muted)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--cat);align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;display:inline-flex}.card-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width<=520px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}}.prose{max-width:760px;margin:0 auto;padding:2.5rem 16px 2rem}.prose h1{margin:0 0 .5rem;font-size:clamp(2rem,5vw,2.7rem)}.prose h2{margin:2.25rem 0 .5rem;font-size:1.4rem}.prose h3{font-size:1.1rem}.prose p,.prose li{color:#cdd3e8}.prose strong{color:var(--text)}.prose .meta{color:var(--muted);margin-bottom:2rem;font-size:.95rem}.prose ul{padding-left:1.25rem}.prose li{margin-bottom:.4rem}.prose li::marker{color:var(--accent)}.prose code{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.1em .4em}.faq-list{gap:.6rem;display:grid}.faq-item{border:1px solid var(--border);background:var(--surface);border-radius:14px;transition:border-color .2s;overflow:hidden}.faq-item[open]{border-color:var(--border-strong)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{background:var(--surface-2)}.faq-icon{background:var(--accent-chip);width:1.6rem;height:1.6rem;color:var(--accent-strong);border-radius:8px;flex-shrink:0;place-items:center;font-weight:800;transition:transform .2s;display:grid}.faq-item[open] .faq-icon{transform:rotate(45deg)}.faq-item p{color:var(--muted);margin:0;padding:0 1.2rem 1.1rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.sound-toggle{border:1px solid var(--border);background:var(--surface);width:2.3rem;height:2.3rem;color:var(--muted);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:color .15s,background .15s;display:grid}.sound-toggle:hover{color:var(--text);background:var(--surface-2)}.sound-toggle[hidden]{display:none}.sound-toggle svg{width:1.15rem;height:1.15rem}.sound-toggle .off,.sound-toggle[aria-pressed=false] .on{display:none}.sound-toggle[aria-pressed=false] .off{display:block}@media (width<=1100px){.streak+.sound-toggle{margin-left:0}.streak[hidden]+.sound-toggle{margin-left:auto}}@keyframes fx-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:none}}@keyframes fx-pop{0%{transform:scale(1)}40%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes fx-bump{0%{transform:scale(1)}35%{color:var(--ok);transform:scale(1.35)}to{transform:scale(1)}}@keyframes fx-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes fx-wave{0%{transform:scale(1)}45%{background:color-mix(in srgb, var(--ok) 32%, var(--surface));transform:scale(1.12)}to{transform:scale(1)}}@keyframes fx-hint{0%{box-shadow:inset 0 0 0 0 var(--gold)}40%{box-shadow:inset 0 0 0 4px var(--gold), 0 0 24px var(--gold)}to{box-shadow:inset 0 0 #0000}}@keyframes fx-urgent{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes fx-float{0%{opacity:1;transform:translate(-50%)scale(.9)}to{opacity:0;transform:translate(-50%,-54px)scale(1.25)}}@keyframes fx-confetti{0%{opacity:1;transform:translate(0)rotate(0)}70%{opacity:1}to{transform:translate(var(--dx), calc(var(--dy) + 420px)) rotate(var(--rot));opacity:0}}@keyframes fx-count{0%{opacity:0;transform:scale(2.2)}25%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(.95)}to{opacity:0;transform:scale(.7)}}.fx-in{animation:.28s cubic-bezier(.2,.8,.2,1) fx-in}.fx-pop{animation:.3s fx-pop}.fx-bump{animation:.35s fx-bump;display:inline-block}.fx-shake{animation:.38s fx-shake}.fx-wave{animation:fx-wave .5s ease var(--d,0s) both}.fx-hint{animation:.9s fx-hint}.fx-float{z-index:100;pointer-events:none;font:700 1.3rem var(--font-display);text-shadow:0 2px 12px #0009;animation:.8s ease-out forwards fx-float;position:fixed}.fx-confetti{z-index:100;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fx-confetti i{animation:fx-confetti var(--dur) cubic-bezier(.15, .6, .4, 1) forwards;display:block;position:absolute}.logo[data-astro-cid-f7espo7c]{color:var(--text);flex-shrink:0;align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.logo[data-astro-cid-f7espo7c]:hover{color:var(--text)}.logo-mark[data-astro-cid-f7espo7c]{width:2.25rem;height:2.25rem;transition:transform .3s cubic-bezier(.3,1.5,.5,1);overflow:visible}.logo[data-astro-cid-f7espo7c]:hover .logo-mark[data-astro-cid-f7espo7c]{transform:rotate(-8deg)scale(1.06)}.logo-word[data-astro-cid-f7espo7c]{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.4rem;font-weight:700;line-height:1}.logo-word[data-astro-cid-f7espo7c] span[data-astro-cid-f7espo7c]{background:linear-gradient(90deg,#ffd166,#ff8a9b 55%,#b591ff);color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:.22em}
