:root{--ink: #4a3f35;--ink-soft: #7a6a5c;--cream: #fff8ec;--cream-2: #fdeed3;--sun: #ffd966;--sun-deep: #f4b942;--leaf: #7ccf7c;--leaf-deep: #58b368;--sky: #aee3f5;--coral: #ff9b85;--pink: #ffb3c6;--lav: #c9a6ff;--water: #7ec8e3;--shadow: rgba(74, 63, 53, .25);--radius: 22px;--font: "ui-rounded", "Quicksand", "Varela Round", "Comic Sans MS", "Segoe UI", system-ui, sans-serif;--text-scale: 1}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;user-select:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}html,body{margin:0;padding:0;width:100%;height:100dvh;overflow:hidden;font-family:var(--font);color:var(--ink);background:linear-gradient(#bfe8f7,#7ec8e3);touch-action:none;overscroll-behavior:none}#game-canvas{position:fixed;inset:0;width:100%;height:100%;display:block;outline:none}#ui{position:fixed;inset:0;pointer-events:none;z-index:10}#ui>*{pointer-events:none}#ui button,#ui .pressable,#screens>*{pointer-events:auto}.hidden{display:none!important}.chip{display:inline-flex;align-items:center;gap:7px;background:var(--cream);border-radius:999px;padding:8px 16px 8px 10px;font-weight:800;font-size:calc(19px * var(--text-scale));box-shadow:0 3px 0 var(--shadow);border:3px solid #fff}.chip-icon{font-size:calc(21px * var(--text-scale))}.round-btn{width:54px;height:54px;border-radius:50%;border:3px solid #fff;background:var(--cream);font-size:calc(24px * var(--text-scale));font-family:var(--font);cursor:pointer;box-shadow:0 4px 0 var(--shadow);transition:transform .08s,box-shadow .08s;display:inline-flex;align-items:center;justify-content:center}.round-btn.big{width:66px;height:66px;font-size:calc(30px * var(--text-scale))}.round-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--shadow)}#btn-action.ready{background:#fffdf4;box-shadow:0 4px 0 var(--sun-deep),0 0 0 10px #ffd96657,0 0 22px #ffd9667a;animation:action-ready .85s ease-in-out infinite}#btn-action.idle{opacity:.72;filter:saturate(.9)}@keyframes action-ready{50%{transform:translateY(-2px) scale(1.07)}}.btn{font-family:var(--font);font-weight:800;font-size:calc(20px * var(--text-scale));color:var(--ink);background:var(--sun);border:3px solid #fff;border-radius:var(--radius);padding:14px 30px;cursor:pointer;box-shadow:0 5px 0 var(--sun-deep),0 8px 12px var(--shadow);transition:transform .08s,box-shadow .08s;min-height:52px}.btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--sun-deep)}.btn.green{background:var(--leaf);box-shadow:0 5px 0 var(--leaf-deep),0 8px 12px var(--shadow)}.btn.green:active{box-shadow:0 1px 0 var(--leaf-deep)}.btn.soft{background:var(--cream);box-shadow:0 5px #d8c9ae,0 8px 12px var(--shadow);font-size:calc(17px * var(--text-scale));padding:10px 22px}.btn.soft:active{box-shadow:0 1px #d8c9ae}.btn:disabled{filter:grayscale(.7);opacity:.6;cursor:default}#hud-top-left{position:absolute;top:max(12px,env(safe-area-inset-top));left:12px;display:flex;gap:8px}#hud-top-right{position:absolute;top:max(12px,env(safe-area-inset-top));right:12px;display:flex;gap:8px}#hud-bottom-left{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:12px}#hud-bottom-right{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));right:12px;display:flex;gap:10px}#joystick{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:max(28px,calc(env(safe-area-inset-bottom) + 18px));width:132px;height:132px;display:none;align-items:center;justify-content:center;pointer-events:none;opacity:.86}#joystick-base{width:112px;height:112px;border-radius:50%;border:4px solid rgba(255,255,255,.82);background:#fff8ec7a;box-shadow:0 8px 18px #4a3f3538,inset 0 0 0 8px #fff3;display:flex;align-items:center;justify-content:center}#joystick-knob{width:54px;height:54px;border-radius:50%;background:var(--sun);border:4px solid #fff;box-shadow:0 5px 0 var(--sun-deep),0 8px 12px #4a3f3538;transition:transform .06s linear}#joystick.active #joystick-base{background:#fffdf4ad;box-shadow:0 8px 18px #4a3f3547,0 0 0 7px #ffd96647}#joystick:not(.active) #joystick-base{animation:joystick-idle-pulse 2.1s ease-in-out infinite}@keyframes joystick-idle-pulse{50%{transform:scale(1.04);box-shadow:0 8px 18px #4a3f3542,0 0 0 8px #ffffff3d,0 0 0 15px #ffd9662e}}#proximity-prompt{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(92px,calc(env(safe-area-inset-bottom) + 88px));background:#fff8ecf0;border:3px solid #fff;border-radius:999px;padding:8px 14px;font-size:calc(15px * var(--text-scale));font-weight:900;box-shadow:0 4px 0 var(--shadow);pointer-events:none}@media(hover:none),(pointer:coarse){#joystick{display:flex}#hud-bottom-left{bottom:max(154px,calc(env(safe-area-inset-bottom) + 144px))}.round-btn.big{width:74px;height:74px;font-size:calc(34px * var(--text-scale))}}@media(max-width:760px){#joystick{display:flex}#hud-bottom-left{bottom:max(154px,calc(env(safe-area-inset-bottom) + 144px))}.round-btn.big{width:74px;height:74px;font-size:calc(34px * var(--text-scale))}}.egg-chip{padding-right:12px}#egg-bar{width:84px;height:14px;background:#e7d9bf;border-radius:999px;overflow:hidden}#egg-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--lav));transition:width .5s cubic-bezier(.34,1.56,.64,1)}#combo{position:absolute;top:86px;right:16px;font-size:calc(34px * var(--text-scale));font-weight:900;color:#fff;text-shadow:0 3px 0 var(--sun-deep),0 5px 8px var(--shadow);animation:combo-pop .35s cubic-bezier(.34,1.56,.64,1)}@keyframes combo-pop{0%{transform:scale(.3)}to{transform:scale(1)}}#banner{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);background:var(--cream);border:4px solid #fff;border-radius:var(--radius);box-shadow:0 5px 0 var(--shadow);padding:8px 28px 12px;text-align:center;animation:drop-in .45s cubic-bezier(.34,1.56,.64,1);width:max-content;max-width:min(92vw,560px)}@keyframes drop-in{0%{transform:translate(-50%,-120%)}to{transform:translate(-50%)}}#banner-instruction{font-size:calc(15px * var(--text-scale));font-weight:700;color:var(--ink-soft)}#banner-equation{font-size:clamp(26px,6vw,40px);font-weight:900;letter-spacing:2px}#banner-equation .slot{color:var(--coral);animation:slot-pulse 1.2s ease-in-out infinite;display:inline-block}@keyframes slot-pulse{50%{transform:scale(1.18)}}#banner.solved #banner-equation{color:var(--leaf-deep)}#banner.wiggle{animation:wiggle .4s}@keyframes wiggle{25%{transform:translate(-50%) rotate(-2deg)}75%{transform:translate(-50%) rotate(2deg)}}.frac{display:inline-flex;flex-direction:column;vertical-align:middle;line-height:1.05;font-size:.72em;margin:0 3px}.frac>.n{border-bottom:3px solid currentColor;padding:0 5px}.frac>.d{padding:0 5px}#verb-panel{position:absolute;bottom:max(96px,calc(env(safe-area-inset-bottom) + 84px));left:50%;transform:translate(-50%);background:var(--cream);border:3px solid #fff;border-radius:var(--radius);box-shadow:0 4px 0 var(--shadow);padding:10px 20px;font-size:calc(22px * var(--text-scale));font-weight:900;text-align:center;width:max-content;max-width:92vw}#verb-panel .sub{font-size:calc(14px * var(--text-scale));font-weight:700;color:var(--ink-soft)}#model-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-90%);background:var(--cream);border:4px solid var(--sky);border-radius:var(--radius);box-shadow:0 8px 18px var(--shadow);padding:14px 20px;text-align:center;animation:bubble-in .3s cubic-bezier(.34,1.56,.64,1);width:max-content;max-width:min(92vw,460px)}.mp-grid{display:grid;gap:3px;justify-content:center;margin:6px auto}.mp-cell{width:16px;height:16px;border-radius:5px;background:var(--leaf);animation:toast-in .25s backwards}.mp-cell.alt{background:var(--leaf-deep)}.mp-cell.b{background:var(--coral)}.mp-rowlabel{font-size:calc(12px * var(--text-scale));font-weight:900;color:var(--ink-soft);align-self:center;padding-left:5px}.mp-pv{display:flex;gap:3px;align-items:center;justify-content:center;margin:5px 0;flex-wrap:wrap}.mp-rod{width:56px;height:16px;border-radius:5px;background:var(--leaf);color:#fff;font-size:calc(11px * var(--text-scale));font-weight:900;display:flex;align-items:center;justify-content:center;animation:toast-in .25s backwards}.mp-rod.alt{background:var(--leaf-deep)}.mp-rod.b{background:var(--coral)}.mp-line{position:relative;height:34px;margin:12px 6px 2px;border-bottom:5px solid var(--ink-soft);border-radius:3px}.mp-tick{position:absolute;bottom:-10px;width:3px;height:14px;background:var(--ink-soft);border-radius:2px}.mp-mark{position:absolute;bottom:-2px;transform:translate(-50%);font-size:calc(22px * var(--text-scale));animation:slot-pulse 1.1s infinite}.mp-endlabel{position:absolute;bottom:-30px;transform:translate(-50%);font-size:calc(14px * var(--text-scale));font-weight:900}.mp-baskets{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:6px}.mp-basket{background:#fff;border:3px solid var(--cream-2);border-radius:14px;padding:6px 8px;min-width:52px}.mp-caption{font-size:calc(17px * var(--text-scale));font-weight:900;margin-top:8px}#bubble{position:absolute;bottom:max(96px,calc(env(safe-area-inset-bottom) + 84px));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;width:max-content;max-width:min(92vw,520px);background:#fff;border:4px solid var(--pink);border-radius:var(--radius);box-shadow:0 6px 14px var(--shadow);padding:12px 26px 14px 18px;animation:bubble-in .35s cubic-bezier(.34,1.56,.64,1);pointer-events:auto;cursor:pointer;user-select:none}#bubble:active{transform:translate(-50%,2px)}@keyframes bubble-in{0%{transform:translate(-50%,30px);opacity:0}to{transform:translate(-50%);opacity:1}}#bubble-face{font-size:calc(34px * var(--text-scale));filter:drop-shadow(0 2px 2px var(--shadow))}#bubble-text{font-size:calc(17px * var(--text-scale));font-weight:700;line-height:1.35}#bubble-text b{color:var(--leaf-deep)}#bubble-next{position:absolute;right:8px;bottom:5px;font-size:calc(14px * var(--text-scale));color:var(--pink);animation:next-bounce .9s ease-in-out infinite}@keyframes next-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}#verb-panel:not(.hidden)~#bubble{bottom:max(196px,calc(env(safe-area-inset-bottom) + 184px))}#cutscene-ui{position:absolute;inset:0;z-index:40;pointer-events:auto;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}#cutscene-ui.hidden{display:none}#cutscene-skip{position:absolute;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));opacity:.85}#cutscene-dialog{position:relative;display:flex;align-items:center;gap:12px;width:max-content;max-width:min(92vw,560px);margin-bottom:max(30px,calc(env(safe-area-inset-bottom) + 22px));background:#fff;border:4px solid var(--pink);border-radius:var(--radius);box-shadow:0 6px 14px var(--shadow);padding:14px 30px 16px 18px;animation:cutscene-page-in .35s cubic-bezier(.34,1.56,.64,1)}#cutscene-dialog.hidden{display:none}@keyframes cutscene-page-in{0%{transform:translateY(26px);opacity:0}to{transform:translateY(0);opacity:1}}#cutscene-face{font-size:calc(38px * var(--text-scale));filter:drop-shadow(0 2px 2px var(--shadow))}#cutscene-name{display:block;font-size:calc(13px * var(--text-scale));font-weight:900;color:var(--leaf-deep);opacity:.75;letter-spacing:.04em;text-transform:uppercase}#cutscene-name.hidden{display:none}#cutscene-text{font-size:calc(18px * var(--text-scale));font-weight:700;line-height:1.4}#cutscene-text b{color:var(--leaf-deep)}#cutscene-next{position:absolute;right:9px;bottom:6px;font-size:calc(14px * var(--text-scale));color:var(--pink);animation:next-bounce .9s ease-in-out infinite}html.reduce-motion #cutscene-dialog,html.reduce-motion #cutscene-next{animation:none}#toasts{position:absolute;top:18%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;align-items:center;width:max-content;max-width:92vw}.toast{background:var(--cream);border:3px solid #fff;border-radius:999px;padding:10px 22px;font-weight:900;font-size:calc(19px * var(--text-scale));box-shadow:0 4px 0 var(--shadow);animation:toast-in .4s cubic-bezier(.34,1.56,.64,1),toast-out .4s ease-in 2.2s forwards}.toast.gem{border-color:var(--lav)}@keyframes toast-in{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@keyframes toast-out{to{transform:translateY(-18px) scale(.85);opacity:0}}@media(max-width:640px){#top-stack{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 64px);left:12px;right:12px;display:flex;flex-direction:column;align-items:center;gap:8px}#banner,#verb-panel,#bubble{position:static;inset:auto;transform:none;max-width:100%}#banner{padding:8px 18px 10px;animation:drop-in-m .45s cubic-bezier(.34,1.56,.64,1)}#banner.wiggle{animation:wiggle-m .4s}#banner-instruction{font-size:calc(14px * var(--text-scale));line-height:1.24;max-width:260px;margin:0 auto}#banner-equation{font-size:clamp(25px,8vw,34px);line-height:1.02;letter-spacing:1px}#verb-panel{padding:8px 14px;font-size:calc(18px * var(--text-scale));animation:panel-in-m .45s ease-out 1.1s backwards}#verb-panel .sub{font-size:calc(13px * var(--text-scale))}#bubble{animation:bubble-in-m .35s cubic-bezier(.34,1.56,.64,1)}#bubble:active{transform:translateY(2px)}#toasts{top:auto;bottom:max(215px,calc(env(safe-area-inset-bottom) + 205px))}}@keyframes drop-in-m{0%{transform:translateY(-14px);opacity:0}}@keyframes wiggle-m{25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}}@keyframes bubble-in-m{0%{transform:translateY(10px);opacity:0}}@keyframes panel-in-m{0%{transform:translateY(-8px);opacity:0}}.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;padding:max(20px,env(safe-area-inset-top)) 16px 28px;background:linear-gradient(#bfe8f7e6,#7ec8e3e6);backdrop-filter:blur(5px);animation:screen-in .25s ease-out}@keyframes screen-in{0%{opacity:0}to{opacity:1}}.screen.opaque{background:linear-gradient(#bfe8f7,#7ec8e3)}.screen.business-screen{background:linear-gradient(#bfe8f72e,#7ec8e31f);backdrop-filter:none}.screen h1{font-size:clamp(40px,9vw,64px);margin:12px 0 2px;color:#fff;text-shadow:0 4px 0 var(--sun-deep),0 7px 10px var(--shadow);letter-spacing:1px;text-align:center}.screen h2{font-size:calc(28px * var(--text-scale));margin:6px 0 14px;color:#fff;text-shadow:0 3px 0 var(--shadow);text-align:center}.screen .tagline{color:#fff;font-weight:800;font-size:calc(18px * var(--text-scale));text-shadow:0 2px 4px var(--shadow);margin-bottom:18px;text-align:center}.card{background:var(--cream);border:4px solid #fff;border-radius:26px;box-shadow:0 6px 0 var(--shadow);padding:18px 22px;max-width:560px;width:min(94vw,560px);margin-bottom:14px}.card h3{margin:2px 0 10px;font-size:calc(21px * var(--text-scale))}.screen-close{position:absolute;top:max(14px,env(safe-area-inset-top));right:14px}.menu-col{display:flex;flex-direction:column;gap:14px;align-items:center;margin-top:8px}.menu-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.screen.wizard-active .title-menu{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));z-index:5;margin:0;justify-content:flex-end}.screen.wizard-active .title-menu #btn-duel,.screen.wizard-active .title-menu #btn-parents{display:none}.screen.wizard-active .title-menu .lang-toggle{padding:6px;border-radius:18px;background:#ffffff57;box-shadow:0 4px #4a3f3529;backdrop-filter:blur(6px)}.new-player-form{margin-top:14px}.new-player-form.hidden{display:none}.player-card{position:relative;overflow:hidden}.player-card:after{content:"";position:absolute;right:-42px;bottom:-46px;width:148px;height:148px;background:linear-gradient(90deg,rgba(255,255,255,.32) 8px,transparent 8px) 0 0 / 24px 24px,linear-gradient(rgba(255,255,255,.28) 8px,transparent 8px) 0 0 / 24px 24px,#7ec8e347;border-radius:34px;transform:rotate(10deg);pointer-events:none}.explorer-wizard{position:relative;z-index:1;margin-top:10px;border:3px solid #fff;border-radius:20px;background:linear-gradient(145deg,#fffdf4,#eef9ff 58%,#fff2d5);box-shadow:inset 0 -5px #4a3f3514,0 4px #4a3f3524;padding:14px}.wizard-progress{display:flex;justify-content:center;gap:8px;margin-bottom:12px}.wizard-step{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:3px solid var(--cream-2);background:#fff;color:var(--ink-soft);font-size:calc(13px * var(--text-scale));font-weight:950;box-shadow:0 3px #4a3f3524}.wizard-step.active{border-color:var(--sun-deep);background:var(--sun);color:var(--ink);transform:translateY(-2px)}.wizard-panel{display:flex;flex-direction:column;gap:12px}.wizard-kicker{color:var(--ink);font-size:calc(18px * var(--text-scale));font-weight:950;text-align:center}.pet-kicker{margin-top:2px}.wizard-input{width:min(100%,360px);align-self:center;font-family:inherit;font-size:calc(20px * var(--text-scale));font-weight:900;padding:13px 16px;border-radius:16px;border:3px solid var(--cream-2);background:#fff;color:var(--ink);box-shadow:inset 0 3px #4a3f3514;user-select:text;pointer-events:auto}.starter-pet-grid,.learning-trail-grid{display:grid;gap:10px}.starter-pet-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.learning-trail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.starter-pet,.learning-trail{border-radius:16px;min-height:112px;font-family:inherit}.starter-pet .t-name,.learning-trail .t-name{font-size:calc(14px * var(--text-scale))}.voxel-plinth{width:56px;height:50px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(90deg,rgba(255,255,255,.24) 8px,transparent 8px) 0 0 / 16px 16px,linear-gradient(rgba(255,255,255,.22) 8px,transparent 8px) 0 0 / 16px 16px,var(--cream-2);box-shadow:inset 0 -5px #4a3f351f,0 4px #4a3f3524}.voxel-plinth span,.trail-icon{font-size:calc(34px * var(--text-scale));filter:drop-shadow(0 3px 0 rgba(74,63,53,.16))}.learning-trail .t-price{line-height:1.18;max-width:120px}.trail-sprout{background:#f3ffe8;border-color:#b6e38c}.trail-climber{background:#e9fbff;border-color:#8fd0e8}.trail-explorer{background:#fff1df;border-color:#f0bd7d}.trail-unsure{background:#fff4fb;border-color:#e6add0}.buddy-chip{align-self:center;display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;border:3px solid #fff;background:#fff;color:var(--ink-soft);font-size:calc(14px * var(--text-scale));font-weight:900;box-shadow:0 3px #4a3f3524}.buddy-chip span{font-size:calc(20px * var(--text-scale))}.wizard-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:2px}.form-help{color:var(--ink-soft);font-size:calc(13px * var(--text-scale));font-weight:800;line-height:1.35;text-align:center}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.tile{background:#fff;border:3px solid var(--cream-2);border-radius:18px;padding:10px 6px;text-align:center;cursor:pointer;transition:transform .1s;position:relative;min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.tile:active{transform:scale(.94)}.tile.owned{border-color:var(--leaf)}.tile.equipped{border-color:var(--sun-deep);background:#fffbe8;box-shadow:0 0 0 3px var(--sun)}.tile.locked{filter:grayscale(.9);opacity:.65}.tile .t-icon{font-size:calc(34px * var(--text-scale));line-height:1.1}.tile .t-name{font-size:calc(13px * var(--text-scale));font-weight:800}.tile .t-price{font-size:calc(13px * var(--text-scale));font-weight:900;color:var(--ink-soft)}.tile .t-rarity{position:absolute;top:5px;right:7px;font-size:calc(12px * var(--text-scale))}.parent-picker-card{width:min(560px,92vw)}.parent-profile-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.parent-profile-tile{min-height:118px;border-color:#c7e9a5;background:linear-gradient(#fffef4,#f0ffd9)}.parent-profile-tile .t-icon{font-size:calc(42px * var(--text-scale))}.placement-card{text-align:center}.placement-step{color:var(--ink-soft);font-size:calc(13px * var(--text-scale));font-weight:900;margin-bottom:6px;text-transform:uppercase}.placement-task{color:var(--ink);font-size:clamp(16px,2.6vw,21px);font-weight:900;margin-bottom:12px}.placement-eq{font-size:clamp(28px,6vw,54px);font-weight:950;margin-bottom:16px}.warmup-choice{border:0;font-family:inherit}.checkup-groep-grid{grid-template-columns:repeat(auto-fit,minmax(76px,1fr))}.checkup-groep .t-icon{font-size:calc(28px * var(--text-scale))}.checkup-notebook{display:flex;gap:5px;justify-content:center;align-items:center;min-height:26px;margin-bottom:8px;font-size:calc(17px * var(--text-scale));color:var(--leaf);letter-spacing:2px}.checkup-notebook .checkup-now{animation:checkup-bud 1.6s ease-in-out infinite}@keyframes checkup-bud{50%{transform:scale(1.25)}}.numpad-display{min-height:1.35em;margin:0 auto 12px;padding:4px 14px;width:min(240px,70vw);background:#fff;border:3px solid var(--cream-2);border-radius:14px;font-size:clamp(26px,5.4vw,40px);font-weight:950;letter-spacing:2px}.checkup-numpad{display:grid;grid-template-columns:repeat(3,minmax(64px,88px));gap:8px;justify-content:center}.checkup-numpad .numpad-key{min-height:52px;padding:8px 0;font-size:calc(22px * var(--text-scale));font-weight:950}#gem-grid{display:grid;grid-template-columns:repeat(11,1fr);gap:3px;width:min(94vw,520px)}.gem-cell{aspect-ratio:1;border-radius:6px;background:#fff6;display:flex;align-items:center;justify-content:center;font-size:clamp(8px,1.9vw,13px);font-weight:900;color:var(--ink-soft)}.gem-cell.head{background:var(--sun);color:var(--ink)}.gem-cell.lit{background:linear-gradient(135deg,#b8f5c0,#7ce3a0);box-shadow:0 0 6px #7ce3a0cc;color:#2c6e49;animation:gem-glow 2.4s ease-in-out infinite}@keyframes gem-glow{50%{box-shadow:0 0 12px #7ce3a0}}.skill-row{display:flex;align-items:center;gap:10px;margin:7px 0}.skill-row .s-name{flex:1;font-weight:800;font-size:calc(15px * var(--text-scale))}.skill-row .s-bar{flex:2;height:14px;background:#e7d9bf;border-radius:999px;overflow:hidden}.skill-row .s-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--sky),var(--leaf));transition:width .6s}.skill-row .s-star{width:26px;text-align:center;font-size:calc(17px * var(--text-scale))}.curriculum-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.curriculum-controls{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.curriculum-controls label{display:flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:calc(13px * var(--text-scale));font-weight:900}.curriculum-controls select{min-height:34px;max-width:min(240px,72vw);border:2px solid var(--cream-2);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:calc(13px * var(--text-scale));font-weight:800;padding:5px 9px}.curriculum-domain{margin:10px 0 14px}.curriculum-count{min-width:48px;text-align:right;color:var(--ink-soft);font-size:calc(12px * var(--text-scale));font-weight:800}.curriculum-objectives{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.curriculum-pill{border:2px solid var(--cream-2);border-radius:999px;padding:4px 8px;background:#fffaf0;font-size:calc(12px * var(--text-scale));font-weight:800}.curriculum-pill.covered{border-color:#75c878}.curriculum-pill.partial{border-color:#f4c95d}.curriculum-pill.playable{border-color:#8fd0e8}.curriculum-pill.planned{opacity:.65}.parent-note{color:var(--ink-soft);font-size:calc(14px * var(--text-scale));line-height:1.5;text-shadow:none;text-align:left;margin:0 0 12px}.parent-note+.curriculum-objectives{margin-top:0}.world-pill{display:flex;align-items:center;gap:10px;background:var(--cream);border:3px solid #fff;border-radius:999px;padding:10px 20px;font-weight:900;font-size:calc(18px * var(--text-scale));box-shadow:0 4px 0 var(--shadow);cursor:pointer;transition:transform .1s}.world-pill:active{transform:scale(.95)}.world-pill .w-progress{font-size:calc(13px * var(--text-scale));color:var(--ink-soft);font-weight:800}#result-chest{font-size:calc(92px * var(--text-scale));animation:chest-bounce .9s cubic-bezier(.34,1.56,.64,1);cursor:pointer}@keyframes chest-bounce{0%{transform:scale(0) rotate(-15deg)}60%{transform:scale(1.15)}to{transform:scale(1)}}.reward-row{display:flex;gap:16px;justify-content:center;font-size:calc(26px * var(--text-scale));font-weight:900;flex-wrap:wrap}.reward-item{background:#fff;border-radius:18px;padding:10px 18px;border:3px solid var(--cream-2);animation:toast-in .4s .25s backwards}.business-panel{align-self:stretch;width:min(720px,calc(100vw - 24px));margin:auto auto 16px;pointer-events:auto}.business-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.business-head h2{margin:0;font-size:calc(24px * var(--text-scale))}.business-order-card{margin-top:8px}.business-order-card .tagline{color:var(--ink-soft);text-shadow:none;margin:8px 0 0}.business-price{font-size:calc(20px * var(--text-scale));font-weight:900;margin:8px 0}.business-prompt{font-size:calc(17px * var(--text-scale));font-weight:800;margin:4px 0 12px}.business-review .correct{border-color:var(--leaf);background:#eaffea}.business-review .wrong{border-color:#e8918a;background:#ffecec}.business-feedback{margin:4px 0 10px;padding:8px 12px;border-radius:12px;background:#fff6e0;font-weight:800;font-size:calc(15px * var(--text-scale))}.business-bake{font-weight:800;font-size:calc(15px * var(--text-scale));margin:2px 0 10px;color:var(--ink-soft)}.business-bake-baking{color:var(--sun-deep)}.business-bake-ready{color:var(--leaf-deep)}.business-bake-cooled{color:var(--ink-soft)}.business-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:10px;margin:10px 0}.business-money-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:10px 0}.business-money-row .equipped,.business-choice-grid .equipped{border-color:var(--sun-deep);background:#fffbe8;box-shadow:0 0 0 3px var(--sun)}.business-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.stage-feedback{background:#eef4ff}.stage-pads{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0}.stage-pad{height:84px;border-radius:18px;border:3px solid rgba(0,0,0,.12);background:var(--pad);filter:saturate(.85) brightness(.98);transition:transform .1s,filter .1s,box-shadow .12s;cursor:pointer}.stage-pad:active{transform:scale(.95)}.stage-pad.lit{filter:saturate(1.3) brightness(1.18);box-shadow:0 0 0 4px #fff,0 0 18px var(--pad);transform:scale(1.03)}.stage-pad-label{font-size:calc(30px * var(--text-scale));font-weight:900;color:#fff;text-shadow:0 1px 0 #0006,0 0 3px #0008;pointer-events:none}.reduce-motion .stage-pad{transition:filter .1s,box-shadow .12s}.reduce-motion .stage-pad.lit{transform:none;box-shadow:0 0 0 4px #fff,0 0 8px var(--pad)}.stage-beats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0}.stage-beat{min-width:46px;height:46px;border-radius:12px;border:3px solid rgba(0,0,0,.12);background:#fff;font-weight:900;font-size:calc(16px * var(--text-scale));cursor:pointer}.stage-beat.equipped{border-color:var(--sun-deep);background:#fffbe8;box-shadow:0 0 0 3px var(--sun)}.stage-beat.counting{border-color:var(--leaf-deep);background:#eafaef;transform:scale(1.1)}.reduce-motion .stage-beat.counting{transform:none}.stage-bar{height:26px;border-radius:13px;background:#eee;overflow:hidden;border:2px solid rgba(0,0,0,.12);margin:10px 0 4px}.stage-bar-fill{height:100%;width:0;background:linear-gradient(90deg,var(--leaf),var(--sun));transition:width .18s}.stage-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:10px;margin:10px 0}.note-glyph{width:calc(30px * var(--text-scale));height:calc(30px * var(--text-scale));display:block;margin:0 auto}#hatch-egg{font-size:calc(110px * var(--text-scale));animation:egg-rock .5s ease-in-out infinite;cursor:pointer}@keyframes egg-rock{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}#hatch-egg.cracking{animation:egg-crack .25s ease-in-out infinite}@keyframes egg-crack{0%,to{transform:rotate(-3deg) scale(1.04)}50%{transform:rotate(3deg) scale(.98)}}.screen.attract-screen{padding:0;overflow:hidden;background:none;backdrop-filter:none}.screen.attract-screen:before,.screen.attract-screen:after{content:"";position:absolute;left:0;right:0;z-index:0;pointer-events:none}.screen.attract-screen:before{top:0;height:32%;background:linear-gradient(#8fd8f2e6,#8fd8f200)}.screen.attract-screen:after{bottom:0;height:34%;background:linear-gradient(#6ebcd600,#6ebcd6cc)}.attract-shell{position:relative;z-index:1;width:100%;height:100%;cursor:pointer;outline:none;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:max(16px,env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom))}.attract-top{display:flex;flex-direction:column;align-items:center;gap:8px}.attract-logo{margin:4px 0 0;font-size:clamp(42px,8.5vw,74px);color:#fff;letter-spacing:1px;text-align:center;line-height:1.05;font-weight:900;-webkit-text-stroke:2px rgba(74,63,53,.22);text-shadow:0 2px 0 #fff,0 4px 0 var(--sun-deep),0 8px 12px rgba(74,63,53,.32),-2px 0 0 rgba(74,63,53,.28),2px 0 0 rgba(74,63,53,.28),0 -2px 0 rgba(74,63,53,.28)}.attract-logo .lw{display:inline-block;animation:logo-pop .6s cubic-bezier(.34,1.56,.64,1) calc(var(--d) * .13s) backwards}.attract-logo .lw>span{display:inline-block;animation:logo-bob 3.4s ease-in-out calc(var(--d) * -.85s) infinite}@keyframes logo-pop{0%{transform:scale(0) rotate(-14deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes logo-bob{0%,to{transform:translateY(0) rotate(-1.4deg)}50%{transform:translateY(-6px) rotate(1.4deg)}}.attract-tagline{color:#fff;font-weight:900;font-size:clamp(16px,2.6vw,21px);text-align:center;padding:8px 20px;border-radius:999px;background:#4a3f3542;text-shadow:0 2px 4px rgba(74,63,53,.5);animation:tagline-in .55s cubic-bezier(.34,1.56,.64,1) .7s backwards}@keyframes tagline-in{0%{transform:translateY(-14px) scale(.7);opacity:0}to{transform:none;opacity:1}}.attract-bottom{display:flex;flex-direction:column;align-items:center;gap:10px}.attract-ticker{min-height:42px;display:flex;align-items:center}#attract-beat{display:inline-flex;align-items:center;gap:9px;background:#fffdf4ee;border:3px solid #fff;border-radius:999px;padding:7px 18px;font-size:calc(17px * var(--text-scale));font-weight:900;box-shadow:0 4px #4a3f352e;transition:opacity .24s,transform .24s}#attract-beat .bi{font-size:calc(22px * var(--text-scale))}#attract-beat.swap{opacity:0;transform:translateY(10px) scale(.85)}.attract-start{font-size:calc(24px * var(--text-scale));padding:16px 46px;position:relative;overflow:hidden;animation:start-pulse 1.3s ease-in-out infinite}.attract-start:after{content:"";position:absolute;top:-20%;bottom:-20%;left:-60px;width:38px;transform:skew(-22deg);background:#ffffff80;filter:blur(2px);animation:start-shine 2.9s ease-in-out infinite}@keyframes start-shine{0%,55%{left:-60px}85%,to{left:calc(100% + 30px)}}@keyframes start-pulse{50%{transform:translateY(-3px) scale(1.04)}}.attract-prompt{color:#fff;font-size:calc(19px * var(--text-scale));font-weight:900;text-shadow:-2px -2px 0 rgba(74,63,53,.3),2px -2px 0 rgba(74,63,53,.3),-2px 2px 0 rgba(74,63,53,.3),2px 2px 0 rgba(74,63,53,.3),0 4px 8px rgba(74,63,53,.34);animation:prompt-blink 1.4s ease-in-out infinite}@keyframes prompt-blink{50%{opacity:.56}}.attract-menu{margin-top:2px;cursor:default}.lang-toggle{display:flex;gap:6px}.lang-toggle button{font-size:calc(22px * var(--text-scale))}.lang-toggle button.active{outline:4px solid var(--sun)}.lang-btn{padding:0}.flag-icon{width:31px;height:22px;border-radius:4px;overflow:hidden;display:inline-block;border:2px solid rgba(74,63,53,.2);box-shadow:inset 0 0 0 1px #ffffff73}.flag-nl{background:linear-gradient(#ae1c28 0 33.333%,#fff 33.333% 66.666%,#21468b 66.666% 100%)}.flag-gb{background:linear-gradient(90deg,transparent 41%,#fff 41% 59%,transparent 59%),linear-gradient(transparent 36%,#fff 36% 64%,transparent 64%),linear-gradient(90deg,transparent 46%,#c8102e 46% 54%,transparent 54%),linear-gradient(transparent 43%,#c8102e 43% 57%,transparent 57%),linear-gradient(28deg,transparent 47%,#fff 47% 53%,transparent 53%),linear-gradient(-28deg,transparent 47%,#fff 47% 53%,transparent 53%),linear-gradient(28deg,transparent 49%,#c8102e 49% 51%,transparent 51%),linear-gradient(-28deg,transparent 49%,#c8102e 49% 51%,transparent 51%),#012169}@media(max-width:480px){.chip{font-size:calc(16px * var(--text-scale));padding:6px 12px 6px 8px}.round-btn{width:48px;height:48px;font-size:calc(20px * var(--text-scale))}.round-btn.big{width:60px;height:60px;font-size:calc(26px * var(--text-scale))}#banner-instruction{font-size:calc(13px * var(--text-scale))}#banner{padding:6px 14px 9px}#banner-equation{font-size:clamp(22px,7vw,32px)}}@media(max-width:480px){.screen h2{font-size:calc(22px * var(--text-scale));padding:0 56px}.attract-logo{font-size:calc(38px * var(--text-scale))}.attract-tagline,#attract-beat{font-size:calc(14px * var(--text-scale));padding:6px 14px}#attract-beat .bi{font-size:calc(18px * var(--text-scale))}.attract-start{font-size:calc(20px * var(--text-scale));padding:14px 32px}.attract-prompt{font-size:calc(15px * var(--text-scale))}#gem-grid{gap:2px}.gem-cell{font-size:calc(7px * var(--text-scale));border-radius:4px}.business-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.business-money-row .btn{flex:1 1 92px}.starter-pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-trail-grid{grid-template-columns:1fr}.starter-pet,.learning-trail{min-height:96px}}@media(prefers-reduced-motion:reduce){*{animation-duration:1ms!important;animation-delay:0s!important;transition-duration:1ms!important}}:root.reduce-motion *{animation-duration:1ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:1ms!important}:root.dyslexia{--font: "OpenDyslexic", "Atkinson Hyperlegible", "Comic Sans MS", Verdana, system-ui, sans-serif;letter-spacing:.02em;word-spacing:.06em}:root.high-contrast{--ink: #1a1a1a;--ink-soft: #333333;--cream: #ffffff;--cream-2: #f3f3f3;--sun: #ffcf2e;--sun-deep: #9a6b00;--leaf: #2e8b2e;--leaf-deep: #1f6f1f;--shadow: rgba(0, 0, 0, .55)}:root.colorblind{--leaf: #2aa97f;--leaf-deep: #1f7d5e;--coral: #e07b39;--sun: #f0c34a;--sun-deep: #b07a12;--pink: #cf8fd6;--sky: #8fd0e8;--water: #4f9fd0}:focus-visible{outline:3px solid var(--sun-deep);outline-offset:2px;border-radius:6px}#scene-transition{position:fixed;inset:0;z-index:55;pointer-events:none;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 48%,#fffffff2 0 7%,#ffeb92e0 8% 15%,#9f7cffb8 16% 26%,#4bc4e194 27% 41%,#1b1f37f5 63% 100%)}#scene-transition.hidden{display:none}#scene-transition:before,#scene-transition:after,#scene-transition .scene-transition-core{content:"";position:absolute;border-radius:50%;pointer-events:none}#scene-transition:before{width:120vmax;height:120vmax;background:conic-gradient(from 0deg,#ffffff1a,#ffd866cc,#7bd3ffbd,#c9a6ffc7,#ffffff1a);mix-blend-mode:screen;animation:portal-spin .9s linear infinite}#scene-transition:after{width:42vmax;height:42vmax;box-shadow:0 0 48px 18px #ffffffb8,inset 0 0 44px #ffffffc7;background:radial-gradient(circle,#fffffff2,#ffffff2e 38%,#fff0 62%);animation:portal-core .86s ease-in-out infinite alternate}#scene-transition .scene-transition-core{width:100vmax;height:100vmax;border:7px dotted rgba(255,255,255,.8);filter:drop-shadow(0 0 14px rgba(255,237,154,.9));animation:portal-spin 1.7s linear infinite reverse}#scene-transition.entering{animation:portal-cover .36s ease-in forwards}#scene-transition.leaving{animation:portal-reveal .3s ease-out forwards}@keyframes portal-cover{0%{opacity:0;clip-path:circle(0 at 50% 50%)}to{opacity:1;clip-path:circle(75% at 50% 50%)}}@keyframes portal-reveal{0%{opacity:1;clip-path:circle(75% at 50% 50%)}to{opacity:0;clip-path:circle(0 at 50% 50%)}}@keyframes portal-spin{to{transform:rotate(360deg)}}@keyframes portal-core{0%{transform:scale(.82);opacity:.72}to{transform:scale(1.08);opacity:1}}html.reduce-motion #scene-transition,html.reduce-motion #scene-transition:before,html.reduce-motion #scene-transition:after,html.reduce-motion #scene-transition .scene-transition-core{animation-duration:1ms!important}
