:root{--navy:#263b78;--ink:#202942;--muted:#6f7890;--paper:#fbfaf5;--line:#e3e2dc;--gold:#f3cb48;--mint:#52bd92;--coral:#ea765f;--red:#d83b52;--green:#19805f}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--font-nunito),system-ui,sans-serif;margin:0}button,input{font:inherit}button{cursor:pointer;color:inherit}header{border-bottom:1px solid var(--line);background:#fff;align-items:center;height:76px;padding:0 5vw;display:flex}.logo{background:0 0;border:0;flex-direction:column;align-items:flex-start;display:flex}.logo span{font-family:var(--font-fraunces),serif;font-size:27px;font-weight:900}.logo small{letter-spacing:1.1px;color:#8b93a4;text-transform:uppercase;font-size:7px;font-weight:900}.level-chip{color:var(--navy);background:#eef2ff;border-radius:99px;margin-left:auto;padding:8px 13px;font-size:11px;font-weight:900}.page{width:min(1040px,100% - 36px);margin:auto}.home-page{align-content:center;gap:40px;min-height:calc(100vh - 76px);padding:55px 0;display:grid}.hero{text-align:center}.eyebrow{letter-spacing:1.5px;color:#8e96a7;margin:0 0 10px;font-size:10px;font-weight:1000}.hero h1,.menu-title h1,.result-page h1{font:900 48px/1.05 var(--font-fraunces),serif;margin:0}.hero>p:last-child,.menu-title>p:last-child,.result-page>p{color:var(--muted);font-size:17px}.module-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.module-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:26px;padding:30px;transition:all .18s;box-shadow:0 15px 45px #24315010}.module-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px #24315018}.module-card.add{background:#eef8f4}.module-card.mult{background:#fff4dd}.module-icon{background:var(--navy);color:#fff;border-radius:18px;place-items:center;width:58px;height:58px;margin-bottom:24px;font-size:34px;font-weight:900;display:grid}.module-card small{letter-spacing:1.2px;color:#8991a3;font-size:9px;font-weight:1000}.module-card h2{font:900 32px var(--font-fraunces),serif;margin:7px 0}.module-card p{color:var(--muted);margin:0 0 26px}.module-card b{color:var(--navy);font-size:13px}.menu-page{padding:38px 0 70px}.back{color:var(--navy);background:0 0;border:0;padding:8px 0;font-weight:900}.menu-title{text-align:center;margin:25px 0 32px}.menu-title h1{font-size:42px}.step-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.step-grid>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:17px;grid-template-columns:46px 1fr 24px;align-items:center;gap:13px;padding:16px;display:grid}.step-grid>button:hover{border-color:#8a99cd;box-shadow:0 5px #e6e9f4}.step-grid>button>span{width:46px;height:46px;color:var(--navy);background:#eef2ff;border-radius:14px;place-items:center;font-weight:1000;display:grid}.step-grid h3{margin:0;font-size:14px}.step-grid p{color:#8b93a3;margin:4px 0 0;font-size:12px}.step-grid .mix-card{background:var(--navy);color:#fff;grid-column:1/-1}.step-grid .mix-card span{background:var(--gold);color:var(--navy)}.step-grid .mix-card p{color:#d9dff3}.table-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.table-grid button{border:1px solid var(--line);background:#fff;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;min-height:170px;padding:22px;display:flex}.table-grid button:hover{border-color:#e6b93f;transform:translateY(-3px)}.table-grid small{letter-spacing:1px;color:#9097a5;font-size:9px;font-weight:1000}.table-grid strong{font:900 48px var(--font-fraunces),serif;color:var(--navy)}.table-grid button>div{gap:5px;display:flex}.table-grid i{background:var(--coral);border-radius:50%;width:9px;height:9px}.table-grid .table-mix{background:#fff1cf}.table-mix span{font-size:12px;font-weight:900}.play-page{background:radial-gradient(circle at 50% 12%,#eaf0ff,#0000 34%);flex-direction:column;align-items:center;min-height:calc(100vh - 76px);padding:34px 16px 70px;display:flex}.play-head{align-items:center;gap:14px;width:min(690px,100%);margin-bottom:24px;display:flex}.round-exit{background:#e7e7e2;border:0;border-radius:50%;width:38px;height:38px;font-size:22px}.progress{background:#e2e4e8;border-radius:10px;flex:1;height:10px;overflow:hidden}.progress i{background:var(--mint);border-radius:10px;height:100%;transition:all .3s;display:block}.play-head>b{font-size:12px}.exercise{border:1px solid var(--line);background:#fff;border-radius:28px;width:min(690px,100%);padding:34px 44px;box-shadow:0 22px 70px #26304a13}.exercise-top{color:#8790a3;text-transform:uppercase;letter-spacing:1px;justify-content:space-between;font-size:10px;font-weight:1000;display:flex}.exercise h2{text-align:center;font:900 64px var(--font-fraunces),serif;margin:42px 0}.exercise h2 em{color:var(--coral);font-style:normal}form label{text-transform:uppercase;letter-spacing:1px;color:#8c94a5;margin-bottom:7px;font-size:10px;font-weight:1000;display:block}.input-row{gap:10px;display:flex}.input-row input{border:2px solid #dfe1e3;border-radius:15px;outline:0;width:100%;min-width:0;height:64px;padding:0 18px;font-size:30px;font-weight:1000}.input-row input:focus{border-color:#7d8dc8;box-shadow:0 0 0 4px #eef2ff}.input-row button{background:var(--navy);color:#fff;border:0;border-radius:14px;padding:0 20px;font-weight:1000}.input-row button:disabled{opacity:.35}.feedback{border-radius:13px;justify-content:space-between;margin-top:15px;padding:13px 16px;display:flex}.feedback.good{color:#24775a;background:#e8f8f1}.feedback.retry{color:#a84937;background:#fff0ec}.help-zone{background:#fafbff;border:2px solid #e2e5f1;border-radius:17px;margin-top:18px;padding:18px}.exercise-footer{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.help-btn{color:var(--navy);background:#eef2ff;border:0;border-radius:11px;padding:10px 13px;font-weight:900}.exercise-footer>span{color:#b18812;font-weight:1000}.place-help{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:9px;display:flex}.place-help>div{text-align:center;width:48px}.place-help small{color:#8790a2;font-size:10px;display:block}.place-help b{background:#fff;border:2px solid #dfe1e7;border-radius:11px;place-items:center;height:48px;font-size:22px;display:grid}.place-help>span{font-size:22px;font-weight:900}.place-help strong{color:var(--navy);font-size:30px}.multiply-help{text-align:center}.groups{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.groups>div{background:#fff5f2;border:2px solid #f1bcae;border-radius:10px;gap:4px;padding:9px;display:flex}.groups i{background:var(--coral);border-radius:50%;width:11px;height:11px}.multiply-help p{color:var(--navy);font-size:17px;font-weight:1000}.baton{max-width:480px;min-height:300px;margin:auto;position:relative}.baton-sum{justify-content:center;align-items:center;gap:1px;font-size:38px;font-weight:1000;display:flex}.baton-sum b{color:var(--ink);margin:0 25px}.tens{color:var(--green)}.units{color:var(--red)}.v{width:130px;height:95px;position:absolute;top:57px;left:58%}.v i{background:var(--red);transform-origin:top;border-radius:4px;width:4px;height:80px;position:absolute;top:0}.v i:first-child{transform:rotate(42deg)}.v i:nth-child(2){transform:rotate(-42deg)}.v span{color:var(--red);font-size:24px;font-weight:1000;position:absolute;top:74px}.ten-group{border:4px solid var(--red);color:var(--red);background:#fff5f6;border-radius:25px;padding:10px 15px;font-size:22px;font-weight:1000;position:absolute;top:143px;left:18%;transform:rotate(35deg)}.carry{border:4px solid var(--green);width:42px;height:42px;color:var(--red);border-radius:50%;place-items:center;font-size:22px;font-weight:1000;display:grid;position:absolute;top:235px;left:48%}.place-result{border-bottom:3px dashed var(--green);font-size:34px;font-weight:1000;position:absolute;bottom:4px;right:5%}.result-page{text-align:center;padding:80px 0}.reward{background:var(--gold);color:#fff;border-radius:50%;place-items:center;width:82px;height:82px;margin:0 auto 22px;font-size:40px;display:grid;box-shadow:0 0 0 12px #fff0b8}.result-page h1{font-size:46px}.result-actions{justify-content:center;gap:12px;margin-top:30px;display:flex}.again{background:var(--gold);border:0;border-radius:15px;flex-direction:column;padding:14px 22px;display:flex;box-shadow:0 5px #c7a32f}.again span{font-size:20px;font-weight:1000}.again small{font-size:9px}.secondary{border:1px solid var(--line);background:#fff;border-radius:15px;padding:14px 20px;font-weight:900}@media (width<=720px){.module-grid,.step-grid{grid-template-columns:1fr}.step-grid .mix-card{grid-column:auto}.table-grid{grid-template-columns:1fr 1fr}.hero h1,.menu-title h1,.result-page h1{font-size:38px}.exercise{padding:28px 22px}.exercise h2{font-size:52px}.level-chip{font-size:9px}.baton{transform-origin:top;margin-bottom:-30px;transform:scale(.9)}}@media (width<=430px){header{padding:0 14px}.level-chip{text-align:center;max-width:190px}.home-page{padding:35px 0}.table-grid{grid-template-columns:1fr 1fr}.table-grid button{min-height:135px}.input-row{flex-direction:column}.input-row button{height:50px}.feedback{flex-direction:column;gap:4px}.result-actions{flex-direction:column}.baton{margin-bottom:-70px;margin-left:-35px;margin-right:-35px;transform:scale(.75)}}.pair-help{gap:12px;max-width:430px;margin:auto;display:grid}.pair{grid-template-columns:70px 1fr 70px 80px;align-items:center;gap:8px;display:grid}.pair span{border-radius:12px;place-items:center;height:48px;font-size:20px;font-weight:1000;display:grid}.pair i{border-radius:4px;height:4px;position:relative}.pair i:before,.pair i:after{content:"";background:inherit;transform-origin:100%;width:11px;height:4px;position:absolute;right:0}.pair i:before{transform:rotate(35deg)}.pair i:after{transform:rotate(-35deg)}.pair b{text-align:center;font-size:16px}.tens-pair span{color:var(--green);background:#e8f7f1;border:2px solid #9dd7c3}.tens-pair i{background:var(--green)}.units-pair span{color:var(--red);background:#fff0f2;border:2px solid #efadb7}.units-pair i{background:var(--red)}.pair-help>strong{text-align:center;color:var(--navy);padding-top:5px;font-size:30px}.baton{max-width:500px;height:325px;margin:auto;position:relative;overflow:hidden;transform:none}.number-a,.number-b,.place-result{z-index:3;font-size:42px;font-weight:1000;position:absolute;top:12px}.number-a{left:70px}.number-b{left:250px}.plus,.equals{z-index:3;font-size:36px;position:absolute;top:18px}.plus{left:190px}.equals{left:365px}.place-result{border:0;bottom:auto;left:418px;right:auto}.number-a .tens,.number-b .tens{border:3px solid var(--green);border-radius:50%;place-items:center;width:48px;height:48px;display:inline-grid}.v{width:125px;height:100px;top:64px;left:280px}.v i{height:76px}.v span{top:72px}.v span:first-of-type{left:-40px}.v span:nth-of-type(2){right:-27px}.slanted-group{border:5px solid var(--red);z-index:1;background:#fff5f688;border-radius:38px;width:245px;height:68px;position:absolute;top:45px;left:93px;transform:rotate(35deg)}.carry{z-index:4;width:46px;height:46px;top:250px;left:286px}.green-link{background:var(--green);transform-origin:0;z-index:0;border-radius:4px;height:4px;position:absolute}.green-link.one{width:250px;top:65px;left:92px;transform:rotate(63deg)}.green-link.two{width:205px;top:65px;left:274px;transform:rotate(98deg)}.green-link.dotted{background:repeating-linear-gradient(90deg,var(--green) 0 8px,transparent 8px 16px);width:185px;top:271px;left:328px;transform:rotate(-58deg)}.sheet-page{padding:42px 0 75px}.sheet-head{align-items:center;gap:18px;margin-bottom:24px;display:flex}.sheet-head>div{flex:1}.sheet-head h1{font:900 38px var(--font-fraunces),serif;margin:0}.sheet-head>span{color:var(--navy);background:#eef2ff;border-radius:99px;padding:8px 12px;font-size:11px;font-weight:900}.exam-sheet{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:1fr 1fr;gap:14px 28px;padding:28px;display:grid;box-shadow:0 18px 55px #26304a10}.exam-sheet label{border-bottom:2px solid #ecece7;grid-template-columns:25px 1fr 85px 35px;align-items:center;gap:8px;min-height:78px;padding:7px;display:grid}.exam-sheet label>small{color:#a1a7b3;font-weight:900}.exam-sheet label>b{font:900 25px var(--font-fraunces),serif}.exam-sheet input{text-align:center;border:2px solid #dfe1e4;border-radius:10px;outline:0;width:80px;height:48px;font-size:22px;font-weight:1000}.exam-sheet input:focus{border-color:#7d8dc8;box-shadow:0 0 0 3px #eef2ff}.exam-sheet em{font-style:normal;font-weight:1000}.sheet-good{background:#eff9f5;border-radius:12px}.sheet-good em{color:var(--green)}.sheet-wrong{background:#fff2ef;border-radius:12px}.sheet-wrong em{color:#b44936}.sheet-actions{text-align:center;margin-top:22px}.sheet-check{background:var(--navy);color:#fff;border:0;border-radius:14px;padding:14px 22px;font-weight:1000}.sheet-check:disabled{opacity:.35}@media (width<=720px){.exam-sheet{grid-template-columns:1fr}.sheet-head h1{font-size:31px}.pair{grid-template-columns:58px 1fr 58px 65px}.baton{transform-origin:top;margin-bottom:-55px;transform:scale(.82)}}@media (width<=430px){.exam-sheet{padding:15px}.exam-sheet label{grid-template-columns:20px 1fr 65px 30px}.exam-sheet label>b{font-size:21px}.exam-sheet input{width:62px}.sheet-head>span{display:none}.baton{margin-bottom:-100px;margin-left:-75px;margin-right:-75px;transform:scale(.67)}}.baton-svg{width:min(560px,100%);margin:auto}.baton-svg svg{width:100%;height:auto;display:block;overflow:visible}.baton-svg text{font-family:var(--font-nunito),sans-serif;paint-order:stroke fill;stroke:#fafbff;stroke-width:8px;stroke-linejoin:round;font-weight:1000}.big-svg{font-size:46px}.branch-svg{font-size:28px}.green-text{fill:var(--green)}.red-text{fill:var(--red)}.dark-text{fill:var(--ink)}.red-group-svg{fill:#fff2f4cc;stroke:var(--red);stroke-width:5px}.red-path{fill:none;stroke:var(--red);stroke-width:5px;stroke-linecap:round}.green-path{fill:none;stroke:var(--green);stroke-width:5px;stroke-linecap:round}.green-dash{fill:none;stroke:var(--green);stroke-width:5px;stroke-linecap:round;stroke-dasharray:9 10}.red-dash{fill:none;stroke:var(--red);stroke-width:4px;stroke-linecap:round;stroke-dasharray:7 10}.green-circle-svg{fill:#fafbff;stroke:var(--green);stroke-width:4px}.result-page{min-height:calc(100vh - 76px);position:relative;overflow:hidden}.result-page>:not(.confetti){z-index:2;position:relative}.confetti{z-index:1;pointer-events:none;position:absolute;inset:0}.confetti i{--x:50%;--delay:0s;--spin:360deg;top:-20px;left:var(--x);background:var(--gold);width:10px;height:18px;animation:confetti-fall 2.8s var(--delay) cubic-bezier(.2,.7,.3,1) both;border-radius:3px;position:absolute}.confetti i:nth-child(3n){background:var(--mint);border-radius:50%}.confetti i:nth-child(4n){background:var(--coral)}.confetti i:nth-child(5n){background:#7b8fd3}.celebration-complete .reward{background:var(--mint);box-shadow:0 0 0 12px #dff5ec}.celebration-good{background:radial-gradient(circle at 50% 25%,#fff5cf,#0000 43%)}.celebration-good .reward{width:96px;height:96px;font-size:25px}.celebration-excellent{background:radial-gradient(circle at 50% 22%,#fff0a8,#0000 52%)}.celebration-excellent .reward{width:116px;height:116px;font-size:21px;animation:.65s ease-out both reward-pop}.celebration-master{background:radial-gradient(circle at 50% 20%,#e7dcff,#0000 55%)}.celebration-master .reward{background:#6552ca;width:128px;height:128px;font-size:58px;animation:.65s ease-out both reward-pop}.step-grid>button.step-done{background:#eff9f5;border-color:#8fd1b8}.step-grid>button.step-done>span{background:var(--mint);color:#fff}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-5vh)rotate(0)}10%{opacity:1}to{transform:translateY(92vh) rotate(var(--spin));opacity:.85}}@keyframes reward-pop{0%{opacity:0;transform:scale(.35)rotate(-12deg)}70%{transform:scale(1.12)rotate(4deg)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.confetti i,.celebration-excellent .reward,.celebration-master .reward{animation:none}}
