@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";:root{font-family:Nunito,system-ui,-apple-system,sans-serif;color:#203e39;background:#d9f1e6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible{outline:3px solid #f5a623;outline-offset:3px}.app-shell{min-height:100vh;padding:24px 12px;display:flex;justify-content:center;align-items:flex-start;background:radial-gradient(circle at 20% 10%,#b3eacb 0,transparent 30%),radial-gradient(circle at 90% 90%,#b9dbf9 0,transparent 40%),#e8f7ee}.ambient{position:fixed;border-radius:50%;pointer-events:none}.ambient-one{height:250px;width:250px;background:#9adac7;left:-120px;top:30%}.ambient-two{height:350px;width:350px;background:#d2e9ff;right:-180px;bottom:0}.phone{position:relative;width:100%;max-width:460px;min-height:850px;overflow:hidden;background:#faf8ef;border-radius:32px;box-shadow:0 28px 70px #236e5c30;padding:20px 22px 32px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:17px}.brand-small{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:900;line-height:1.05;color:#185e50}.brand-small b{display:block;color:#f29a29;letter-spacing:1px}.brand-fox{font-size:30px}.top-pill{font-size:10px;font-weight:900;border-radius:30px;background:#e4f6e7;color:#428468;padding:8px 10px}.hero{height:273px;position:relative;text-align:center;border-radius:25px;background:linear-gradient(145deg,#b9ebdc,#d4f3c5 60%,#a9dfc7);overflow:hidden;padding-top:19px;margin-bottom:15px}.hero:after{content:"";position:absolute;bottom:-40px;left:-10%;width:120%;height:95px;border-radius:50%;background:#73c79e}.sun{position:absolute;width:95px;height:95px;right:-15px;top:-22px;border-radius:50%;background:#ffeb9c}.mascot{filter:drop-shadow(0 6px 4px #27704d3a)}.mascot-big{font-size:88px;position:absolute;left:5px;top:50px;transform:rotate(-10deg);z-index:1;animation:bob 3s ease-in-out infinite}.sparkle{position:absolute;color:#fff;font-size:30px}.s1{left:120px;top:18px}.s2{right:27px;top:112px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:900;color:#34816d}.hero .eyebrow{margin-left:115px;margin-bottom:8px}.hero h1{font-size:46px;line-height:.95;margin:10px 0 0 125px;position:relative;z-index:1;color:#185f57;font-weight:900;letter-spacing:-2px}.hero h1 em{font-style:normal;color:#f49b2e;text-shadow:2px 3px 0 #fff}.hero-sub{position:absolute;bottom:15px;left:0;right:0;z-index:2;font-size:12px;font-weight:900;color:#23594d}.card{background:#fff;border:1px solid #e9ebdc;border-radius:20px;box-shadow:0 5px 16px #315c4b0a;padding:18px;margin-bottom:15px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.section-title h2,.card h2{font-size:17px;margin:0;font-weight:900}.text-button{border:0;background:none;color:#078c77;font-size:12px;font-weight:900}.config-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px dashed #e9eee7;font-size:13px}.config-row span{color:#73847d}.config-row strong{font-size:13px}.config-row small{color:#7d9588;font-weight:700}.primary{display:block;width:100%;border:0;background:linear-gradient(180deg,#2bce7b,#0b9f62);border-bottom:5px solid #087949;color:#fff;border-radius:15px;padding:14px;font-size:15px;font-weight:900;box-shadow:0 6px 12px #079c5824}.primary:active{transform:translateY(2px);border-bottom-width:3px}.start{margin-top:16px;display:flex;justify-content:center;gap:15px;align-items:center;font-size:17px}.start span{margin-left:auto}.chip{font-size:11px;color:#407b6c;background:#e5f7ec;padding:6px 10px;border-radius:20px;font-weight:900}.record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.record-tile{border-radius:15px;text-align:center;padding:12px 3px;display:flex;flex-direction:column;gap:3px;background:#eaf9e9}.record-tile.normal{background:#fff6df}.record-tile.hard{background:#ffedeb}.record-tile span{font-size:26px}.record-tile small{font-size:11px;font-weight:900}.record-tile strong{font-size:23px;color:#237e54}.record-tile.normal strong{color:#b87d15}.record-tile.hard strong{color:#cc5e50}.home-actions{display:grid;gap:10px}.action-card{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:17px;text-align:left;padding:14px;color:#fff;box-shadow:0 6px 14px #33458b20}.action-card.purple{background:linear-gradient(110deg,#7954d9,#5c45c6)}.action-card.blue{background:linear-gradient(110deg,#359acb,#247bc1)}.action-icon{font-size:30px}.action-card strong{display:block;font-size:13px}.action-card small{display:block;font-size:11px;opacity:.85;margin-top:3px}.chevron{margin-left:auto;font-size:23px}.footer-note{text-align:center;color:#6e9c82;font-weight:900;font-size:12px;margin:18px 0 0}.game-top{display:flex;justify-content:space-between;align-items:center;margin:22px 0 15px}.mode-tag{color:#207963;background:#dcf7e8;padding:8px 12px;border-radius:25px;font-size:12px;font-weight:900}.exit{background:#fff1ee;color:#b95d51;border:0;border-radius:25px;padding:8px 12px;font-weight:900;font-size:12px}.game-status{margin-bottom:16px}.status-label,.status-mini{display:flex;justify-content:space-between;align-items:center;font-weight:900;font-size:14px;margin-bottom:9px}.status-label strong{color:#137b62}.bar-track{height:14px;background:#e7eee9;border-radius:20px;overflow:hidden;box-shadow:inset 0 2px 4px #00000010}.bar-fill{height:100%;border-radius:20px;transition:width .07s linear}.progress-fill{background:linear-gradient(90deg,#39bfa0,#52d988)}.status-mini{margin:12px 0 0;font-size:12px;color:#647d70}.timer-area{padding:6px 8px 15px}.timer-track{height:18px}.timer-fill{background:linear-gradient(90deg,#51d39a,#1eb978)}.timer-fill.warning{background:#f4b13c}.timer-fill.dangerbg{background:#f66d61}.danger{color:#e45d54!important}.question{border:4px solid #b88245;border-radius:22px;background:linear-gradient(#fff5da,#f9e2b5);box-shadow:0 7px #d6b68a,0 13px 25px #5d452420;text-align:center;padding:25px 5px;margin:17px 0 27px}.question p{font-size:11px;color:#b28b5d;font-weight:900;letter-spacing:2px;margin:0 0 8px}.equation{font-size:55px;letter-spacing:-2px;font-weight:900;color:#513b2e}.equation span{color:#af8050}.equation i{font-style:normal;color:#0ca578}.answer-label{text-align:center;font-size:12px;color:#6e857a;font-weight:900}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.choices button{background:#fff;color:#16695c;font-weight:900;font-size:33px;border:2px solid #c9e6d7;border-bottom:6px solid #aed3c0;border-radius:18px;padding:24px 2px}.choices button:active{background:#bcead1}.display{height:63px;background:#fff;border:2px solid #cfe9da;border-radius:15px;display:grid;place-items:center;font-size:38px;font-weight:900;color:#205f53;margin:13px 35px}.keyboard{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.keyboard button{border:0;border-bottom:4px solid #2673b8;border-radius:13px;background:#3d9de6;color:#fff;font-size:26px;font-weight:900;min-height:59px}.keyboard button:active{transform:translateY(2px);border-bottom-width:2px}.keyboard .erase{background:#ff8875;border-color:#d95e50}.keyboard .confirm{background:#29bf76;border-color:#118c50}.game-helper{display:flex;align-items:center;justify-content:center;gap:9px;color:#759889;font-size:12px;font-weight:800;margin-top:19px}.game-helper:first-letter{font-size:25px}.feedback-page,.end-page{text-align:center;padding:60px 8px 20px}.feedback-mascot{font-size:115px;animation:bob 2s ease-in-out infinite}.feedback-badge{display:inline-block;background:#ffe6df;color:#d45a48;border-radius:30px;padding:10px 18px;font-size:13px;font-weight:900;margin-top:15px}.feedback-page h2{font-size:24px;margin:22px 0}.correct-equation{background:#fff;border:2px dashed #f4b18c;border-radius:22px;font-size:36px;font-weight:900;padding:24px 5px;color:#4d4638}.correct-equation strong{color:#19a876}.feedback-page p,.end-page p{color:#7b8c80;font-size:14px;line-height:1.7}.feedback-count{font-size:12px;color:#6f887a;font-weight:900;margin:30px 0 10px}.feedback-fill{background:#f4ad42}.feedback-page .primary{margin-top:30px}.end-emoji{font-size:105px;animation:bob 2.5s ease-in-out infinite}.end-page h1{font-size:27px}.end-page .primary{margin-top:40px}.secondary{width:100%;padding:15px;border:2px solid #cde7d9;border-radius:15px;color:#277d68;background:#fff;font-weight:900;margin-top:12px}.results-hero{text-align:center;padding:12px 4px 20px}.results-hero .end-emoji{font-size:78px}.results-hero h1{font-size:27px;color:#176b58;margin:7px 0}.results-hero>p:not(.eyebrow){font-size:13px;color:#788d80}.score-circle{width:152px;height:152px;border-radius:50%;background:#fff;border:11px solid #3ecb91;box-shadow:0 0 0 7px #d8f5e5;margin:25px auto 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#15875c;font-size:41px;font-weight:900}.score-circle small{font-size:12px}.new-record{background:#fff1bb;color:#a67516;border-radius:30px;padding:10px;font-size:12px;font-weight:900}.result-details{margin-top:12px}.result-details h2{margin-bottom:12px}.detail{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed #e7ece5;padding:10px 0;font-size:12px}.detail:last-child{border:0}.detail span{color:#7c8b80}.detail b{text-align:right}.green{color:#0ca36c}.result-button{margin-top:15px}.subhead{display:flex;align-items:center;gap:12px;margin:25px 0}.subhead h1{font-size:24px;margin:0}.back,.close{border:0;background:#e4f5e9;color:#146e59;border-radius:12px;width:38px;height:38px;font-size:21px}.stats-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat{text-align:center;display:flex;flex-direction:column;gap:4px}.stat strong{font-size:32px;color:#0e9568}.stat span{font-size:11px;color:#7c8f82}.tabs{display:flex;background:#e7f0e9;border-radius:13px;padding:4px;gap:5px;margin:10px 0 15px}.tabs button{flex:1;border:0;background:transparent;border-radius:10px;padding:10px;font-size:12px;font-weight:900;color:#738b7d}.tabs button.selected{background:#fff;color:#168264;box-shadow:0 2px 7px #00000010}.history-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #edf1ea;font-size:13px}.history-item:last-child{border:0}.history-item small{display:block;color:#8c998e;font-size:11px;margin-top:4px}.history-item b{color:#159568;font-size:18px}.empty{text-align:center;color:#7b8e81;font-size:13px}.weak-badge{background:#ffe9dd;color:#b76d49;padding:7px;border-radius:20px;font-size:11px;font-weight:900}.stats-list .primary{margin-top:15px}.awards h2{margin-bottom:10px}.award{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:12px}.award span{font-size:23px}.award small{margin-left:auto;color:#16a36d}.award.locked{opacity:.4}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:#1d493c9e;display:flex;align-items:center;justify-content:center;padding:12px}.settings-modal{width:100%;max-height:94%;overflow:auto;background:#fffaf0;border-radius:25px;padding:22px;box-shadow:0 25px 80px #0004}.setting-label{display:block;font-weight:900;margin:20px 0 12px}.range-picker{display:flex;justify-content:center;align-items:center;gap:20px}.range-picker button{height:48px;width:52px;border:0;border-radius:13px;background:#cfeee0;color:#167e64;font-size:29px;font-weight:900}.range-picker strong{font-size:37px;min-width:45px;text-align:center}.hint{text-align:center;color:#879387;font-size:12px}.difficulty-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.difficulty-picker button{border:2px solid transparent;border-radius:14px;padding:12px 4px;background:#eaf6e9;display:flex;flex-direction:column;gap:5px;align-items:center}.difficulty-picker .normal{background:#fff3d9}.difficulty-picker .hard{background:#ffe9e5}.difficulty-picker .active{border-color:#159b73;box-shadow:0 0 0 2px #a8ebd3}.difficulty-picker span{font-size:26px}.difficulty-picker b{font-size:12px}.difficulty-picker small{font-size:10px;color:#77877d}.sound-toggle{display:flex;justify-content:space-between;margin:24px 0;font-size:13px;color:#8b948a}.sound-toggle input{accent-color:#119e70}@keyframes bob{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-9px) rotate(3deg)}}@media(max-width:520px){.app-shell{padding:0;background:#faf8ef}.phone{border-radius:0;min-height:100dvh;box-shadow:none;padding:16px 18px 32px}.hero{height:260px}.hero h1{font-size:42px}.equation{font-size:48px}}@media(max-width:360px){.phone{padding:12px}.hero h1{font-size:36px}.mascot-big{font-size:70px}.keyboard button{min-height:51px}.question{padding:18px 5px}}.hero .eyebrow{position:relative;z-index:2;margin:0 12px 0 125px;letter-spacing:1px;font-size:clamp(8px,2.4vw,11px);white-space:normal;line-height:1.4;max-width:calc(100% - 137px)}.hero h1{font-size:clamp(31px,9vw,46px);overflow-wrap:normal}.sun{z-index:0}.hero .mascot{z-index:1}.training-empty{text-align:center}.training-empty .end-emoji{font-size:72px}.training-empty p{line-height:1.5;color:#688376}.game-layout{display:flex;flex-direction:column;min-height:0}.question-correct{border-color:#21ba7d;background:linear-gradient(#e7fff0,#b8f2d3);animation:successPop .35s ease-out}.question-correct p{color:#08794e}.answer-locked{pointer-events:none;opacity:.6}@keyframes successPop{0%{transform:scale(.97)}60%{transform:scale(1.025)}to{transform:scale(1)}}@media(max-width:520px){.phone:has(.game-layout){height:100dvh;height:100svh;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:clamp(8px,1.8dvh,16px) 14px 8px}.phone:has(.game-layout) .topbar{flex-shrink:0;margin-bottom:clamp(3px,1dvh,12px)}.phone:has(.game-layout) .game-layout{flex:1;min-height:0}.game-layout .game-top{margin:clamp(3px,1dvh,10px) 0 clamp(5px,1.2dvh,12px)}.game-layout .game-status{padding:clamp(9px,1.5dvh,16px);margin-bottom:clamp(4px,1dvh,12px)}.game-layout .status-label{margin-bottom:5px;font-size:clamp(11px,1.6dvh,14px)}.game-layout .status-mini{margin-top:6px;font-size:clamp(10px,1.5dvh,12px)}.game-layout .bar-track{height:clamp(8px,1.5dvh,14px)}.game-layout .timer-area{padding:3px 5px clamp(4px,1dvh,12px)}.game-layout .timer-track{height:clamp(10px,1.8dvh,18px)}.game-layout .question{padding:clamp(8px,1.8dvh,20px) 4px;margin:clamp(6px,1.4dvh,14px) 0 clamp(9px,1.8dvh,20px)}.game-layout .question p{margin:0 0 3px;font-size:clamp(9px,1.3dvh,11px)}.game-layout .equation{font-size:clamp(31px,6.4dvh,55px)}.game-layout .answer-area{min-height:0;display:flex;flex-direction:column;flex:1}.game-layout .answer-label{margin:0 0 clamp(4px,1dvh,10px);font-size:clamp(10px,1.5dvh,12px)}.game-layout .display{height:clamp(38px,6.5dvh,63px);flex-shrink:0;margin:0 12% clamp(6px,1.2dvh,13px);font-size:clamp(26px,4.6dvh,38px)}.game-layout .keyboard{flex:1;min-height:0;grid-template-rows:repeat(4,minmax(0,1fr));gap:clamp(4px,.8dvh,8px)}.game-layout .keyboard button{min-height:0;height:100%;font-size:clamp(19px,3.4dvh,26px);border-radius:11px}.game-layout .choices{margin-top:clamp(8px,2dvh,20px);gap:7px}.game-layout .choices button{padding:clamp(14px,3dvh,24px) 2px}.game-layout .game-helper{flex-shrink:0;margin-top:clamp(4px,1dvh,12px);font-size:clamp(10px,1.5dvh,12px)}}@media(max-width:380px){.hero .eyebrow{margin-left:108px;max-width:calc(100% - 120px)}.hero h1{margin-left:105px;font-size:clamp(30px,9vw,38px)}.top-pill{font-size:9px;padding:7px}}@media(max-height:610px)and (max-width:520px){.phone:has(.game-layout) .top-pill{display:none}.game-layout .game-helper{display:none}.game-layout .game-status{padding:6px 9px}.game-layout .question{margin:4px 0 8px}.game-layout .equation{font-size:30px}}.update-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin-bottom:10px;border:2px solid #79c5a2;border-radius:14px;background:#e8fff1;color:#145a46;font-weight:800;font-size:13px}.update-banner button{border:0;border-radius:12px;background:#118b65;color:#fff;padding:10px 12px;font-weight:800;cursor:pointer;white-space:nowrap}.update-check{border:0;background:transparent;color:#176a61;text-decoration:underline;cursor:pointer;font:inherit;padding:3px}.install-action{background:#e3f6ec;border-color:#8fd8b4;color:#17604c}.install-modal{text-align:center;max-width:390px;width:calc(100% - 28px)}.install-modal h2{font-size:clamp(21px,5vw,27px);line-height:1.2}.install-modal p{line-height:1.5;color:#466d60}.install-modal .primary,.install-modal .secondary{width:100%;margin-top:12px}.install-symbol{font-size:54px;margin:6px 0 12px}.install-instructions{padding:13px;border-radius:13px;background:#eaf7ef;text-align:left;font-size:14px}.update-status{font-size:12px;text-align:center;color:#49546a;margin:8px 12px 0;line-height:1.4}
