.math-game{--mg-panel-bg: rgba(255, 255, 255, .96);--mg-ink: var(--color-text);--mg-accent: var(--purple-500)}.math-game .mg-level{flex-shrink:0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--white);color:var(--purple-600);font-family:var(--font-heading);font-weight:800;box-shadow:var(--shadow-1);white-space:nowrap}.math-game .mg-level:empty{display:none}.math-game .mg-loading{display:grid;place-items:center;gap:var(--space-3);min-height:60vh;text-align:center;font-family:var(--font-heading);color:var(--purple-600)}.math-game .mg-loading .btn{margin-top:var(--space-3)}.math-game [hidden]{display:none!important}.math-game .mg-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:var(--space-4);width:calc(100% - 48px);max-width:1600px;margin:0 auto var(--space-5);height:calc(100dvh - 110px);min-height:520px}.math-game .mg-wrap[hidden]{display:none}.math-game .mg-stage{position:relative;min-height:420px;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-3);box-shadow:var(--shadow-2)}.math-game #mg-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.math-game .mg-overlay{position:absolute;inset:0;pointer-events:none}.math-game .mg-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--mg-panel-bg);color:var(--mg-ink);box-shadow:var(--shadow-2);overflow-y:auto;font-family:var(--font-body)}.math-game .mg-progress{margin:0;font-family:var(--font-heading);font-weight:700;font-size:var(--text-base);color:var(--color-text-light)}.math-game .mg-q{display:flex;align-items:flex-start;gap:var(--space-3)}.math-game .mg-question{flex:1;margin:0;font-size:var(--text-md);line-height:1.5;font-weight:700}:is(.math-game,.math-warmup) .mg-read{flex-shrink:0;width:var(--tap-min);height:var(--tap-min);border-radius:50%;border:2px solid var(--purple-200);background:var(--purple-50);font-size:1.2rem;cursor:pointer}:is(.math-game,.math-warmup) .mg-read:hover{background:var(--purple-100)}.math-game .mg-eq{margin:0;text-align:center;font-family:var(--font-heading);font-weight:800;font-size:clamp(1.8rem,3.2vw,2.6rem);letter-spacing:.02em;color:var(--purple-600);font-variant-numeric:tabular-nums}.math-game .mg-state{margin:0;min-height:1.5em;text-align:center;font-size:var(--text-md);font-weight:700;color:var(--teal-700)}:is(.math-game,.math-warmup) .mg-controls{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}:is(.math-game,.math-warmup) .mg-controls button,.math-game .mg-actions .btn{min-height:56px;font-family:var(--font-heading);font-weight:800;font-size:var(--text-md)}:is(.math-game,.math-warmup) .mg-add,:is(.math-game,.math-warmup) .mg-choice,:is(.math-game,.math-warmup) .mg-done,:is(.math-game,.math-warmup) .mg-step{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-width:96px;padding:0 var(--space-5);border:2px solid var(--purple-300);border-radius:var(--radius-md);background:var(--white);color:var(--color-text);box-shadow:var(--shadow-1);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast)}:is(.math-game,.math-warmup) .mg-choice{min-width:88px;font-size:var(--text-xl)!important;font-variant-numeric:tabular-nums}:is(.math-game,.math-warmup) .mg-add:hover,:is(.math-game,.math-warmup) .mg-choice:hover,:is(.math-game,.math-warmup) .mg-step:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}:is(.math-game,.math-warmup) .mg-add:active,:is(.math-game,.math-warmup) .mg-choice:active,:is(.math-game,.math-warmup) .mg-step:active{transform:scale(.96)}:is(.math-game,.math-warmup) .mg-done{background:var(--purple-500);color:var(--white);border-color:var(--purple-600)}.math-game .mg-dot{width:18px;height:18px;border-radius:50%;background:var(--dot);box-shadow:inset 0 -3px #0000002e}.math-game .mg-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.math-game .mg-hint.pulse{animation:mg-pulse 1.2s var(--ease-in-out) infinite}@keyframes mg-pulse{50%{transform:scale(1.06);box-shadow:0 0 0 6px var(--yellow-200)}}.math-game .mg-feedback{margin:0;min-height:1.6em;text-align:center;font-weight:700;font-size:var(--text-md)}.math-game .mg-feedback.good{color:var(--green-700)}.math-game .mg-feedback.notyet{color:var(--notyet-700, var(--teal-700))}.math-game .mg-simple{margin:0;font-size:var(--text-base);color:var(--color-text-light)}.math-game .mg-pips{position:absolute;top:var(--space-3);left:50%;transform:translate(-50%);display:flex;gap:8px;margin:0;padding:6px 10px;list-style:none;border-radius:var(--radius-pill);background:#ffffffd9;box-shadow:var(--shadow-1)}.math-game .mg-pips li{width:14px;height:14px;border-radius:50%;background:var(--purple-100);border:2px solid var(--purple-300)}.math-game .mg-pips li.done{background:var(--green-400);border-color:var(--green-500)}.math-game .mg-pips li.now{background:var(--yellow-400);border-color:var(--yellow-600);transform:scale(1.25)}.math-game .mg-bubble{position:absolute;left:var(--space-4);bottom:var(--space-4);max-width:min(60%,360px);margin:0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);background:var(--white);color:var(--color-text);font-family:var(--font-body);font-weight:700;box-shadow:var(--shadow-2);opacity:0;transform:translateY(8px) scale(.96);pointer-events:none}.math-game .mg-bubble.show{animation:mg-bubble 3.2s var(--ease-out) both}@keyframes mg-bubble{0%{opacity:0;transform:translateY(8px) scale(.9)}8%,82%{opacity:1;transform:none}to{opacity:0;transform:translateY(-4px)}}.math-game .mg-counter,.math-game .mg-tag{position:absolute;left:0;top:0;min-width:56px;padding:2px 14px;border-radius:var(--radius-pill);background:var(--white);color:var(--purple-600);text-align:center;font-family:var(--font-heading);font-weight:800;font-size:1.6rem;line-height:1.4;box-shadow:var(--shadow-2);font-variant-numeric:tabular-nums}.math-game .mg-counter:empty,.math-game .mg-tag:empty{display:none}.math-game .mg-tag{font-size:1.2rem;min-width:44px;padding:0 10px}.math-game .mg-model{display:none}.math-game.mg-no-webgl .mg-model{display:grid;place-items:center;position:absolute;inset:48px 16px 16px;overflow:auto}.math-game.mg-no-webgl #mg-canvas{display:none}.math-game.mg-no-webgl .mg-stage{background:var(--surface-2)}.mt-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:6px;width:min(100%,calc(var(--cols) * 52px))}.mt-cell{aspect-ratio:1;border-radius:50%;border:3px dashed var(--purple-300);background:transparent}.mt-cell.have{background:var(--yellow-300);border:3px solid var(--yellow-600)}.mt-cell.added{background:var(--purple-400);border:3px solid var(--purple-600)}.mg-stepper{display:flex;align-items:center;justify-content:center;gap:var(--space-3);flex-basis:100%;font-weight:700}.mg-stepper .mg-step{min-width:64px!important;flex:0 0 auto!important;font-size:1.6rem!important}.mg-guess{min-width:3ch;text-align:center;font-family:var(--font-heading);font-weight:800;font-size:2.2rem;font-variant-numeric:tabular-nums}.bal-model{position:relative;width:min(100%,420px);height:200px}.bal-beam{position:absolute;left:5%;right:5%;top:60px;height:14px;border-radius:7px;background:var(--purple-500);display:flex;justify-content:space-between;transition:transform .4s var(--ease-out)}.bal-side{transform:translateY(-130%);min-width:90px;padding:8px 12px;border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-1);text-align:center;font-size:1.4rem}.bal-post{position:absolute;left:50%;top:66px;width:14px;height:120px;margin-left:-7px;background:var(--purple-300);border-radius:7px}@media(min-width:901px){.math-game .mg-panel>*{flex-shrink:0}.math-game .mg-actions{position:sticky;bottom:calc(-1 * var(--mg-pad-b, var(--space-4)));z-index:2;margin-bottom:calc(-1 * var(--space-2));padding-bottom:var(--space-2);background:inherit}.math-game .mg-panel{--mg-pad-b: var(--space-4);container:mg-panel / size}}@container mg-panel (min-height: 620px){.math-game:not([data-game=story-problems]) .mg-controls :is(.mg-choice,.mg-add,.mg-step,.mg-done){min-height:76px}}@media(min-width:901px)and (max-height:900px){.math-game .mg-wrap{height:calc(100dvh - 100px);min-height:480px;margin-bottom:var(--space-3)}html[data-band=early] .math-game .mg-wrap{height:calc(100dvh - 112px)}.math-game .mg-panel{gap:var(--space-2);padding:var(--space-3) var(--space-4);--mg-pad-b: var(--space-3)}.math-game .mg-question{line-height:1.4}.math-game .mg-feedback{min-height:1.4em}}@media(max-width:900px){.math-game.exercise-page{display:flex;flex-direction:column}.math-game .mg-wrap{grid-template-columns:1fr;grid-template-rows:minmax(300px,1fr) auto;flex:1 0 auto;height:auto;min-height:0;width:calc(100% - 16px);gap:var(--space-3);margin-bottom:var(--space-3)}.math-game .mg-stage{height:auto;min-height:0}.math-game .mg-actions{position:sticky;bottom:0;z-index:2;margin-block:calc(-1 * var(--space-2));padding-block:var(--space-2);background:inherit}.math-game .mg-panel{padding:var(--space-3) var(--space-4);overflow:visible}:is(.math-game,.math-warmup) .mg-add,:is(.math-game,.math-warmup) .mg-choice,:is(.math-game,.math-warmup) .mg-done,:is(.math-game,.math-warmup) .mg-step{flex:1 1 40%;padding:0 var(--space-3)}}@media(min-width:601px)and (max-width:900px){.math-game .mg-wrap{grid-template-rows:minmax(270px,1fr) auto}}@media(pointer:coarse){:is(.math-game,.math-warmup) .mg-controls button{min-height:60px}}html[data-band=early] :is(.math-game,.math-warmup) .mg-add,html[data-band=early] :is(.math-game,.math-warmup) .mg-choice,html[data-band=early] :is(.math-game,.math-warmup) .mg-done,html[data-band=early] :is(.math-game,.math-warmup) .mg-step{min-height:68px;border-radius:28px;border-width:3px;box-shadow:var(--cl-puff),var(--shadow-1)}html[data-band=early] :is(.math-game,.math-warmup) .mg-choice{font-size:2rem!important}html[data-band=early] .math-game .mg-panel{background:var(--cl-cream)}html[data-band=developer] :is(.math-game,.math-warmup) .mg-add,html[data-band=developer] :is(.math-game,.math-warmup) .mg-choice,html[data-band=developer] :is(.math-game,.math-warmup) .mg-done,html[data-band=developer] :is(.math-game,.math-warmup) .mg-step{border:0;border-radius:0;box-shadow:var(--pq-frame-3),var(--pq-bevel)}html[data-band=developer] .math-game .mg-panel,html[data-band=developer] .math-game .mg-stage{border-radius:4px;box-shadow:var(--pq-frame),0 8px #1d1b2e40}html[data-band=developer] .math-game .mg-level,html[data-band=developer] .math-game .mg-progress{font-family:var(--pq-tiny);font-weight:400;letter-spacing:.04em}html[data-band=developer] .math-game .mg-pips li{border-radius:2px}html[data-band=tween] .math-game{--mg-panel-bg: var(--st-paper);--mg-ink: var(--st-ink)}html[data-band=tween] :is(.math-game,.math-warmup) .mg-add,html[data-band=tween] :is(.math-game,.math-warmup) .mg-choice,html[data-band=tween] :is(.math-game,.math-warmup) .mg-done,html[data-band=tween] :is(.math-game,.math-warmup) .mg-step{border:3px solid var(--st-ink);border-radius:12px;box-shadow:3px 3px 0 var(--st-ink)}html[data-band=tween] :is(.math-game,.math-warmup) .mg-done{background:var(--st-pink);color:var(--st-chalk)}html[data-band=tween] .math-game .mg-panel,html[data-band=tween] .math-game .mg-stage{border:3px solid var(--st-ink);box-shadow:6px 6px 0 var(--st-ink)}html[data-band=tween] .math-game .mg-level,html[data-band=tween] .math-game .mg-progress{font-family:var(--st-mono)}html[data-band=tween] .math-game .mg-eq{color:var(--st-ink)}html[data-band=tween] .math-game .mg-state{color:#007f93}html[data-band=tween] .math-game .mg-counter{background:var(--st-yellow);color:var(--st-ink);border:3px solid var(--st-ink);box-shadow:3px 3px 0 var(--st-ink)}@media(prefers-reduced-motion:reduce){.math-game .mg-hint.pulse,.math-game .mg-bubble.show{animation:none}.math-game .mg-bubble.show{opacity:1;transform:none}}.math-hub{padding:var(--space-3) var(--space-4) var(--space-7)}html[data-band=tween] .math-hub,html[data-band=developer] .math-hub{background:transparent}.math-hub>*{max-width:1200px;margin-left:auto;margin-right:auto}.hub-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4);padding:var(--space-2) 0;padding-right:calc(var(--tap-min) + var(--space-3))}.hub-head .uni-switch{margin:0}.hub-hello h1{margin:0;font-size:clamp(1.6rem,3vw,2.4rem);color:var(--purple-600);line-height:1.1}.hub-hello p{margin:4px 0 0;font-family:var(--font-body);font-weight:700;font-size:var(--text-md);color:var(--color-text)}.hub-hello.with-hero{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-3);align-items:center}.hub-hero{grid-row:span 2;width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.18))}.hub-hero[hidden]{display:none}.hub-rank{display:grid;grid-template-columns:auto auto;gap:2px 10px;align-items:center;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-2);font-family:var(--font-heading)}.hub-rank-level{grid-row:span 2;padding:6px 12px;border-radius:var(--radius-md);background:var(--purple-500);color:var(--white);font-weight:800}.hub-rank-title{font-weight:800;color:var(--color-text)}.hub-rank-xp{font-size:var(--text-base);color:var(--color-text-light)}.hub-world{position:relative;height:min(58vh,560px);min-height:340px;margin-top:var(--space-3);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-3);box-shadow:var(--shadow-2)}.hub-world canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.hub-world.no-webgl{display:none}.hub-tip{position:absolute;left:50%;bottom:var(--space-3);transform:translate(-50%);margin:0;max-width:calc(100% - 32px);padding:6px 14px;border-radius:var(--radius-pill);background:#ffffffe6;box-shadow:var(--shadow-1);font-family:var(--font-body);font-weight:700;text-align:center;pointer-events:none}.hub-card{position:absolute;top:var(--space-3);right:var(--space-3);display:grid;gap:6px;min-width:200px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-3);font-family:var(--font-body);animation:pop-in var(--dur-base) var(--ease-bounce) both}.hub-card strong{font-family:var(--font-heading);font-size:var(--text-lg);color:var(--purple-600)}.hub-card[hidden],.hub-card [hidden]{display:none!important}.hub-next{margin-top:var(--space-5)}.hub-next h2,.hub-list h2,.hub-collection h2{font-size:var(--text-lg);color:var(--purple-600);margin:0 0 var(--space-3)}.hub-next[hidden]{display:none}.hub-next-card{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-2);color:var(--color-text);text-decoration:none}.hub-next-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-3)}.hub-next-name{flex:1;font-family:var(--font-heading);font-weight:800;font-size:var(--text-xl)}.hub-icon{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--game, #8b5cf6) 22%,white);font-size:1.9rem;flex-shrink:0}.hub-icon.has-art{display:block}.hub-icon.has-art img{display:block;box-sizing:border-box;width:100%;height:100%;padding:3px;object-fit:contain}.hub-game .hub-icon.has-art,.hub-next-card .hub-icon.has-art{width:64px;height:64px}.hub-list{margin-top:var(--space-5)}.hub-list ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-3)}.hub-game>a,.hub-game>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:var(--space-3);align-items:center;min-height:84px;padding:var(--space-3);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-1);color:var(--color-text);text-decoration:none;border-left:6px solid var(--game)}.hub-game .hub-icon{grid-row:span 2}.hub-game-name{font-family:var(--font-heading);font-weight:800;font-size:var(--text-md);line-height:1.2}.hub-game-meta,.hub-soon{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text-light)}.hub-game.ready>a:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);text-decoration:none}.hub-game.soon>div{opacity:.62;filter:saturate(.4)}.hub-collection{margin-top:var(--space-5)}.hub-shelf{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:#ffffffb3;font-family:var(--font-body);font-weight:700;min-height:72px;align-items:center}.hub-token{position:relative;display:inline-block}.hub-token img{width:56px;height:56px;object-fit:contain}.hub-token small{position:absolute;right:-4px;bottom:-4px;font-size:1.1rem}@media(min-width:801px)and (max-width:1100px){.hub-head{grid-template-columns:auto auto;justify-content:space-between;row-gap:var(--space-3);padding-right:calc(var(--tap-min) * 2 + var(--space-3))}.hub-head .hub-hello{grid-column:1 / -1;grid-row:2}}@media(max-width:800px){.hub-head{grid-template-columns:1fr;justify-items:start;padding-right:calc(var(--tap-min) * 2 + var(--space-3))}.hub-head .uni-switch{order:-1}.hub-world{height:46vh;min-height:300px}.hub-card{left:var(--space-3);right:var(--space-3);top:auto;bottom:52px}.hub-next-name{font-size:var(--text-lg)}.hub-next-card .btn{padding:0 var(--space-3)}}@media(max-width:800px){.math-hub{padding-top:calc(var(--tap-min) + var(--space-4))}}@media(max-width:420px){.math-hub{padding:calc(var(--tap-min) + var(--space-4)) var(--space-2) var(--space-6)}.hub-head{padding-right:0}.hub-hero{width:84px;height:84px}.hub-list ul{grid-template-columns:1fr}}html[data-band=early] .hub-game>a,html[data-band=early] .hub-game>div,html[data-band=early] .hub-next-card,html[data-band=early] .hub-rank{border-radius:28px;box-shadow:var(--cl-puff),var(--shadow-1)}html[data-band=developer] .hub-game>a,html[data-band=developer] .hub-game>div,html[data-band=developer] .hub-next-card,html[data-band=developer] .hub-rank,html[data-band=developer] .hub-world{border-radius:4px;box-shadow:var(--pq-frame-3),0 5px #1d1b2e40}html[data-band=developer] .hub-hello h1{font-family:var(--pq-pixel)}html[data-band=tween] .hub-hello h1{font-family:var(--st-title);color:var(--st-yellow);text-shadow:3px 3px 0 var(--st-ink);font-weight:400}html[data-band=tween] .hub-hello p{color:var(--st-chalk)}html[data-band=tween] .hub-next h2,html[data-band=tween] .hub-list h2,html[data-band=tween] .hub-collection h2{color:var(--st-chalk);font-family:var(--st-marker);font-weight:400}html[data-band=tween] .hub-game>a,html[data-band=tween] .hub-game>div,html[data-band=tween] .hub-next-card,html[data-band=tween] .hub-rank{background:var(--st-paper);color:var(--st-ink);border:3px solid var(--st-ink);border-left-width:8px;border-left-color:var(--game);box-shadow:4px 4px 0 var(--st-ink);border-radius:12px}html[data-band=tween] .hub-world{border:3px solid var(--st-ink);box-shadow:6px 6px 0 var(--st-ink)}html[data-band=tween] .hub-shelf{background:#f4f1ea1a;color:var(--st-chalk)}.math-game.mg-no-webgl .mg-overlay{display:none}.hub-warmup{margin-top:var(--space-4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-weight:700}.hub-warmup[hidden]{display:none}html[data-band=tween] .hub-warmup{color:var(--st-chalk)}.hub-game[hidden]{display:none}@media(max-width:900px){.math-game.mg-no-webgl .mg-stage{height:auto;min-height:300px}.math-game.mg-no-webgl .mg-model{position:relative;inset:auto;padding:56px 12px 16px;overflow:visible}}.math-game.mg-no-webgl .mg-bubble{display:none}.mg-sr,.math-game .mg-sr,.math-warmup .mg-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.math-game .mg-foxy,.math-warmup .mg-foxy,.math-game .results-stars[hidden],.math-game .results-sticker[hidden]{display:none}.mg-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:5;border-radius:inherit}.mg-confetto{position:absolute;display:block;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.55) 0 18%,transparent 42%),var(--c);box-shadow:inset 0 -3px #3b2a242e,0 2px 3px #3b2a242e;will-change:transform,opacity}.mg-confetto.s1{border-radius:999px}.mg-confetto.s2{border-radius:30% 70% 60% 40%/50% 40% 60% 50%}html[data-band=early] .exercise-page.math-game{--tap-min: 64px}html[data-band=early] .math-game .back-link{min-height:64px;display:inline-flex;align-items:center;padding-inline:20px}html[data-band=early] .math-game .mg-actions .btn,html[data-band=early] :is(.math-game,.math-warmup) .mg-controls button{min-height:68px}html[data-band=early] :is(.math-game,.math-warmup) .mg-read{width:72px;height:72px;border:0;border-radius:50%;background:var(--cl-sun) var(--cl-grain);color:var(--cl-ink);font-size:1.9rem;box-shadow:var(--cl-puff),0 5px 0 var(--cl-sun-edge),0 10px 18px #d69a1040;transition:transform .12s ease,box-shadow .12s ease}html[data-band=early] :is(.math-game,.math-warmup) .mg-read:hover{background-color:#ffd65e;transform:translateY(-2px)}html[data-band=early] :is(.math-game,.math-warmup) .mg-read:active{transform:translateY(4px);box-shadow:var(--cl-puff),0 1px 0 var(--cl-sun-edge)}html[data-band=early] :is(.math-game,.math-warmup) .mg-read:focus-visible{outline:4px solid var(--cl-sky);outline-offset:3px}html[data-band=early] .math-game .mg-question{font-size:clamp(1.3rem,1.9vw,1.6rem);line-height:1.4;align-self:center}html[data-band=early] .math-game .mg-state{font-size:clamp(1.15rem,1.6vw,1.35rem)}html[data-band=early] .math-game .mg-progress{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}html[data-band=early] .math-game .mg-pips{gap:10px;padding:8px 12px;background:#fffdf8e6;box-shadow:var(--cl-puff),0 3px #3b2a2424}html[data-band=early] .math-game .mg-pips li{width:22px;height:22px;border:0;border-radius:46% 54% 50% 50%/55% 50% 50% 45%;background:#ffe3c2;box-shadow:inset 0 4px #ffffff8c,inset 0 -3px #3b2a241f;transition:transform .25s cubic-bezier(.3,1.6,.5,1),background .2s}html[data-band=early] .math-game .mg-pips li.done{background:var(--cl-leaf);box-shadow:inset 0 4px #ffffff73,inset 0 -3px 0 var(--cl-leaf-edge)}html[data-band=early] .math-game .mg-pips li.now{background:var(--cl-sun);box-shadow:inset 0 4px #ffffff80,inset 0 -3px 0 var(--cl-sun-edge);transform:scale(1.25)}html[data-band=early] .math-game .mg-feedback,html[data-band=early] .math-game .mg-simple{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;min-height:0}html[data-band=early] .math-game{--foxy: clamp(96px, 12vw, 150px)}html[data-band=early] .math-game .mg-foxy{display:block;position:absolute;left:8px;bottom:4px;width:var(--foxy);height:var(--foxy);z-index:3;pointer-events:none;filter:drop-shadow(0 6px 5px rgba(59,42,36,.22))}html[data-band=early] .math-game .mg-foxy img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 100%}html[data-band=early] .math-game.mg-no-webgl .mg-foxy{position:absolute}html[data-band=early] .math-game .mg-bubble{left:calc(var(--foxy) + 14px);bottom:calc(var(--foxy) * .5);z-index:4;max-width:min(58%,400px);padding:12px 20px;border-radius:26px;background:#fffdf8 var(--cl-grain);color:var(--cl-ink);font-family:var(--font-body);font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.3;box-shadow:var(--cl-puff),0 4px #3b2a2424,0 10px 20px #3b2a241f}html[data-band=early] .math-game .mg-bubble:before{content:"";position:absolute;left:-9px;bottom:16px;width:22px;height:22px;border-radius:4px;background:inherit;transform:rotate(45deg);box-shadow:-2px 2px #3b2a240f}html[data-band=early] .math-game .mg-bubble[data-mood=yes]{background-color:#eafbe7}html[data-band=early] .math-game .mg-bubble[data-mood=no]{background-color:#e8f5ff}html[data-band=early] .math-game.mg-no-webgl .mg-bubble{display:block}html[data-band=early] .math-game :is(.mg-controls,.mg-model) .is-right{background-color:var(--cl-leaf)!important;color:#fff!important;border-color:var(--cl-leaf-edge)!important;box-shadow:var(--cl-puff),0 5px 0 var(--cl-leaf-edge)!important;animation:mg-boing .6s cubic-bezier(.3,1.6,.5,1)}html[data-band=early] .math-game :is(.mg-controls,.mg-model) .is-wrong{background-color:#e8f5ff!important;border-color:var(--cl-sky)!important;animation:mg-wobble .7s ease-in-out}html[data-band=early] .math-game :is(.mg-controls,.mg-model) :is(button,[data-answer]){transition:background-color .45s ease,border-color .45s ease,transform .12s ease}@keyframes mg-boing{0%{transform:scale(1)}35%{transform:scale(1.14,.88)}60%{transform:scale(.94,1.08)}to{transform:scale(1)}}@keyframes mg-wobble{0%,to{transform:rotate(0)}20%{transform:rotate(-4deg)}45%{transform:rotate(3deg)}70%{transform:rotate(-1.5deg)}}html[data-band=early] :is(.math-game,.math-warmup) .mg-controls{gap:14px}html[data-band=early] :is(.math-game,.math-warmup) .mg-choice{white-space:nowrap}@media(min-width:1200px){html[data-band=early] .math-game .mg-wrap{grid-template-columns:minmax(0,1fr) minmax(380px,440px)}html[data-band=early] :is(.math-game,.math-warmup) .mg-controls{gap:18px}html[data-band=early] :is(.math-game,.math-warmup) .mg-controls :is(.mg-choice,.mg-add,.mg-step,.mg-done){min-height:84px;padding:0 26px}html[data-band=early] :is(.math-game,.math-warmup) .mg-choice{font-size:2.4rem!important;min-width:108px}}@media(min-width:901px)and (max-width:1199px){html[data-band=early] .math-game .mg-wrap{grid-template-columns:minmax(0,1fr) minmax(340px,38%);gap:14px;width:calc(100% - 28px)}html[data-band=early] .math-game .mg-panel{padding:16px 18px;--mg-pad-b: 16px}html[data-band=early] .math-game .mg-controls{gap:10px}html[data-band=early] :is(.math-game,.math-warmup) .mg-controls :is(.mg-choice,.mg-add,.mg-step,.mg-done){padding:0 16px;min-width:0}}@media(min-width:601px)and (max-width:900px){html[data-band=early] :is(.math-game,.math-warmup) .mg-controls :is(.mg-choice,.mg-add,.mg-step,.mg-done){flex:1 1 28%;min-height:76px}}@media(max-width:600px){html[data-band=early] .math-game{--foxy: 84px}html[data-band=early] .math-game .mg-bubble{max-width:calc(100% - var(--foxy) - 30px);font-size:1.05rem;padding:10px 14px}html[data-band=early] :is(.math-game,.math-warmup) .mg-read{width:64px;height:64px;font-size:1.6rem}}html[data-band=early] .math-game.exercise-page .results-card[data-foxy=jump]:before{background-image:url(/images/early/foxy-jump.webp)}html[data-band=early] .math-game.exercise-page .results-card[data-foxy=wow]:before{background-image:url(/images/early/foxy-wow.webp)}html[data-band=early] .math-game.exercise-page .results-card[data-foxy=oops]:before{background-image:url(/images/early/foxy-oops.webp)}html[data-band=early] .math-game .results-xp,html[data-band=early] .math-game .results-progress{display:none!important}html[data-band=early] .math-game .results-stars{display:flex;justify-content:center;gap:6px;margin:0 0 4px;font-size:clamp(56px,9vw,76px);line-height:1}html[data-band=early] .math-game .results-stars span{color:#f3e3c8;text-shadow:0 4px 0 #e2cfae;transform:rotate(calc((var(--k) - 1) * 10deg)) translateY(calc(var(--k) * (2 - var(--k)) * -10px))}html[data-band=early] .math-game .results-stars span.on{color:var(--cl-sun);text-shadow:0 4px 0 var(--cl-sun-edge),0 8px 14px rgba(214,154,16,.3);animation:mg-star .5s cubic-bezier(.3,1.6,.5,1) calc(.35s + var(--k) * .22s) both}@keyframes mg-star{0%{opacity:0;scale:.2}to{opacity:1;scale:1}}html[data-band=early] .math-game .results-sticker{display:block;width:132px;height:auto;margin:4px auto 0;padding:8px;background:#fff;border-radius:30px;transform:rotate(-6deg);box-shadow:var(--cl-puff),0 5px #3b2a2424,0 12px 22px #3b2a2424;animation:mg-boing .6s cubic-bezier(.3,1.6,.5,1) 1.1s both}@media(prefers-reduced-motion:reduce){html[data-band=early] .math-game :is(.mg-controls,.mg-model) :is(.is-right,.is-wrong),html[data-band=early] .math-game .results-stars span.on,html[data-band=early] .math-game .results-sticker{animation:none}}html[data-band=early] .math-hub .hub-rank,html[data-band=early] .math-hub .hub-game-meta{display:none!important}html[data-band=early] .math-hub .hub-world{background:linear-gradient(180deg,#9fd6ff,#d6efff 45%,#fff6e8)}html[data-band=early] .math-hub .hub-card strong{font-size:1.5rem}html[data-band=early] .math-hub .hub-card{border-radius:28px;box-shadow:var(--cl-puff),0 6px #3b2a2424,0 16px 30px #3b2a2424}html[data-band=early] .math-hub .hub-tip{font-size:1.1rem;padding:8px 18px}html[data-band=early] .math-warmup .wu-card{background:#fffdf8 var(--cl-grain);border-radius:40px;box-shadow:var(--cl-puff),0 8px #3b2a241f,0 20px 40px #3b2a241f;padding-top:var(--space-4)}html[data-band=early] .math-warmup .mg-progress{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}html[data-band=early] .math-warmup .mg-foxy{display:block;width:128px;height:128px;margin:-8px auto -6px;pointer-events:none;filter:drop-shadow(0 6px 5px rgba(59,42,36,.2))}html[data-band=early] .math-warmup .mg-foxy img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 100%}html[data-band=early] .math-warmup .mg-choice.is-picked{background-color:var(--cl-sun)!important;border-color:var(--cl-sun-edge)!important;animation:mg-boing .5s cubic-bezier(.3,1.6,.5,1)}html[data-band=early] .math-warmup .back-link{min-height:64px;display:inline-flex;align-items:center;padding-inline:20px}.math-warmup .mg-choice{min-height:64px;font-family:var(--font-heading);font-weight:800}.math-game[data-sidekick]{--kick: clamp(96px, 11vw, 148px)}.math-game[data-sidekick] .mg-foxy{display:block;position:absolute;left:10px;bottom:6px;width:var(--kick);height:var(--kick);z-index:3;pointer-events:none}.math-game[data-sidekick] .mg-foxy img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 100%;transform-origin:50% 100%}.math-game[data-sidekick=developer] .mg-foxy{filter:drop-shadow(0 5px 0 rgba(29,27,46,.3))}.math-game[data-sidekick=tween] .mg-foxy{filter:drop-shadow(4px 4px 0 rgba(12,12,14,.85))}.math-game[data-sidekick] .mg-foxy[data-pose=sleep] img{opacity:.92}.math-game[data-sidekick] .mg-bubble{left:calc(var(--kick) + 18px);bottom:calc(var(--kick) * .45);z-index:4;max-width:min(58%,420px)}.math-game[data-sidekick].mg-no-webgl .mg-bubble{display:block}html[data-band=developer] .math-game .mg-bubble{padding:10px 16px;border-radius:0;background:var(--pq-cloud);color:var(--pq-ink);font-family:var(--pq-ui);font-weight:800;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.3;box-shadow:var(--pq-frame-3),0 6px #1d1b2e40}html[data-band=developer] .math-game .mg-bubble[data-mood=yes]{background:#eaffd6}html[data-band=developer] .math-game .mg-bubble[data-mood=no]{background:#e3f3ff}html[data-band=developer] .math-game[data-sidekick] .mg-bubble:before{content:"";position:absolute;left:-11px;bottom:14px;width:8px;height:8px;background:var(--pq-ink);box-shadow:4px -4px 0 var(--pq-ink),4px 0 0 var(--pq-ink)}html[data-band=tween] .math-game .mg-bubble{padding:10px 16px;border:3px solid var(--st-ink);border-radius:10px;background:var(--st-paper);color:var(--st-ink);font-family:var(--st-marker);font-weight:400;font-size:clamp(1.05rem,1.55vw,1.25rem);line-height:1.3;box-shadow:4px 4px 0 var(--st-ink);rotate:-1.5deg}html[data-band=tween] .math-game .mg-bubble[data-mood=yes]{background:var(--st-yellow)}html[data-band=tween] .math-game .mg-bubble[data-mood=no]{background:#bff6ff}html[data-band=developer] .math-game :is(.mg-controls,.mg-model) .is-right{background-color:var(--pq-lime)!important;color:var(--pq-ink)!important;box-shadow:var(--pq-frame-3),inset 0 4px #fff9,inset 0 -5px #1d1b2e40,0 0 0 7px #ffcf3a8c!important;animation:pq-get .5s steps(5,end)}html[data-band=developer] .math-game :is(.mg-controls,.mg-model) .is-wrong{background-color:#ffd9c4!important;color:var(--pq-ink)!important;box-shadow:var(--pq-frame-3),inset 0 -5px #ff7a2f73!important;animation:pq-shake .45s steps(6,end)}@keyframes pq-get{0%{transform:none}30%{transform:translateY(-6px) scale(1.08)}60%{transform:translateY(2px) scale(.97)}to{transform:none}}@keyframes pq-shake{0%,to{transform:none}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}html[data-band=tween] .math-game :is(.mg-controls,.mg-model) .is-right{background-color:var(--st-cyan)!important;color:var(--st-ink)!important;border-color:var(--st-ink)!important;box-shadow:5px 5px 0 var(--st-ink)!important;animation:st-slap .42s cubic-bezier(.2,.9,.3,1.3)}html[data-band=tween] .math-game :is(.mg-controls,.mg-model) .is-wrong{background-color:#ffd0e4!important;color:var(--st-ink)!important;border-color:var(--st-pink)!important;animation:st-nope .5s ease-in-out}@keyframes st-slap{0%{transform:scale(1)}40%{transform:scale(1.1) rotate(-3deg)}to{transform:none}}@keyframes st-nope{0%,to{transform:none}25%{transform:translate(-7px) rotate(-1.5deg)}50%{transform:translate(6px) rotate(1deg)}75%{transform:translate(-3px)}}.mg-bit{position:absolute;display:block;background:var(--c);will-change:transform,opacity}.mg-confetti-developer .mg-bit{box-shadow:inset 0 3px #ffffff80,inset 0 -3px #1d1b2e40,0 0 0 2px #1d1b2e}.mg-confetti-developer .mg-bit.k2{clip-path:polygon(33% 0,66% 0,66% 33%,100% 33%,100% 66%,66% 66%,66% 100%,33% 100%,33% 66%,0 66%,0 33%,33% 33%);box-shadow:none}.mg-confetti-tween .mg-bit{border:3px solid #0c0c0e;border-radius:50%;outline:3px solid #f4f1ea}.mg-confetti-tween .mg-bit.k1{border-radius:4px}.mg-confetti-tween .mg-bit.k2{border:0;outline:0;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}html[data-band=developer] :is(.math-game,.math-warmup) .mg-read{width:56px;height:56px;border:0;border-radius:0;background:var(--pq-gold);font-size:1.4rem;box-shadow:var(--pq-frame-3),var(--pq-bevel)}html[data-band=developer] :is(.math-game,.math-warmup) .mg-read:hover{background:#ffe066}html[data-band=developer] :is(.math-game,.math-warmup) .mg-read:active{transform:translateY(3px)}html[data-band=tween] :is(.math-game,.math-warmup) .mg-read{width:56px;height:56px;border:3px solid var(--st-ink);background:var(--st-yellow);font-size:1.4rem;box-shadow:3px 3px 0 var(--st-ink)}html[data-band=tween] :is(.math-game,.math-warmup) .mg-read:hover{background:#ffe24d}html[data-band=tween] :is(.math-game,.math-warmup) .mg-read:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--st-ink)}html[data-band=developer] .math-game .mg-feedback.good{color:#2f7d1f}html[data-band=developer] .math-game .mg-feedback.notyet{color:#a1460f}html[data-band=tween] .math-game .mg-feedback.good{color:#007f93}html[data-band=tween] .math-game .mg-feedback.notyet{color:#c4105f}@media(min-width:601px)and (max-width:900px){html:is([data-band=developer],[data-band=tween]) :is(.math-game,.math-warmup) .mg-controls :is(.mg-choice,.mg-add,.mg-step,.mg-done){min-height:64px}}@media(max-width:600px){.math-game[data-sidekick]{--kick: 78px}.math-game[data-sidekick] .mg-bubble{max-width:calc(100% - var(--kick) - 30px);font-size:1rem;padding:8px 12px}}@media(prefers-reduced-motion:reduce){html:is([data-band=developer],[data-band=tween]) .math-game :is(.mg-controls,.mg-model) :is(.is-right,.is-wrong){animation:none}}html[data-band=tween] :is(.math-game,.math-warmup).exercise-page{background:transparent}html:is([data-band=developer],[data-band=tween]) .math-game .results-sticker{display:block;width:104px;height:104px;object-fit:contain;margin:6px auto 2px}html[data-band=developer] .math-game .results-sticker{padding:6px;background:#fff6cf;box-shadow:var(--pq-frame-3),var(--pq-bevel);animation:pq-get .5s steps(5,end) 1s both}html[data-band=tween] .math-game .results-sticker{rotate:-7deg;filter:drop-shadow(3px 3px 0 var(--st-ink));animation:st-slap .45s cubic-bezier(.2,.9,.3,1.3) 1s both}@media(prefers-reduced-motion:reduce){html:is([data-band=developer],[data-band=tween]) .math-game .results-sticker{animation:none}}html[data-band=tween] .math-game.exercise-page .results-card{overflow:visible;margin-top:56px;max-height:none}html[data-band=tween] .math-game.exercise-page .results-card:before{margin-top:-110px;height:170px}@media(max-height:760px){html[data-band=tween] .math-game.exercise-page .results-card{overflow-y:auto;margin-top:0;max-height:calc(100dvh - 32px)}html[data-band=tween] .math-game.exercise-page .results-card:before{margin-top:-10px;height:120px}}.math-warmup[data-sidekick] .mg-foxy{display:block;width:116px;height:116px;margin:-12px auto -8px;pointer-events:none}.math-warmup[data-sidekick] .mg-foxy img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 100%}.math-warmup[data-sidekick=developer] .mg-foxy{filter:drop-shadow(0 5px 0 rgba(29,27,46,.3))}.math-warmup[data-sidekick=tween] .mg-foxy{filter:drop-shadow(4px 4px 0 rgba(12,12,14,.85))}html[data-band=developer] .math-warmup .wu-card{border-radius:0;background:var(--pq-cloud);box-shadow:var(--pq-frame),var(--pq-bevel),0 10px #1d1b2e40}html[data-band=developer] .math-warmup .wu-eq{font-family:var(--pq-pixel);color:var(--pq-purple)}html[data-band=developer] .math-warmup .mg-choice.is-picked{background-color:var(--pq-gold)!important;animation:pq-get .5s steps(5,end)}html[data-band=tween] .math-warmup .wu-card{border:3px solid var(--st-ink);border-radius:18px;background:var(--st-paper);color:var(--st-ink);box-shadow:8px 8px 0 var(--st-pink)}html[data-band=tween] .math-warmup .wu-eq{color:var(--st-ink);text-shadow:3px 3px 0 var(--st-yellow)}html[data-band=tween] .math-warmup .mg-choice.is-picked{background-color:var(--st-cyan)!important;animation:st-slap .42s cubic-bezier(.2,.9,.3,1.3)}@media(prefers-reduced-motion:reduce){html:is([data-band=developer],[data-band=tween]) .math-warmup .mg-choice.is-picked{animation:none}}html:is([data-band=developer],[data-band=tween]) .math-hub .hub-tip{width:max-content;max-width:calc(100% - 32px);font-size:.95rem;padding:6px 14px}html[data-band=developer] .math-hub .hub-tip{border-radius:0;background:var(--pq-cloud);box-shadow:var(--pq-frame-3)}html[data-band=tween] .math-hub .hub-tip{background:var(--st-yellow);color:var(--st-ink);border:2px solid var(--st-ink);box-shadow:3px 3px 0 var(--st-ink)}html[data-band=developer] .math-hub .hub-card{border-radius:0;box-shadow:var(--pq-frame),var(--pq-bevel),0 8px #1d1b2e40}html[data-band=developer] .math-hub .hub-card strong{font-family:var(--pq-pixel);color:var(--pq-purple)}html[data-band=tween] .math-hub .hub-card{background:var(--st-paper);color:var(--st-ink);border:3px solid var(--st-ink);border-radius:12px;box-shadow:5px 5px 0 var(--st-pink)}html[data-band=tween] .math-hub .hub-card strong{font-family:var(--st-title);font-weight:400;color:var(--st-ink);font-size:1.6rem}@media(max-width:600px){html:is([data-band=developer],[data-band=tween]) .math-hub .hub-world{height:52vh}}html[data-band=developer] .math-warmup .mg-progress{font-family:var(--pq-tiny);letter-spacing:.06em;color:var(--pq-purple);margin:0}html[data-band=tween] .math-warmup .mg-progress{font-family:var(--st-mono);font-weight:700;color:var(--st-ink);margin:0}html:is([data-band=developer],[data-band=tween]) .math-warmup .mg-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));width:min(100%,460px);justify-self:center;gap:var(--space-3)}html:is([data-band=developer],[data-band=tween]) .math-warmup .mg-controls .mg-choice{min-height:76px;font-size:1.9rem!important;padding:0 var(--space-3)}html:is([data-band=developer],[data-band=tween]) .math-warmup .mg-progress{text-align:center}html[data-band=tween] :is(.math-game,.math-warmup).exercise-page .exercise-info h1{line-height:1.2;margin-bottom:2px}html:is([data-band=developer],[data-band=tween]) .math-game .mg-controls:has(>.mg-choice):not(:has(>:not(.mg-choice))){display:grid;grid-template-columns:repeat(auto-fit,minmax(68px,1fr));width:min(100%,460px);margin-inline:auto}html:is([data-band=developer],[data-band=tween]) .math-game .mg-controls:has(>.mg-choice:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}html:is([data-band=developer],[data-band=tween]) .math-game .mg-controls:has(>.mg-choice:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}html:is([data-band=developer],[data-band=tween]) .math-game .mg-controls:not(:has(>:not(.mg-choice)))>.mg-choice{min-width:0;padding:0 var(--space-2)}
