@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(/assets/fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}:root{--bg:#eaf0f5;--ink:#2a2638;--ink-soft:#5d5870;--ink-faint:#8f8aa0;--accent:#e86f51;--accent-dark:#c4553a;--hint:#6a4fae;--hint-dark:#533b8f;--hint-soft:#efe9fb;--card:#fff;--card-edge:#d5dde6;--cross:#a29db0;--good:#3f9e6e;--r-sm:14px;--r-md:18px;--r-lg:22px;--shadow-btn:0 3px 0 var(--card-edge);--font-head:"Fredoka", "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font-body);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;font-size:16px;line-height:1.4}body{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}h1,h2,h3{font-family:var(--font-head);letter-spacing:.01em;margin:0;font-weight:600}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:focus-visible{outline:3px solid var(--hint);outline-offset:2px}a:focus-visible{outline:3px solid var(--hint);outline-offset:2px}[tabindex]:focus-visible{outline:3px solid var(--hint);outline-offset:2px}a{color:var(--hint)}[hidden]{display:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.btn{border-radius:var(--r-md);background:var(--accent);color:#fff;min-height:52px;font-family:var(--font-head);box-shadow:0 4px 0 var(--accent-dark);justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:1.12rem;font-weight:600;transition:transform 80ms,box-shadow 80ms;display:inline-flex}.btn svg{flex:none;width:22px;height:22px}.btn:active{box-shadow:0 1px 0 var(--accent-dark);transform:translateY(3px)}.btn.block{width:100%}.btn.secondary{background:var(--card);color:var(--ink);box-shadow:0 4px 0 var(--card-edge)}.btn.secondary:active{box-shadow:0 1px 0 var(--card-edge)}.btn.hint{background:var(--hint);box-shadow:0 4px 0 var(--hint-dark)}.btn[disabled]{opacity:.45;pointer-events:none}.icon-btn{background:var(--card);width:44px;height:44px;box-shadow:var(--shadow-btn);border-radius:50%;place-items:center;transition:transform 80ms,box-shadow 80ms;display:grid}.icon-btn:active{box-shadow:0 1px 0 var(--card-edge);transform:translateY(2px)}.icon-btn svg{width:22px;height:22px}.card{background:var(--card);border-radius:var(--r-lg);box-shadow:0 3px 0 var(--card-edge)}.screen{min-height:100%;padding:calc(var(--safe-top) + 12px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 16px);flex-direction:column;max-width:560px;margin:0 auto;animation:.25s ease-out screen-in;display:flex}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.topbar{align-items:center;gap:12px;min-height:52px;display:flex}.topbar .title{text-align:center;flex:1;line-height:1.15}.topbar .title h1{font-size:1.15rem}.topbar .title small{font-family:var(--font-head);color:var(--ink-soft);font-size:.95rem;font-weight:500;display:block}.topbar .spacer{width:44px}.toast{left:50%;top:calc(var(--safe-top) + 72px);background:var(--ink);color:#fff;z-index:50;text-align:center;pointer-events:none;border-radius:999px;max-width:calc(100% - 32px);padding:10px 18px;font-size:.95rem;font-weight:700;animation:2.4s forwards toast;position:fixed;transform:translate(-50%)}@keyframes toast{0%{opacity:0;transform:translate(-50%,-10px)}10%,85%{opacity:1;transform:translate(-50%)}to{opacity:0}}.overlay{z-index:40;background:#2a263873;place-items:center;padding:24px;animation:.2s ease-out fade;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fade{0%{opacity:0}}.dialog{text-align:center;width:min(100%,380px);padding:24px 20px 20px;animation:.28s cubic-bezier(.2,1.4,.4,1) pop-in}.dialog h2{margin-bottom:6px;font-size:1.4rem}.dialog p{color:var(--ink-soft);margin:0 0 18px}.dialog .actions{gap:12px;display:grid}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}}.update-bar{left:12px;right:12px;top:calc(var(--safe-top) + 10px);z-index:60;align-items:center;gap:12px;max-width:520px;margin:0 auto;padding:10px 10px 10px 16px;font-weight:700;animation:.3s ease-out pop-in;display:flex;position:fixed}.update-bar span{flex:1}.update-bar .btn{min-height:44px;padding:0 14px;font-size:1rem}.cat{width:100%;height:100%;display:block;overflow:visible}.cat .cat-body{transform-origin:20px 36px;animation:3.2s ease-in-out infinite bob;animation-delay:var(--d,0s)}.cat .cat-eyes{transform-origin:20px 22px;animation:5s infinite blink;animation-delay:var(--d,0s)}.cat .cat-z{animation:2.6s ease-in-out infinite zzz}@keyframes bob{0%,to{transform:translateY(0)scaleY(1)}50%{transform:translateY(-.5px)scaleY(1.02)}}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes zzz{0%,to{opacity:.3;transform:translateY(1px)}50%{opacity:1;transform:translate(1px,-2px)}}
