:root{--bg:#f7f6fe;--surface:#fff;--surface-2:#f2f1fb;--ink:#16133a;--ink-2:#545079;--ink-3:#8783ab;--border:#16133a17;--border-strong:#16133a2e;--shadow-sm:0 1px 2px #16133a0d, 0 2px 8px -2px #16133a0f;--shadow-md:0 2px 4px #16133a0a, 0 14px 30px -12px #31248c38;--shadow-lg:0 4px 10px #16133a0d, 0 32px 64px -24px #31248c66;--maths:#6a55ff;--maths-ink:#5240e6;--maths-t:#eeebff;--maths-grad:linear-gradient(135deg, #7b5bff 0%, #5a6bff 48%, #37b5ff 100%);--eng:#0fa597;--eng-ink:#0a7c72;--eng-t:#ddf5f0;--eng-grad:linear-gradient(135deg, #14c08a 0%, #0fa597 48%, #1e8fe0 100%);--code:#f2552c;--code-ink:#c43a12;--code-t:#ffe9e1;--code-grad:linear-gradient(135deg, #ff4f7b 0%, #ff6a2c 50%, #ffab19 100%);--bee:#ffaa2c;--bee-ink:#a65300;--bee-t:#fff3d9;--bee-grad:linear-gradient(135deg, #ffd54f 0%, #ffab2e 52%, #ff7845 100%);--ok:#0ead7a;--ok-t:#e1f7ef;--no:#eb3b68;--no-t:#fde8ee;--sun:#ffc233;--muted:#dddbef;--dark-card:#17143d;--card:var(--surface);--line:#1e1b4b;--grape:#6a55ff;--grape-t:#eeebff;--lagoon:#0fa597;--lagoon-t:#dcf4f0;--tang:#ff8338;--tang-t:#ffeedf;--berry:#eb3b68;--berry-t:#fde8ee;--accent:var(--maths);--accent-ink:var(--maths-ink);--accent-t:var(--maths-t);--accent-grad:var(--maths-grad);--on-accent:#fff;--r-sm:12px;--r:18px;--r-lg:24px;--r-xl:32px;--ease:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d0b22;--surface:#17153a;--surface-2:#211e4c;--ink:#f3f2ff;--ink-2:#b9b6de;--ink-3:#8a87b5;--border:#ffffff14;--border-strong:#ffffff29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 14px 30px -12px #0009;--shadow-lg:0 32px 64px -24px #000000bf;--maths:#8d7dff;--maths-ink:#ada2ff;--maths-t:#2a2565;--eng:#2dd4bf;--eng-ink:#5eead4;--eng-t:#123f44;--code:#ff7a52;--code-ink:#ff9c7d;--code-t:#45201a;--bee:#ffc145;--bee-ink:#ffcb66;--bee-t:#3a2b14;--ok:#2dd4a0;--ok-t:#0f3a31;--no:#ff5f86;--no-t:#45162a;--muted:#34306a;--dark-card:#221e55;--line:#0b0a1f;--grape:#8d7dff;--grape-t:#2a2565;--lagoon:#2ccdba;--lagoon-t:#123f44;--tang:#ff9a55;--tang-t:#43281a;--berry:#ff5f86;--berry-t:#45162a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d0b22;--surface:#17153a;--surface-2:#211e4c;--ink:#f3f2ff;--ink-2:#b9b6de;--ink-3:#8a87b5;--border:#ffffff14;--border-strong:#ffffff29;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 14px 30px -12px #0009;--shadow-lg:0 32px 64px -24px #000000bf;--maths:#8d7dff;--maths-ink:#ada2ff;--maths-t:#2a2565;--bee:#ffc145;--bee-ink:#ffcb66;--bee-t:#3a2b14;--ok:#2dd4a0;--ok-t:#0f3a31;--no:#ff5f86;--no-t:#45162a;--muted:#34306a;--dark-card:#221e55;--line:#0b0a1f;--grape:#8d7dff;--grape-t:#2a2565;--lagoon:#2ccdba;--lagoon-t:#123f44;--tang:#ff9a55;--tang-t:#43281a;--berry:#ff5f86;--berry-t:#45162a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-section=english]{--accent:var(--eng);--accent-ink:var(--eng-ink);--accent-t:var(--eng-t);--accent-grad:var(--eng-grad);--on-accent:#fff}[data-section=computing]{--accent:var(--code);--accent-ink:var(--code-ink);--accent-t:var(--code-t);--accent-grad:var(--code-grad);--on-accent:#fff}[data-section=spelling]{--accent:var(--bee);--accent-ink:var(--bee-ink);--accent-t:var(--bee-t);--accent-grad:var(--bee-grad);--on-accent:#2b1700}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100svh;color:var(--ink);font-family:var(--font-body), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:16px;line-height:1.6;display:flex}main{flex:1}h1,h2,h3,.disp{font-family:var(--font-display), "Trebuchet MS", system-ui, sans-serif;letter-spacing:-.01em;margin:0;font-weight:600;line-height:1.1}p{margin:0}a{color:inherit}button{font:inherit;color:inherit}img,svg{max-width:100%}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}.wrap{width:100%;max-width:1140px;margin:0 auto;padding:0 20px}.narrow{max-width:780px}.muted{color:var(--ink-2)}.page{padding-top:28px;padding-bottom:72px}.btn{border:1px solid var(--border-strong);background:var(--surface);min-height:50px;color:var(--ink);cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-sm);transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .18s;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:1.02rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn:active{transform:translateY(0)scale(.97)}.btn svg{flex:none;width:20px;height:20px}.btn.primary{background:var(--accent-grad);color:var(--on-accent);box-shadow:0 10px 24px -10px var(--accent);border-color:#0000}.btn.light{color:#16133a;background:#fff;border-color:#0000;box-shadow:0 10px 24px -12px #00000059}.btn.glass{color:inherit;box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff2e;border-color:#fff6}.btn.small{min-height:40px;padding:0 16px;font-size:.95rem}.btn[disabled]{opacity:.45;pointer-events:none}.site-header{z-index:30;background:var(--bg);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(16px);backdrop-filter:saturate(1.6)blur(16px);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}.site-header .wrap{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;height:68px;display:grid}.brand{justify-self:start;align-items:center;gap:10px;text-decoration:none;display:flex}.brand svg{width:38px;height:38px}.brand b{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:1.55rem;font-weight:700}.switch{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;gap:4px;padding:4px;display:flex}.switch a{height:40px;color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 6px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s;display:flex}.switch a:hover{color:var(--ink)}.switch a.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.switch .dot{width:28px;height:28px;font-family:var(--font-display), sans-serif;color:#fff;border-radius:9px;place-items:center;font-size:.8rem;font-weight:700;display:grid}.switch .dot.m{background:var(--maths-grad)}.switch .dot.s{background:var(--bee-grad);color:#2b1700}.switch .dot.e{background:var(--eng-grad)}.switch .dot.q{background:linear-gradient(135deg,#7b5bff,#b23ce6 50%,#f0408f);font-size:.7rem}.switch .dot.k{background:var(--code-grad);letter-spacing:-.04em;font-size:.62rem}.xp{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);white-space:nowrap;border-radius:999px;justify-self:end;align-items:center;gap:8px;padding:5px 14px 5px 5px;font-size:.95rem;font-weight:600;display:flex}.xp .ic{background:linear-gradient(135deg,#ffd54f,#ffaa2c);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.xp .ic svg{width:16px;height:16px}@media (max-width:680px){.site-header .wrap{grid-template-columns:auto 1fr auto}.brand b{display:none}.switch{justify-self:center}.switch a{padding:0 12px 0 5px;font-size:.9rem}.switch .long{display:none}.xp{padding-right:10px}.xp .lbl{display:none}}.site-footer{padding:36px 0 calc(44px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);color:var(--ink-3);margin-top:72px;font-size:.85rem}.site-footer .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.site-footer nav{gap:20px;display:flex}.site-footer nav a{color:var(--ink-2);font-weight:600;text-decoration:none}.site-footer nav a:hover{color:var(--ink)}.site-footer p{max-width:80ch}.welcome{isolation:isolate;padding-top:56px;padding-bottom:24px;position:relative;overflow:hidden}.welcome:before,.welcome:after{content:"";z-index:-1;filter:blur(80px);opacity:.35;border-radius:50%;width:620px;height:620px;position:absolute}.welcome:before{background:#8c76ff;top:-280px;left:-180px}.welcome:after{background:#ffb84d;top:-200px;right:-220px}.welcome-head{text-align:center;max-width:760px;margin:0 auto 44px}.welcome-head .mascot{width:84px;height:84px;animation:5s ease-in-out infinite float}.eyebrow{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;margin-top:10px;padding:6px 14px;font-size:.88rem;font-weight:600;display:inline-flex}.eyebrow i{background:var(--ok);width:8px;height:8px;box-shadow:0 0 0 4px var(--ok-t);border-radius:50%}.welcome h1{letter-spacing:-.025em;margin-top:20px;font-size:clamp(2.5rem,6.5vw,4.4rem);font-weight:700}.grad-text{background:linear-gradient(90deg,#6a55ff 0%,#c04fe0 50%,#ff7a45 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.welcome-head p{max-width:46ch;color:var(--ink-2);margin:18px auto 0;font-size:1.18rem}.worlds{gap:24px;display:grid}@media (min-width:760px){.worlds{grid-template-columns:1fr 1fr}}.world{isolation:isolate;border-radius:var(--r-xl);min-height:460px;box-shadow:var(--shadow-lg);transition:transform .45s var(--ease), box-shadow .45s var(--ease);flex-direction:column;justify-content:flex-end;padding:32px 120px 32px 32px;text-decoration:none;display:flex;position:relative;overflow:hidden}.world:hover{transform:translateY(-8px)}.world-maths{background:var(--maths-grad);color:#fff}.world-bee{background:var(--bee-grad);color:#2b1700}.world-english{background:var(--eng-grad);color:#fff}.world-code{background:var(--code-grad);color:#fff}.world:before{content:"";z-index:-1;background:radial-gradient(circle at 85% 0,#ffffff73,#0000 45%),radial-gradient(circle at 0 100%,#00000024,#0000 55%);position:absolute;inset:0}.world .art{z-index:-1;pointer-events:none;position:absolute;inset:0 0 42%}.float-chip{left:var(--x);top:var(--y);width:var(--s,84px);height:var(--s,84px);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-display), sans-serif;font-weight:700;font-size:calc(var(--s,84px) * .4);transform:rotate(var(--rot,0deg));animation:6s ease-in-out infinite bob;animation-delay:var(--d,0s);background:#fff3;border:1px solid #ffffff73;border-radius:24px;place-items:center;display:grid;position:absolute;box-shadow:0 18px 36px -16px #140a5073}.letter-tile{left:var(--x);top:var(--y);width:var(--s,80px);height:var(--s,80px);color:#2b1700;font-family:var(--font-display), sans-serif;font-weight:700;font-size:calc(var(--s,80px) * .5);transform:rotate(var(--rot,0deg));animation:6s ease-in-out infinite bob;animation-delay:var(--d,0s);background:#fff9ea;border-radius:18px;place-items:center;display:grid;position:absolute;box-shadow:0 7px #e69a1f,0 22px 30px -14px #5a280080}.letter-tile small{font-size:.9rem;font-family:var(--font-body), sans-serif;opacity:.55;font-weight:600;position:absolute;bottom:5px;right:9px}.world .bee{width:96px;animation:7s ease-in-out infinite buzz;position:absolute;top:12%;right:14%}.world .kicker{opacity:.85;text-transform:uppercase;letter-spacing:.1em;font-size:.9rem;font-weight:600}.world h2{letter-spacing:-.02em;margin-top:6px;font-size:clamp(2.4rem,4.5vw,3.3rem);font-weight:700}.world p{opacity:.92;max-width:32ch;margin-top:8px;font-size:1.12rem}.world .meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.glass-pill{background:#fff3;border:1px solid #fff6;border-radius:999px;padding:6px 13px;font-size:.85rem;font-weight:600}.world-bee .glass-pill{background:#ffffff61;border-color:#fff9}.world .go{color:#16133a;width:64px;height:64px;transition:transform .45s var(--ease);background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:30px;right:30px;box-shadow:0 16px 30px -12px #00000073}.world .go svg{width:26px;height:26px}.world:hover .go{transform:translate(6px)}@media (max-width:520px){.world{min-height:0;padding:210px 24px 100px}.world .art{height:200px;inset:0 0 auto}.float-chip,.letter-tile{width:calc(var(--s,84px) * .72);height:calc(var(--s,84px) * .72);font-size:calc(var(--s,84px) * .3)}.letter-tile{font-size:calc(var(--s,80px) * .36)}.world .bee{width:72px;top:8%;right:8%}.world .go{width:56px;height:56px;bottom:24px;left:26px;right:auto}}.stat-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;display:flex}.stat-chip{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:12px;padding:8px 20px 8px 8px;display:flex}.stat-chip .ic{border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.stat-chip .ic svg{width:20px;height:20px}.stat-chip b{font-family:var(--font-display), sans-serif;font-size:1.3rem;font-weight:700;line-height:1}.stat-chip span{color:var(--ink-3);font-size:.82rem;line-height:1.2;display:block}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 20px;margin:56px 0 20px;display:flex}.sec-head h2{align-items:center;gap:12px;font-size:clamp(1.5rem,3vw,1.9rem);display:flex}.sec-head h2 .sw{background:var(--c,var(--accent));width:14px;height:14px;box-shadow:0 0 0 5px var(--surface-2);border-radius:5px}.sec-head p{color:var(--ink-2)}.shelf{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.trophy{border-radius:var(--r);background:var(--surface-2);border:1px solid var(--border);text-align:center;color:var(--ink-3);flex-direction:column;align-items:center;gap:8px;padding:18px 10px 14px;font-size:.85rem;font-weight:600;display:flex}.trophy svg{width:54px;height:54px}.trophy.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.trophy.on svg{filter:drop-shadow(0 6px 10px #ffaa2c73)}.band{isolation:isolate;border-radius:var(--r-xl);background:var(--accent-grad);color:var(--on-accent);box-shadow:var(--shadow-lg);padding:clamp(26px,5vw,48px);position:relative;overflow:hidden}.band:before{content:"";z-index:-1;background:radial-gradient(circle at 90% -10%,#ffffff73,#0000 40%),radial-gradient(circle at -10% 110%,#00000029,#0000 50%);position:absolute;inset:0}.band .deco{z-index:-1;font-family:var(--font-display), sans-serif;opacity:.12;pointer-events:none;font-size:17rem;font-weight:700;line-height:1;position:absolute;bottom:-70px;right:-10px}.band-grid{align-items:center;gap:32px;display:grid}@media (min-width:920px){.band-grid{grid-template-columns:1.05fr 1fr}}.crumbs{opacity:.85;flex-wrap:wrap;align-items:center;gap:8px;font-size:.92rem;font-weight:600;display:flex}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.band h1{letter-spacing:-.02em;margin-top:12px;font-size:clamp(2.3rem,5.5vw,3.6rem);font-weight:700}.band .sub{opacity:.92;max-width:44ch;margin-top:12px;font-size:1.12rem}.band .actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.band-stats{flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px;display:flex}.ring{flex:none;width:92px;height:92px;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring .val{text-align:center;place-content:center;line-height:1.05;display:grid;position:absolute;inset:0}.ring .val b{font-family:var(--font-display), sans-serif;font-size:1.6rem;font-weight:700}.ring .val small{opacity:.85;font-size:.72rem}.band-stat b{font-family:var(--font-display), sans-serif;font-size:1.8rem;font-weight:700;line-height:1;display:block}.band-stat span{opacity:.85;font-size:.88rem}.puzzle{border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg);padding:24px}.puzzle-top{align-items:center;gap:12px;margin-bottom:16px;display:flex}.puzzle-top svg{flex:none;width:50px;height:50px}.bubble{background:var(--accent-t);color:var(--accent-ink);border-radius:14px 14px 14px 4px;padding:8px 14px;font-size:.95rem;font-weight:600}.puzzle .qtext{font-size:clamp(1.25rem,3vw,1.5rem)}.puzzle .opts{gap:10px;margin-top:16px}.puzzle .opt{min-height:54px;font-size:1.08rem}.pmsg{min-height:1.6em;margin-top:14px;font-weight:600}.pmsg .why{color:var(--ink-2);margin-top:4px;font-weight:400;display:block}.stage-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;display:grid}.stage-tile{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);min-height:158px;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease);flex-direction:column;gap:2px;padding:22px;text-decoration:none;display:flex;position:relative}a.stage-tile:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.stage-tile .n{font-family:var(--font-display), sans-serif;background:var(--accent-grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:auto;font-size:3.4rem;font-weight:700;line-height:1}.stage-tile .lab{font-weight:600}.stage-tile small{color:var(--ink-3)}.stage-tile.locked{background:var(--surface-2);box-shadow:none}.stage-tile.locked .n{color:var(--muted);-webkit-text-fill-color:currentColor;background:0 0}.stage-tile .tag{background:var(--surface);color:var(--ink-3);border:1px solid var(--border);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.75rem;font-weight:600;display:flex;position:absolute;top:18px;right:18px}.stage-tile .tag svg{width:12px;height:12px}.stage-actions{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.stage-note{margin-top:14px}.stage-prompt{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);gap:12px;margin-bottom:24px;padding:20px 22px;display:grid}.field.bad .chips button{border-color:var(--no)}.stage-tile .tag.live{background:var(--ok-t);color:var(--ok);border-color:#0000}.tgrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.tcard{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s;align-items:center;gap:16px;padding:16px 18px 16px 16px;text-decoration:none;display:flex}.tcard:hover{box-shadow:var(--shadow-md);border-color:var(--c);transform:translateY(-4px)}.gl{width:62px;height:62px;font-family:var(--font-display), sans-serif;color:var(--c);background:var(--surface-2);background:color-mix(in srgb, var(--c) 14%, var(--surface));border-radius:18px;flex:none;place-items:center;font-size:1.4rem;font-weight:700;line-height:1;display:grid}.tcard .tt{font-family:var(--font-display), sans-serif;font-size:1.16rem;font-weight:600;line-height:1.2;display:block}.tcard .sub{color:var(--ink-3);align-items:center;gap:8px;min-height:18px;margin-top:6px;font-size:.85rem;display:flex}.tcard .chev{width:20px;height:20px;color:var(--ink-3);transition:transform .25s var(--ease);flex:none;margin-left:auto}.tcard:hover .chev{color:var(--c);transform:translate(3px)}.promo{isolation:isolate;border-radius:var(--r-xl);background:var(--dark-card);color:#fff;box-shadow:var(--shadow-lg);transition:transform .35s var(--ease);align-items:center;gap:20px;margin-top:56px;padding:clamp(26px,5vw,44px);text-decoration:none;display:grid;position:relative;overflow:hidden}.promo:hover{transform:translateY(-4px)}@media (min-width:720px){.promo{grid-template-columns:auto 1fr auto}}.promo:before{content:"";z-index:-1;background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 60%, transparent), transparent 55%), radial-gradient(circle at 0% 100%, #37b5ff59, transparent 50%);position:absolute;inset:0}.promo .icon{background:#ffffff1f;border:1px solid #fff3;border-radius:22px;place-items:center;width:76px;height:76px;display:grid}.promo .icon svg{width:38px;height:38px}.promo h2{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700}.promo p{opacity:.8;max-width:52ch;margin-top:6px}.lgrid{gap:18px;display:grid}@media (min-width:640px){.lgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1080px){.lgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.lcard{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease);flex-direction:column;gap:14px;padding:26px;text-decoration:none;display:flex}.lcard:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.lcard .tiles{gap:6px;display:flex}.lcard .tiles span{color:#2b1700;width:46px;height:50px;font-family:var(--font-display), sans-serif;text-transform:uppercase;background:#fff9ea;border-radius:12px;place-items:center;font-size:1.5rem;font-weight:700;display:grid;box-shadow:0 4px #e69a1f}.lcard .lvl{text-transform:uppercase;letter-spacing:.1em;color:var(--accent-ink);font-size:.8rem;font-weight:600}.lcard h3{font-size:1.6rem;font-weight:700}.lcard p{color:var(--ink-2)}.lcard .foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.diff{gap:4px;display:flex}.diff i{background:var(--surface-2);border-radius:4px;width:22px;height:8px}.diff i.on{background:var(--bee-grad)}.howto{gap:14px;margin-top:20px;display:grid}@media (min-width:720px){.howto{grid-template-columns:repeat(3,1fr)}}.howto div{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);align-items:flex-start;gap:14px;padding:18px;display:flex}.howto .num{background:var(--accent-t);width:40px;height:40px;color:var(--accent-ink);border-radius:12px;flex:none;place-items:center;display:grid}.howto .num svg{width:20px;height:20px}.howto b{display:block}.howto span{color:var(--ink-2);font-size:.92rem}.stars{vertical-align:middle;gap:2px;display:inline-flex}.stars svg{width:17px;height:17px}.bigstars{justify-content:center;gap:12px;margin:4px 0 16px;display:flex}.bigstars svg{filter:drop-shadow(0 10px 14px #ffaa2c59);width:78px;height:78px}.bigstars .lit{animation:.5s cubic-bezier(.3,1.6,.5,1) both starpop}.bigstars .lit:nth-child(2){animation-delay:.15s}.bigstars .lit:nth-child(3){animation-delay:.3s}.newbadge{background:var(--bee-t);color:var(--ink);border-radius:999px;align-items:center;gap:10px;margin:18px 6px 0;padding:6px 16px 6px 6px;font-weight:600;display:inline-flex}.newbadge svg{width:32px;height:32px}.back{color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;margin-left:-10px;padding:6px 14px 6px 10px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.back:before{content:"←"}.back:hover{background:var(--surface-2);color:var(--ink)}.lesson{padding-top:28px;padding-bottom:72px}.lhead{border-radius:var(--r-xl);border:1px solid var(--border);background:var(--surface);background:color-mix(in srgb, var(--c) 10%, var(--surface));align-items:center;gap:20px;margin-top:16px;padding:26px;display:flex}.lhead h1{font-size:clamp(1.9rem,5vw,2.8rem);font-weight:700}.lhead .sn{color:var(--ink-2);font-size:.92rem;font-weight:600}.glyph{background:var(--c,var(--accent));color:#fff;width:62px;height:62px;font-family:var(--font-display), sans-serif;border-radius:18px;flex:none;place-items:center;font-size:1.45rem;font-weight:700;line-height:1;display:grid}.glyph.big{width:84px;height:84px;box-shadow:0 14px 28px -14px var(--c,var(--accent));border-radius:24px;font-size:2rem}[data-section=spelling] .glyph{background:var(--bee-grad);color:#2b1700}.bigidea{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);font-family:var(--font-display), sans-serif;margin-top:22px;padding:22px 24px 22px 30px;font-size:clamp(1.2rem,3vw,1.45rem);font-weight:600;line-height:1.35;position:relative;overflow:hidden}.bigidea:before{content:"";background:var(--c);width:7px;position:absolute;top:0;bottom:0;left:0}.lesson h2{margin:44px 0 16px;font-size:1.55rem}.steps{counter-reset:s;gap:10px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);padding:15px 18px 15px 62px;font-size:1.05rem;position:relative}.steps li:before{content:counter(s);background:var(--surface-2);background:color-mix(in srgb, var(--c) 14%, var(--surface));width:32px;height:32px;color:var(--c);font-family:var(--font-display), sans-serif;border-radius:10px;place-items:center;font-weight:700;display:grid;position:absolute;top:13px;left:16px}.ex{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:24px}.ex-label{text-transform:uppercase;letter-spacing:.1em;color:var(--c);font-size:.78rem;font-weight:600}.exq{font-family:var(--font-display), sans-serif;margin-top:4px;font-size:1.35rem;font-weight:600;line-height:1.3}.exsteps{border-left:2px dashed var(--border-strong);margin:16px 0 18px 9px;padding:0;list-style:none}.exsteps li{padding:6px 0 10px 24px;font-size:1.05rem;position:relative}.exsteps li:before{content:"";background:var(--surface);border:3px solid var(--c);border-radius:50%;width:14px;height:14px;position:absolute;top:13px;left:-8px}.exsteps li:last-child:not([hidden]){font-weight:600}.exsteps li:last-child:not([hidden]):before{background:var(--c)}.exsteps li.pop{animation:pop .3s var(--ease)}.tip{border-radius:var(--r-lg);background:var(--bee-t);align-items:center;gap:16px;margin-top:28px;padding:18px 22px;display:flex}.tip svg{flex:none;width:58px;height:58px}.startq{isolation:isolate;border-radius:var(--r-xl);background:var(--accent-grad);color:var(--on-accent);box-shadow:var(--shadow-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:36px;padding:28px 30px;display:flex;position:relative;overflow:hidden}.startq:before{content:"";z-index:-1;background:radial-gradient(circle at 100% 0,#fff6,#0000 45%);position:absolute;inset:0}.startq h2{margin:0;font-size:1.7rem}.startq p{opacity:.9;margin-top:4px}.nexttopic{color:var(--ink-2);justify-content:flex-end;margin-top:22px;font-weight:600;text-decoration:none;display:flex}.nexttopic:hover{color:var(--ink)}.quiz{padding-top:24px;padding-bottom:220px}.qtop{align-items:center;gap:14px;margin-bottom:22px;display:flex}.close{background:var(--surface);border:1px solid var(--border);width:44px;height:44px;box-shadow:var(--shadow-sm);color:var(--ink-2);border-radius:50%;flex:none;place-items:center;font-weight:700;text-decoration:none;transition:color .2s,transform .2s;display:grid}.close:hover{color:var(--ink);transform:rotate(90deg)}.dots{flex:1;gap:6px;display:flex}.dots i{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:10px;transition:background .3s}.dots i.cur{background:var(--accent-grad);border-color:#0000}.dots i.ok{background:var(--ok);border-color:#0000}.dots i.no{background:var(--no);border-color:#0000}.count{color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.qcard{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);animation:rise .35s var(--ease);padding:clamp(22px,4.5vw,38px)}.qlabel{background:var(--accent-t);color:var(--accent-ink);border-radius:999px;margin-bottom:16px;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.qtext{font-family:var(--font-display), sans-serif;font-size:clamp(1.4rem,4vw,1.95rem);font-weight:600;line-height:1.3}.qtext b{color:var(--accent-ink);font-weight:700}.opts{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:26px;display:grid}@media (min-width:520px){.opts{grid-template-columns:repeat(2,minmax(0,1fr))}}.opt>:not(.k){overflow-wrap:anywhere;min-width:0}.band-grid>*,.puzzle{min-width:0}.opt{border:2px solid var(--border);border-radius:var(--r);background:var(--surface);width:100%;min-height:66px;color:var(--ink);text-align:left;cursor:pointer;align-items:center;gap:14px;padding:12px 16px;font-size:1.2rem;font-weight:600;transition:border-color .15s,background .15s,transform .15s;display:flex}.opt:hover:not([disabled]){border-color:var(--accent);background:var(--accent-t)}.opt:active:not([disabled]){transform:scale(.98)}.opt .k{background:var(--surface-2);width:34px;height:34px;color:var(--ink-2);font-family:var(--font-display), sans-serif;border-radius:10px;flex:none;place-items:center;font-size:1rem;font-weight:700;transition:background .15s,color .15s;display:grid}.opt[disabled]{cursor:default}.opt[disabled]:not(.ok):not(.no){opacity:.55}.opt.sel{border-color:var(--accent);background:var(--accent-t)}.opt.sel .k{background:var(--accent);color:var(--on-accent)}.opt.ok{border-color:var(--ok);background:var(--ok-t);animation:bounce .4s var(--ease)}.opt.ok .k{background:var(--ok);color:#fff}.opt.no{border-color:var(--no);background:var(--no-t);animation:.35s shake}.opt.no .k{background:var(--no);color:#fff}.fr{vertical-align:middle;flex-direction:column;align-items:center;margin:0 .12em;font-size:.82em;line-height:1.05;display:inline-flex}.fr>span:first-child{border-bottom:2px solid;padding:0 .2em .05em}.fr>span:last-child{padding-top:.05em}.mx{align-items:center;gap:.1em;display:inline-flex}.fig{max-width:320px;margin:18px 0 0}.fig svg{width:100%;height:auto;display:block}.fig .fl{font:600 15px var(--font-body), system-ui, sans-serif;fill:var(--ink)}.fig figcaption{color:var(--ink-3);font-size:.8rem}.loading{text-align:center;color:var(--ink-3);padding:64px 0}.sheet{z-index:40;padding:22px 0 calc(22px + env(safe-area-inset-bottom,0px));background:var(--surface);border-radius:28px 28px 0 0;transition:transform .4s cubic-bezier(.2,.9,.3,1.08);position:fixed;bottom:0;left:0;right:0;transform:translateY(115%);box-shadow:0 -24px 48px -24px #16133a59}.sheet.show{transform:none}.sheet.good{background:var(--ok-t)}.sheet.bad{background:var(--no-t)}.sheet .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sheet .msg{flex:320px}.sheet .head{font-family:var(--font-display), sans-serif;align-items:center;gap:10px;font-size:1.55rem;font-weight:700;display:flex}.sheet .head:before{color:#fff;width:34px;height:34px;font-family:var(--font-body), sans-serif;border-radius:50%;flex:none;place-items:center;font-size:1.05rem;display:grid}.sheet.good .head{color:var(--ok)}.sheet.good .head:before{content:"✓";background:var(--ok)}.sheet.bad .head{color:var(--no)}.sheet.bad .head:before{content:"✕";background:var(--no)}.sheet .why{max-width:62ch;color:var(--ink);margin-top:6px}.sheet.good .btn.primary{background:var(--ok);color:#fff;box-shadow:0 10px 24px -10px var(--ok)}.sheet.bad .btn.primary{background:var(--no);color:#fff;box-shadow:0 10px 24px -10px var(--no)}.sheet .btn.primary{min-width:190px}.results{isolation:isolate;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);text-align:center;margin-top:32px;padding:44px 28px 36px;position:relative;overflow:hidden}.results:before{content:"";z-index:-1;background:var(--accent-grad);opacity:.16;height:200px;position:absolute;inset:0 0 auto}.results h1{font-size:clamp(2.3rem,6vw,3rem);font-weight:700}.results .score{color:var(--ink-2);margin-top:10px;font-size:1.1rem}.results .actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.intro{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);margin-top:18px;padding:clamp(24px,5vw,40px)}.intro-head{align-items:center;gap:18px;display:flex}.intro-head h1{font-size:clamp(2rem,5vw,2.6rem);font-weight:700}.intro-head .sn{color:var(--ink-2);font-size:.92rem;font-weight:600}.intro ul{gap:12px;margin:24px 0 28px;padding:0;list-style:none;display:grid}.intro li{padding-left:36px;position:relative}.intro li:before{content:"✓";background:var(--accent-t);width:24px;height:24px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:.8rem;font-weight:700;display:grid;position:absolute;top:1px;left:0}.intro .best{color:var(--ink-2);margin-bottom:20px}.examhead{align-items:center;gap:14px;margin-bottom:20px;display:flex}.bar-prog{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;flex:1;height:12px;overflow:hidden}.bar-prog i{background:var(--accent-grad);height:100%;transition:width .3s var(--ease);border-radius:999px;display:block}.clock{background:var(--surface);border:1px solid var(--border);font-family:var(--font-display), sans-serif;font-variant-numeric:tabular-nums;border-radius:999px;padding:6px 14px;font-size:1.1rem;font-weight:700}.examnav{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:22px;display:flex}.jump{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.jump button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:12px;width:40px;height:40px;font-weight:600;transition:background .15s,transform .15s}.jump button:hover{transform:translateY(-2px)}.jump button.done{background:var(--accent-t);color:var(--accent-ink);border-color:#0000}.jump button.cur{background:var(--accent-grad);color:var(--on-accent);border-color:#0000}.warn{border-radius:var(--r);background:var(--bee-t);margin-top:18px;padding:16px 18px}.warn .row{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.review{text-align:left;gap:12px;margin-top:36px;display:grid}.review h2{margin-bottom:4px}.rv{border-radius:var(--r);background:var(--surface-2);border-left:6px solid var(--ok);padding:16px 18px}.rv.no{border-left-color:var(--no)}.rv .rq{font-weight:600}.rv .ra{color:var(--ink-2);margin-top:6px}.rv .ra b{color:var(--ink)}.rv .rw{margin-top:6px;font-size:.95rem}.speak{background:var(--accent-grad);width:136px;height:136px;color:var(--on-accent);cursor:pointer;box-shadow:0 20px 40px -16px var(--accent);transition:transform .2s var(--ease);border:none;border-radius:50%;place-items:center;margin:14px auto 26px;display:grid;position:relative}.speak:before,.speak:after{content:"";border:2px solid var(--accent);opacity:0;border-radius:50%;animation:2.6s ease-out infinite ripple;position:absolute;inset:-12px}.speak:after{animation-delay:1.3s}.speak:hover{transform:scale(1.04)}.speak:active{transform:scale(.96)}.speak svg{width:58px;height:58px}.hear{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.clue{border-radius:var(--r);background:var(--accent-t);text-align:center;margin-top:18px;padding:14px 18px;font-size:1.05rem}.ltrs{border-radius:var(--r-lg);background:var(--surface-2);border:2px dashed var(--border-strong);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:92px;margin-top:22px;padding:14px;display:flex}.ltrs .empty{color:var(--ink-3)}.lt{color:#2b1700;width:48px;height:58px;font-family:var(--font-display), sans-serif;text-transform:uppercase;cursor:pointer;animation:tilein .22s var(--ease);background:#fff9ea;border:none;border-radius:12px;place-items:center;font-size:1.7rem;font-weight:700;display:grid;box-shadow:0 4px #e2a43a,0 10px 16px -8px #5a280066}.lt[disabled]{cursor:default}.lt.interim{opacity:.5;cursor:default}.shint{text-align:center;min-height:1.5em;color:var(--ink-2);margin-top:12px;font-size:.95rem}.spellctl{gap:12px;margin-top:16px;display:grid}@media (min-width:560px){.spellctl{grid-template-columns:auto 1fr;align-items:center}}.mic{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;min-height:52px;box-shadow:var(--shadow-sm);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:600;display:inline-flex}.mic svg{width:22px;height:22px}.mic.on{background:var(--no);color:#fff;border-color:#0000;animation:1.4s infinite ring}.mic[disabled]{opacity:.45;cursor:default}.typein{border:2px solid var(--border);background:var(--surface);width:100%;height:52px;color:var(--ink);font:600 1.15rem var(--font-body), system-ui, sans-serif;letter-spacing:.08em;border-radius:999px;padding:0 20px;transition:border-color .15s}.typein:focus{border-color:var(--accent);outline:none}.spellrow{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.cmp{font-family:var(--font-display), sans-serif;letter-spacing:.08em;text-transform:uppercase;font-size:1.6rem;font-weight:700}.cmp .x{color:var(--no);text-decoration:underline;text-decoration-thickness:3px}.eyes{transform-box:fill-box;transform-origin:50%;animation:5s infinite blink}@keyframes blink{50%{opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes bob{0%,to{translate:0}50%{translate:0 -12px}}@keyframes buzz{0%,to{translate:0;rotate:-4deg}25%{translate:-14px -10px;rotate:4deg}50%{translate:6px -18px;rotate:-2deg}75%{translate:12px -4px;rotate:6deg}}@keyframes pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rise{0%{transform:translateY(110%)}to{transform:translateY(-460px)}}@keyframes starpop{0%{transform:scale(0)rotate(-40deg)}to{transform:none}}@keyframes bounce{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes tilein{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}@keyframes ripple{0%{opacity:.5;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}@keyframes ring{0%{box-shadow:0 0 #eb3b6880}70%{box-shadow:0 0 0 14px #eb3b6800}to{box-shadow:0 0 #eb3b6800}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.glyph svg{width:44%;height:44%}.hub-bee{filter:drop-shadow(0 24px 30px #5a280059);width:min(260px,70%);animation:7s ease-in-out infinite buzz}@media (max-width:919px){.hub-bee{display:none}}.account{justify-self:end;align-items:center;gap:10px;min-height:42px;display:flex;position:relative}.account .xp{justify-self:auto}.btn.ghost{box-shadow:none;background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2);transform:none}.btn.block{width:100%}.avatar{cursor:pointer;background:var(--maths-grad);color:#fff;width:42px;height:42px;font-family:var(--font-display), sans-serif;box-shadow:0 0 0 3px var(--surface), var(--shadow-sm);border:none;border-radius:50%;place-items:center;font-size:1.15rem;font-weight:700;display:grid}.menu{z-index:50;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow-lg);animation:rise .18s var(--ease);padding:8px;position:absolute;top:calc(100% + 10px);right:0}.menu-head{border-bottom:1px solid var(--border);margin-bottom:6px;padding:10px 12px 12px}.menu-head b{display:block}.menu-head span{color:var(--ink-3);font-size:.9rem}.menu button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;width:100%;padding:10px 12px;font-weight:600;display:block}.menu button:hover{background:var(--surface-2)}@media (max-width:680px){.hide-sm{display:none}.account .btn.small{padding:0 14px}}.auth{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);max-width:980px;box-shadow:var(--shadow-lg);margin:8px auto 0;display:grid;overflow:hidden}@media (min-width:860px){.auth{grid-template-columns:1fr 1.1fr}}.auth-art{isolation:isolate;background:var(--maths-grad);color:#fff;flex-direction:column;justify-content:center;gap:18px;padding:clamp(28px,5vw,48px);display:flex;position:relative;overflow:hidden}.auth-art:before{content:"";z-index:-1;background:radial-gradient(circle at 90% 0,#fff6,#0000 45%),radial-gradient(circle at 0 100%,#ff8cdc59,#0000 50%);position:absolute;inset:0}.auth-art .mascot{width:76px;height:76px;animation:5s ease-in-out infinite float}.auth-art h2{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700}.auth-art ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.auth-art li{align-items:center;gap:12px;font-weight:500;display:flex}.auth-art li span{background:#fff3;border:1px solid #ffffff59;border-radius:11px;flex:none;place-items:center;width:34px;height:34px;display:grid}.auth-art li svg{width:18px;height:18px}.auth-art .small{opacity:.85}@media (max-width:859px){.auth-art ul,.auth-art .small{display:none}.auth-art{flex-direction:row;align-items:center}.auth-art .mascot{flex:none;width:56px;height:56px}}.auth-form{flex-direction:column;gap:18px;padding:clamp(26px,5vw,48px);display:flex}.auth-form h1{font-size:clamp(1.9rem,4vw,2.3rem);font-weight:700}.auth-form>p.muted{margin-top:-10px}.auth-form a{color:var(--accent-ink);font-weight:600}.small{font-size:.88rem}.field{border:none;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.field>span,.field legend{margin-bottom:6px;padding:0;font-size:.95rem;font-weight:600}.field small{color:var(--ink-3);font-size:.82rem}.field input,.pw{border:2px solid var(--border);background:var(--surface-2);width:100%;height:52px;color:var(--ink);font:500 1.05rem var(--font-body), system-ui, sans-serif;border-radius:14px;padding:0 16px;transition:border-color .15s,background .15s}.field input:focus{border-color:var(--accent);background:var(--surface);outline:none}.field input[aria-invalid=true]{border-color:var(--no);background:var(--no-t)}.pw{align-items:center;padding:0;display:flex;overflow:hidden}.pw:focus-within{border-color:var(--accent);background:var(--surface)}.pw input{background:0 0;border:none;border-radius:0;height:100%}.pw input:focus{background:0 0}.pw:has(input[aria-invalid=true]){border-color:var(--no);background:var(--no-t)}.pw button{height:100%;color:var(--accent-ink);cursor:pointer;background:0 0;border:none;flex:none;padding:0 16px;font-weight:600}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips button{border:2px solid var(--border);background:var(--surface-2);width:44px;height:44px;font-family:var(--font-display), sans-serif;cursor:pointer;border-radius:12px;font-size:1.1rem;font-weight:700;transition:all .15s}.chips button.on{background:var(--maths-grad);color:#fff;border-color:#0000}.check{background:var(--surface-2);cursor:pointer;border:2px solid #0000;border-radius:14px;align-items:flex-start;gap:12px;padding:14px 16px;font-size:.95rem;display:flex}.check input{width:20px;height:20px;accent-color:var(--maths);flex:none;margin:1px 0 0}.check.bad{border-color:var(--no);background:var(--no-t)}.form-error{background:var(--no-t);color:var(--no);border-radius:12px;padding:12px 16px;font-weight:600}.join{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:36px;padding:24px 28px;display:flex}.join b{font-family:var(--font-display), sans-serif;font-size:1.4rem;font-weight:700}.join p{color:var(--ink-2);max-width:56ch;margin-top:4px}.join .row,.nudge .row{flex-wrap:wrap;gap:10px;display:flex}.nudge{border-radius:var(--r-lg);background:var(--accent-t);max-width:520px;margin:22px auto 0;padding:20px 22px}.nudge b{font-family:var(--font-display), sans-serif;font-size:1.15rem;font-weight:600}.nudge p{color:var(--ink-2);margin:4px 0 14px}.nudge .row{justify-content:center}.reward{margin-top:14px;font-size:1.05rem}.xp-gain{color:#4a2600;background:linear-gradient(135deg,#ffd54f,#ffaa2c);border-radius:999px;padding:3px 12px;font-weight:700;display:inline-block}.guest-note{text-decoration:none;display:inline-block}.guest-note:hover{background:#ffffff4d}.stat-chip .avatar-ic{background:var(--maths-grad);color:#fff;font-family:var(--font-display), sans-serif;font-size:1.1rem;font-weight:700}.timer{width:48px;height:48px;color:var(--accent);flex:none;place-items:center;display:grid;position:relative}.timer svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.timer .track{fill:var(--surface);stroke:var(--surface-2);stroke-width:4px}.timer .bar{fill:none;stroke:currentColor;stroke-width:4px;stroke-linecap:round;transition:stroke-dashoffset .2s linear,stroke .3s}.timer>span:not(.sr-only){font-family:var(--font-display), sans-serif;color:var(--ink);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700;position:relative}.timer.warn{color:#f59e0b}.timer.danger{color:var(--no);animation:1s ease-in-out infinite tick-pulse}.timer.danger>span:not(.sr-only){color:var(--no)}.timer.paused{opacity:.7;animation:none}@keyframes tick-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.sound svg{width:22px;height:22px}.sound.off{color:var(--ink-3)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:480px){.qtop{gap:8px}.qtop .count{display:none}}.fx-layer{z-index:70;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fx-piece{left:var(--x);top:var(--y);background:var(--c);width:10px;height:10px;animation:fx-fly 1.15s cubic-bezier(.12, .75, .3, 1) var(--d,0s) both;border-radius:2px;position:absolute}.fx-piece.round{border-radius:50%}.fx-piece.strip{width:6px;height:15px}.fx-piece.fall{animation:fx-fall var(--t,3s) cubic-bezier(.3, .1, .6, 1) var(--d,0s) both}.fx-ring{left:var(--x);top:var(--y);border:5px solid var(--ok);border-radius:50%;width:28px;height:28px;margin:-14px 0 0 -14px;animation:.65s ease-out both fx-ring;position:absolute}.fx-label{left:var(--x);top:var(--y);white-space:nowrap;color:#4a2600;font-family:var(--font-display), sans-serif;background:linear-gradient(135deg,#ffd54f,#ffaa2c);border-radius:999px;padding:6px 16px;font-size:1.5rem;font-weight:700;animation:1.3s cubic-bezier(.2,.8,.2,1) both fx-label;position:absolute;box-shadow:0 12px 24px -10px #a0500099}@keyframes fx-fly{0%{opacity:1;transform:translate(-50%,-50%)scale(.3)rotate(0)}75%{opacity:1}to{transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 40px)) scale(1) rotate(var(--rot));opacity:0}}@keyframes fx-fall{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{transform:translate(var(--dx), 105vh) rotate(var(--rot));opacity:0}}@keyframes fx-ring{0%{opacity:1;transform:scale(.4)}to{opacity:0;border-width:1px;transform:scale(5.5)}}@keyframes fx-label{0%{opacity:0;transform:translate(-50%,-40%)scale(.5)}18%{opacity:1;transform:translate(-50%,-110%)scale(1.12)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-260%)scale(1)}}.qhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.qhead .qlabel{margin-bottom:0}.read{min-height:38px;color:var(--accent-ink);padding:0 14px;font-size:.9rem}.read svg{width:18px;height:18px}.pat{margin:0 .08em;font-family:system-ui,sans-serif;font-size:1.35em;line-height:1;display:inline-block}.opt .pat{font-size:1.6em}.fig.wide{max-width:440px}.path{max-width:760px;margin:0 auto;padding:0;list-style:none;position:relative}.path:before{content:"";background:repeating-linear-gradient(to bottom, var(--border-strong) 0 10px, transparent 10px 18px);border-radius:2px;width:4px;position:absolute;top:30px;bottom:40px;left:27px}.loading-path{opacity:.5}.node{padding:0 0 16px;position:relative}.path-strand{font-family:var(--font-display), sans-serif;color:var(--ink-2);align-items:center;gap:10px;margin:18px 0 14px 72px;font-size:1.15rem;font-weight:600;display:flex}.node:first-child .path-strand,.path-term+.node .path-strand{margin-top:0}.path-term{z-index:1;background:var(--bg,var(--surface-2));border-radius:14px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:30px 0 14px;padding:10px 16px;display:flex;position:relative}.path-term:first-child{margin-top:0}.path-term span{font-family:var(--font-display), sans-serif;font-size:1.5rem;font-weight:700}.path-term small{color:var(--ink-3);font-weight:500}.path-term .term-now{background:var(--accent-grad);color:var(--on-accent);border-radius:999px;padding:3px 10px;font-size:.78rem}.path-term.now{box-shadow:inset 4px 0 0 var(--accent)}.path-strand .sw{background:var(--c);border-radius:4px;width:12px;height:12px}.node-row{align-items:center;gap:14px;display:flex}.node-dot{z-index:1;background:var(--surface);border:3px solid var(--border-strong);width:58px;height:58px;color:var(--ink-3);font-family:var(--font-display), sans-serif;border-radius:50%;flex:none;place-items:center;font-size:1.3rem;font-weight:700;display:grid;position:relative}.node-dot svg{width:24px;height:24px}.node.done .node-dot{background:var(--ok);border-color:var(--ok);color:#fff}.node.current .node-dot{background:var(--accent-grad);color:var(--on-accent);box-shadow:0 0 0 6px var(--accent-t);border-color:#0000;animation:2.2s ease-in-out infinite node-pulse}.node.locked .node-dot{background:var(--surface-2)}@keyframes node-pulse{0%,to{box-shadow:0 0 0 6px var(--accent-t)}50%{box-shadow:0 0 0 12px var(--accent-t)}}.node-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);min-width:0;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s;flex:1;align-items:center;gap:16px;padding:14px 18px 14px 14px;text-decoration:none;display:flex}a.node-card:hover{box-shadow:var(--shadow-md);border-color:var(--c,var(--accent));transform:translate(4px)}.node.current .node-card{border:2px solid var(--accent);box-shadow:var(--shadow-md)}.node.locked .node-card{background:var(--surface-2);box-shadow:none;opacity:.75}.node.locked .gl{filter:grayscale();opacity:.6}.node-body{flex-direction:column;min-width:0;display:flex}.node-body small{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:.75rem;font-weight:600}.node-body .tt{font-family:var(--font-display), sans-serif;font-size:1.16rem;font-weight:600;line-height:1.2}.node-body .sub{color:var(--ink-3);align-items:center;gap:8px;margin-top:4px;font-size:.86rem;display:flex}.node-card .chev{width:20px;height:20px;color:var(--ink-3);flex:none;margin-left:auto}.node.exam .node-card{background:var(--dark-card);color:#fff;border-color:#0000}.node.exam .node-card .icon{background:#ffffff1f;border-radius:16px;place-items:center;width:56px;height:56px;display:grid}.node.exam .node-card .icon svg{width:28px;height:28px}.node.exam .node-body small,.node.exam .node-body .sub{color:#ffffffb3}.node.exam.locked .node-card{opacity:.6}.node.term-exam .node-card{background:var(--accent-t);color:var(--ink);border:2px dashed var(--accent)}.node.term-exam .node-card .icon{background:var(--surface);color:var(--accent-ink)}.node.term-exam .node-body small,.node.term-exam .node-body .sub{color:var(--ink-2)}.node.term-exam.current .node-card{border-style:solid}.node.term-exam.done .node-card{border:1px solid var(--border);background:var(--surface)}.ok-text{color:var(--ok);font-weight:600}.go-text{color:var(--accent-ink);font-weight:700}@media (max-width:520px){.path:before{left:21px}.node-dot{width:46px;height:46px;font-size:1.1rem}.path-strand{margin-left:60px}.node-card{gap:12px;padding:12px}.node-card .gl{border-radius:14px;width:48px;height:48px;font-size:1.1rem}}.locked-panel{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);text-align:center;margin-top:18px;padding:clamp(28px,6vw,48px)}.locked-panel h1{margin-top:14px;font-size:clamp(1.8rem,5vw,2.4rem);font-weight:700}.locked-panel p{max-width:48ch;color:var(--ink-2);margin:10px auto 24px}.lock-badge{background:var(--surface-2);width:76px;height:76px;color:var(--ink-3);border-radius:50%;place-items:center;display:inline-grid}.lock-badge svg{width:34px;height:34px}.unlock{border-radius:var(--r-lg);text-align:left;flex-wrap:wrap;align-items:center;gap:14px;max-width:560px;margin:20px auto 0;padding:16px 18px;display:flex}.unlock.ok{background:var(--ok-t)}.unlock.no{background:var(--surface-2)}.unlock>div{flex:220px}.unlock b{font-family:var(--font-display), sans-serif;font-size:1.2rem;font-weight:700}.unlock.ok b{color:var(--ok)}.unlock p{color:var(--ink-2);margin-top:2px;font-size:.95rem}.unlock-ic{background:var(--surface);width:44px;height:44px;color:var(--ink-3);border-radius:50%;flex:none;place-items:center;display:grid}.unlock.ok .unlock-ic{background:var(--ok);color:#fff}.unlock-ic svg{width:22px;height:22px}.nexttopic svg,.lock-line svg{vertical-align:-2px;width:16px;height:16px}.lock-line{align-items:center;gap:6px;display:inline-flex}.lcard.locked{background:var(--surface-2);box-shadow:none;opacity:.75;cursor:default}.lcard.locked:hover{box-shadow:none;transform:none}.lcard.locked .tiles span:not(.lock-tile){filter:grayscale();opacity:.6}.lcard.current{border:2px solid var(--accent)}.lcard .tiles .lock-tile{background:var(--surface);width:40px;height:40px;color:var(--ink-3);box-shadow:none;border-radius:50%;place-items:center;margin-left:auto;display:grid}.lock-tile svg{width:18px;height:18px}.qtext .passage{border-radius:var(--r);border-left:5px solid var(--accent);background:var(--surface-2);color:var(--ink);font:400 1.05rem/1.65 var(--font-body), system-ui, sans-serif;margin-bottom:16px;padding:16px 18px;display:block}.qtext .ask{display:block}.puzzle .qtext .passage{font-size:.95rem}@media (max-width:680px){.switch a{padding:0 10px 0 5px;font-size:.85rem}.switch .dot{width:24px;height:24px}}@media (min-width:1100px){.worlds{grid-template-columns:repeat(4,1fr);gap:20px}.world h2{font-size:clamp(1.75rem,2.3vw,2.3rem)!important}}@media (min-width:760px){.world{justify-content:flex-start;min-height:0;padding:200px 24px 100px}.world h2{white-space:nowrap;font-size:2.3rem}.world p{font-size:1rem;line-height:1.5}.world .meta{gap:6px;margin-top:16px}.world .glass-pill{padding:5px 11px;font-size:.78rem}.world .art{height:190px;inset:0 0 auto}.world .float-chip,.world .letter-tile{width:calc(var(--s,84px) * .78);height:calc(var(--s,84px) * .78);font-size:calc(var(--s,84px) * .32)}.world .letter-tile{font-size:calc(var(--s,80px) * .38)}.world .bee{width:76px;top:8%}.world .go{width:54px;height:54px;bottom:24px;left:24px;right:auto}}.read.on{background:var(--accent-t);border-color:var(--accent)}.read.on svg{animation:1s ease-in-out infinite tick-pulse}.read.nudge-tap{background:var(--accent-grad);color:var(--on-accent);border-color:#0000;animation:1.2s ease-in-out infinite tick-pulse}.stage-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px;display:grid}.stage-tabs button{text-align:left;cursor:pointer;background:var(--surface);border:2px solid var(--border);color:var(--ink);font:inherit;border-radius:16px;gap:2px;padding:12px 16px;transition:border-color .15s,background .15s;display:grid}.stage-tabs button:hover{border-color:var(--accent)}.stage-tabs button.on{background:var(--accent-t);border-color:var(--accent)}.stage-tabs b{font-family:var(--font-display), sans-serif;font-size:1.15rem}.stage-tabs small{color:var(--ink-3);font-size:.82rem}@media (max-width:520px){.stage-tabs{gap:6px}.stage-tabs button{padding:10px}.stage-tabs small{font-size:.72rem}}.lcard .foot .lock-line{align-items:center;gap:6px;display:inline-flex}.lcard .lvl-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.lcard .lvl-row .diff{flex:none;gap:3px}.lcard .lvl-row .diff i{border-radius:3px;width:10px;height:6px}@media (max-width:480px){.switch a:not(.on){padding:0 5px}.switch a:not(.on) .nm{display:none}}.no-text{color:var(--no);font-weight:600}.big{font-size:1.15rem}.compete-start{gap:18px;margin-top:28px;display:grid}@media (min-width:860px){.compete-start{grid-template-columns:1fr 1fr}}.compete-card{flex-direction:column;gap:16px;padding:clamp(20px,4vw,30px);display:flex}.compete-card h2{font-size:1.5rem}.compete-card .actions{flex-wrap:wrap;gap:10px;display:flex}.compete-card>.btn{align-self:flex-start}.field select{border:2px solid var(--border);background:var(--surface-2);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:14px;padding:0 14px}.field select:focus{border-color:var(--accent);background:var(--surface);outline:none}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.code-input{font-family:var(--font-display), sans-serif;letter-spacing:.3em;text-align:center;font-size:1.6rem!important}.check input{accent-color:var(--accent)}.compete-notice{flex-direction:column;align-items:flex-start;gap:14px;margin-top:24px;padding:clamp(22px,5vw,36px);display:flex}.compete-notice h1{font-size:clamp(1.6rem,4vw,2.1rem)}.compete-join{flex-direction:column;gap:14px;width:100%;display:flex}.compete-join .btn{align-self:flex-start}.compete{gap:18px;max-width:880px;display:grid}.compete-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.compete-top h1{margin-top:4px;font-size:clamp(1.5rem,4vw,2.2rem)}.compete-top .sn{color:var(--ink-3);font-size:.9rem;font-weight:600}.compete .card{padding:clamp(18px,4vw,28px)}.compete .card h2{margin-bottom:12px;font-size:1.35rem}.compete .warn{margin-top:0}.lobby{gap:18px;display:grid}@media (min-width:760px){.lobby{grid-template-columns:1fr 1.2fr;align-items:start}}.join-code{text-align:center;gap:8px;display:grid}.join-code .code{font-family:var(--font-display), sans-serif;letter-spacing:.12em;color:var(--accent-ink);font-size:clamp(2.8rem,10vw,4.2rem);font-weight:700;line-height:1.1}.lobby-players{gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.lobby-players li{background:var(--surface-2);border-radius:14px;align-items:center;gap:12px;padding:8px 10px;animation:.3s ease-out pop-in;display:flex}.lobby-players li.away{opacity:.55}.lobby-players .nm{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.lobby-players small{color:var(--ink-3);font-weight:500}.lobby-players .host-tag{background:var(--accent-t);color:var(--accent-ink);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:700}.avatar-dot{background:var(--bee-grad);color:#2b1700;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.kick{width:32px;height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;font-size:1rem}.kick:hover{background:var(--no-t);color:var(--no)}.btn.big{justify-content:center;width:100%;min-height:56px;font-size:1.05rem}.waiting{text-align:center;color:var(--ink-2);font-weight:600;animation:1.6s ease-in-out infinite tick-pulse}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}}.watch-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.watch-head p{font-weight:600}.watch-head .qlabel{margin:0}.locked-in{background:var(--ok-t);color:var(--ok);text-align:center;border-radius:14px;margin-top:14px;padding:12px 14px;font-weight:600}.answer-status{flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.answer-status li{background:var(--surface-2);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-weight:600;display:inline-flex}.answer-status li span{color:var(--ink-3);font-weight:500}.answer-status li.done{background:var(--accent-t)}.answer-status li.right{background:var(--ok-t);color:var(--ok)}.answer-status li.wrong{background:var(--no-t);color:var(--no)}.answer-status li.right span,.answer-status li.wrong span{color:inherit;font-weight:700}.reveal,.standings,.finished{text-align:center;justify-items:center;gap:10px;display:grid}.reveal .cmp{font-size:clamp(2rem,7vw,2.8rem)}.reveal .answer-status{justify-content:center}.standings h2,.finished h2{font-size:clamp(1.6rem,5vw,2.2rem)!important}.standings.me-out{background:var(--no-t)}.finished .trophy{background:var(--bee-grad);color:#2b1700;border-radius:50%;place-items:center;width:84px;height:84px;animation:.5s ease-out pop-in;display:grid}.finished .trophy svg{width:44px;height:44px}.finished .actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.board{overflow-x:auto}.board table{border-collapse:collapse;width:100%;font-size:.95rem}.board th{text-align:left;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:0 8px 8px;font-size:.78rem;font-weight:700}.board td{border-top:1px solid var(--border);padding:10px 8px;font-weight:600}.board td:nth-child(n+2),.board th:nth-child(n+2){text-align:center}.board tr.me td{background:var(--accent-t)}.board tr.out td{color:var(--ink-3);font-weight:500}.board tr.just-out td{animation:.4s ease-out pop-in}.board small{font-weight:500}@media (max-width:520px){.board table{font-size:.85rem}.board td,.board th{padding-left:4px;padding-right:4px}}.compete-promo{isolation:isolate;border-radius:var(--r-lg);background:var(--accent-grad);color:var(--on-accent);box-shadow:var(--shadow-md);align-items:center;gap:18px;margin-top:28px;padding:18px 20px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.compete-promo:before{content:"";z-index:-1;background:radial-gradient(circle at 92% -20%,#ffffff73,#0000 45%);position:absolute;inset:0}.compete-promo:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.compete-promo .ic{background:#ffffff47;border-radius:18px;flex:none;place-items:center;width:56px;height:56px;animation:4s ease-in-out infinite bob;display:grid}.compete-promo .ic svg{width:30px;height:30px}.compete-promo .cp-text{flex:1;gap:2px;min-width:0;display:grid}.compete-promo b{font-family:var(--font-display), sans-serif;font-size:1.3rem;line-height:1.2}.compete-promo .cp-text span{opacity:.9}.compete-promo .cp-go{color:#16133a;box-shadow:var(--shadow-sm);background:#fff;border-radius:999px;flex:none;align-items:center;gap:6px;padding:10px 16px;font-weight:700;display:inline-flex}.compete-promo .cp-go svg{width:18px;height:18px}@media (max-width:560px){.compete-promo{flex-wrap:wrap;gap:12px 14px}.compete-promo .cp-text{flex-basis:calc(100% - 74px)}.compete-promo .cp-go{flex:100%;justify-content:center}}.lb-controls{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-top:28px;display:flex}.lb-tabs{flex:360px;max-width:560px;margin:0}.lb-tabs a{color:inherit;background:var(--surface);border:2px solid var(--border);text-align:center;border-radius:16px;place-items:center;padding:12px 10px;text-decoration:none;display:grid}.lb-tabs a:hover{border-color:var(--accent)}.lb-tabs a.on{background:var(--accent-t);border-color:var(--accent)}.lb-stage-form{align-items:flex-end;gap:8px;display:flex}.lb-stage-form .field select{min-width:150px}.lb-me{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);margin:22px 0 14px;padding:14px 18px;font-size:1.05rem}.lb-me a{color:var(--accent-ink);font-weight:600}.lb-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lb-row{background:var(--surface);border:1px solid var(--border);border-radius:16px;align-items:center;gap:14px;padding:12px 16px;display:flex}.lb-row.top{border-width:2px}.lb-row.r1{background:linear-gradient(90deg, #ffd54f47, var(--surface) 60%);border-color:#f5b700}.lb-row.r2{border-color:#b8c2cc}.lb-row.r3{border-color:#e0a070}.lb-row.me{box-shadow:0 0 0 3px var(--accent)}.lb-rank{text-align:center;width:34px;font-family:var(--font-display), sans-serif;color:var(--ink-2);flex:none;font-size:1.1rem;font-weight:700}.lb-row.top .lb-rank{font-size:1.5rem}.lb-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.lb-name small{color:var(--ink-3);font-weight:500}.lb-stage{background:var(--surface-2);white-space:nowrap;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem}.lb-xp{font-family:var(--font-display), sans-serif;flex:none;font-size:1.15rem;font-weight:700}.lb-xp small{color:var(--ink-3);font-size:.75rem}.lb-gap{text-align:center;color:var(--ink-3);font-size:1.4rem;line-height:1}.lb-empty{text-align:center;color:var(--ink-2);justify-items:center;gap:10px;padding:32px;display:grid}.lb-empty svg{width:40px;height:40px;color:var(--accent)}.lb-list.compact .lb-row{padding:9px 14px}.more-link{color:var(--accent-ink);align-items:center;gap:6px;font-weight:600;display:inline-flex}.more-link svg{width:16px;height:16px}a.xp{color:inherit;text-decoration:none;transition:transform .15s}a.xp:hover{transform:translateY(-1px)}.menu a[role=menuitem]{color:inherit;border-radius:10px;padding:10px 12px;font-weight:600;text-decoration:none;display:block}.menu a[role=menuitem]:hover{background:var(--surface-2)}@media (max-width:520px){.lb-row{gap:10px;padding:10px 12px}.lb-stage{display:none}.lb-stage-form{width:100%}.lb-stage-form .field{flex:1}}.plan{border-radius:var(--r-lg);background:var(--surface);width:min(560px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);box-shadow:var(--shadow-lg);border:none;margin:auto;padding:0;overflow-x:hidden}.plan::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d0b228c}.plan[open]{animation:plan-in .3s var(--ease)}@keyframes plan-in{0%{opacity:0;transform:translateY(16px)scale(.98)}}.plan-body{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px;display:grid}.plan-body>*{min-width:0}.plan h3{margin-bottom:10px;font-size:1.05rem}.plan-head{align-items:center;gap:14px;display:flex}.plan-head .mascot{flex:none;width:52px;height:52px}.plan-head h2{font-size:1.3rem;line-height:1.25}.plan-head>div{flex:1;min-width:0}.plan-x{background:var(--surface-2);width:36px;height:36px;color:var(--ink-2);cursor:pointer;border:none;border-radius:10px;flex:none;align-self:flex-start;font-size:1.4rem;line-height:1}.plan-target{background:var(--accent-t);border-radius:18px;padding:18px}.plan-target-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.plan-target-row b{font-family:var(--font-display), sans-serif;font-size:1.8rem}.plan-target-row b span{color:var(--ink-2);font-size:1rem;font-weight:500}.plan-target-row>span{color:var(--accent-ink);font-weight:600}.plan-bar{background:var(--surface);border-radius:999px;height:12px;margin:10px 0;overflow:hidden}.plan-bar i{border-radius:inherit;background:var(--accent-grad);height:100%;transition:width .6s var(--ease);display:block}.plan-target p{font-weight:600}.plan-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.plan-stats div{background:var(--surface-2);text-align:center;border-radius:14px;gap:2px;padding:12px;display:grid}.plan-stats b{font-family:var(--font-display), sans-serif;font-size:1.4rem}.plan-stats span{color:var(--ink-2);font-size:.78rem}.plan-tasks,.plan-done{gap:8px;margin:0;padding:0;list-style:none;display:grid}.plan-tasks li{border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.plan-tasks li.done{background:var(--ok-t);border-color:#0000}.plan-tasks .tick{border:2px solid var(--border);color:#fff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.plan-tasks li.done .tick{background:var(--ok);border-color:var(--ok)}.plan-tasks .tick svg{width:14px;height:14px}.plan-tasks .what{flex:1;gap:2px;min-width:0;display:grid}.plan-tasks .what small{color:var(--ink-2)}.plan-tasks .btn{white-space:nowrap;flex:none}.xp-chip{background:var(--ok);color:#fff;border-radius:999px;flex:none;padding:4px 10px;font-size:.8rem;font-weight:600}.plan-done li{background:var(--surface-2);border-radius:10px;justify-content:space-between;gap:12px;padding:8px 12px;font-size:.95rem;display:flex}.plan-done b{color:var(--ok);white-space:nowrap}.plan-foot{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (max-width:520px){.plan-body{gap:18px;padding:18px}.plan-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-tasks li{flex-wrap:wrap}.plan-tasks .btn{width:100%}.plan-foot .btn{flex:1}}.profile-stats{margin-top:24px}.empty-note{border-radius:var(--r-lg);background:var(--surface);border:1px dashed var(--border);color:var(--ink-2);padding:22px}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.cert-card{border-radius:var(--r-lg);color:var(--ink);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease), box-shadow .25s var(--ease);background:linear-gradient(160deg,#fff8e1,#fff 60%);border:1px solid #f3d98b;justify-items:start;gap:4px;padding:20px;text-decoration:none;display:grid}.cert-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.cert-card .seal{color:#4a2600;background:linear-gradient(135deg,#ffd54f,#ffaa2c);border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:6px;font-size:1.3rem;display:grid}.cert-card span:not(.seal){color:#5b4a1f;font-weight:500}.cert-card small{color:#8a7a4e}.cert-tools{justify-content:space-between;gap:12px;margin-bottom:20px;display:flex}.cert{aspect-ratio:297/210;color:#1e1a3c;width:100%;max-width:1000px;box-shadow:var(--shadow-lg);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:linear-gradient(135deg,#7b5bff,#37b5ff 50%,#ffaa2c);border-radius:12px;margin:0 auto;padding:2.4%;container-type:inline-size}.cert-frame{text-align:center;outline-offset:-1.6cqw;background:#fffdf6;border-radius:6px;outline:2px solid #e9c766;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:4cqw 6cqw;display:flex;position:relative}.cert-mascot{width:9cqw;height:9cqw;margin-bottom:1cqw}.cert-kicker{letter-spacing:.3em;text-transform:uppercase;color:#8a6d1f;font-size:1.5cqw;font-weight:600}.cert-title{background:linear-gradient(135deg,#5b3fe6,#2f8fe0);color:#0000;-webkit-background-clip:text;background-clip:text;margin:1cqw 0 2cqw;font-size:5.6cqw;line-height:1.05}.cert-lead{color:#4a4568;font-size:1.8cqw}.cert-name{font-family:var(--font-display), sans-serif;border-bottom:2px solid #e9c766;margin:1.2cqw 0;padding:0 4cqw .6cqw;font-size:5cqw;font-weight:700}.cert-text{color:#2d2850;max-width:80cqw;font-size:1.8cqw;line-height:1.6}.cert-foot{grid-template-columns:1fr auto 1fr;align-items:end;gap:4cqw;width:100%;margin-top:auto;padding-top:2cqw;display:grid}.cert-foot>div{gap:.4cqw;font-size:1.6cqw;display:grid}.cert-line{font-family:var(--font-display), sans-serif;border-bottom:1.5px solid #1e1a3c;padding:0 1cqw .6cqw;font-size:2cqw;font-weight:600}.cert-foot small{color:#6b6688;font-size:1.3cqw}.cert-seal{color:#4a2600;background:radial-gradient(circle,#ffe082 0 55%,#ffc53d 56% 100%);border-radius:50%;place-content:center;width:12cqw;height:12cqw;display:grid;box-shadow:0 0 0 .6cqw #fff3c4,0 0 0 .9cqw #e9c766}.cert-seal span{font-size:4.4cqw;line-height:1}.cert-seal small{color:#4a2600;font-size:1.3cqw;font-weight:700}.plan-cert{color:#4a2600;background:linear-gradient(135deg,#fff3c4,#ffe082);border-radius:16px;align-items:center;gap:12px;padding:14px 16px;font-weight:600;text-decoration:none;display:flex}.plan-cert span:first-child{font-size:1.6rem}.plan-cert small{font-weight:500;display:block}@media print{@page{size:A4 landscape;margin:0}html,body{background:#fff!important}.site-header,.site-footer,.no-print,dialog{display:none!important}.page{padding:0!important}.wrap{max-width:none!important;padding:0!important}.cert{width:297mm;max-width:none;height:210mm;box-shadow:none;border-radius:0}.cert-title{color:#4f3bd6;background:0 0}}:root{--play:#12a87a;--play-ink:#0b6b4f;--play-t:#ddf8ee;--play-grad:linear-gradient(135deg, #34d399 0%, #22c1c3 55%, #37b5ff 100%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--play:#34d399;--play-ink:#7cebc5;--play-t:#0f3a31}}:root[data-theme=dark]{--play:#34d399;--play-ink:#7cebc5;--play-t:#0f3a31}[data-section=games]{--accent:var(--play);--accent-ink:var(--play-ink);--accent-t:var(--play-t);--accent-grad:var(--play-grad);--on-accent:#06281d}.switch .dot.g{background:var(--play-grad);color:#06281d;font-size:.7rem}.switch .dot.c{color:#4a2600;background:linear-gradient(135deg,#ffd54f,#ff7845)}.switch .dot.c svg{width:14px;height:14px}.games-banner{border-radius:var(--r-xl);background:var(--play-grad);color:#06281d;box-shadow:var(--shadow-lg);transition:transform .45s var(--ease);grid-template-columns:auto 1fr;align-items:center;gap:22px;margin-top:24px;padding:24px 100px 24px 24px;text-decoration:none;display:grid;position:relative}.games-banner:hover{transform:translateY(-6px)}.games-banner>span:nth-child(2){gap:4px;display:grid}.games-banner .kicker{text-transform:uppercase;letter-spacing:.1em;opacity:.8;font-size:.85rem;font-weight:600}.games-banner b{font-family:var(--font-display), sans-serif;font-size:clamp(1.6rem,3.5vw,2.2rem)}.games-banner-art{grid-template-columns:repeat(2,56px);gap:8px;display:grid}.games-banner-art span{background:#ffffff59;border-radius:18px;place-items:center;width:56px;height:56px;font-size:1.8rem;animation:5s ease-in-out infinite bob;display:grid}.games-banner-art span:nth-child(2){animation-delay:-1.2s}.games-banner-art span:nth-child(3){animation-delay:-2.4s}.games-banner-art span:nth-child(4){animation-delay:-3.6s}.games-banner .go{color:#16133a;background:#fff;border-radius:50%;place-items:center;width:56px;height:56px;display:grid;position:absolute;top:50%;right:24px;translate:0 -50%}.games-banner .go svg{width:24px;height:24px}@media (max-width:600px){.games-banner{grid-template-columns:1fr;padding:22px 22px 90px}.games-banner-art{grid-template-columns:repeat(4,48px)}.games-banner-art span{width:48px;height:48px;font-size:1.5rem}.games-banner .go{top:auto;bottom:20px;translate:none}}.game-stage-chips button{gap:2px;width:auto;min-width:92px;height:auto;padding:10px 16px;display:grid}.game-stage-chips button small{font-family:var(--font-body), sans-serif;opacity:.8;font-size:.75rem;font-weight:500}.game-stage-chips button.on{background:var(--play-grad);color:#06281d}.game-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin-top:22px;display:grid}.game-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--ink);transition:transform .25s var(--ease), box-shadow .25s var(--ease);align-content:start;gap:8px;padding:22px;text-decoration:none;display:grid}.game-card:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)rotate(-.5deg)}.game-card b{font-family:var(--font-display), sans-serif;font-size:1.4rem}.game-card>span:not(.game-emoji){color:var(--ink-2);font-size:.95rem}.game-card small{color:var(--accent-ink);margin-top:6px;font-weight:600}.game-emoji{background:var(--accent-t);border-radius:22px;place-items:center;width:72px;height:72px;font-size:2.4rem;display:grid}.game-feed .game-emoji{background:#ffe4e9}.game-balloons .game-emoji{background:#fff1d6}.game-words .game-emoji{background:#e8e3ff}.game-frog .game-emoji{background:#ddf8ee}.wardrobe{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);gap:22px;padding:24px;display:grid}@media (min-width:760px){.wardrobe{grid-template-columns:240px 1fr;align-items:center}}.wardrobe-numo{text-align:center;justify-items:center;gap:10px;display:grid}.wardrobe-items{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;display:grid}.outfit{border:2px solid var(--border);background:var(--surface-2);color:var(--ink);cursor:pointer;font:inherit;border-radius:16px;justify-items:center;gap:2px;padding:12px 8px;display:grid}.outfit span{font-size:2rem;line-height:1.2}.outfit b{font-size:.9rem}.outfit small{color:var(--ink-3);font-size:.75rem}.outfit.on{border-color:var(--accent);background:var(--accent-t)}.outfit.locked{opacity:.55;cursor:default}.numo-av{width:84px;height:84px;scale:var(--full,1);transition:scale .4s var(--ease);flex:none;display:inline-block;position:relative}.numo-av.big{width:clamp(110px,26vw,150px);height:clamp(110px,26vw,150px)}.numo-av svg{width:100%;height:100%;overflow:visible}.numo-av .wear{pointer-events:none;line-height:1;position:absolute;left:50%;translate:-50%}.numo-av .wear.head{font-size:2.6em;top:-26%}.numo-av .wear.face{font-size:2.1em;top:34%}.numo-av .wear.neck{font-size:1.5em;top:80%}.numo-av{font-size:16px}.numo-av.big{font-size:clamp(21px,5vw,28px)}.numo-av.yum{animation:.9s ease-in-out munch}.numo-av.bleh{animation:.6s ease-in-out shake-no}.numo-av.dance{animation:1.6s ease-in-out infinite dance}.numo-av .say-bleh,.numo-av .say-yum{font-family:var(--font-display), sans-serif;white-space:nowrap;animation:pop-in .25s var(--ease);border-radius:12px 12px 12px 2px;padding:4px 10px;font-size:.55em;font-weight:700;position:absolute;top:-6%;right:-28%}.numo-av .say-bleh{color:#c2185b;background:#ffe4e9}.numo-av .say-yum{color:#0b6b4f;background:#ddf8ee}@keyframes munch{0%,to{transform:scale(1)}20%{transform:scale(1.12,.9)}40%{transform:scale(.94,1.06)}60%{transform:scale(1.08,.94)}}@keyframes shake-no{0%,to{transform:rotate(0)}20%{transform:rotate(-9deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(4deg)}}@keyframes dance{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-8px)rotate(4deg)}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.game,.game-start,.game-end{max-width:760px;margin:0 auto}.game-start,.game-end{text-align:center;border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-lg);justify-items:center;gap:14px;padding:clamp(24px,5vw,44px);display:grid}.game-start h1,.game-end h1{font-size:clamp(2rem,6vw,2.8rem)}.game-start p{max-width:42ch;font-size:1.1rem}.game-go{min-width:220px;min-height:64px;font-size:1.3rem}.game-stars{gap:6px;font-size:3rem;line-height:1;display:flex}.game-stars span{color:var(--border)}.game-stars span.on{color:#ffb300;animation:pop-in .4s var(--ease) both}.game-stars span.on:nth-child(2){animation-delay:.15s}.game-stars span.on:nth-child(3){animation-delay:.3s}.game-score{font-size:1.1rem;font-weight:600}.game-end-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.unlock-outfit{background:var(--accent-t);text-align:left;animation:pop-in .4s var(--ease);border-radius:16px;align-items:center;gap:12px;padding:12px 18px;display:flex}.unlock-outfit>span:first-child{font-size:2.2rem}.unlock-outfit small{color:var(--ink-2);display:block}.game-top{align-items:center;gap:10px;margin-bottom:18px;display:flex}.game-dots{flex:1;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.game-dots li{background:var(--surface-2);border:2px solid var(--border);border-radius:50%;width:14px;height:14px;transition:all .2s}.game-dots li.now{border-color:var(--accent);scale:1.25}.game-dots li.ok{background:var(--ok);border-color:var(--ok)}.game-dots li.try{background:#ffb300;border-color:#ffb300}.game-score-chip{color:#4a2600;background:#fff3c4;border-radius:999px;padding:6px 12px;font-weight:700}.game-hint{text-align:center;min-height:1.6em;color:var(--ink-2);margin-top:16px;font-size:1.05rem;font-weight:600}.game-prompt{text-align:center;justify-content:center;align-items:center;gap:12px;display:flex}.game-prompt p{font-family:var(--font-display), sans-serif;font-size:clamp(1.4rem,4.5vw,2rem);font-weight:700}.speak-btn{border:2px solid var(--border);background:var(--surface);cursor:pointer;border-radius:50%;flex:none;width:48px;height:48px;font-size:1.3rem}.speak-btn:hover{border-color:var(--accent)}@media (max-width:520px){.game-dots{gap:4px}.game-dots li{width:11px;height:11px}}.feed-stage{justify-content:center;align-items:center;gap:16px;display:flex}.feed-bubble{background:var(--surface);box-shadow:var(--shadow-md);border-radius:22px 22px 22px 6px;align-items:center;gap:10px;padding:16px 20px;display:flex;position:relative}.feed-q{font-family:var(--font-display), sans-serif;white-space:nowrap;font-size:clamp(1.6rem,6vw,2.4rem);font-weight:700}.feed-pic{background:var(--surface-2);border-radius:20px;flex-wrap:wrap;justify-content:center;gap:8px 14px;max-width:560px;margin:20px auto 0;padding:14px;font-size:clamp(1.7rem,6vw,2.3rem);display:flex}.feed-group{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:inline-flex}.feed-group .gone{opacity:.25;filter:grayscale();position:relative}.feed-plus{color:var(--ink-2);margin:0 6px;font-size:.9em}.plates{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px;display:grid}@media (max-width:520px){.plates{grid-template-columns:repeat(2,1fr)}}.plate{aspect-ratio:1;cursor:pointer;font-family:var(--font-display), sans-serif;color:#1e1a3c;transition:transform .2s var(--ease);background:radial-gradient(circle,#fff 0 52%,#f1eeff 53% 66%,#fff 67% 100%);border:none;border-radius:50%;place-items:center;font-size:clamp(1.8rem,7vw,2.6rem);font-weight:700;display:grid;box-shadow:0 8px #dad4ff,0 18px 30px -12px #31248c59}.plate:hover:not(:disabled){transform:translateY(-4px)rotate(-3deg)}.plate.no{opacity:.35;animation:.5s shake-no}.plate.eaten{animation:eat .8s var(--ease) forwards}@keyframes eat{40%{transform:translateY(-60px)scale(.8)}to{opacity:0;transform:translateY(-120px)scale(0)}}.sky{border-radius:var(--r-lg);background:linear-gradient(#bfe6ff 0%,#e7f6ff 70%,#ddf8ee 100%);height:clamp(340px,55vh,460px);margin-top:16px;position:relative;overflow:hidden}.balloon{left:var(--x);cursor:pointer;width:clamp(70px,17vw,96px);animation:9s linear infinite rise;animation-delay:var(--d);background:0 0;border:none;padding:0;position:absolute;bottom:0}.balloon-body{aspect-ratio:5/6;background:var(--c);color:#fff;font-family:var(--font-display), sans-serif;text-shadow:0 1px 2px #0000004d;border-radius:50% 50% 48% 48%;place-items:center;padding:4px;font-size:clamp(1.15rem,4.4vw,1.4rem);font-weight:700;line-height:1.1;display:grid;box-shadow:inset -8px -10px #0000001f,inset 8px 8px #ffffff59}.balloon-string{background:#1e1a3c59;width:2px;height:34px;margin:0 auto;display:block}.balloon.wobble .balloon-body{animation:.5s wobble}.balloon.popped .balloon-body,.balloon.popped .balloon-string{visibility:hidden}.balloon.popped{animation-play-state:paused}.balloon .boom{font-size:2.6rem;animation:.5s forwards boom;position:absolute;top:25%;left:50%;translate:-50% -50%}@keyframes boom{0%{scale:.3}60%{opacity:1;scale:1.3}to{opacity:0;scale:1.5}}@media (prefers-reduced-motion:reduce){.balloon{animation-duration:18s}}.word-pic{aspect-ratio:1;background:var(--surface);width:clamp(120px,30vw,160px);box-shadow:var(--shadow-md);border-radius:32px;place-items:center;margin:0 auto 14px;font-size:clamp(4rem,14vw,5.5rem);display:grid}.word-pic.done{animation:.8s munch}.word-slots{justify-content:center;gap:8px;margin:18px 0;display:flex}.word-slots span{border:3px dashed var(--border);width:clamp(44px,11vw,60px);height:clamp(54px,13vw,70px);font-family:var(--font-display), sans-serif;text-transform:lowercase;border-radius:14px;place-items:center;font-size:clamp(1.6rem,6vw,2.2rem);font-weight:700;display:grid}.word-slots span.next{border-color:var(--accent)}.word-slots span.filled{background:var(--play-grad);color:#06281d;animation:pop-in .25s var(--ease);border-style:solid;border-color:#0000}.tiles{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.tile{cursor:pointer;color:#2b1700;width:clamp(52px,13vw,66px);height:clamp(52px,13vw,66px);font-family:var(--font-display), sans-serif;background:#fff9ea;border:none;border-radius:16px;font-size:clamp(1.5rem,5vw,2rem);font-weight:700;transition:transform .15s;box-shadow:0 6px #e69a1f}.tile:hover:not(:disabled){transform:translateY(-3px)}.tile.used{visibility:hidden}.tile.shake{background:#ffe4e9;animation:.45s shake-no}.tile.hint{animation:1s ease-in-out infinite hint-glow}@keyframes hint-glow{50%{box-shadow:0 6px #e69a1f,0 0 0 6px #12a87a80}}.frog-ask{text-align:center;color:var(--ink-2);margin-top:8px;font-weight:600}.pond{border-radius:var(--r-lg);scrollbar-width:thin;background:linear-gradient(#9edcf5,#6cc4e8);margin-top:16px;padding:70px 12px 18px;overflow-x:auto}.pads{--w:max(40px, min(64px, calc((min(760px, 100vw - 32px) - 26px) / var(--n))));grid-template-columns:repeat(var(--n), var(--w));width:max-content;margin:0 auto;display:grid;position:relative}.pads:before{content:"";left:calc(var(--w) / 2);right:calc(var(--w) / 2);background:#ffffffb3;border-radius:2px;height:4px;position:absolute;top:50%}.pad{width:calc(var(--w) - 6px);height:calc(var(--w) - 6px);cursor:pointer;background:#4cbf6b;border:none;border-radius:50% 50% 50% 8%;place-items:center;margin:3px;padding:0;display:grid;position:relative;box-shadow:inset 0 -5px #2f9a4e}.pad span{font-family:var(--font-display), sans-serif;color:#fff;text-shadow:0 1px 2px #00000059;font-size:1.05rem;font-weight:700}.pad.start{background:#3da85b}.pad.no{background:#e57373;animation:.45s shake-no;box-shadow:inset 0 -5px #c24a4a}.pad.yes{background:#ffc53d;box-shadow:inset 0 -5px #e69a1f}.pad:hover:not(:disabled){translate:0 -3px}.frog-sprite{left:calc(var(--i) * var(--w) + var(--w) / 2);z-index:1;pointer-events:none;font-size:2.6rem;transition:left .38s cubic-bezier(.3,0,.4,1);position:absolute;top:-58px;translate:-50%}.frog-sprite.jump-a{animation:.42s hop-a}.frog-sprite.jump-b{animation:.42s hop-b}.frog-sprite.happy{animation:.8s ease-in-out infinite dance}@keyframes hop-a{50%{transform:translateY(-26px)}}@keyframes hop-b{50%{transform:translateY(-26px)}}@media (max-width:520px){.pad span{font-size:.85rem}.frog-sprite{font-size:2rem;top:-50px}}.voice-list{gap:8px;max-height:min(52vh,440px);margin:0;padding:2px;list-style:none;display:grid;overflow-y:auto}.voice-list li{border:2px solid var(--border);border-radius:14px;align-items:center;gap:8px;padding:4px 6px 4px 4px;display:flex}.voice-list li.on{border-color:var(--accent);background:var(--accent-t)}.voice-pick{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:12px;padding:8px 10px;display:flex}.voice-pick b{display:block}.voice-pick small{color:var(--ink-2)}.voice-dot{border:2px solid var(--border);border-radius:50%;flex:none;width:20px;height:20px}.voice-list li.on .voice-dot{border:6px solid var(--accent)}.voice-try{background:var(--surface-2);width:44px;height:44px;color:var(--ink);cursor:pointer;border:none;border-radius:50%;flex:none;font-size:1rem}.voice-try:hover{background:var(--accent-t)}.footer-voice{color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.footer-voice:hover{color:var(--ink)}.startq.quiet{background:var(--surface);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-top:14px}.startq.quiet:before{display:none}.chapter-steps{background:var(--surface-2);border-radius:999px;gap:6px;width:fit-content;max-width:100%;margin:12px 0 18px;padding:6px;list-style:none;display:flex}.chapter-steps li a{color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-weight:600;text-decoration:none;display:flex}.chapter-steps li.here a{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.chapter-steps .cs-dot{background:var(--surface);border:2px solid var(--border-strong);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.8rem;display:grid}.chapter-steps .cs-dot svg{width:14px;height:14px}.chapter-steps li.here .cs-dot{background:var(--accent-grad);color:var(--on-accent);border-color:#0000}.chapter-steps li.done:not(.here) .cs-dot{background:var(--ok);border-color:var(--ok);color:#fff}@media (max-width:420px){.chapter-steps li a{padding-right:10px;font-size:.9rem}}.roadmap{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);min-height:120px;margin-top:28px;padding:20px 22px}.roadmap-here{flex-wrap:wrap;align-items:center;gap:14px 18px;display:flex}.roadmap-here>div{flex:1;gap:2px;min-width:200px;display:grid}.roadmap-here small{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);font-size:.75rem;font-weight:700}.roadmap-here b{font-family:var(--font-display), sans-serif;font-size:1.3rem}.roadmap-pin svg{width:54px;height:54px;animation:2.4s ease-in-out infinite dance}.roadmap-terms{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px 18px;margin:18px 0 0;padding:0;list-style:none;display:grid}.roadmap-terms li{color:var(--ink-2);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:.88rem;display:grid}.roadmap-terms li.current{color:var(--ink);font-weight:700}.tb-bar{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.tb-bar i{border-radius:inherit;background:var(--accent-grad);height:100%;display:block}.roadmap-terms li.done .tb-bar i{background:var(--ok)}.btn.waiting{opacity:.75;cursor:default}.ask-numo{border:2px dashed var(--accent);background:var(--accent-t);color:var(--accent-ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;margin-top:18px;padding:6px 16px 6px 6px;font-weight:700;display:inline-flex}.ask-numo svg{width:34px;height:34px;animation:2.4s ease-in-out infinite dance}.ask-numo:hover{border-style:solid}.helper{z-index:60;right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));align-items:flex-end;gap:10px;width:min(440px,100vw - 32px);animation:.45s cubic-bezier(.2,1.4,.4,1) helper-in;display:flex;position:fixed}.helper-numo{filter:drop-shadow(0 10px 18px #1e145a4d);flex:none;width:76px;height:76px;animation:1.8s ease-in-out infinite helper-talk}.helper-bubble{background:var(--surface);min-width:0;max-height:min(60vh,460px);color:var(--ink);border:2px solid var(--accent);box-shadow:var(--shadow-lg);border-radius:22px 22px 22px 6px;flex:1;padding:16px 18px 14px;position:relative;overflow-y:auto}.helper-x{background:var(--surface-2);width:30px;height:30px;color:var(--ink-2);cursor:pointer;border:none;border-radius:50%;font-size:1.2rem;line-height:1;position:absolute;top:6px;right:8px}.helper-label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);font-size:.75rem;font-weight:700}.helper-say{margin:4px 30px 0 0;font-size:1.05rem;font-weight:600;line-height:1.45}.helper-steps{gap:8px;margin:8px 0 0;padding-left:22px;line-height:1.45;display:grid}.helper-steps li::marker{color:var(--accent);font-weight:700}.helper-steps li:last-child:not([hidden]){font-weight:600}.helper-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.helper .pop{animation:.35s ease-out helper-step}@keyframes helper-in{0%{opacity:0;transform:translateY(40px)scale(.9)}}@keyframes helper-talk{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-6px)rotate(3deg)}}@keyframes helper-step{0%{opacity:0;transform:translate(-8px)}}@media (max-width:520px){.helper-numo{width:56px;height:56px}}@media (prefers-reduced-motion:reduce){.helper,.helper-numo,.helper .pop,.ask-numo svg,.roadmap-pin svg{animation:none}}body:has(.sheet.show) .helper{bottom:calc(max(16px, env(safe-area-inset-bottom)) + 120px)}.sheet-actions{flex-wrap:wrap;gap:10px;display:flex}.practice-tag{background:var(--accent-t);color:var(--accent-ink);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:700}.results-numo{width:90px;height:90px;animation:1.6s ease-in-out infinite dance}@media (max-width:600px){.btn{white-space:normal;text-align:center;max-width:100%;padding-top:8px;padding-bottom:8px;line-height:1.25}.btn svg{flex:none}.band-grid>*,.roadmap-here>*,.actions>*{min-width:0}}@media (max-width:420px){.site-header .wrap{gap:6px}.brand svg{width:32px;height:32px}.switch{gap:2px;padding:3px}.switch a:not(.on){padding:0 3px}.account{gap:6px}.xp{gap:5px;padding:3px 9px 3px 3px}.xp .ic{width:24px;height:24px}.xp .ic svg{width:13px;height:13px}.account .avatar{width:38px;height:38px}}.site-footer nav{flex-wrap:wrap;row-gap:6px}@media (max-width:350px){.account .xp{display:none}}@media (max-width:360px){.game-top{gap:6px}.game-dots{gap:3px}.game-dots li{width:9px;height:9px}.game-score-chip{padding:5px 9px}}@media (max-width:480px){.feed-stage{gap:10px}.feed-bubble{min-width:0;padding:12px 14px}.feed-q{white-space:normal;font-size:clamp(1.3rem,6vw,1.8rem)}.feed-stage .numo-av.big{width:96px;height:96px;font-size:18px}}.buddy{--size:72px;z-index:45;left:max(14px, env(safe-area-inset-left));bottom:max(14px, env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:fixed}.buddy>*{pointer-events:auto}.buddy-numo{width:var(--size);height:var(--size);cursor:pointer;filter:drop-shadow(0 10px 14px #1e145a47);background:0 0;border:none;padding:0;animation:3.2s ease-in-out infinite buddy-bob;position:relative}.buddy-numo .numo-av{width:100%;height:100%;font-size:15px}.buddy-numo:hover{transform:scale(1.06)}.buddy-numo svg use{transform-origin:50%}.buddy-bubble{background:var(--surface);max-width:min(300px,100vw - 40px);color:var(--ink);border:2px solid var(--accent);box-shadow:var(--shadow-lg);border-radius:18px 18px 18px 4px;padding:12px 14px;animation:.35s cubic-bezier(.2,1.4,.4,1) buddy-pop;position:relative}.buddy-bubble p{font-weight:600;line-height:1.4}.buddy-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.buddy-actions button{border:1px solid var(--border);background:var(--surface-2);color:var(--ink-2);font:inherit;cursor:pointer;border-radius:999px;padding:4px 12px;font-size:.82rem;font-weight:600}.buddy-actions button:first-child{background:var(--accent-grad);color:var(--on-accent);border-color:#0000}.buddy-zzz{font-family:var(--font-display), sans-serif;color:var(--accent-ink);font-size:.9rem;font-weight:700;animation:2.4s ease-in-out infinite buddy-zzz;position:absolute;top:-14px;right:-10px}.buddy-zzz i{margin-left:2px;font-size:1.1rem;font-style:normal}.buddy-zzz b{margin-left:2px;font-size:1.3rem}.buddy-spark{transform-origin:0 100%;font-size:1.4rem;animation:.4s ease-out buddy-pop,.5s ease-in-out .4s 3 buddy-wave;position:absolute;top:-6px;right:-14px}.buddy.move-peek .buddy-numo{animation:1.4s cubic-bezier(.2,1.3,.4,1) buddy-peek}.buddy.move-jump .buddy-numo{animation:.9s cubic-bezier(.3,1.5,.5,1) 2 buddy-jump}.buddy.move-spin .buddy-numo{animation:1.2s ease-in-out buddy-spin}.buddy.move-wave .buddy-numo{animation:.5s ease-in-out 3 buddy-tilt}.buddy.move-dance .buddy-numo{animation:.6s ease-in-out 4 buddy-dance}.buddy.move-sleep .buddy-numo{filter:grayscale(.25)drop-shadow(0 10px 14px #1e145a33);animation:3s ease-in-out infinite buddy-breathe}.buddy.move-walk .buddy-numo{animation:9s ease-in-out buddy-walk}@keyframes buddy-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes buddy-pop{0%{opacity:0;transform:scale(.6)translateY(10px)}}@keyframes buddy-peek{0%{transform:translateY(120%)rotate(-20deg)}70%{transform:translateY(-8px)rotate(6deg)}}@keyframes buddy-jump{0%,to{transform:translateY(0)scale(1)}15%{transform:translateY(0)scale(1.15,.85)}50%{transform:translateY(-60px)scale(.95,1.08)}85%{transform:translateY(0)scale(1.1,.9)}}@keyframes buddy-spin{0%{transform:rotate(0)}60%{transform:rotate(380deg)scale(1.1)}to{transform:rotate(360deg)}}@keyframes buddy-tilt{0%,to{transform:rotate(0)}50%{transform:rotate(-14deg)}}@keyframes buddy-dance{0%,to{transform:translateY(0)rotate(-8deg)}25%{transform:translateY(-14px)rotate(0)}50%{transform:translateY(0)rotate(8deg)}75%{transform:translateY(-14px)rotate(0)}}@keyframes buddy-breathe{0%,to{transform:scale(1)rotate(-6deg)}50%{transform:scale(1.04,.96)rotate(-6deg)}}@keyframes buddy-zzz{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(-8px)}}@keyframes buddy-wave{50%{transform:rotate(-25deg)}}@keyframes buddy-walk{0%{transform:translate(0)scaleX(1)}6%,18%,30%,42%{translate:0 -6px}12%,24%,36%{translate:0}46%{transform:translateX(calc(100vw - var(--size) - 40px)) scaleX(1)}52%{transform:translateX(calc(100vw - var(--size) - 40px)) scaleX(-1)}56%,68%,80%,92%{translate:0 -6px}62%,74%,86%{translate:0}98%{transform:translate(0)scaleX(-1)}to{transform:translate(0)scaleX(1)}}@media (max-width:520px){.buddy{--size:56px}}@media (prefers-reduced-motion:reduce){.buddy-numo,.buddy-bubble,.buddy-zzz,.buddy-spark{animation:none!important}}:is(body:has(.sheet.show) .buddy,body:has(.helper) .buddy){display:none}@media print{.buddy{display:none!important}}.compete-modes{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;grid-template-columns:1fr 1fr;gap:6px;width:100%;margin:22px 0 0;padding:5px;display:grid}.compete-modes button{min-width:0;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:flex}.compete-modes button span{background:var(--surface);width:30px;height:30px;font-family:var(--font-display), sans-serif;border-radius:50%;place-items:center;font-size:.85rem;display:grid}.compete-modes button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.compete-modes button.on span{background:var(--accent-grad);color:var(--on-accent)}.qcard .watch-head .small-speak{width:44px;height:44px;margin:0 6px 0 auto}.qcard .watch-head .small-speak svg{width:22px;height:22px}.reveal .opts{margin:14px 0}.reveal .opt{cursor:default}[data-section=maths]{--accent:var(--maths);--accent-ink:var(--maths-ink);--accent-t:var(--maths-t);--accent-grad:var(--maths-grad);--on-accent:#fff}.xp .lvl{background:var(--accent-grad);color:var(--on-accent);border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}@media (max-width:420px){.xp .lvl{display:none}}.level-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);align-items:center;gap:18px;margin-top:24px;padding:18px 20px;display:flex}.level-card>div{flex:1;gap:6px;min-width:0;display:grid}.level-badge{background:var(--accent-grad);width:76px;height:76px;color:var(--on-accent);font-family:var(--font-display), sans-serif;box-shadow:var(--shadow-md);border-radius:22px;flex:none;align-content:center;place-items:center;font-size:2rem;font-weight:700;line-height:1;display:grid}.level-badge small{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:.7rem;font-weight:600}.level-bar{background:var(--surface-2);border-radius:999px;height:12px;display:block;overflow:hidden}.level-bar i{border-radius:inherit;background:var(--accent-grad);height:100%;display:block}.level-up{background:var(--accent-t);text-align:left;width:fit-content;max-width:100%;animation:pop-in .4s var(--ease);border-radius:16px;align-items:center;gap:12px;margin:12px auto 0;padding:12px 18px;display:flex}.level-up>span:first-child{font-size:1.8rem}.level-up small{color:var(--ink-2);display:block}.classes-card{gap:16px;display:grid}.my-classes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.my-classes li{background:var(--surface-2);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.my-classes li>span{flex:1;min-width:160px;display:grid}.class-join{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.class-join .field{flex:1;min-width:200px;margin:0}.class-join .field input{text-transform:uppercase;letter-spacing:.2em;font-weight:700}.class-join p{flex-basis:100%}.homework-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.homework-list li{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.homework-list li.done{background:var(--ok-t);border-color:#0000}.homework-list li.overdue{border-color:var(--no)}.hw-tick{background:var(--surface-2);width:34px;height:34px;color:var(--ok);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.homework-list li.done .hw-tick{background:var(--ok);color:#fff}.hw-what{flex:1;gap:2px;min-width:0;display:grid}.hw-what small{color:var(--ink-2)}.lb-classes{border-radius:22px;flex-wrap:wrap}.lb-classes a{color:var(--ink-2);border-radius:999px;padding:8px 16px;font-weight:700;text-decoration:none}.lb-classes a.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.parent-subjects{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.parent-subjects .card{gap:8px;display:grid}.parent-exams{color:var(--ink-2);gap:4px;margin:4px 0 0;padding:0;font-size:.95rem;list-style:none;display:grid}.lab-promo{border-radius:var(--r-lg);background:var(--code-grad);color:#fff;box-shadow:var(--shadow-md);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:8px 0 30px;padding:22px 24px;text-decoration:none;transition:transform .3s;display:grid;position:relative;overflow:hidden}.lab-promo:hover{transform:translateY(-4px)}.lab-promo b{margin:2px 0 4px;font-size:1.35rem;display:block}.lab-promo .kicker{letter-spacing:.08em;text-transform:uppercase;opacity:.9;font-size:.78rem;font-weight:800}.lab-promo-art{grid-template-rows:repeat(2,34px);grid-template-columns:repeat(3,34px);gap:4px;display:grid}.lab-promo-art span{background:#ffffff38;border-radius:8px;place-items:center;font-size:1.2rem;display:grid}.lab-promo .go{background:#ffffff40;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}@media (max-width:640px){.lab-promo{grid-template-columns:1fr}.lab-promo .go{display:none}}.switch a{white-space:nowrap}@media (max-width:1500px){.switch .long{display:none}.switch a{padding:0 5px}.switch a.on{padding-right:12px}.switch a:not(.on) .nm{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.switch a.on .long{display:inline}}.show-sm,.tabbar,.tb-sheet-back{display:none}@media (max-width:680px){.show-sm{display:inline-flex}.site-header .switch{display:none}.site-header .wrap{justify-content:space-between;display:flex}.brand b{display:inline}.tabbar{z-index:50;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(18px);backdrop-filter:saturate(1.6)blur(18px);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -12px #16133a2e}.tabbar a,.tabbar button{min-width:0;height:54px;color:var(--ink-3);cursor:pointer;font:600 .7rem/1 var(--font-body), sans-serif;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0 2px;text-decoration:none;display:flex}.tabbar a>span:last-child,.tabbar button>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tb-ic{border-radius:999px;place-items:center;width:52px;height:30px;transition:background .2s,transform .2s;display:grid}.tb-ic svg{width:23px;height:23px}.tabbar .on{color:var(--accent-ink)}.tabbar .on .tb-ic{background:var(--accent-t);transform:translateY(-1px)}.tabbar a:active .tb-ic,.tabbar button:active .tb-ic{transform:scale(.9)}body:has(.tabbar){padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}body:has(.tabbar) .buddy{bottom:calc(80px + env(safe-area-inset-bottom,0px))}.tb-sheet-back{z-index:49;background:#0d0b2259;animation:.2s lab-fade;display:block;position:fixed;inset:0}.tb-sheet{padding:10px 16px calc(84px + env(safe-area-inset-bottom,0px));background:var(--surface);box-shadow:var(--shadow-lg);border-radius:26px 26px 0 0;animation:.28s cubic-bezier(.2,.9,.3,1) tb-up;position:absolute;bottom:0;left:0;right:0}@keyframes tb-up{0%{transform:translateY(100%)}}@keyframes lab-fade{0%{opacity:0}}.tb-grab{background:var(--muted);border-radius:3px;width:40px;height:5px;margin:0 auto 12px;display:block}.tb-sheet h2{margin:0 0 12px;font-size:1.15rem}.tb-subjects{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tb-subjects a{background:var(--surface-2);border:1px solid var(--border);color:var(--ink);border-radius:18px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:12px;text-decoration:none;display:grid}.tb-subjects a.on{border-color:var(--accent);background:var(--accent-t)}.tb-subjects b{font-size:.95rem}.tb-subjects small{color:var(--ink-3);grid-column:2;font-size:.72rem;line-height:1.25}.tb-dot{color:#fff;width:40px;height:40px;font:700 .9rem/1 var(--font-display), sans-serif;border-radius:13px;grid-row:span 2;place-items:center;display:grid}.tb-dot.m{background:var(--maths-grad)}.tb-dot.e{background:var(--eng-grad)}.tb-dot.k{background:var(--code-grad);font-size:.75rem}.tb-dot.s{background:var(--bee-grad);color:#2b1700}.tb-dot.l{background:linear-gradient(135deg,#3cc864,#1fa34a)}.tb-dot.q{background:linear-gradient(135deg,#7b5bff,#b23ce6 50%,#f0408f)}.tb-dot.g{background:linear-gradient(135deg,#14c08a,#1e8fe0)}.account .avatar,.account .menu{display:none}.tb-me{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:4px 4px 14px;display:flex}.tb-me>div{flex:1;min-width:0;display:grid}.tb-me small{color:var(--ink-3)}.tb-avatar{background:var(--maths-grad);color:#fff;width:48px;height:48px;font:700 1.3rem/1 var(--font-display), sans-serif;border-radius:50%;place-items:center;display:grid}.tb-level{background:var(--bee-t);color:var(--bee-ink);white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:.8rem;font-weight:700}.tb-list{gap:2px;margin-top:8px;display:grid}.tb-list a,.tb-list button{width:100%;color:var(--ink);font:600 1rem/1.3 var(--font-body), sans-serif;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:13px 10px;text-decoration:none;display:flex}.tb-list a:active,.tb-list button:active{background:var(--surface-2)}.tb-list span{background:var(--surface-2);border-radius:12px;flex:none;place-items:center;width:36px;height:36px;font-size:1.1rem;display:grid}.tb-list .tb-out{color:var(--no)}}@media (prefers-reduced-motion:reduce){.tb-sheet,.tb-sheet-back{animation:none}}.stage-tile.mine{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-t), var(--shadow-md)}.crumb-other{background:#ffffff38;border-radius:999px;margin-left:auto;padding:2px 10px}.crumbs:has(.crumb-other){flex-wrap:wrap;align-items:center;gap:6px;display:flex}.profile-stage{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin:18px 0 20px;padding:16px 18px}.profile-stage-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.profile-stage-row>div{flex:180px;gap:2px;display:grid}.profile-stage-n{background:var(--maths-grad);color:#fff;width:52px;height:52px;font:700 1.6rem/1 var(--font-display), sans-serif;border-radius:16px;place-items:center;display:grid}.profile-stage .stage-prompt{border:0;border-top:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin:14px 0 0;padding:14px 0 0}@media (max-width:680px){html[data-focus] .site-footer{display:none}}[data-section=quiz]{--accent:#a23cf0;--accent-ink:#7c1fc9;--accent-t:#f3e6fe;--accent-grad:linear-gradient(135deg, #7b5bff 0%, #b23ce6 50%, #f0408f 100%);--on-accent:#fff}.compete-modes{grid-template-columns:none;grid-auto-columns:1fr;grid-auto-flow:column}.quiz-levels{grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 22px;display:grid}.quiz-levels button{border:2px solid var(--border);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;font:inherit;border-radius:18px;gap:2px;padding:12px 14px;display:grid}.quiz-levels button.on{border-color:var(--accent);background:var(--accent-t)}.quiz-levels b{font-size:1.05rem}.quiz-levels small{color:var(--ink-3)}.quiz-levels.small{width:min(420px,100%);margin:16px auto}.quiz-topics{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.quiz-topic{border-radius:var(--r-lg);color:#fff;min-height:170px;box-shadow:var(--shadow-md);transition:transform .25s var(--ease);align-content:end;gap:4px;padding:18px;text-decoration:none;display:grid;position:relative;overflow:hidden}.quiz-topic:hover{transform:translateY(-5px)rotate(-.5deg)}.quiz-topic.wide{grid-column:1/-1;min-height:150px}.quiz-topic b{font:700 1.45rem/1.1 var(--font-display), sans-serif}.quiz-topic span:not(.quiz-topic-emoji){opacity:.92;font-size:.95rem}.quiz-topic small{background:#ffffff38;border-radius:999px;justify-self:start;margin-top:6px;padding:3px 10px;font-weight:600}.quiz-topic-emoji{filter:drop-shadow(0 6px 10px #0003);font-size:3.2rem;position:absolute;top:10px;right:14px;transform:rotate(8deg)}.quiz-compete{border-radius:var(--r-lg);background:var(--surface);border:2px solid var(--accent);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:22px;padding:16px 18px;text-decoration:none;display:grid}.quiz-compete b{font-size:1.1rem;display:block}.quiz-compete span span{color:var(--ink-2);font-size:.92rem}.quiz-compete-ic{background:var(--accent-grad);color:#fff;border-radius:16px;place-items:center;width:48px;height:48px;display:grid}@media (max-width:560px){.quiz-compete{grid-template-columns:auto 1fr}.quiz-compete .btn{grid-column:1/-1}}.quiz-start{background:var(--surface);border:1px solid var(--border);max-width:560px;box-shadow:var(--shadow-md);text-align:center;border-radius:28px;margin:10px auto;padding:28px 22px}.quiz-start-emoji{background:var(--topic);width:96px;height:96px;box-shadow:var(--shadow-md);border-radius:30px;place-items:center;margin:0 auto 10px;font-size:3.2rem;display:grid}.quiz-start h1{margin:0 0 6px}.quiz-rules{color:var(--ink-2);gap:6px;margin:0 auto 18px;padding:0;font-weight:600;list-style:none;display:grid}.quiz-go{min-width:200px;margin-bottom:10px;font-size:1.15rem}.quiz-play{max-width:760px;margin:0 auto}.quiz-top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.quiz-chip,.quiz-count,.quiz-streak,.quiz-pts{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 11px;font-size:.88rem;font-weight:700}.quiz-count{margin-right:auto}.quiz-streak.hot{color:#fff;background:linear-gradient(135deg,#ffb347,#ff5e3a);border-color:#0000;animation:1s ease-in-out infinite tick-pulse}.quiz-timer{background:var(--surface-2);border-radius:999px;height:10px;margin-bottom:14px;overflow:hidden}.quiz-timer i{border-radius:inherit;background:var(--accent-grad);height:100%;transition:width .1s linear;display:block}.quiz-timer i.low{background:linear-gradient(90deg,#ff5e3a,#eb3b68)}.quiz-card .qtext{font:600 clamp(1.15rem, 3.6vw, 1.5rem)/1.35 var(--font-display), sans-serif;margin-bottom:16px}.quiz-feedback{animation:rise .2s var(--ease);border-radius:18px;margin-top:16px;padding:14px 16px}.quiz-feedback.good{background:var(--ok-t)}.quiz-feedback.bad{background:var(--no-t)}.quiz-feedback p{margin:6px 0 12px}.quiz-did{color:var(--accent-ink);font-weight:700}.quiz-final{flex-wrap:wrap;justify-content:center;gap:12px;margin:6px 0 12px;display:flex}.quiz-final span{background:var(--surface-2);border-radius:16px;min-width:92px;padding:10px 14px;display:grid}.quiz-final b{font-size:1.4rem}.quiz-final small{color:var(--ink-3)}.quiz-high{color:var(--accent-ink);font-weight:700}.arena-promo{border-radius:var(--r-lg);color:#fff;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#7b5bff 0%,#b23ce6 50%,#f0408f 100%);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:4px 0 28px;padding:22px 24px;text-decoration:none;transition:transform .3s;display:grid}.arena-promo:hover{transform:translateY(-4px)}.arena-promo b{margin:2px 0 4px;font-size:1.35rem;display:block}.arena-promo .kicker{letter-spacing:.08em;text-transform:uppercase;opacity:.9;font-size:.78rem;font-weight:800}.arena-promo-art{grid-template-columns:repeat(4,34px);gap:4px;display:grid}.arena-promo-art span{background:#fff3;border-radius:9px;place-items:center;height:34px;font-size:1.15rem;display:grid}.arena-promo .go{background:#ffffff40;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}@media (max-width:640px){.arena-promo{grid-template-columns:1fr}.arena-promo .go{display:none}.arena-promo-art{grid-template-columns:repeat(8,minmax(0,34px))}.arena-promo-art span{height:30px;font-size:1rem}}.quiz-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:26px;padding:clamp(18px,4vw,28px)}@media (max-width:520px){.quiz-top{flex-wrap:nowrap;gap:6px}.quiz-chip{display:none}.quiz-top .btn.small{padding:0 10px}}.band .crumbs{display:none}.band .band-other{color:inherit;background:#ffffff2e;border-color:#ffffff73}.steps,.exsteps{grid-template-columns:minmax(0,1fr)}.steps li,.exsteps li,.ex,.bigidea,.qtext,.card{overflow-wrap:break-word;min-width:0}@media (max-width:520px){.sb-scripts{gap:14px 20px;padding:10px 10px 14px;font-size:.78rem}.sb-line{min-height:34px;padding:4px 8px}.sb-c{min-width:120px}.sb-mouth{margin-left:12px}.steps li{padding:14px 12px 14px 50px}.steps li:before{width:30px;height:30px;top:12px;left:10px}.steps li .sb-scripts{margin-left:-38px}}.bedtime{background:var(--surface);width:min(560px,100% - 24px);max-height:calc(100dvh - 24px);color:var(--ink);box-shadow:var(--shadow-lg);border:none;border-radius:28px;margin:auto;padding:0;overflow:auto}.bedtime::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08061eb8}.bedtime[open]{animation:plan-in .35s var(--ease)}.bedtime-sky{background:radial-gradient(circle at 80% 20%,#3b3a8f 0%,#0000 55%),linear-gradient(#120f3a 0%,#2a2470 100%);height:150px;position:relative;overflow:hidden}.bedtime-sky i{left:calc(var(--i) * 7.1% + 2%);width:4px;height:4px;animation:bt-twinkle 2.4s calc(var(--i) * -.37s) ease-in-out infinite;background:#fff6c9;border-radius:50%;position:absolute;box-shadow:0 0 6px #fff6c9}@keyframes bt-twinkle{50%{opacity:.2;transform:scale(.6)}}.bt-moon{filter:drop-shadow(0 0 14px #ffeca0b3);font-size:3rem;position:absolute;top:16px;right:26px}.bt-numo{filter:brightness(.88)drop-shadow(0 8px 16px #0006);width:118px;height:118px;animation:3.6s ease-in-out infinite bt-breathe;position:absolute;bottom:-26px;left:50%;transform:translate(-50%)}@keyframes bt-breathe{50%{transform:translate(-50%)translateY(3px)scale(1.03)}}.bt-zzz{color:#cfc8ff;font:700 1.1rem/1 var(--font-display), sans-serif;position:absolute;top:22px;left:calc(50% + 46px)}.bt-zzz b{margin-left:4px;font-size:1.4rem}.bt-zzz em{margin-left:4px;font-size:1.8rem;font-style:normal}.bt-zzz>*{animation:2.4s ease-in-out infinite bt-z;display:inline-block}.bt-zzz b{animation-delay:.3s}.bt-zzz em{animation-delay:.6s}@keyframes bt-z{50%{opacity:.5;transform:translateY(-6px)}}.bedtime-body{text-align:center;padding:26px 22px 22px}.bedtime-body h2{margin:0 0 8px;font-size:1.6rem}.bedtime-body p{color:var(--ink-2);margin:0 0 14px}.bt-grid{text-align:left;gap:12px;margin:6px 0 14px;display:grid}@media (min-width:520px){.bt-grid{grid-template-columns:1fr 1fr}}.bt-grid section{background:var(--surface-2);border-radius:18px;padding:14px}.bt-grid section:first-child{background:#e9f7ef}.bt-grid section:last-child{background:#fff1e6}.bt-grid h3{margin:0 0 8px;font-size:1rem}.bt-grid ul{color:#2a2750;gap:6px;margin:0;padding:0;font-size:.92rem;line-height:1.35;list-style:none;display:grid}.bt-tip{background:#eeebff;border-radius:14px;padding:10px 14px;color:#2a2470!important}.bt-strong{font-weight:700;color:var(--ink)!important}.bt-actions{flex-direction:column;align-items:center;gap:8px;display:flex}.bt-main{min-width:240px;color:#fff!important;background:linear-gradient(135deg,#2a2470,#5b4bd6)!important}@media (prefers-reduced-motion:reduce){.bedtime-sky i,.bt-numo,.bt-zzz>*{animation:none}}[data-section=planner]{--accent:#2e7cf6;--accent-ink:#1c5cc4;--accent-t:#e4eeff;--accent-grad:linear-gradient(135deg, #2e7cf6 0%, #17b6c9 55%, #3cd08f 100%);--on-accent:#fff}.planner-tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:20px;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;margin:8px 0 20px;padding:5px;display:grid}.planner-tabs button{color:var(--ink-2);font:700 .92rem/1.2 var(--font-body), sans-serif;cursor:pointer;background:0 0;border:0;border-radius:15px;padding:10px 6px}.planner-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}@media (max-width:560px){.planner-tabs{grid-template-columns:1fr 1fr;grid-auto-flow:row}}.planner-guest{gap:8px;padding:22px;display:grid}.cal-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px;display:grid}.cal-stats span{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:18px;gap:2px;padding:12px;display:grid}.cal-stats b{font:700 1.4rem/1.1 var(--font-display), sans-serif}.cal-stats small{color:var(--ink-3);font-size:.78rem}.cal{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:14px}.cal-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-head h2{text-align:center;flex:1;margin:0;font-size:1.25rem}.cal-today{order:4}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-wd{text-align:center;color:var(--ink-3);padding:4px 0;font-size:.75rem;font-weight:700}.cal-day{background:var(--surface-2);min-height:64px;color:var(--ink);cursor:pointer;font:inherit;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:1px;padding:5px 2px;display:flex;position:relative}.cal-day.out{opacity:.4}.cal-day.today{border-color:var(--accent)}.cal-day.sel{background:var(--accent-t);border-color:var(--accent-ink)}.cal-day.goal{background:linear-gradient(160deg,#fff6d6,#ffe7a8)}.cal-day.goal.sel{box-shadow:0 0 0 2px var(--accent-ink) inset}.cal-n{font-size:.9rem;font-weight:700}.cal-star{font-size:.9rem;line-height:1}.cal-xp,.cal-min{color:var(--ink-3);font-size:.62rem;font-weight:700;line-height:1.1}.cal-min{color:var(--accent-ink)}.cal-marks{letter-spacing:-1px;font-size:.7rem;line-height:1}.cal-note{background:#3cd08f;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.cal-key{text-align:center;margin:10px 0 0;font-size:.75rem}@media (min-width:760px){.cal-day{min-height:82px}.cal-xp,.cal-min{font-size:.72rem}}.day-panel{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin-top:16px;padding:18px}.day-panel h2{margin:0 0 12px;font-size:1.3rem}.day-panel h2 small{color:var(--ink-3);font-size:.9rem;font-weight:500}.day-stats{grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:14px;display:grid}@media (max-width:560px){.day-stats{grid-template-columns:1fr 1fr}.day-goal{grid-column:1/-1}}.day-stats>div{background:var(--surface-2);border-radius:16px;align-content:center;gap:2px;padding:12px;display:grid}.day-stats small{color:var(--ink-3);font-size:.8rem}.day-goal{align-items:center;gap:12px;display:flex!important}.day-goal.done{background:linear-gradient(135deg,#fff6d6,#ffe7a8)!important}.day-goal>span:last-child{display:grid}.day-ring{background:radial-gradient(closest-side, var(--surface) 72%, transparent 73%), conic-gradient(var(--accent) var(--p), var(--border) 0);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;font-size:.8rem;font-weight:800;display:grid}.day-goal.done .day-ring{background:radial-gradient(closest-side, #fff6d6 72%, transparent 73%), conic-gradient(#f5b400 100%, transparent 0);font-size:1.4rem}.day-block{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.day-block h3{margin:0 0 10px;font-size:1.02rem}.day-list{gap:6px;margin:0 0 10px;padding:0;list-style:none;display:grid}.day-list li{background:var(--surface-2);border-radius:12px;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:flex}.day-list li>span:nth-child(2){overflow-wrap:anywhere;flex:1;min-width:0}.day-list li.done b{opacity:.6;text-decoration:line-through}.day-list input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);flex:none}.day-term{color:var(--accent-ink);font-weight:700}.day-xp{color:var(--accent-ink);white-space:nowrap;font-size:.85rem;font-weight:700}.day-done{color:var(--ok);font-size:.85rem;font-weight:700}.day-x{width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;font-size:1.2rem}.day-x:hover{background:var(--no-t);color:var(--no)}.day-form,.day-note-form{grid-template-columns:auto auto 1fr auto;gap:8px;display:grid}.day-note-form{grid-template-columns:auto 1fr auto;align-items:start}@media (max-width:640px){.day-form,.day-note-form{grid-template-columns:1fr 1fr}.day-form input,.day-note-form textarea,.day-form .btn,.day-note-form .btn{grid-column:1/-1}}.day-form select,.day-form input,.day-note-form select,.day-note-form textarea{border:1px solid var(--border-strong);background:var(--surface);min-width:0;color:var(--ink);font:inherit;border-radius:12px;padding:9px 10px}.day-note-form textarea{resize:vertical}.day-notes{gap:8px;margin:0 0 10px;padding:0;list-style:none;display:grid}.day-notes li{background:#eaf8f1;border-radius:14px;padding:10px 40px 10px 12px;position:relative}.day-notes p{overflow-wrap:anywhere;margin:4px 0 0}.day-notes .day-x{position:absolute;top:6px;right:6px}.day-subj{color:#fff;background:#3cd08f;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-block}.week-intro{border-radius:var(--r-lg);background:var(--accent-t);align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.week-intro svg{flex:none;width:52px;height:52px}.week-intro p{margin:0}.week-days{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.week-days>li{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:20px;min-width:0;padding:12px}.week-days>li.today{border:2px solid var(--accent)}.week-days>li.rest{background:linear-gradient(160deg,#f2fff7,#e2f8ea)}.week-days header{align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.week-days header small{color:var(--ink-3)}.week-min{background:var(--accent-t);color:var(--accent-ink);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.75rem;font-weight:700}.week-days ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.week-days ul a,.week-days ul div{background:var(--surface-2);color:var(--ink);border-radius:14px;align-items:flex-start;gap:10px;padding:9px;text-decoration:none;display:flex}.week-days ul a:hover{background:var(--accent-t)}.week-days ul span:nth-child(2){flex:1;gap:2px;min-width:0;display:grid}.week-days ul small{color:var(--ink-2);font-size:.8rem;line-height:1.3}.week-ic{font-size:1.2rem}.week-m{color:var(--ink-3);font-size:.8rem;font-weight:700}.s-prep a,.s-prep div{background:#fff1e6!important}.week-coming{margin-top:22px}.week-coming ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.week-coming li{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.week-coming li>span:nth-child(2){flex:1;min-width:0;display:grid}.week-coming small{color:var(--ink-3)}.week-when{color:var(--accent-ink);white-space:nowrap;font-size:.85rem;font-weight:700}.week-coming li.soon .week-when{color:var(--no)}.guide-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.guide-card{border-radius:var(--r-lg);background:var(--g);padding:18px}.guide-card h2,.guide-check h2,.guide-day h2{margin:0 0 12px;font-size:1.2rem}.guide-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.guide-card li{color:#2a2750;gap:2px;display:grid}.guide-card li span{font-size:.92rem;line-height:1.4}.guide-check,.guide-day{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);margin-top:16px;padding:18px}.guide-check ul{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.guide-check label{background:var(--surface-2);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:9px 10px;display:flex}.guide-check input{width:20px;height:20px;accent-color:var(--accent);flex:none}.guide-check input:checked+span{opacity:.6;text-decoration:line-through}.guide-day ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.guide-day li{align-items:flex-start;gap:12px;display:flex}.guide-day li>span:last-child{display:grid}.guide-day small{color:var(--ink-2)}.guide-day-ic{background:var(--accent-t);border-radius:14px;flex:none;place-items:center;width:42px;height:42px;font-size:1.3rem;display:grid}.lp-year{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);margin-bottom:18px;padding:16px}.lp-year h2{margin:0 0 12px;font-size:1.15rem}.lp-subjects{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.lp-subject{background:var(--surface-2);color:var(--ink);border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;padding:12px;text-decoration:none;display:grid}.lp-ic{color:#fff;width:40px;height:40px;font:700 .85rem/1 var(--font-display), sans-serif;border-radius:13px;grid-row:span 3;place-items:center;display:grid}.s-maths .lp-ic{background:var(--maths-grad)}.s-english .lp-ic{background:var(--eng-grad)}.s-computing .lp-ic{background:var(--code-grad);font-size:.7rem}.lp-bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.lp-bar i{background:var(--accent-grad);height:100%;display:block}.lp-subject small{color:var(--ink-3);font-size:.78rem}.lp-road{gap:14px;margin:0;padding:0 0 0 4px;list-style:none;display:grid;position:relative}.lp-road:before{content:"";background:linear-gradient(var(--accent), #3cd08f, #f5b400);opacity:.5;border-radius:2px;width:4px;position:absolute;top:20px;bottom:20px;left:25px}.lp-road>li{align-items:flex-start;gap:14px;display:flex;position:relative}.lp-dot{z-index:1;background:var(--surface);border:3px solid var(--accent);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:1.2rem;display:grid;position:relative}.lp-road>li.passed .lp-dot{background:var(--accent);color:#fff;font-weight:800}.lp-road>li.here .lp-dot{width:52px;height:52px;box-shadow:0 0 0 6px var(--accent-t);margin-left:-4px;animation:1.6s ease-in-out infinite tick-pulse}.lp-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex:1;min-width:0;padding:14px 16px}.lp-road>li.here .lp-card{border:2px solid var(--accent);box-shadow:var(--shadow-md)}.lp-road>li.passed .lp-card{opacity:.75}.lp-card small{color:var(--accent-ink);font-weight:700}.lp-card h3{margin:2px 0 4px;font-size:1.15rem}.lp-card p{color:var(--ink-2);margin:0 0 8px}.lp-here{background:var(--accent-grad);color:#fff;border-radius:999px;margin-bottom:6px;padding:3px 10px;font-size:.8rem;font-weight:700;display:inline-block}.lp-skills{flex-wrap:wrap;gap:6px;display:flex}.lp-skills span{background:var(--surface-2);border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:600}.lp-stages{gap:6px;margin-top:10px;display:flex}.lp-stages span{background:var(--surface-2);border-radius:10px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.lp-stages .done{background:var(--accent);color:#fff}.lp-stages .now{background:var(--accent-grad);color:#fff;box-shadow:0 0 0 3px var(--accent-t)}.game-race .game-emoji{background:#ffe6d6}.game-wordrace .game-emoji{background:#e3edff}.race{gap:10px;max-width:520px;margin:0 auto;display:grid}.race-q{background:var(--surface);border:1px solid var(--border);min-height:72px;box-shadow:var(--shadow-sm);border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:10px 14px;display:flex}.race-q b{font:700 clamp(1.5rem, 6vw, 2.1rem)/1.1 var(--font-display), sans-serif}.race-word{letter-spacing:.14em}.race-pic{font-size:2.6rem;line-height:1}.race-pic.count{flex-wrap:wrap;justify-content:center;gap:2px;max-width:280px;font-size:1.9rem;display:flex}.race-road{touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;height:min(56vh,460px);box-shadow:inset 0 0 0 4px #0000000f, var(--shadow-md);background:linear-gradient(90deg,#6acb5b 0 11%,#4f5563 11% 89%,#6acb5b 89%);border-radius:24px;position:relative;overflow:hidden}.race-lines{pointer-events:none;background:linear-gradient(#fff 0 0) 0 0/4px 100% no-repeat,linear-gradient(#fff 0 0) right 0 top 0/4px 100% no-repeat,repeating-linear-gradient(#f7f7f7 0 26px,#0000 26px 52px) 33.33% 0/4px 100% no-repeat,repeating-linear-gradient(#f7f7f7 0 26px,#0000 26px 52px) 66.66% 0/4px 100% no-repeat;animation:.5s linear infinite race-road;position:absolute;inset:0 11%}.phase-ready .race-lines{animation-duration:1.4s}.phase-boost .race-lines{animation-duration:.18s}.phase-bump .race-lines{animation-play-state:paused}@keyframes race-road{to{background-position:0 0,right 0 top 0,33.33% 52px,66.66% 52px}}.race-scenery{pointer-events:none;width:11%;position:absolute;top:0;bottom:0;overflow:hidden}.race-scenery.left{left:0}.race-scenery.right{right:0}.race-scenery:before{content:"🌳\a 🌼\a 🌲\a 🏠\a 🌳\a 🌷\a 🌲\a 🌳\a 🌼\a 🌲\a 🏠\a 🌳\a 🌷\a 🌲\a 🌳\a 🌼\a 🌲\a 🏠\a 🌳\a 🌷\a 🌲\a 🌳\a 🌼\a 🌲\a 🏠\a 🌳\a 🌷\a 🌲";white-space:pre;text-align:center;font-size:clamp(1rem,4vw,1.6rem);line-height:2.2;animation:4s linear infinite race-scenery;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.race-scenery.right:before{content:"🌲\a 🌷\a 🌳\a 🌼\a 🏡\a 🌲\a 🌳\a 🌷\a 🌲\a 🌼\a 🏡\a 🌲\a 🌳\a 🌷\a 🌲\a 🌷\a 🌳\a 🌼\a 🏡\a 🌲\a 🌳\a 🌷\a 🌲\a 🌼\a 🏡\a 🌲\a 🌳\a 🌷";animation-delay:-2s}.phase-boost .race-scenery:before{animation-duration:1.2s}.phase-bump .race-scenery:before{animation-play-state:paused}@keyframes race-scenery{to{transform:translate(-50%)}}.race-gates{pointer-events:none;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 6px;display:grid;position:absolute;left:11%;right:11%}.race-gate{color:#16133a;min-height:58px;font:700 clamp(1rem, 4.4vw, 1.5rem)/1.05 var(--font-display), sans-serif;text-align:center;overflow-wrap:anywhere;background:linear-gradient(#fff,#f1f0fa);border:3px solid #ffc233;border-radius:14px;place-items:center;padding:6px 4px;display:grid;box-shadow:0 6px #0000002e}.mode-spelling .race-gate{font-size:clamp(.95rem,3.8vw,1.3rem)}.race-gate.blocked{background:#ffe9de;border-color:#ff8338;font-size:1.8rem}.race-gate.win{background:linear-gradient(#dffbef,#b8f2d6);border-color:#0ead7a;transition:transform .2s;transform:scale(1.08)}.race-car{width:26%;bottom:4%;left:calc(11% + var(--lane) * 78% / 3);pointer-events:none;place-items:center;transition:left .18s cubic-bezier(.3,1.4,.5,1);display:grid;position:absolute}.race-car.lane-0{--lane:0}.race-car.lane-1{--lane:1}.race-car.lane-2{--lane:2}.race-car-body{filter:drop-shadow(0 8px 6px #00000059);width:clamp(38px,11vw,54px);animation:.3s ease-in-out infinite alternate race-hum;display:block}@keyframes race-hum{to{translate:0 -2px}}.phase-boost .race-car{animation:1s ease-in forwards race-boost}@keyframes race-boost{60%{transform:translateY(-30%)}to{opacity:0;transform:translateY(-160%)}}.phase-bump .race-car-body{animation:.5s ease-in-out 2 race-bump}@keyframes race-bump{25%{transform:rotate(-14deg)translate(-6px)}75%{transform:rotate(14deg)translate(6px)}}.race-car-body svg{width:100%;height:auto;display:block}.race-boost{font-size:1.8rem;animation:.6s ease-out infinite race-fade;position:absolute;bottom:-34%}.race-bump{font-size:2.2rem;animation:.5s ease-out 2 race-fade;position:absolute;top:-40%}@keyframes race-fade{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.4)}}.race-controls{grid-template-columns:64px 1fr 64px;align-items:center;gap:10px;display:grid}.race-controls button{background:var(--accent-grad);height:64px;color:var(--on-accent);cursor:pointer;touch-action:manipulation;border:0;border-radius:20px;font-size:1.6rem;box-shadow:0 5px #0000002e}.race-controls button:active{transform:translateY(3px);box-shadow:0 2px #0000002e}.race-controls button:disabled{opacity:.35}.race-controls .game-hint{text-align:center;margin:0}@media (prefers-reduced-motion:reduce){.race-lines,.race-scenery:before,.race-car-body{animation:none!important}}[data-section=papers]{--accent:#1e4fa8;--accent-ink:#163c82;--accent-t:#e5edfb;--accent-grad:linear-gradient(135deg, #16244f 0%, #1e4fa8 55%, #c99a2e 100%);--on-accent:#fff}.switch .dot.p{background:linear-gradient(135deg,#16244f,#1e4fa8 55%,#c99a2e);font-size:.7rem}@media (max-width:680px){.tb-dot.p{background:linear-gradient(135deg,#16244f,#1e4fa8 55%,#c99a2e);font-size:.8rem}}.papers-gate{gap:10px;max-width:620px;padding:22px;display:grid}.papers-qual{margin-bottom:26px}.papers-subject h3{margin:6px 0 10px;font-size:1.15rem}.papers-series{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.papers-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:14px}.papers-card>b{margin-bottom:8px;font-size:1.05rem;display:block}.papers-links{gap:6px;display:grid}.papers-paper{background:var(--accent-t);color:var(--ink);border-radius:14px;gap:2px;padding:10px 12px;text-decoration:none;transition:transform .15s;display:grid}.papers-paper:hover{transform:translate(3px)}.papers-paper span{font-weight:700}.papers-paper small{color:var(--ink-2)}.paper-head{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.paper-head small{color:var(--accent-ink);font-weight:700}.paper-head h1{margin:2px 0;font-size:clamp(1.3rem,4vw,1.9rem)}.paper-head p{margin:0}.paper-exam{z-index:6;background:var(--surface);border:2px solid var(--border);box-shadow:var(--shadow-md);border-radius:20px;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 16px;display:flex;position:sticky;top:76px}.paper-exam>span:not(.paper-clock){flex:220px;gap:2px;display:grid}.paper-exam small{color:var(--ink-2)}.paper-exam.on{border-color:var(--accent)}.paper-exam.hurry{border-color:var(--no);background:var(--no-t)}.paper-clock{font:700 2rem/1 var(--font-display), sans-serif;font-variant-numeric:tabular-nums;color:var(--accent-ink);min-width:110px}.paper-exam.hurry .paper-clock{color:var(--no)}.paper-score{background:var(--accent-t);border-radius:20px;flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px;padding:14px 16px;display:flex}.paper-score label{align-items:center;gap:8px;font-weight:700;display:flex}.paper-score input{border:1px solid var(--border-strong);width:84px;font:inherit;text-align:center;border-radius:12px;padding:8px 10px;font-weight:700}.paper-pct{font:700 1.6rem/1 var(--font-display), sans-serif;color:var(--accent-ink)}.paper-actions{flex-wrap:wrap;gap:10px;margin:14px 0 10px;display:flex}.paper-frame{border:1px solid var(--border);background:#fff;border-radius:16px;width:100%;height:82vh;display:block}@media (max-width:680px){.paper-exam{top:72px}.paper-frame{height:70vh}}.lp-papers{color:var(--accent-ink);margin-top:8px;font-weight:700;text-decoration:none;display:inline-block}.pb-bar{color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:4px 0 16px;font-weight:700;display:flex}.pb-filter{border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:7px 14px;font-weight:700}.pb-filter.on{background:#fff4d6;border-color:#e0a800}.pb-qual{margin-bottom:24px}.pb-subject{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;margin-bottom:14px;overflow:hidden}.pb-subject-head{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--ink);text-align:left;cursor:pointer;font:inherit;background:0 0;align-items:center;gap:12px;padding:14px 16px;display:flex}.pb-code{color:#0e8f5f;min-width:44px;height:36px;font:800 .82rem/1 var(--font-body), sans-serif;background:#e3f7ee;border-radius:10px;place-items:center;padding:0 8px;display:grid}.pb-subject-name{flex:1;display:grid}.pb-subject-name b{font-size:1.05rem}.pb-subject-name small,.pb-year-head small{color:var(--ink-3);font-size:.82rem}.pb-chev{width:20px;height:20px;color:var(--ink-3);flex:none;transition:transform .2s;transform:rotate(-90deg)}.pb-chev.open{transform:none}.pb-year{padding:0 14px 6px}.pb-year-head{width:100%;color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:14px 2px 8px;display:flex}.pb-year-head i{background:var(--border);flex:1;height:1px;margin-left:8px}.pb-papers{margin:0;padding:0;list-style:none}.pb-papers li{border-radius:12px;align-items:center;gap:12px;padding:10px 4px;display:flex}.pb-papers li:hover{background:var(--surface-2)}.pb-papers li.done .pb-title b{color:var(--ink-3)}.pb-icon{color:#0e8f5f;background:#e3f7ee;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.pb-icon svg{width:22px;height:22px}.pb-title{flex:1;gap:3px;min-width:0;display:grid}.pb-title b{flex-wrap:wrap;align-items:center;gap:8px;font-size:.98rem;display:flex}.pb-title small{color:var(--ink-2);font-size:.82rem}.pb-tag{color:#0e8f5f;letter-spacing:.02em;background:#e3f7ee;border-radius:6px;padding:2px 7px;font-size:.7rem;font-weight:800}.pb-actions{flex:none;align-items:center;gap:8px;display:flex}.pb-mark,.pb-star,.pb-file,.pb-paper{border:1px solid var(--border-strong);background:var(--surface);height:36px;color:var(--ink);font:700 .86rem/1 var(--font-body), sans-serif;cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:0 12px;text-decoration:none;display:inline-flex}.pb-mark{border-radius:999px}.pb-mark.on{background:var(--ok-t);border-color:var(--ok);color:var(--ok)}.pb-star{width:36px;padding:0;font-size:1.05rem}.pb-star.on{color:#b8860b;background:#fff4d6;border-color:#e0a800}.pb-paper{color:#fff;background:#d93025;border-color:#d93025}.pb-paper:hover{background:#b3261e}.pb-file{background:var(--surface-2)}.pb-file.off{opacity:.45;cursor:not-allowed}@media (max-width:860px){.pb-papers li{flex-wrap:wrap}.pb-title{flex-basis:calc(100% - 50px)}.pb-actions{flex-wrap:wrap;margin-left:50px}}[data-section=igcse]{--accent:#0b6e4f;--accent-ink:#085a40;--accent-t:#dff5ec;--accent-grad:linear-gradient(135deg, #0b3d91 0%, #0b6e4f 55%, #c99a2e 100%);--on-accent:#fff}.igcse-band{background:var(--topic,var(--accent-grad))!important}.igcse-crumb{margin:0 0 8px}.igcse-crumb a{color:inherit;opacity:.9;font-weight:700;text-decoration:none}.page>.igcse-crumb a{color:var(--accent-ink)}.igd-card{border-radius:var(--r-lg);color:#3b2a00;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#fff7e0,#ffe7b3);border:2px solid #f2c14e;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:6px 0 26px;padding:18px 20px;text-decoration:none;transition:transform .2s;display:grid}.igd-card:hover{transform:translateY(-3px)}.igd-card.done{color:#0b3d26;background:linear-gradient(135deg,#e6f8ef,#c9f0db);border-color:#2fb675}.igd-flame{background:#ffffffb3;border-radius:20px;place-items:center;width:60px;height:60px;font-size:2rem;display:grid}.igd-text{gap:3px;display:grid}.igd-text small{opacity:.75;font-weight:700}.igd-text b{font-size:1.15rem}@media (max-width:560px){.igd-card{grid-template-columns:auto 1fr}.igd-card .btn{grid-column:1/-1}}.igs-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.igs-card{border-radius:var(--r-lg);background:var(--g);color:#fff;min-height:150px;box-shadow:var(--shadow-md);align-content:end;gap:6px;padding:16px;text-decoration:none;transition:transform .2s;display:grid;position:relative;overflow:hidden}.igs-card:hover{transform:translateY(-4px)}.igs-emoji{filter:drop-shadow(0 4px 8px #0003);font-size:2.6rem;position:absolute;top:8px;right:12px}.igs-code{background:#ffffff40;border-radius:6px;justify-self:start;padding:2px 8px;font-size:.75rem;font-weight:800}.igs-card b{font:700 1.2rem/1.15 var(--font-display), sans-serif}.igs-bar{background:#ffffff4d;border-radius:999px;height:6px;overflow:hidden}.igs-bar i{background:#fff;height:100%;display:block}.igs-card small{opacity:.9;font-weight:600}.igs-papers{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:24px;padding:16px 18px;text-decoration:none;display:grid}.igs-papers>span:first-child{font-size:1.8rem}.igs-papers b{display:block}.igs-papers span span{color:var(--ink-2);font-size:.92rem}.igt-summary{color:var(--accent-ink);font-weight:700}.igt-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.igt-list li{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;align-items:center;gap:14px;padding:14px;display:flex}.igt-list li.done{border-color:var(--accent)}.igt-n{background:var(--accent-t);width:40px;height:40px;color:var(--accent-ink);border-radius:12px;flex:none;place-items:center;font-weight:800;display:grid}.igt-list li.done .igt-n{background:var(--accent);color:#fff}.igt-main{min-width:0;color:var(--ink);flex:1;gap:3px;text-decoration:none;display:grid}.igt-main small{color:var(--ink-2);line-height:1.35}.igt-best{color:var(--ink-3);flex:none;font-size:.85rem;font-weight:700}.igt-actions{flex:none;gap:6px;display:flex}@media (max-width:700px){.igt-list li{flex-wrap:wrap}.igt-main{flex-basis:calc(100% - 54px)}.igt-best{margin-left:54px}}.igcse-notes{max-width:820px}.ign-head small{color:var(--accent-ink);font-weight:700}.ign-head h1{margin:4px 0 8px;font-size:clamp(1.6rem,5vw,2.4rem)}.ign-head p{color:var(--ink-2);font-size:1.08rem}.ign-block{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);margin-top:18px;padding:18px}.ign-block h2{margin:0 0 12px;font-size:1.15rem}.ign-points{gap:8px;margin:0;padding-left:22px;line-height:1.5;display:grid}.ign-terms{gap:8px;margin:0;display:grid}.ign-terms>div{background:var(--surface-2);border-radius:10px;grid-template-columns:minmax(120px,30%) 1fr;gap:12px;padding:8px 10px;display:grid}.ign-terms dt{color:var(--accent-ink);font-weight:800}.ign-terms dd{margin:0}@media (max-width:560px){.ign-terms>div{grid-template-columns:1fr;gap:2px}}.ign-example{background:#f3f7ff}.ign-example ol{gap:6px;margin:8px 0 0;padding-left:22px;display:grid}.ign-tip{border-radius:var(--r-lg);background:#fff6dc;margin-top:18px;padding:14px 18px}.ign-tip p{margin:4px 0 0}.ign-quiz{border-radius:var(--r-lg);background:var(--accent-grad);color:#fff;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;padding:18px 20px;display:flex}.ign-quiz>div{flex:240px;gap:2px;display:grid}.ign-quiz .btn.primary{color:var(--accent-ink)!important;background:#fff!important}.ign-nav{justify-content:space-between;gap:12px;margin-top:18px;font-weight:700;display:flex}.ign-nav a{color:var(--accent-ink);text-decoration:none}.igq{max-width:760px;margin:0 auto}.igq-top{align-items:center;gap:10px;margin-bottom:8px;display:flex}.igq-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.igq-count{color:var(--ink-3);font-weight:700}.igq-dots{gap:5px;margin:0 0 12px;padding:0;list-style:none;display:flex}.igq-dots li{background:var(--border);border-radius:999px;flex:1;height:6px}.igq-dots li.now{background:var(--accent)}.igq-dots li.ok{background:var(--ok)}.igq-dots li.no{background:var(--no)}.igq-tag{background:var(--accent-t);color:var(--accent-ink);border-radius:999px;margin-bottom:10px;padding:3px 10px;font-size:.8rem;font-weight:700;display:inline-block}.igq-end,.igd-done,.igd-start{background:var(--surface);border:1px solid var(--border);max-width:640px;box-shadow:var(--shadow-md);text-align:center;border-radius:28px;margin:10px auto;padding:26px 22px}.igq-score{font:700 1.8rem/1 var(--font-display), sans-serif;color:var(--accent-ink)}.igq-review{text-align:left;margin-top:18px}.igq-review h2{font-size:1.1rem}.igq-review ol{gap:12px;padding-left:20px;display:grid}.igq-review small{color:var(--accent-ink);font-weight:700}.igq-review p{margin:4px 0}.igq-right{color:var(--ok);font-weight:700}.igq-notes{color:var(--accent-ink);font-weight:700}.igd-big{font-size:3.4rem}.igd-streak{font-size:1.2rem;font-weight:800}[data-section=checkpoint]{--accent:#6a3fd6;--accent-ink:#5530b5;--accent-t:#eee7ff;--accent-grad:linear-gradient(135deg, #6a3fd6 0%, #2e7cf6 55%, #18b8a0 100%);--on-accent:#fff}.switch .dot.cp{background:linear-gradient(135deg,#6a3fd6,#2e7cf6 55%,#18b8a0)}@media (max-width:680px){.tb-dot.cp{background:linear-gradient(135deg,#6a3fd6,#2e7cf6 55%,#18b8a0)}}.wk-card{color:#1e2466;background:linear-gradient(135deg,#eef0ff,#dce1ff);border-color:#7c8cf8}.wk-how{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:24px;display:grid}.wk-how>div{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);gap:4px;padding:14px 16px;display:grid}.wk-how span{color:var(--ink-2);font-size:.94rem;line-height:1.4}.wk-list{gap:10px;margin:0 0 26px;padding:0;list-style:none;display:grid}.wk-list li{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;align-items:center;gap:14px;padding:12px 14px;display:flex}.wk-list li.done{border-color:#2fb675}.wk-emoji{background:var(--g);border-radius:14px;flex:none;place-items:center;width:48px;height:48px;font-size:1.6rem;display:grid}.wk-name{flex:1;gap:2px;min-width:0;display:grid}.wk-name small{color:var(--ink-3);font-weight:700}.wk-score{color:var(--ink-3);flex:none;font-size:.9rem;font-weight:800}.wk-list li.done .wk-score{color:#1e8a55}.wk-list li.retry{border-color:#f0a93b}.wk-list li.retry .wk-score{color:#b36b00}@media (max-width:520px){.wk-list li{flex-wrap:wrap}.wk-name{flex-basis:calc(100% - 62px)}.wk-score{flex:1;margin-left:62px}}.wk-past{gap:8px;display:grid}.wk-past>div{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 14px;display:flex}.wk-past>div>b{min-width:150px}.wk-past>div>span{flex-wrap:wrap;gap:6px;display:flex}.wk-past a{background:var(--surface-2);color:var(--ink-3);border-radius:999px;padding:3px 10px;font-size:.85rem;font-weight:700;text-decoration:none}.wk-past a.on{color:#1e8a55;background:#ddf5e8}.wk-past a.low{color:#b36b00;background:#fff0d6}.wp{max-width:820px;margin:0 auto}.wp-start .wp-kicker{color:var(--accent-ink);font-weight:800;display:block}.wp-start h1{margin:4px 0}.wp-done{color:#1e6b45;background:#ddf5e8;border-radius:12px;padding:8px 12px;font-weight:700}.wp-done.old,.wp-done.retry{color:#7a5600;background:#fff3d6}.wp-done a{color:inherit}.wp-pass{color:#b36b00;font-weight:700}.wp-grid{text-align:left;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px 18px;margin:14px 0;padding:0;list-style:none;display:grid}.wp-grid li{align-items:center;gap:10px;display:flex}.wp-opts.letters{gap:6px;margin:0;display:flex}.wp-opts.letters button{border-radius:12px;padding:4px}.wp-opts.letters button b{width:32px;height:32px}.wp-nums{flex-wrap:wrap;gap:6px;display:flex}.wp-nums span{color:#b42318;background:#ffe3e3;border-radius:10px;place-items:center;min-width:34px;height:34px;font-weight:800;display:grid}.wp-topics{gap:6px;padding:0;list-style:none;display:grid}.wp-topics a{color:var(--accent-ink);font-weight:700;text-decoration:none}.wp-choices{text-align:left;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.wp-choices>div{background:var(--surface-2);border-radius:18px;align-content:start;gap:8px;padding:16px;display:grid}.wp-choices span{color:var(--ink-2);font-size:.94rem;line-height:1.4}.wp-choices .btn{justify-content:center}@media (max-width:600px){.wp-choices{grid-template-columns:1fr}}.wp-bar{z-index:5;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:999px;align-items:center;gap:12px;margin-bottom:14px;padding:10px 12px 10px 16px;display:flex;position:sticky;top:8px}.wp-clock{font:800 1.2rem var(--font-display), sans-serif;font-variant-numeric:tabular-nums}.wp-clock.low{color:var(--no)}.wp-count{color:var(--ink-3);flex:1;font-size:.9rem;font-weight:700}.wp-qs{gap:14px;margin:0;padding:0;list-style:none;display:grid}.wp-qs>li{background:var(--surface);border:1px solid var(--border);border-radius:20px;gap:12px;padding:16px;display:flex}.wp-qs>li>div{flex:1;min-width:0}.wp-n{background:var(--accent-t);width:34px;height:34px;color:var(--accent-ink);border-radius:10px;flex:none;place-items:center;font-weight:800;display:grid}.wp-q{overflow-wrap:anywhere;line-height:1.5}.wp-opts{gap:8px;margin-top:10px;display:grid}.wp-opts button{border:2px solid var(--border);background:var(--surface);min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.wp-opts button>span{overflow-wrap:anywhere;min-width:0}.wp-opts button b{background:var(--surface-2);border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.wp-opts button:hover{border-color:var(--accent)}.wp-opts button.on{border-color:var(--accent);background:var(--accent-t)}.wp-opts button.on b{background:var(--accent);color:#fff}.wp-end{margin:18px auto 0;display:flex}.wp-steps{text-align:left;gap:6px;max-width:420px;margin:0 auto 14px;display:grid}.wp-score{justify-content:center;align-items:center;gap:10px;margin:18px 0 6px;font-weight:800;display:flex}.wp-score input{border:2px solid var(--border);width:90px;font:800 1.4rem var(--font-display), sans-serif;text-align:center;border-radius:12px;padding:10px}.wp-self{justify-items:center;gap:4px;display:grid}.wp-review{max-width:820px}.wp-yours{color:var(--no)}@page paper{size:A4 portrait;margin:14mm 14mm 16mm}.pp-doc{background:#e9ecf2;min-height:100vh;padding:16px}.pp-toolbar{z-index:5;max-width:210mm;box-shadow:var(--shadow-md);color:#333;background:#fff;border-radius:16px;align-items:center;gap:12px;margin:0 auto 14px;padding:8px 10px;font-size:.9rem;display:flex;position:sticky;top:8px}.pp-toolbar span{flex:1;min-width:0}.pp-sheet{color:#111;background:#fff;max-width:210mm;margin:0 auto;padding:16mm 14mm;font:11.5pt/1.45 Arial,Helvetica,sans-serif;box-shadow:0 6px 30px #00000026}.pp-head{border-bottom:3px solid #111;justify-content:space-between;gap:16px;padding-bottom:10px;display:flex}.pp-head small{letter-spacing:.06em;text-transform:uppercase;color:#555;font-weight:700}.pp-head h1{color:#111;margin:2px 0;font:700 20pt/1.1 Arial,Helvetica,sans-serif}.pp-head p{margin:0}.pp-meta{text-align:right;align-content:start;justify-items:end;gap:4px;display:grid}.pp-meta span{border:1.5px solid #111;padding:2px 10px;font-weight:700}.pp-candidate{grid-template-columns:auto 2fr auto 1fr auto 1fr;align-items:end;gap:8px;margin:14px 0;font-weight:700;display:grid}.pp-candidate i,.pp-total i{border-bottom:1.5px solid #111;min-width:40px;height:1.4em;display:inline-block}.pp-rules{border:1.5px solid #111;grid-template-columns:1fr 1fr;gap:14px;padding:10px 12px;display:grid}.pp-rules ul{margin:4px 0 0;padding-left:18px}.pp-qs{margin:16px 0 0;padding:0;list-style:none}.pp-qs>li{break-inside:avoid;border-bottom:1px solid #ccc;gap:10px;padding:10px 0 14px;display:flex}.pp-qs>li>div{flex:1;min-width:0}.pp-qs p{margin:0 0 8px}.pp-n{flex:none;width:26px;font-weight:700}.pp-mark{flex:none;align-self:end;font-weight:700}.pp-opts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;margin:0;padding:0;list-style:none;display:grid}.pp-opts li{align-items:baseline;gap:8px;display:flex}.pp-box{border:1.5px solid #111;flex:none;width:14px;height:14px;transform:translateY(2px)}.pp-total{text-align:right;margin-top:18px;font-size:13pt;font-weight:700}.pp-total i{min-width:60px}.pp-note{margin:12px 0}.pp-scheme{border-collapse:collapse;width:100%}.pp-scheme th,.pp-scheme td{text-align:left;vertical-align:top;border:1px solid #999;padding:6px 8px}.pp-scheme th{background:#eee}.pp-scheme tr{break-inside:avoid}.pp-scheme td:first-child,.pp-scheme td:last-child{text-align:center;width:36px;font-weight:700}.pp-scheme td small{color:#666;margin-top:4px;display:block}.pp-scheme .pp-sum td{text-align:right;font-weight:700}.pp-foot{color:#666;text-align:center;border-top:1px solid #ccc;margin-top:18px;padding-top:8px;font-size:9pt}@media (max-width:600px){.pp-doc{padding:8px}.pp-sheet{padding:18px 14px;font-size:10.5pt}.pp-head{flex-direction:column}.pp-meta{text-align:left;justify-items:start}.pp-candidate{grid-template-columns:auto 1fr}.pp-rules,.pp-opts{grid-template-columns:1fr}.pp-toolbar span{display:none}}@media print{.pp-doc{page:paper;background:0 0;min-height:0;padding:0}body:has(.pp-doc)>:not(main){display:none!important}.pp-sheet{max-width:none;box-shadow:none;padding:0}}.prep-banner{color:#fff}.prep-banner.checkpoint{background:linear-gradient(135deg,#6a3fd6 0%,#2e7cf6 55%,#18b8a0 100%)}.prep-banner.igcse{background:linear-gradient(135deg,#0b3d91 0%,#0b6e4f 55%,#c99a2e 100%)}.prep-banner .kicker{opacity:.9}.prep-banner .games-banner-art span{background:#ffffff38}.typed-answer{flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;display:flex}.typed-answer label{flex:200px;min-width:0}.typed-answer input,.wp-typed input{border:2px solid var(--border);background:var(--surface);width:100%;color:var(--ink);font:700 1.15rem var(--font-body,inherit);border-radius:16px;padding:14px 16px}.typed-answer input:focus,.wp-typed input:focus{border-color:var(--accent);outline:none}.typed-answer input:disabled{opacity:.8}.typed-unit{color:var(--ink-2);font-weight:800}.wp-typed{align-items:center;gap:10px;margin-top:10px;display:flex}.wp-typed input{flex:1;min-width:0;padding:10px 12px;font-size:1rem}.wp-typed.letters{flex:1;min-width:0;margin:0}.wp-error{text-align:center;margin-top:12px}.pp-line{align-items:flex-end;gap:8px;margin:14px 0 4px;font-weight:700;display:flex}.pp-line i{border-bottom:1.5px dotted #111;flex:0 60%;height:1.4em}.mine-row{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:-12px 0 26px;display:grid}.mine-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--ink);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.mine-card>span:first-child{font-size:1.8rem}.mine-card>span:nth-child(2){flex:1;gap:4px;min-width:0;display:grid}.mine-card small{color:var(--ink-2)}.mine-card.due{background:#fff8ea;border-color:#f0a93b}.mine-weak{flex-wrap:wrap;gap:6px;display:flex}.mine-weak a{color:#9a2d12;background:#ffe9e4;border-radius:999px;padding:4px 10px;font-size:.88rem;font-weight:700;text-decoration:none}.mine-weak a small{color:inherit;opacity:.75;font-weight:600}.mastery{border-radius:999px;margin-right:8px;padding:2px 8px;font-size:.75rem;font-weight:800;display:inline-block}.mastery.weak{color:#b42318;background:#ffe3e3}.mastery.ok{color:#8a5300;background:#fff0d6}.mastery.strong{color:#1e6b45;background:#ddf5e8}.parent-papers{gap:8px;margin:14px 0;padding:0;list-style:none;display:grid}.parent-papers li{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 14px;display:flex}.parent-papers li>span:last-child{color:var(--ink-3);margin-left:auto;font-size:.9rem;font-weight:700}.parent-papers li.done>span:last-child{color:#1e8a55}.parent-papers li.retry>span:last-child{color:#b36b00}.parent-tip{margin:0 0 8px}.parent-tip>span{font-size:1.8rem}.wk-cert{border-radius:var(--r-lg);color:#4a3500;background:linear-gradient(135deg,#fff3c4,#ffe08a);border:2px solid #f2c14e;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 14px;padding:14px 18px;font-size:1.05rem;text-decoration:none;display:flex}.wk-cert span{font-weight:700}.wk-cert-mini{margin-left:6px;text-decoration:none}[data-section=ai]{--accent:#e0457b;--accent-ink:#b8285c;--accent-t:#ffe6ef;--accent-grad:linear-gradient(135deg, #ff8a3d 0%, #e0457b 50%, #7b5bff 100%);--on-accent:#fff}.switch .dot.ai{background:linear-gradient(135deg,#ff8a3d,#e0457b 50%,#7b5bff)}@media (max-width:680px){.tb-dot.ai{background:linear-gradient(135deg,#ff8a3d,#e0457b 50%,#7b5bff)}}.prep-banner.ai{background:linear-gradient(135deg,#ff8a3d 0%,#e0457b 50%,#7b5bff 100%)}.igs-card.mine{outline:4px solid var(--accent);outline-offset:3px}.igs-for{color:var(--accent-ink);background:#fff;border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:800;position:absolute;top:10px;left:12px}.igs-card:has(.igs-for) .igs-code{margin-top:26px}.ai-play{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.ai-play-card{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--ink);grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:18px;text-decoration:none;transition:transform .2s;display:grid}.ai-play-card:hover{transform:translateY(-3px)}.ai-play-card>span:nth-child(2){gap:3px;display:grid}.ai-play-card small{color:var(--accent-ink);font-weight:800}.ai-play-card b{font:700 1.2rem var(--font-display), sans-serif}.ai-play-card>span:nth-child(2)>span{color:var(--ink-2);font-size:.94rem}.ai-play-card .btn{grid-column:2;justify-self:start}.ai-play-emoji{background:var(--accent-t);border-radius:20px;place-items:center;width:64px;height:64px;font-size:2.2rem;display:grid}.ai-play-page{max-width:820px}.ai-play-page .sub{color:var(--ink-2);margin-bottom:18px}.robot{gap:16px;display:grid}.robot-head{align-items:flex-start;gap:14px;display:flex}.robot-bot{font-size:3.4rem;line-height:1;animation:4s ease-in-out infinite bob}.robot-say{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:6px 20px 20px;flex:1;padding:14px 16px;line-height:1.45}.robot-memory{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.robot-memory li{background:var(--surface-2);border:2px dashed var(--border);border-radius:14px;justify-items:center;gap:2px;padding:8px 4px;font-size:1.7rem;display:grid}.robot-memory li small{color:var(--ink-3);min-height:1em;font-size:.7rem;font-weight:800}.robot-memory li.now{border-color:var(--accent);border-style:solid}.robot-memory li.animal{background:#e5f8ee;border-style:solid;border-color:#9bddb8}.robot-memory li.vehicle{background:#e7eeff;border-style:solid;border-color:#a9bef5}.robot-memory li.oops small{color:#b42318}.robot-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);text-align:center;border-radius:24px;justify-items:center;gap:10px;padding:20px;display:grid}.robot-big{font-size:3.6rem;line-height:1}.robot-choices{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.robot-choices .btn{justify-content:center;min-width:140px;font-size:1.1rem}.robot-tests{gap:8px;margin:0;padding:0;list-style:none;display:grid}.robot-tests li{background:var(--surface);border:2px solid var(--border);animation:pop .3s var(--ease);border-radius:16px;align-items:center;gap:12px;padding:10px 14px;display:flex}.robot-tests li.ok{border-color:#9bddb8}.robot-tests li.no{background:#fff4f4;border-color:#f5a3a3}.robot-tests li>span:nth-child(2){flex:1;gap:2px;min-width:0;display:grid}.robot-tests .robot-big{font-size:2.2rem}.robot-tests small{color:var(--ink-2)}.robot-mark{font-size:1.4rem;font-weight:800}.robot-tests li.ok .robot-mark{color:#1e8a55}.robot-tests li.no .robot-mark{color:#b42318}.robot-go{justify-self:center}.robot-end{gap:12px;display:grid}.robot-lesson{background:var(--accent-t);border-radius:18px;padding:14px 16px}.robot-lesson p{margin:6px 0;line-height:1.5}.robot-lesson a{color:var(--accent-ink);font-weight:700}@media (max-width:520px){.robot-memory{grid-template-columns:repeat(3,minmax(0,1fr))}}.nw{gap:16px;display:grid}.nw-sentence{background:var(--surface);border:2px solid var(--border);min-height:64px;font:700 1.4rem/1.4 var(--font-display), sans-serif;overflow-wrap:anywhere;border-radius:20px;padding:16px 18px}.nw-caret{vertical-align:-3px;background:var(--accent);width:3px;height:1.1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.nw-next{background:var(--surface);border:1px solid var(--border);border-radius:20px;gap:10px;padding:16px;display:grid}.nw-next ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.nw-next li button{border:2px solid var(--border);background:var(--surface);width:100%;color:var(--ink);font:inherit;cursor:pointer;text-align:left;border-radius:12px;grid-template-columns:minmax(80px,30%) 1fr 48px;align-items:center;gap:10px;padding:8px 10px;display:grid}.nw-next li button:hover{border-color:var(--accent);background:var(--accent-t)}.nw-word{overflow-wrap:anywhere;font-weight:800}.nw-bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.nw-bar i{background:var(--accent-grad);height:100%;display:block}.nw-p{color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums;font-weight:800}.nw-auto{flex-wrap:wrap;gap:8px;display:flex}.nw-data{background:var(--surface-2);border-radius:18px;padding:12px 16px}.nw-data summary{cursor:pointer;font-weight:800}.nw-data ul{columns:2 240px;color:var(--ink-2);margin:10px 0;padding-left:20px;font-size:.92rem}.nw-data li.new{color:var(--accent-ink);font-weight:700}.nw-add{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.nw-add label{flex:240px;gap:4px;font-size:.9rem;font-weight:700;display:grid}.nw-add input{border:2px solid var(--border);background:var(--surface);color:var(--ink);font:inherit;border-radius:12px;padding:10px 12px}[data-section=kurdi]{--accent:#1e9a50;--accent-ink:#157a3e;--accent-t:#e2f6ea;--accent-grad:linear-gradient(135deg, #e53935 0%, #f9b701 50%, #1e9a50 100%);--on-accent:#fff}.switch .dot.ku{font-family:var(--font-kurdi), sans-serif;background:linear-gradient(135deg,#e53935,#f9b701 50%,#1e9a50)}@media (max-width:680px){.tb-dot.ku{font-family:var(--font-kurdi), sans-serif;background:linear-gradient(135deg,#e53935,#f9b701 50%,#1e9a50)}}.prep-banner.kurdi{background:linear-gradient(135deg,#e53935 0%,#f59e0b 45%,#1e9a50 100%)}[data-section=arabic]{--accent:#0f8a80;--accent-ink:#0b6b63;--accent-t:#dff5f2;--accent-grad:linear-gradient(135deg, #0f8a80 0%, #2bb3a3 55%, #e6a817 100%);--on-accent:#fff}.switch .dot.ar{font-family:var(--font-naskh), serif;background:linear-gradient(135deg,#0f8a80,#e6a817)}@media (max-width:680px){.tb-dot.ar{font-family:var(--font-naskh), serif;background:linear-gradient(135deg,#0f8a80,#e6a817)}}.prep-banner.arabic{background:linear-gradient(135deg,#0b6b63 0%,#0f8a80 50%,#e6a817 100%)}.rtl{font-family:var(--font-kurdi), "Noto Sans Arabic", sans-serif}.rtl:lang(ar),[lang=ar] .rtl{font-family:var(--font-naskh), "Noto Naskh Arabic", serif}.lang-band h1{font-size:clamp(2.4rem,7vw,3.6rem)}.lang-title{margin:4px 0;font-size:clamp(2rem,6vw,3rem)}.lang-stages{direction:rtl;flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.lang-stages button{border:2px solid var(--border);background:var(--surface);min-width:96px;color:var(--ink);font:inherit;cursor:pointer;border-radius:16px;justify-items:center;gap:0;padding:8px 16px;display:grid}.lang-stages button b,.lang-stages button .rtl{font-size:1.15rem;font-weight:700}.lang-stages button small{color:var(--ink-3);font-size:.75rem;font-weight:700}.lang-stages button.on{border-color:var(--accent);background:var(--accent-t)}.lang-games{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.lang-card{border-radius:var(--r-lg);background:var(--surface);border:2px solid var(--border);min-height:190px;box-shadow:var(--shadow-sm);color:var(--ink);align-content:start;gap:6px;padding:18px;text-decoration:none;transition:transform .2s;display:grid;position:relative}.lang-card:hover{border-color:var(--accent);transform:translateY(-4px)}.lang-card>.rtl{font-size:1.6rem;line-height:1.3}.lang-card small{color:var(--ink-2);line-height:1.4}.lang-card.alphabet{background:linear-gradient(135deg,#fff7da,#ffe9a8);border-color:#f2c14e}.lang-card.writing{background:linear-gradient(160deg, #fff0ee, var(--surface) 60%)}.lang-card.reading{background:linear-gradient(160deg, #e8f7ee, var(--surface) 60%)}.lang-card-emoji{font-size:2.2rem}.lang-card-art{letter-spacing:.1em;color:#b7791f;font-size:2.6rem;font-weight:700}.lang-card-en{color:var(--accent-ink);font-size:.85rem;font-weight:800}.lang-stars{color:var(--border);letter-spacing:2px;margin-top:auto;font-size:1.3rem}.lang-stars .on{color:#f9b701}.lang-start h1 .rtl{font-size:1.15em}.lang-start .btn .rtl,.lang-item .btn .rtl{font-weight:700}.lang-start .btn small,.lang-item .btn small{opacity:.8;font-weight:600}.lang-item{text-align:center;justify-items:center;gap:14px;display:grid}.lang-say{gap:2px;margin:0;display:grid}.lang-say .rtl{font-size:1.35rem}.lang-say small{color:var(--ink-3);font-weight:600}.lang-word{font-size:clamp(2.6rem,11vw,4rem);font-weight:700;line-height:1.4}.lang-word.big{background:var(--surface);border:2px solid var(--border);border-radius:24px;padding:4px 26px;font-size:clamp(3rem,13vw,4.6rem)}.lang-blank{border-bottom:5px dashed var(--accent);min-width:1.1em;color:var(--accent);margin-left:2px;display:inline-block}.lang-first{color:var(--accent-ink)}.lang-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;max-width:560px;display:grid}.lang-opt{border:3px solid var(--border);background:var(--surface);min-height:92px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:22px;place-items:center;transition:transform .15s;display:grid}.lang-opt:hover{border-color:var(--accent);transform:translateY(-3px)}.lang-opt.rtl{font-size:3rem;font-weight:700;line-height:1}.lang-opt.pic{font-size:3.2rem}.lang-opt.right{animation:pop .3s var(--ease);background:#e5f8ee;border-color:#2fb675}.lang-opt.wrong{opacity:.45}.lang-opt.shake,.tile.shake{animation:.4s shake}@media (max-width:480px){.lang-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.lang-built{background:var(--surface);border:3px dashed var(--border);border-radius:22px;min-width:200px;min-height:84px;padding:6px 22px;font-size:clamp(2.4rem,10vw,3.6rem);font-weight:700;line-height:1.4}.lang-built.done{color:#157a3e;border-style:solid;border-color:#2fb675}.lang-left{color:var(--border);letter-spacing:4px;margin-right:6px}.lang-tiles .tile.rtl{min-width:64px;font-size:2rem;font-weight:700}.lang-tiles.words .tile.rtl{min-width:0;padding:10px 16px;font-size:1.5rem}.lang-sentence{background:var(--surface);border:2px solid var(--border);border-radius:22px;max-width:640px;padding:14px 22px;font-size:clamp(1.7rem,6vw,2.4rem);font-weight:700;line-height:1.7}.lang-sentence.built{border-style:dashed;min-width:240px;min-height:80px}.lang-sentence.built.done{border-style:solid;border-color:#2fb675}.lang-en{margin:0;font-style:italic}.lang-trace-ref{align-items:center;gap:10px;font-size:1.1rem;display:flex}.lang-trace-ref>span{font-size:2rem}.lang-trace-ref .rtl{font-size:1.8rem}.lang-trace-ref small{color:var(--ink-3);font-weight:600}.lang-trace{aspect-ratio:3/2;border:3px solid var(--border);width:min(100%,520px);box-shadow:var(--shadow-md);background:#fff linear-gradient(#0000 calc(50% - 1px),#f1eef9 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px));border-radius:26px;position:relative;overflow:hidden}.lang-trace.good{border-color:#2fb675}.lang-trace canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.lang-trace canvas+canvas{cursor:crosshair}.lang-trace-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.lang-games-title{align-items:baseline;gap:8px;margin:28px 0 12px;font-size:1.4rem;display:flex}.lang-games-title .rtl{font-size:1.5rem}.lang-games-title small{color:var(--ink-3);font-size:.85rem;font-weight:700}.lang-card.play{background:linear-gradient(160deg, #eef0ff, var(--surface) 60%)}.lang-arcade{text-align:center;gap:10px;display:grid}.lang-target{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.lang-target-letter{background:var(--accent);min-width:76px;height:76px;color:var(--on-accent);box-shadow:var(--shadow-sm);border-radius:22px;place-items:center;padding:0 10px;font-size:3rem;font-weight:700;line-height:1;display:grid}.balloon-body.rtl{font-family:var(--font-kurdi), sans-serif;font-size:clamp(1.8rem,7vw,2.4rem)}.balloon-body.rtl:lang(ar){font-family:var(--font-naskh), serif}.balloon-body.rtl.words{font-size:clamp(.9rem,3.6vw,1.2rem);line-height:1.5}.race-gate.rtl{font-family:var(--font-kurdi), sans-serif;overflow-wrap:normal;white-space:nowrap;padding:6px 2px;font-size:clamp(.85rem,3.7vw,1.45rem);line-height:1.5}.race-gate.rtl:lang(ar){font-family:var(--font-naskh), serif}.mode-letters .race-gate.rtl{font-size:clamp(1.8rem,7vw,2.4rem)}.lang-memory{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;max-width:560px;display:grid}.lang-mem-card{aspect-ratio:3/4;cursor:pointer;perspective:600px;background:0 0;border:0;padding:0}.lang-mem-inner{width:100%;height:100%;transition:transform .4s var(--ease);transform-style:preserve-3d;display:block;position:relative}.lang-mem-card.up .lang-mem-inner{transform:rotateY(180deg)}.lang-mem-back,.lang-mem-front{backface-visibility:hidden;box-shadow:var(--shadow-sm);border-radius:18px;place-items:center;display:grid;position:absolute;inset:0}.lang-mem-back{background:var(--accent-grad);color:#fff;border:3px solid #ffffff80;font-size:2rem}.lang-mem-front{background:var(--surface);border:3px solid var(--border);padding:4px;transform:rotateY(180deg)}.lang-mem-front .rtl{overflow-wrap:anywhere;font-size:clamp(1rem,4.4vw,1.6rem);font-weight:700;line-height:1.5}.lang-mem-pic{font-size:clamp(2rem,9vw,3rem)}.lang-mem-card.found .lang-mem-front{background:#e5f8ee;border-color:#2fb675}@media (prefers-reduced-motion:reduce){.lang-mem-inner{transition:none}}.lang-abc{grid-template-columns:minmax(260px,1fr) 2fr;align-items:start;gap:20px;display:grid}.lang-letter-card{background:var(--surface);border:2px solid var(--border);box-shadow:var(--shadow-md);text-align:center;border-radius:26px;justify-items:center;gap:12px;padding:20px;display:grid;position:sticky;top:80px}.lang-letter-big{color:var(--accent-ink);font-size:7rem;font-weight:700;line-height:1.2}.lang-forms{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.lang-forms>span{background:var(--surface-2);border-radius:14px;justify-items:center;min-width:64px;padding:6px 8px;display:grid}.lang-forms .rtl{font-size:2.2rem;font-weight:700;line-height:1.3}.lang-forms small{color:var(--ink-3);font-size:.7rem;font-weight:700}.lang-letter-word{align-items:center;gap:10px;display:flex}.lang-letter-word>span{font-size:2.4rem}.lang-letter-word .rtl{font-size:2rem}.lang-letter-word small{color:var(--ink-3);font-weight:600}.lang-letters{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:8px;display:grid}.lang-letters button{aspect-ratio:1;border:2px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:18px;font-size:2.2rem;font-weight:700;transition:transform .15s}.lang-letters button:hover{border-color:var(--accent);transform:translateY(-2px)}.lang-letters button.on{border-color:var(--accent);background:var(--accent-t);color:var(--accent-ink)}@media (max-width:720px){.lang-abc{grid-template-columns:1fr}.lang-letter-card{position:static}.lang-letter-big{font-size:5rem}.lang-letters{grid-template-columns:repeat(auto-fill,minmax(56px,1fr))}}
