:root{--bg:#0f0f10;--surface:#18181a;--surface-2:#202023;--surface-3:#2a2a2e;--border:#232326;--border-strong:#303034;--text:#efeeeb;--text-2:#a8a7ac;--text-3:#8a8990;--card:#18181b;--card-line:#26262a;--accent:#d97757;--display:Figtree, Inter, system-ui, sans-serif;--font:Inter, -apple-system, system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font);color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;min-width:320px;margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{color:var(--text);background:#d977574d}.site-page{background:var(--bg);overflow:hidden}.icon{vertical-align:middle;flex-shrink:0;display:inline-block}.error-page{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.error-page h1{font:600 50px var(--display)}.error-page p{color:var(--text-2)}.error-page .button{color:#111113;background:#fff;border-radius:30px;padding:12px 20px}.buddy{--buddy-main:#de7d58;--buddy-light:#f3a47e;--buddy-dark:#a94c35;display:inline-block;overflow:visible}.buddy-sky{--buddy-main:#79b9ee;--buddy-light:#b1d9f6;--buddy-dark:#487da9}.buddy-mint{--buddy-main:#82cba4;--buddy-light:#b7e4c6;--buddy-dark:#4d9470}.buddy-lilac{--buddy-main:#b69ae6;--buddy-light:#d7c5f2;--buddy-dark:#7e61ae}.buddy-character{transform-origin:90px 115px;animation:5.2s ease-in-out infinite buddy-bob}.buddy-eyes{transform-origin:90px 78px;animation:5.4s infinite blink}.buddy-arm{transform-origin:50%;animation:3s ease-in-out infinite wave}.left-arm{transform-origin:50px 90px}.right-arm{transform-origin:130px 90px;animation-delay:-1.2s}.buddy-leg{animation:2.7s ease-in-out infinite feet}.right-leg{animation-delay:-1.3s}.buddy-curious .buddy-question{animation:3s ease-in-out infinite float-question}.buddy-focused .buddy-character{animation:3.2s ease-in-out infinite focus-bob}.buddy-ready .right-arm{animation:1.3s ease-in-out infinite wave}.buddy-nervous .buddy-character{animation:.35s ease-in-out infinite alternate nervous}.buddy-celebrate .buddy-character{animation:1.35s ease-in-out infinite celebrate}.buddy-celebrate .buddy-confetti{animation:1.35s ease-in-out infinite confetti}@keyframes buddy-bob{0%,to{transform:rotate(-2deg)}50%{transform:translateY(-5px)rotate(2deg)}}@keyframes focus-bob{50%{transform:translateY(-3px)rotate(-2deg)}}@keyframes nervous{to{transform:translate(2px)rotate(1deg)}}@keyframes celebrate{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-17px)rotate(5deg)}}@keyframes blink{0%,38%,41%,to{transform:scaleY(1)}39%,40%{transform:scaleY(.08)}}@keyframes wave{50%{transform:rotate(11deg)}}@keyframes feet{50%{transform:translateY(2px)}}@keyframes float-question{50%{transform:translateY(-7px)}}@keyframes confetti{50%{opacity:.65;transform:translateY(-8px)}}@keyframes heart-pop{0%{opacity:0;transform:translateY(10px)scale(.5)}35%{opacity:1;transform:translateY(-12px)scale(1.1)}to{opacity:0;transform:translateY(-45px)scale(.85)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
