@font-face{font-family:Island;src:local('Tahoma')}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:#f0f6f8;color:#14394a;font-family:Island,Tahoma,Arial,sans-serif;line-height:1.8}button,input,select{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;border:0;border-radius:18px;min-height:52px;padding:10px 22px;font-weight:700;transition:background .15s,transform .15s}button:active{transform:translateY(1px)}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e49b19;outline-offset:4px}button:disabled:active{transform:none}.top{max-width:1160px;margin:auto;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:1.4rem;color:#123b51;text-decoration:none;font-weight:bold;line-height:1.35}.brand span{display:block;font-size:.88rem;font-weight:400;color:#506777;margin-top:5px}.quiet{background:#fff;color:#18455b;border:1px solid #c6dbe3}.primary{background:#ffd367;color:#163a4c;box-shadow:0 5px 0 #d8a743}.secondary{background:#146b78;color:white}.small{font-size:.87rem;color:#4f6572}.eyebrow{color:#15747f;font-size:.9rem;font-weight:bold;letter-spacing:0;margin:0}.welcome{max-width:1100px;margin:12px auto 45px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:32px;overflow:hidden;box-shadow:0 16px 60px #123b5112}.welcome-art{min-height:560px;background:#123b51}.welcome-art img{height:100%;width:100%;object-fit:cover;display:block}.welcome-copy{padding:40px}.welcome-copy h1{font-size:2.6rem;line-height:1.35;margin:12px 0}.welcome-copy p{margin:12px 0}.welcome-copy input[type=text],#name{width:100%;background:#f5f9fa;border:2px solid #c5dce2;padding:12px 16px;border-radius:14px;font-size:1.2rem;color:#123b51}.welcome-copy form>label{display:block;font-weight:bold;margin:20px 0 6px}.welcome-copy fieldset{border:0;margin:18px 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.welcome-copy legend{font-weight:bold;margin-bottom:8px}.welcome-copy fieldset input{position:absolute;opacity:0}.welcome-copy fieldset span{display:block;padding:8px 12px;border:2px solid #dce9ee;border-radius:14px;cursor:pointer}.welcome-copy fieldset input:checked+span{background:#e7f7f7;border-color:#167885}.welcome-copy fieldset input:focus-visible+span{outline:3px solid #e49b19}.welcome-copy .primary{width:100%;margin:8px 0}footer{text-align:center;font-size:.87rem;color:#526874;padding:20px}.shell{max-width:1040px;margin:12px auto;padding:0 24px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.section-head h1{font-size:2rem;line-height:1.4;margin:8px 0}.panel{background:white;border-radius:28px;padding:32px;box-shadow:0 12px 50px #123b5109}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.scene{width:100%;border-radius:22px;max-height:350px;object-fit:cover}.story-text{font-size:1.2rem}.story-text h1{font-size:2rem;line-height:1.45}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.actions button{flex:1}.task{max-width:740px;margin:auto}.task h1{font-size:1.65rem;line-height:1.6;margin:12px 0}.taskbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}.taskbar p{margin:0}.progress{height:9px;border-radius:20px;background:#d8e5eb;overflow:hidden;margin-bottom:24px}.progress span{height:100%;display:block;background:#0b7784;transition:width .3s}.math-board{border-radius:22px;background:#eff7f9;padding:22px;margin:20px 0;text-align:center}.tenframe{direction:ltr;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:390px;margin:16px auto}.cell{border:2px solid #abcbd6;border-radius:10px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#fff;font-size:1.3rem;min-width:0}.cell.filled{background:#157786;color:white;border-color:#157786}.cell.added{background:#ffcf65;color:#123b51;border-color:#dea72d}.pips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;max-width:460px;margin:12px auto}.pip{display:inline-flex;width:27px;height:27px;border-radius:50%;background:#147687;border:2px solid #147687;align-items:center;justify-content:center;color:#fff;font-size:.8rem}.pip.gold{background:#f2b63f;border-color:#cf9122;color:#173c51}.pip.crossed{background:#fff;color:#6b8492;border-color:#9bb4bd;text-decoration:line-through}.equation{direction:ltr;font-size:1.8rem;line-height:1.5;font-weight:bold;margin:12px}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;direction:ltr;margin:20px 0}.choice{background:#fff;border:2px solid #9cbdca;color:#123b51;min-height:72px;font-size:1.8rem}.choice:hover{background:#e6f4f7}.choice.wrong{background:#fff0e6;border-color:#d68746}.choice.correct{background:#daf1e2;border-color:#268b59}.feedback{min-height:48px;padding:10px 15px;border-radius:14px;background:#f3f7f9;font-size:1rem}.feedback.good{background:#ddf2e6;color:#155c38}.feedback.try{background:#fff2df;color:#704312}.hint{border-right:4px solid #df9f25;background:#fff5db;border-radius:10px;padding:14px 18px;margin:16px 0}.counter{display:flex;align-items:center;justify-content:center;gap:20px;direction:ltr;margin:16px 0}.counter button{font-size:1.6rem;width:58px;background:#fff;border:2px solid #99bdc9;color:#14394a}.counter output{font-size:2rem;min-width:50px}.missions{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mission{border-radius:22px;background:#fff;padding:22px;text-align:right;border:2px solid transparent;min-height:170px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:#153e50}.mission:hover{border-color:#218b95}.mission .badge{width:38px;height:38px;display:grid;place-items:center;background:#e5f3f5;border-radius:50%;color:#126b78}.mission h2{font-size:1.15rem;margin:3px 0}.mission p{font-size:.9rem;font-weight:400;margin:0;color:#4f6673}.mission.done{border-color:#7caf93}.level-title{font-size:1.2rem;margin:28px 0 12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stat{background:#eff6f8;border-radius:18px;padding:18px;text-align:center}.stat strong{display:block;font-size:2rem;line-height:1.4}.stat span{font-size:.9rem}.report-list{padding:0;list-style:none}.report-list li{padding:18px 0;border-bottom:1px solid #dce6eb}.report-list h3{font-size:1.1rem;margin:0}.checkline{display:flex;gap:10px;align-items:center;min-height:48px;font-size:.95rem}.checkline input{width:22px;height:22px;accent-color:#167581}.audio-note{font-size:.88rem;color:#5c6472}.celebrate{font-size:3.5rem;line-height:1.4;text-align:center;margin:12px}.center{text-align:center}.success-title{font-size:2rem;margin:8px 0}.muted{color:#526d7a}.tag{display:inline-block;font-size:.88rem;background:#e7f4f5;padding:4px 12px;border-radius:30px;color:#135a67}.step-example{font-size:1.14rem}.danger{background:#fff2ed;color:#934328;border:1px solid #e2b9a6}.notice{padding:16px 20px;background:#e1eff4;border-radius:18px}.hidden{display:none!important}@media(max-width:760px){.top{padding:18px}.welcome{margin:0 14px 20px;grid-template-columns:1fr;max-width:520px;border-radius:24px}.welcome-art{height:220px;min-height:0}.welcome-art img{object-position:center 52%}.welcome-copy{padding:24px}.welcome-copy h1{font-size:2rem}.welcome-copy h1 br{display:none}.shell{padding:0 14px}.panel{padding:22px 18px;border-radius:22px}.story-layout{grid-template-columns:1fr;gap:14px}.scene{max-height:200px}.story-text h1{font-size:1.6rem}.story-text{font-size:1.08rem}.missions{grid-template-columns:repeat(2,1fr);gap:10px}.mission{padding:16px;min-height:160px}.section-head h1{font-size:1.6rem}.section-head{gap:10px;flex-wrap:wrap}.stats{gap:6px}.stat{padding:12px 6px}.stat strong{font-size:1.6rem}.task h1{font-size:1.4rem}.math-board{padding:14px}.actions button{padding:12px;flex-basis:40%}.tenframe{gap:6px}.brand{font-size:1.15rem}.taskbar{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

h1,h2,h3,p,label{overflow-wrap:anywhere}.welcome-copy,.story-text{min-width:0}

.number-line{direction:ltr;flex-wrap:nowrap;gap:4px}.number-line .cell{flex:1;max-width:42px;font-size:1rem}

.game-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 16px;border-radius:14px;text-underline-offset:5px;font-weight:bold}
