@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.193567cf.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.7f2acc0f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.610fd2a3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.193567cf.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.7f2acc0f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.610fd2a3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/b6df7c92285ebcd2-s.193567cf.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/eeba9b1ad34c1404-s.7f2acc0f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/5d52bd6c4cb3f315-s.p.610fd2a3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}.fredoka_b1693a78-module__gyVS5W__className{font-family:Fredoka,Fredoka Fallback;font-style:normal}.fredoka_b1693a78-module__gyVS5W__variable{--font-display:"Fredoka","Fredoka Fallback"}
@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cc6c75d91fb27f62-s.d9a5c6b2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ed5f1f9bced69653-s.p.c75d0046.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(../media/574e5b2a8fe8e45b-s.7101bfa8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(../media/89ea96820aa96980-s.p.cd67f43d.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Fallback;src:local(Arial);ascent-override:95.6%;descent-override:29.18%;line-gap-override:0.0%;size-adjust:99.37%}.atkinson_hyperlegible_1b7aabc4-module__kC57NW__className{font-family:Atkinson Hyperlegible,Atkinson Hyperlegible Fallback;font-style:normal}.atkinson_hyperlegible_1b7aabc4-module__kC57NW__variable{--font-body:"Atkinson Hyperlegible","Atkinson Hyperlegible Fallback"}
:root{--paper:#f3f7fb;--grid:#d9e4ef;--ink:#1d2a44;--muted:#5b6b86;--card:#fff;--line:#c9d6e5;--accent:#ffb21f;--accent-ink:#3a2700;--good:#1f9d63;--good-bg:#d7f3e5;--bad:#d6453d;--bad-bg:#fbe1df;--warn:#c98a00;--warn-bg:#fff0c7;--key:#eef3f9;--key-press:#dfe8f3;--display:var(--font-display),ui-rounded,system-ui,sans-serif;--body:var(--font-body),system-ui,-apple-system,"Segoe UI",sans-serif}@media (prefers-color-scheme:dark){:root{--paper:#111827;--grid:#1c2638;--ink:#e8eef8;--muted:#9aa9c2;--card:#172033;--line:#2c3a54;--accent:#ffbf3d;--accent-ink:#2a1c00;--good:#4fd194;--good-bg:#143a2a;--bad:#ff7b72;--bad-bg:#43201f;--warn:#ffcf5c;--warn-bg:#3d3214;--key:#1f2a40;--key-press:#2a3854;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);background-image:linear-gradient(var(--grid)1px,transparent 1px),linear-gradient(90deg,var(--grid)1px,transparent 1px);padding-block:20px 40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background-size:24px 24px;font-size:16px;line-height:1.5}.wrap{flex-direction:column;gap:16px;max-width:720px;margin:0 auto;display:flex}header.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}h1{font-family:var(--display);text-wrap:balance;margin:0;font-size:2rem;font-weight:700;line-height:1.1}h1 .x{color:var(--accent);margin:0 .08em}.sub{color:var(--muted);margin:0;font-size:.95rem}button{font-family:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.tabs{background:var(--card);border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px;display:flex}.tabs a,.tabs button{font:600 .95rem var(--display);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 14px;text-decoration:none}.tabs [aria-current=page]{background:var(--ink);color:var(--paper)}.label{font:700 .75rem var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.tables{flex-direction:column;gap:8px;display:flex}.chips{grid-template-columns:repeat(13,minmax(0,1fr));gap:6px;display:grid}.chip{font:600 1rem var(--display);font-variant-numeric:tabular-nums;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:10px;min-width:0;padding:6px 0}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip.all{font-size:.85rem}.card{background:var(--card);border:1px solid var(--line);box-shadow:0 2px 0 var(--line);border-radius:18px;padding:20px}.stats{flex-wrap:wrap;gap:8px;display:flex}.stat{background:var(--key);color:var(--muted);border-radius:999px;align-items:baseline;gap:6px;padding:4px 12px;font-size:.9rem;display:flex}.stat b{font:600 1.05rem var(--display);color:var(--ink);font-variant-numeric:tabular-nums}.progress-bar{background:var(--key);border-radius:999px;height:8px;margin-top:14px;overflow:hidden}.progress-bar i{background:var(--accent);height:100%;transition:width .25s;display:block}.question{font-family:var(--display);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:.3em;padding:18px 0 6px;font-size:clamp(3rem,13vw,5.5rem);font-weight:700;line-height:1;display:flex}.question .op{color:var(--muted);font-weight:500}.answer{text-align:center;border-bottom:5px solid var(--ink);min-width:2.2em;color:var(--ink);padding:0 .1em;transition:color .15s,border-color .15s}.answer.empty{color:#0000}.answer.ghosted{color:var(--muted);opacity:.45}.answer.ok{color:var(--good);border-color:var(--good)}.answer.no{color:var(--bad);border-color:var(--bad);animation:.3s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.feedback{text-align:center;min-height:1.6em;margin:6px 0 10px;font-weight:700}.feedback.ok{color:var(--good)}.feedback.no{color:var(--bad)}.feedback.teach{color:var(--warn)}.tag{text-align:center;margin-top:8px;display:block}.pad{grid-template-columns:repeat(3,1fr);gap:8px;max-width:340px;margin:0 auto;display:grid}.pad button{font:600 1.6rem var(--display);background:var(--key);color:var(--ink);cursor:pointer;box-shadow:0 3px 0 var(--line);touch-action:manipulation;border:0;border-radius:14px;padding:12px 0}.pad button:active{background:var(--key-press);box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.pad .go{background:var(--accent);color:var(--accent-ink)}.pad .del{font-size:1.1rem}.hint{text-align:center;color:var(--muted);margin:12px 0 0;font-size:.85rem}.big-btn{font:700 1.15rem var(--display);background:var(--ink);color:var(--paper);cursor:pointer;border:0;border-radius:14px;padding:12px 22px}.big-btn:disabled{opacity:.4;cursor:not-allowed}.big-btn.alt{background:var(--accent);color:var(--accent-ink)}.check-offer{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.ghost{font:600 .9rem var(--display);border:1.5px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:6px 14px}.result{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px 0 8px;display:flex}.result .n{font:700 4.5rem/1 var(--display);font-variant-numeric:tabular-nums}.chart-wrap{overflow-x:auto}table.chart{border-collapse:separate;border-spacing:3px;font-family:var(--display);font-variant-numeric:tabular-nums;margin:0 auto}.chart th{color:var(--muted);width:2.4em;height:2.1em;font-size:.85rem;font-weight:700}.chart td{text-align:center;background:var(--key);width:2.4em;height:2.1em;color:var(--ink);cursor:pointer;border:1.5px solid #0000;border-radius:6px;font-size:.9rem;font-weight:600}.chart td.m-mastered{background:var(--good-bg);color:var(--good)}.chart td.m-learning{background:var(--warn-bg);color:var(--warn)}.chart td.m-struggling{background:var(--bad-bg);color:var(--bad)}.chart td.sel{border-color:var(--ink)}.legend{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:14px;margin-top:12px;font-size:.85rem;display:flex}.legend span{align-items:center;gap:6px;display:flex}.legend i{border-radius:4px;width:14px;height:14px;display:inline-block}.chart-info{text-align:center;font:600 1.1rem var(--display);min-height:1.6em;margin-bottom:10px}.login{align-items:flex-start;padding-top:12vh}.login .sub{max-width:46ch;font-size:1.05rem}.privacy{padding:24px 0 40px}.privacy h2{font:600 1.15rem var(--display);margin:0 0 8px}.privacy p,.privacy li{line-height:1.55}.privacy ul{flex-direction:column;gap:6px;margin:0;padding-left:1.2em;display:flex}.privacy a{color:inherit}@media (max-width:520px){.chips{grid-template-columns:repeat(7,minmax(0,1fr))}h1{font-size:1.6rem}table.chart{border-spacing:2px}.chart td{font-size:.8rem}.chart th{font-size:.75rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
