:root{color:var(--ink);background:var(--cream);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#2c2e2a;--muted:#565b4c;--green:#315c24;--cream:#f5f1e4;--border:#c7c9b7;--picture-bg:#e0efc9;--surface:#fffdf5;--tool-bg:#f5f1e4;--tool-border:#929986;--card-border:#bcc4ab;--shadow:#27381d14;--pill-bg:#e0efc9;--track:#d9e3cc;--progress:#426e2d;--cell:#dce0cf;--panel:#8ed462;--row-bg:#fffdf5;--subtle-ink:#354c27;--key-bg:#fffdf5;--key-border:#659b45;--key-shadow:#5b8d3b;--key-hover:white;--primary-ink:#fffdf5;--primary-hover:#24491a;--primary-shadow:#203f16;--secondary-bg:#f5f1e4;--secondary-border:#929986;--warning-bg:#fff0cb;--warning-border:#d6bb81;--update-bg:#e8efdf;--update-border:#bbc9ad;--danger:#984733;--retry:#a26036;--input-border:#315c24;--link:#315c24;--land:#8ed462;--sun:#f5e211;--sun-ink:#2c2e2a;--pond:#cfe8f4;--coral:#ffd6c9;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e8eee9;--muted:#b7c3be;--green:#a8d6b4;--cream:#1c2528;--border:#465457;--surface:#283337;--tool-bg:#283337;--tool-border:#566467;--card-border:#465457;--shadow:#0003;--pill-bg:#344245;--track:#465457;--progress:#a8d6b4;--cell:#465457;--panel:#303e3c;--row-bg:#25312f;--subtle-ink:#c1ccc3;--key-bg:#283337;--key-border:#61716a;--key-shadow:#1c2528;--key-hover:#394a46;--primary-ink:#17271e;--primary-hover:#bce7c7;--primary-shadow:#648c68;--secondary-bg:#344245;--secondary-border:#61716a;--warning-bg:#483c29;--warning-border:#af915b;--update-bg:#2d4235;--update-border:#6c9175;--danger:#ffb09b;--retry:#efb88c;--input-border:#a8d6b4;--link:#a8d6b4;--land:#405e34;--sun:#ead258;--sun-ink:#2c2e2a;--pond:#304957;--coral:#5c4036}:root[data-theme=dark] .card-art,:root[data-theme=dark] .celebration-art{background:color-mix(in srgb, var(--picture-bg), var(--cream) 80%)}:root[data-theme=dark] .keypad-decoration,:root[data-theme=dark] .gallery-note span{color:#dfc79f}:root[data-theme=dark] .grid-cell.active-row{box-shadow:inset 0 0 0 1px #a8d6b4}:root[data-theme=dark] .modal::backdrop{background:#0009}a{color:var(--link)}*{box-sizing:border-box}body{min-width:280px;margin:0}button,input,select{font:inherit}button,select{touch-action:manipulation;min-height:44px}button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;border:0}button:disabled{cursor:default;opacity:.5}button:not(:disabled){transition:transform .15s,background-color .15s,box-shadow .15s}button:not(:disabled):active{transform:translateY(2px)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:4px}h1:focus{outline:none}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.04em;text-wrap:balance;font-size:clamp(2.4rem,5vw,4.4rem);font-weight:850;line-height:1.02}h2{letter-spacing:-.035em}p{line-height:1.65}.app-shell{max-width:1180px;padding:max(20px, env(safe-area-inset-top)) max(28px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(28px, env(safe-area-inset-left));min-height:100vh;flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 18px;display:flex}.brand{letter-spacing:-.04em;background:0 0;align-items:center;padding:0;font-size:1.7rem;font-weight:850;display:flex}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.language-toggle{background:0 0;padding:0 14px;font-size:.9rem;font-weight:700}.header-tool{border:1px solid var(--tool-border);background:var(--tool-bg);border-radius:50px;align-items:center;gap:6px;padding:0 10px;font-size:.85rem;font-weight:700;display:inline-flex}.header-tool-icon{justify-content:center;align-items:center;width:20px;height:20px;font-size:1.25rem;line-height:1;display:inline-flex}main{flex:1}.hero{isolation:isolate;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;min-height:390px;margin:6px 0 30px;display:grid;position:relative}.hero-copy{z-index:1;padding:28px 0 35px}.hero h1{max-width:none;margin-bottom:22px;font-size:clamp(2.4rem,4.3vw,3.6rem)}.hero p{color:var(--muted);max-width:33ch;margin-bottom:24px;font-size:1.1rem;line-height:1.5}.explore-button{min-height:52px;color:var(--primary-ink);background:var(--green);border-radius:50px;align-items:center;gap:30px;padding:8px 9px 8px 23px;font-weight:700;text-decoration:none;display:inline-flex}.explore-button span{background:var(--primary-ink);width:36px;height:36px;color:var(--green);border-radius:50%;place-items:center;display:grid}.explore-button svg,.card-action-icon svg{width:20px;height:20px;display:block}.explore-button:focus-visible{outline:3px solid var(--green);outline-offset:4px}.hero-landscape{align-self:stretch;min-width:0;position:relative}.park-island{width:100%;height:100%;fill:var(--land);position:absolute;inset:0}.park-creature{position:absolute}.park-creature .pixel-art{width:100%;height:100%}.creature-rabbit{width:210px;height:210px;top:32px;left:20%}.creature-butterfly{width:135px;height:135px;top:10px;right:8%}.creature-fish{width:130px;height:130px;bottom:38px;left:3%}.creature-chick-and-pig{width:190px;height:100px;bottom:60px;right:6%}.creature-donut{width:80px;height:64px;top:286px;left:30%}.collection-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin:16px 0;padding-bottom:18px;scroll-margin-top:20px;display:flex}.collection-heading h2{letter-spacing:0;color:var(--ink);margin:0;font-size:1.05rem}.collection-heading>span{align-items:center;gap:8px;font-size:.85rem;font-weight:700;display:inline-flex}.collection-check{background:var(--land);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.picture-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.difficulty-group{--area:var(--pill-bg);--area-ink:var(--ink);margin-top:34px}.difficulty-standard{--area:var(--pond);--area-ink:var(--ink)}.difficulty-advanced{--area:var(--coral);--area-ink:var(--ink)}.difficulty-group h2{background:var(--area);color:var(--area-ink);border-radius:50px;align-items:center;gap:12px;margin-bottom:18px;padding:10px 22px;font-size:1.1rem;display:inline-flex}.difficulty-group>h2:before{content:"";background:currentColor;border-radius:50%;width:10px;height:10px}.card-exercises{margin-top:4px;display:block}.picture-card{text-align:left;border:1px solid var(--card-border);background:var(--surface);border-radius:20px;flex-direction:row;padding:0;display:flex;overflow:hidden}.picture-card:not(:disabled):hover{border-color:var(--green);background:var(--tool-bg)}.picture-card:not(:disabled):hover .card-action-icon,.picture-card:focus-visible .card-action-icon,.picture-card.is-done .card-action-icon{background:var(--green);color:var(--primary-ink)}.picture-card.is-locked .card-action{color:var(--muted)}.exercise-summary{color:var(--muted);margin:-6px 0 16px;font-size:.86rem;font-weight:700}.picture-fish,.picture-bee,.picture-duck,.picture-cheetah,.picture-fries{--picture-bg:#f4e9a4}.picture-butterfly,.picture-octopus,.picture-dragon,.picture-snail{--picture-bg:#e5d7f2}.picture-cat,.picture-chick-and-pig,.picture-donut,.picture-ambulance,.picture-firetruck,.picture-train,.picture-hot-air-balloon,.picture-fox,.picture-ferrari,.picture-cheddar-fingers{--picture-bg:#ffd6c9}.picture-rabbit,.picture-dinosaur,.picture-sunflower,.picture-turtle,.picture-watermelon{--picture-bg:#d7edbe}.picture-dog,.picture-german-shepherd,.picture-hamburger{--picture-bg:#e9e7ba}.picture-owl,.picture-rocket,.picture-robot-face,.picture-police-car,.picture-helicopter,.picture-lighthouse,.picture-space-shuttle,.picture-sushi{--picture-bg:#cfe8f4}.card-art{background:var(--picture-bg);border-radius:0;flex-shrink:0;place-items:center;width:180px;min-height:190px;display:grid;position:relative}.pixel-art{width:140px;height:140px;image-rendering:pixelated;display:block;position:relative}.card-copy{flex-direction:column;flex:1;min-width:0;padding:22px;display:flex}.card-level{color:var(--muted);margin-bottom:16px;font-size:.76rem;line-height:1.5;display:block}.card-copy h3{letter-spacing:-.025em;margin-bottom:8px;font-size:1.4rem;line-height:1.2}.card-action{color:var(--ink);justify-content:space-between;align-items:center;margin-top:auto;font-size:.85rem;font-weight:800;display:flex}.card-action-icon{background:var(--land);border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;margin-left:auto;transition:background-color .15s,color .15s;display:grid}progress{appearance:none;background:var(--track);border:0;border-radius:10px;width:100%;height:7px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--track);border-radius:10px}progress::-webkit-progress-value{background:var(--progress);border-radius:10px}progress::-moz-progress-bar{background:var(--progress);border-radius:10px}.card-copy progress{height:4px;margin-top:10px}.gallery-note{text-align:center;color:var(--muted);margin-bottom:0;padding:30px 0 12px;font-size:.84rem}.gallery-note span{color:#94634d;vertical-align:-1px;font-size:1.2rem}.app-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:16px;margin-top:22px;padding-top:18px;font-size:.7rem;display:flex}.connection-status{align-items:center;gap:7px;display:flex}.connection-status.is-ready:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;display:inline-block}.game{max-width:900px;margin:0 auto}.game-nav{justify-content:space-between;align-items:center;gap:10px;margin:2px 0 15px;display:flex}.back-button{background:0 0;padding:0 8px 0 0;font-size:.86rem;font-weight:700}.back-button span{padding-right:6px}.level-pill{background:var(--pill-bg);border-radius:20px;padding:8px 12px;font-size:.73rem}.game h1{margin-bottom:24px;font-size:2.6rem}.game-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.picture-panel{min-width:0;padding:0}.grid-shell{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:16px 18px 20px}.pixel-grid{grid-template-columns:20px repeat(var(--columns), minmax(0, 1fr));gap:3px;width:100%;display:grid}.axis{place-items:center;min-height:20px;font-size:clamp(.75rem,1.7vw,.85rem);font-weight:750;display:grid}.grid-cell{aspect-ratio:1;background-color:var(--cell);border-radius:2px;min-width:0}.grid-cell.active-row{box-shadow:inset 0 0 0 1px #597c6470}.grid-cell[data-filled=true]{box-shadow:inset 0 0 0 1px #63716c}.active-row-label{background:var(--green);color:var(--primary-ink);border-radius:5px}.new-pixel{outline:2px solid var(--ink);outline-offset:-1px;z-index:1;animation:.55s pop}.picture-progress{justify-content:space-between;align-items:center;gap:8px;margin:21px 0 10px;font-size:.75rem;font-weight:750;display:flex}.picture-progress>span:last-child{color:var(--green)}.muted{color:var(--muted);font-weight:500}.picture-caption{color:var(--ink);text-align:center;margin:18px 4px 0;font-size:.75rem}.equation-panel{background:var(--surface);border:1px solid var(--border);border-radius:28px 28px 42px 14px;min-width:0;padding:22px}.equation-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.equation-label{color:var(--green);font-size:.85rem;font-weight:700}.row-pill{background:var(--row-bg);white-space:nowrap;border-radius:50px;padding:8px 12px;font-size:.8rem}.row-pill strong{color:var(--green);margin-left:4px;font-size:1.1rem;display:inline-block}.sum-line{white-space:nowrap;letter-spacing:-.04em;justify-content:center;align-items:center;gap:12px;margin:22px 0 10px;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;display:flex}.equals{color:var(--muted)}.sum-line.three-number-sum{flex-wrap:wrap;gap:8px;font-size:1.5rem}.three-number-sum .answer-wrap input{width:64px}.answer-wrap input{border:2px solid var(--input-border);background:var(--surface);text-align:center;width:78px;height:66px;color:var(--green);caret-color:var(--green);border-radius:15px;padding:3px;font-size:2rem;font-weight:800}.answer-wrap input:focus-visible{box-shadow:0 0 0 2px var(--input-border);outline:none}.answer-retry input{border-color:var(--retry)}.answer-retry input:focus-visible{box-shadow:0 0 0 2px var(--retry)}.feedback{color:var(--subtle-ink);text-align:center;place-content:center;min-height:45px;margin-bottom:9px;font-size:.76rem;line-height:1.4;display:grid}.positive{color:var(--green);font-weight:750}.keypad{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.keypad button{background:var(--pill-bg);border:1px solid var(--key-border);box-shadow:0 3px 2px var(--key-shadow);border-radius:20px 16px;min-height:56px;font-size:1.45rem;font-weight:750}.keypad button:not(:disabled):hover{background:var(--key-hover)}.keypad .erase-button{box-shadow:none;background:0 0;border:0;font-size:1.65rem}.keypad-decoration{color:#70794f;place-items:center;font-size:1.8rem;display:grid}.primary,.secondary{border-radius:50px;padding:13px 22px;font-size:.9rem;font-weight:750}.primary{color:var(--primary-ink);background:var(--green);box-shadow:0 3px 2px var(--primary-shadow)}.primary:not(:disabled):hover{background:var(--primary-hover)}.secondary{background:var(--secondary-bg);border:1px solid var(--secondary-border)}.check-button{justify-content:center;align-items:center;gap:12px;width:100%;min-height:52px;margin-top:13px;font-size:1rem;display:flex}.text-button{text-underline-offset:4px;background:0 0;padding:10px;font-size:.8rem;text-decoration:underline}.restart-button{color:var(--muted);margin:22px auto 0;display:block}.restart-note,#replay-needs-numbers{text-align:center;color:var(--muted);font-size:.8rem}.button-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.completion{text-align:center;max-width:760px;margin:40px auto}.completion p{color:var(--muted);max-width:430px;margin:25px auto}.celebration-art{aspect-ratio:1;background:var(--land);border-radius:38% 62% 44% 56%/54% 38% 62% 46%;place-items:center;width:min(100%,380px);margin:35px auto 0;animation:.6s ease-out arrive;display:grid;position:relative}.celebration-art .pixel-art{width:250px;height:250px}.completed-name{margin-top:24px;font-size:1.5rem}.notice,.update-banner{border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:16px;margin:0 0 20px;padding:16px 20px;font-size:.87rem;line-height:1.5}.notice button{background:0 0;padding:5px 10px;font-weight:700;text-decoration:underline}.update-banner{background:var(--update-bg);border-color:var(--update-border)}.update-banner p{margin:4px 0 12px}.modal{width:min(90vw,520px);max-height:85vh;border:1px solid var(--border);max-height:85dvh;color:var(--ink);background:var(--surface);border-radius:24px;padding:28px;box-shadow:0 16px 80px #28332e40}.modal::backdrop{background:#25382c70}.modal h2{font-size:1.55rem}.modal h3{margin:24px 0 8px;font-size:1rem}.modal p{color:var(--muted);font-size:.9rem}.modal .secondary{margin-top:10px}.modal-close{width:100%}.hint-setting{cursor:pointer;align-items:center;gap:12px;min-height:44px;margin-top:16px;display:flex}.hint-setting input{width:24px;height:24px;accent-color:var(--green);flex-shrink:0}.language-setting{justify-content:space-between;align-items:center;gap:15px;font-size:.9rem;display:flex}.theme-setting{margin-top:16px}.language-setting select{background:var(--surface);color:var(--ink);border:1px solid #b7c1b3;border-radius:10px;padding:8px 12px}.danger{color:var(--danger);margin:24px auto 8px;display:block}.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}@keyframes pop{0%{transform:scale(.7)}55%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes arrive{0%{opacity:0;transform:scale(.9)rotate(-4deg)}to{opacity:1;transform:scale(1)}}@media (max-width:700px){.app-shell{padding-left:max(18px, env(safe-area-inset-left));padding-right:max(18px, env(safe-area-inset-right))}.app-header{padding-bottom:12px}.hero{grid-template-columns:1fr;min-height:0;margin:8px 0 26px}.hero-copy{padding:20px 0 0}.hero h1{max-width:none;margin-bottom:14px;font-size:clamp(2rem,7vw,3rem)}.hero p{max-width:30ch;margin-bottom:18px;font-size:1rem}.hero-landscape{height:215px;margin-top:10px}.park-island{width:100%;height:100%;inset:0}.creature-rabbit{width:140px;height:140px;top:28px;left:35%}.creature-butterfly{width:70px;height:70px;top:-10px;right:0}.creature-fish{width:95px;height:95px;bottom:38px;left:5%}.creature-chick-and-pig{width:95px;height:50px;bottom:8px;left:35%;right:auto}.creature-donut{width:50px;height:40px;top:70px;left:auto;right:4%}.picture-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card-art{width:100%;height:145px;min-height:145px}.card-art .pixel-art{width:120px;height:120px}.picture-card{flex-direction:column}.card-copy{padding:14px}.card-copy h3{font-size:1.12rem}.card-level{min-height:28px;font-size:.7rem;line-height:1.5}.collection-heading>span{font-size:.73rem}.collection-heading h2{font-size:.9rem}.card-action{font-size:.76rem}.card-action-icon{width:26px;height:26px}.app-footer{flex-direction:column;align-items:center;gap:8px}.game{max-width:440px}.game h1{margin-bottom:12px;font-size:1.9rem}.game-nav{margin-bottom:8px}.game-layout{grid-template-columns:minmax(0,1fr);gap:15px}.picture-panel{padding:0}.grid-shell{max-width:360px;margin-inline:auto;padding:10px 16px 13px}.pixel-grid{grid-template-columns:17px repeat(var(--columns), minmax(0, 1fr));gap:2px}.axis{min-height:20px;font-size:.75rem}.picture-progress{margin-top:12px}.picture-caption{display:none}.equation-panel{border-radius:24px 24px 32px 12px;padding:15px 18px 18px}.sum-line{margin:12px 0 5px;font-size:2rem}.answer-wrap input{height:56px}.feedback{min-height:35px;margin-bottom:7px;font-size:.73rem}.keypad button{min-height:48px}.keypad{gap:8px}.check-button{min-height:48px;margin-top:10px}}@media (max-width:360px){.app-shell{padding-inline:max(12px, env(safe-area-inset-left))}.brand{font-size:1.35rem}.header-actions{gap:2px}.grid-shell{padding-inline:10px}.pixel-grid{gap:1px}.language-toggle{padding:0 6px;font-size:.8rem}.card-art{height:125px;min-height:125px}.card-art .pixel-art{width:100px;height:100px}.card-copy{padding:12px}.collection-heading{flex-wrap:wrap}}@media (min-width:701px) and (max-width:950px){.card-art{width:135px}.card-art .pixel-art{width:110px;height:110px}.card-copy{padding:16px}.card-copy h3{font-size:1.2rem}.creature-rabbit{width:180px;height:180px;left:8%}.creature-butterfly{width:105px;height:105px}.creature-chick-and-pig{width:152px;height:80px;bottom:110px;right:2%}.creature-donut{width:65px;height:52px;left:42%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
