@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";:root{--night:#2b1a5e;--night-2:#3f2a84;--dusk:#7a3fb8;--glow:#ff9bd2;--paper:#fff8ea;--paper-2:#f6ead1;--ink:#2a1d3f;--ink-soft:#6b5a85;--gold:#ffc531;--gold-dark:#d48a00;--good:#2fbf71;--good-dark:#1d8f52;--bad:#ef4f5f;--brand:#ff7a45;--brand-dark:#d6501d;--blue:#3d8bfd;--radius:22px;--shadow:0 6px 0 #1a0c3c40, 0 14px 30px #1a0c3c40;--bounce:cubic-bezier(.34, 1.56, .64, 1);color:var(--ink);-webkit-tap-highlight-color:transparent;font-family:Fredoka,Comic Sans MS,system-ui,sans-serif}*{box-sizing:border-box}html,body{background:var(--night);min-height:100%;margin:0}body{background:radial-gradient(ellipse at 50% 120%, #ff9bd273, transparent 60%), radial-gradient(circle at 15% 10%, #7a3fb8b3, transparent 45%), linear-gradient(180deg, var(--night) 0%, var(--night-2) 55%, var(--dusk) 100%);touch-action:manipulation;-webkit-user-select:none;user-select:none;background-attachment:fixed;min-height:100dvh;overflow-x:clip}body:before{content:"";pointer-events:none;opacity:.8;background-image:radial-gradient(2px 2px at 10% 20%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 30% 8%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 55% 15%,#ffe9a8 50%,#0000 51%),radial-gradient(1.5px 1.5px at 75% 6%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 90% 25%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 20% 40%,#fff 50%,#0000 51%),radial-gradient(1.5px 1.5px at 85% 45%,#ffe9a8 50%,#0000 51%),radial-gradient(1.5px 1.5px at 45% 35%,#fff 50%,#0000 51%);animation:5s ease-in-out infinite alternate twinkle;position:fixed;inset:0}input,button{font:inherit;color:inherit}button{cursor:pointer;border:none}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.card{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.btn{background:var(--brand);color:#fff;min-height:48px;box-shadow:0 5px 0 var(--brand-dark);transition:transform .12s var(--bounce), box-shadow .12s;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:1.1rem;font-weight:600;display:inline-flex}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--brand-dark);transform:translateY(4px)}.btn:disabled{filter:grayscale(.8);opacity:.55}.btn.good{background:var(--good);box-shadow:0 5px 0 var(--good-dark)}.btn.ghost{box-shadow:none;color:#fff;background:#ffffff24}.coin{background:radial-gradient(circle at 35% 30%, #fff3b0, var(--gold) 45%, var(--gold-dark));vertical-align:-.15em;border-radius:50%;width:1.05em;height:1.05em;display:inline-block;box-shadow:inset 0 0 0 2px #a05a0059}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes twinkle{0%{opacity:.45}to{opacity:.95}}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}@keyframes float-up{0%{opacity:0;transform:translate(0)scale(.6)}15%{opacity:1;transform:translateY(-10px)scale(1.1)}to{transform:translate(var(--dx,0), -110px) scale(.9);opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
