/* Ruang Angka REV5 — Playful Bold Minimalism. Functional HTML UI, not a flattened mockup. */
:root{--kid-blue:#0752e7;--kid-deep:#1039a9;--kid-navy:#143481;--kid-yellow:#ffcf08;--kid-orange:#ffab00;--kid-red:#ff5a67;--kid-green:#16b56a;--kid-sky:#dcecff;--kid-lilac:#e8e2ff;--kid-cream:#fff5d8;--kid-ink:#123476;--kid-shadow:0 7px 0 #dae7fb;--muted:#6279a3;--text:#16387c;--border:#dfebff;--paper:#fff;--bg:#fff;--shadow:0 8px 24px rgba(31,77,167,.07)}
html{scroll-behavior:smooth}body{overflow-x:hidden;background:#fff!important;color:var(--kid-ink)}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:4px solid #ffa600;outline-offset:3px}a,input,textarea,select{accent-color:var(--kid-blue)}.app-shell{max-width:1130px}.main-content{padding-top:20px}.app-header{border-bottom:0;height:91px}.brand{font-weight:1000;color:var(--kid-deep);font-size:clamp(22px,2.4vw,27px);letter-spacing:-.06em}.brand small{color:var(--kid-navy);letter-spacing:.12em;margin-top:3px;font-size:8.5px}.logo{transform:none}.logo span{border-radius:50%!important;background:#1456e9!important}.logo span:nth-child(2){background:#ffce07!important}.logo span:nth-child(3){background:#ff5962!important}.logo span:nth-child(4){background:#09ba70!important}.pill-plain{background:#eff5ff;border:0;border-radius:50px;padding:8px;gap:7px}.pill-plain .avatar{background:#ffcd12;color:#123aa5;width:38px;height:38px;border-radius:50%;box-shadow:0 3px 0 #f2ae00;font-size:16px}.header-icon{border:0;background:#eaf2ff;color:#1651d8}.desktop-nav button{font-weight:900!important}.desktop-nav button.active{background:#eaf2ff!important;color:#1151e9!important;border-radius:18px}.mobile-nav button{font-size:11px!important}.mobile-nav button.active{background:#eaf2ff!important;color:#1051da!important}.mobile-nav button svg{stroke-width:2.7}.card,.modal{border:2px solid #dce8fc;box-shadow:0 5px 0 rgba(22,81,187,.04)}
/* Shared cheerful stage dressing */
.page-head{position:relative}.page-head .eyebrow,.eyebrow{letter-spacing:.09em;font-weight:1000;color:#2b61c5}.page-head h1{color:#0e3ba8}.page-head h1,.topic-hero h1,.game-question h1,.kid-home h1,.intro-page h1{font-family:"Trebuchet MS","Nunito Sans",system-ui,sans-serif;letter-spacing:-.055em}.btn.primary,.kid-start-btn{background:#1453e7!important;color:#fff!important;border:2px solid #1453e7!important;box-shadow:0 6px 0 #0c36a0!important;border-radius:20px!important;font-weight:1000}.btn.primary:active,.kid-start-btn:active{transform:translateY(3px);box-shadow:0 3px 0 #0c36a0!important}.btn{border-radius:17px;font-weight:900}.btn.soft{background:#eaf3ff!important;color:#1253dc!important;border-color:#d8e6ff!important}.btn.ghost{background:#fff;color:#2055be}.status-pill{font-weight:850}
/* Home: cheerful editorial composition with original playful stickers */
.kid-home{position:relative}.kid-welcome-banner{border:0!important;background:linear-gradient(115deg,#e6f3ff 0%,#f4faff 65%,#d9edff 100%)!important;border-radius:35px!important;box-shadow:0 7px 0 #cfe5ff;overflow:hidden}.kid-welcome-banner:before{background:#ffd012!important;width:310px!important;height:310px!important;right:-100px!important;top:-200px!important}.kid-welcome-banner:after{background:#ff6262!important;border:0}.kid-welcome-text{z-index:3}.kid-welcome-text .kid-greeting{color:#355eaa;font-weight:950}.kid-welcome-text h1{color:#163fbb}.kid-welcome-text h1 span{color:#e66a0b}.kid-welcome-mascot{z-index:2}.kid-welcome-mascot:before{background:#fff6bf!important;box-shadow:inset 0 -10px 0 #ffea87}.kid-welcome-mascot .home-mascot{transform:rotate(-8deg);width:105%;max-height:100%;filter:drop-shadow(0 9px 1px rgba(47,83,139,.1))}.kid-sun-doodle{color:#ffb900!important;z-index:1}.kid-activity-grid{gap:16px}.kid-activity-card{position:relative;box-shadow:0 7px 0 rgba(19,75,185,.13)!important;border:0!important;border-radius:29px!important;transition:transform .16s ease,filter .16s ease}.kid-activity-card:active{transform:scale(.97) translateY(3px)}.kid-activity-card.kid-blue{background:linear-gradient(145deg,#155cf2,#0647d5)!important}.kid-activity-card.kid-yellow{background:linear-gradient(145deg,#ffdd34,#ffc400)!important}.kid-activity-card.kid-sky{background:linear-gradient(145deg,#56cbf4,#2497e2)!important}.kid-activity-card.kid-coral{background:linear-gradient(145deg,#ff8580,#fc5364)!important}.kid-activity-card .kid-card-spark{color:#ffec8a!important;right:17px;top:11px;z-index:1}.kid-card-visual.kids-illustrated-items{height:170px;display:flex;justify-content:center;align-items:center;position:relative;gap:0;isolation:isolate}.kid-illustration{position:absolute;max-width:42%;max-height:90%;width:90px;height:105px;object-fit:contain;filter:drop-shadow(0 6px 1px rgba(23,57,116,.13));transition:transform .16s}.kid-illustration.piece-1{transform:translate(-58%,10%) rotate(-15deg)}.kid-illustration.piece-2{transform:translate(10%,-13%) rotate(9deg);z-index:2}.kid-illustration.piece-3{transform:translate(74%,17%) rotate(16deg)}.kids-illustrated-count .piece-1{transform:translate(-70%,16%) rotate(-16deg)}.kids-illustrated-count .piece-2{transform:translate(0%,-18%) rotate(12deg)}.kids-illustrated-count .piece-3{transform:translate(73%,15%) rotate(16deg)}.kid-card-bottom{box-shadow:0 4px 0 rgba(22,57,150,.12)!important;border:0!important;font-weight:1000!important;color:#1541a6!important}.kid-activity-card.kid-yellow .kid-card-bottom{background:#fff!important}.kid-play-arrow{background:#1953e8!important;color:white!important}.kid-round-action{background:#edf4ff!important;border:2px solid #dce9ff!important;box-shadow:0 4px 0 #d9e7ff;color:#1649bd!important;font-weight:950}.kid-round-action:nth-child(2){background:#fff4cc!important;border-color:#ffe6a3!important;box-shadow:0 4px 0 #ffdf8b}.kid-progress-note{color:#3158aa}
/* New topic header covers lesson map and free play, no plain title only */
.topic-hero{position:relative;overflow:hidden;background:#e5f1ff;border-radius:34px;display:flex;align-items:center;justify-content:space-between;padding:29px 36px;min-height:207px;margin-bottom:32px;box-shadow:0 6px 0 #d1e5ff}.topic-hero.topic-yellow{background:#fff4bd;box-shadow:0 6px 0 #f8e6a5}.topic-hero:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#ffcc09;right:-67px;top:-155px}.topic-hero.topic-yellow:before{background:#4d91f8}.topic-copy{position:relative;z-index:2;flex:1;max-width:600px}.topic-kicker{display:inline-block;border-radius:999px;background:#fff;padding:8px 12px;color:#1749bf;font-size:11px;letter-spacing:.12em;font-weight:1000}.topic-hero h1{margin:10px 0 6px;color:#113faa;line-height:1.05;font-weight:1000;font-size:clamp(30px,4.5vw,47px)}.topic-hero p{font-weight:800;font-size:15px;color:#486bab;margin:0}.topic-illustration{width:160px;height:146px;flex-shrink:0;position:relative;z-index:2;display:grid;place-items:center}.topic-main-img{width:135px;height:130px;object-fit:contain;filter:drop-shadow(0 9px 0 rgba(47,76,145,.10));transform:rotate(-7deg)}.topic-pop{position:absolute;color:#ffd008;font-size:43px;font-weight:900;top:-16px;right:6px}.topic-pop.pop-two{color:#fb5b68;font-size:23px;left:4px;bottom:-6px;top:auto}.topic-sections{display:grid;gap:18px}.topic-section{margin-bottom:5px}.topic-section .level-head{background:#f8fbff;border-radius:21px;padding:12px 15px;margin:0 0 16px;border:2px solid #e8efff}.topic-section:nth-child(2) .level-head{background:#fffaf0;border-color:#fff0bf}.topic-section:nth-child(3) .level-head{background:#fff5f6;border-color:#ffe7ea}.topic-section .level-head h3{font-weight:1000;color:#123f9f;font-size:20px}.topic-section .level-head p{font-size:13px;font-weight:700}.topic-section-spark{margin-left:auto;color:#ffb600;font-size:27px}.topic-tiles{gap:15px}.lesson-tile{background:#fff;border:2px solid #deebff;box-shadow:0 5px 0 #e5eefc;border-radius:27px;min-height:160px;display:flex;flex-direction:column;gap:9px;padding:17px;transition:transform .12s}.lesson-tile:active{transform:translateY(3px);box-shadow:0 2px 0 #e5eefc}.lesson-tile:nth-child(4n+2){background:#fffcf0;border-color:#fff0bb;box-shadow:0 5px 0 #ffe9a5}.lesson-tile:nth-child(4n+3){background:#fff7f8;border-color:#ffe4eb;box-shadow:0 5px 0 #ffe3e9}.lesson-tile .tile-icon{width:82px;height:79px;border:0!important;background:transparent!important}.lesson-tile .tile-item{width:79px;height:77px}.lesson-tile .title{font-weight:1000;font-size:18px;color:#173e9c}.lesson-tile .mini-label{margin-top:auto;color:#5070a5}.lesson-tile .status-dot{background:#ffd009;width:14px;height:14px}.explore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.explore-play-card{min-width:0;border:0!important;border-radius:29px;background:#eaf2ff;box-shadow:0 6px 0 #d7e6ff;min-height:212px;position:relative;padding:17px;display:flex;flex-direction:column;text-align:left;align-items:stretch}.explore-play-card:nth-child(4n+2){background:#fff2b7;box-shadow:0 6px 0 #f5df92}.explore-play-card:nth-child(4n+3){background:#e7f9e9;box-shadow:0 6px 0 #cdeccf}.explore-play-card:nth-child(4n){background:#ffe4e9;box-shadow:0 6px 0 #f7cbd5}.explore-play-card:active{transform:translateY(4px)}.explore-image{display:grid;place-items:center;flex:1}.explore-image .tile-icon{width:110px;height:104px;background:transparent!important;border:0!important}.explore-image .tile-item{height:100px;width:100px}.explore-text{display:flex;flex-direction:column;gap:4px;padding-right:40px}.explore-text strong{font-size:18px;font-weight:1000;color:#183c95}.explore-text small{color:#5271a5;font-weight:850;font-size:12px}.explore-go{position:absolute;right:13px;bottom:15px;border-radius:50%;background:#1755e9;color:white;display:grid;place-items:center;width:35px;height:35px;font-size:12px}.review-invite{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:13px 17px;background:#e7f9ed;border-radius:19px;margin:0 0 20px;font-weight:900;color:#0d8b55}.review-icon{font-size:25px;color:#f3b300}
/* Lesson intro — behaves like a full-page illustrated invitation */
.lesson-back{margin:3px 0 17px;display:inline-flex;align-items:center;gap:7px;font-weight:950;color:#2457bf}.intro-page{max-width:820px;margin:0 auto}.lesson-intro-card{position:relative;text-align:center;background:#eaf4ff;overflow:hidden;border:3px solid #d8e8ff;border-radius:43px;padding:27px 30px 41px;box-shadow:0 8px 0 #dae9ff}.intro-decoration{position:absolute;border-radius:50%;pointer-events:none}.intro-orb-a{background:#ffce00;width:300px;height:300px;top:-211px;right:-100px}.intro-orb-b{background:#65bbff;width:130px;height:130px;bottom:-92px;left:-67px}.intro-illustration{height:185px;position:relative;display:grid;place-items:center;margin:0 auto;max-width:360px}.intro-illustration .tile-icon{width:195px;height:172px;border:0!important;background:transparent!important}.intro-illustration .tile-item{width:158px;height:155px}.intro-side-star{position:absolute;width:92px;height:92px;object-fit:contain;right:24px;bottom:-6px;transform:rotate(12deg)}.intro-spark{position:absolute;color:#ffad00;font-size:42px;top:4px;left:45px}.intro-eyebrow{display:inline-block;background:#ffce07;color:#19469e;border-radius:999px;padding:7px 19px;font-size:12px;font-weight:1000;letter-spacing:.1em}.lesson-intro-card h1{font-size:clamp(36px,6vw,56px);margin:15px 0 0;color:#0e3fae;font-weight:1000}.lesson-intro-card p{font-size:20px;font-weight:950;color:#466aae;margin:12px 0 20px}.intro-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:8px auto 22px;max-width:520px}.intro-steps span{border-radius:18px;background:white;padding:13px 9px;font-weight:950;font-size:13px;color:#2454b5}.intro-prereq{display:block;margin:0 0 9px}.intro-start{font-size:21px;min-height:69px;padding:10px 40px!important;display:inline-flex;gap:20px;align-items:center}.intro-start span{font-size:16px;display:grid;place-items:center;background:#fff;color:#1546af;width:32px;height:32px;border-radius:50%}
/* A real scene for ALL questions, with plenty of white space */
.game-page{max-width:795px;margin:0 auto;padding-bottom:38px}.game-card{background:#fff;border:3px solid #e0eafd!important;border-radius:37px!important;box-shadow:0 7px 0 #eaf1ff!important;padding:23px 25px 20px;overflow:hidden}.lesson-progress{margin:3px 0 22px}.lesson-progress .step{height:13px;border-radius:999px;background:#dfeaff}.lesson-progress .step.done{background:#165af2}.lesson-progress .step.current{background:#ffca05}.game-topline{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:1px 0 23px}.game-card .stage-mark{font-size:12px!important;padding:9px 13px!important;border-radius:999px;background:#fff0a8!important;color:#163b94!important;font-weight:1000!important;letter-spacing:.1em}.game-sound{display:flex;align-items:center;gap:8px;border:0;background:#e8f1ff;border-radius:50px;color:#1754ce;padding:12px 15px;font-size:14px;font-weight:1000;min-width:46px;min-height:45px}.game-sound svg{width:21px;height:21px;stroke-width:2.4}.game-question{position:relative;text-align:center;padding:0 4px}.game-overline{font-size:11px;font-weight:1000;color:#2c70d2;letter-spacing:.14em}.game-question h1{font-size:clamp(29px,4.8vw,45px)!important;line-height:1.14!important;margin:7px auto 5px;max-width:670px;color:#103daa!important;font-weight:1000}.game-description{color:#5a77a8;font-weight:750;font-size:14px;max-width:580px;margin:11px auto 18px;line-height:1.35!important}.game-play-scene{position:relative;background:linear-gradient(180deg,#f2f8ff 0%,#e7f3ff 72%,#f8fcff 100%);border-radius:32px;isolation:isolate;padding:15px 9px 19px;margin:8px -3px 17px;overflow:hidden;min-height:220px}.game-play-scene:before{content:"";position:absolute;left:-25px;top:2px;width:77px;height:55px;border-radius:60px;background:#fff;opacity:.68;z-index:-1}.game-play-scene:after{content:"";position:absolute;right:-30px;top:16px;width:102px;height:70px;border-radius:60px;background:#fff;opacity:.7;z-index:-1}.game-play-scene .scene-star{position:absolute;right:22px;top:0;color:#ffce00;font-size:30px;z-index:-1}.game-play-scene .activity-zone{position:relative;z-index:2;border:0!important;border-radius:23px!important;background:transparent!important;padding:10px 10px 35px!important;box-shadow:none!important;margin:0!important}.activity-zone .tiny{font-size:10px;letter-spacing:.09em;color:#3d68b6;font-weight:1000}.game-play-scene .scene-grass{position:absolute;left:0;bottom:0;right:0;height:17px;background:linear-gradient(90deg,#78d84b,#8ddf56 50%,#a6ea74);border-radius:30% 35% 0 0;z-index:1}.scene-flower,.scene-grass-star{position:absolute;left:12px;bottom:2px;color:white;font-size:23px;text-shadow:0 2px #ffaa09}.scene-grass-star{left:auto;right:17px;color:#fff6ae;font-size:16px}.scene-decoration{display:none}.game-number-display{position:relative;display:flex;align-items:center;justify-content:center;margin:4px auto 19px;max-width:510px;height:220px}.hero-number-tile{width:205px;height:201px;display:grid;place-items:center;border:8px solid #ffce00;border-radius:39px;background:#fff;color:#1146c8;font-size:155px;line-height:1;font-weight:1000;box-shadow:0 9px 0 #f8a800,0 14px 0 rgba(21,69,150,.11);font-family:"Trebuchet MS",system-ui,sans-serif;letter-spacing:-.08em;padding-right:14px}.hero-friend{position:absolute;right:4px;bottom:0;width:95px;height:95px;transform:rotate(14deg)}.hero-star{width:100%;height:100%;object-fit:contain}.hero-sun-rays{position:absolute;color:#ffb900;left:25px;top:9px;font-size:34px}.game-equation-display{position:relative;display:flex;align-items:center;justify-content:center;margin:9px auto 19px;min-height:115px}.game-equation-display strong{font-size:clamp(42px,8vw,74px);color:#1551db;background:#fff;border:7px solid #ffd017;box-shadow:0 6px 0 #f0ad00;border-radius:30px;padding:14px 23px;white-space:nowrap}.equation-star{width:65px;height:65px;position:absolute;right:0;bottom:-7px}.equation-spark{position:absolute;left:10%;top:-10px;font-size:36px;color:#ffbf00}.game-story-display{position:relative;min-height:125px;display:flex;align-items:center;justify-content:center;gap:25px}.story-tile{width:110px;height:100px;display:grid;place-items:center;background:#ffdf57;border-radius:24px;box-shadow:0 6px 0 #f3b927}.story-object{width:91px;height:91px}.story-star{width:76px;height:76px;transform:rotate(12deg)}.game-play-scene .dot-grid.object-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;max-width:490px;margin:8px auto 24px}.item-count .item-art{filter:drop-shadow(0 4px 0 rgba(14,88,155,.10))}.game-play-scene .item-count .item-art{width:clamp(42px,9vw,72px);height:clamp(42px,9vw,72px)}.game-play-scene .item-count.crossed:after{font-size:43px}.answer-choices{margin:15px auto 0!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;max-width:540px!important;justify-content:center;align-items:stretch}.answer-choices button{display:grid;place-items:center;font-family:"Trebuchet MS",system-ui,sans-serif;font-size:clamp(33px,7vw,55px)!important;min-height:94px!important;min-width:0!important;width:100%;background:#fff!important;border:4px solid #1e5cdb!important;border-radius:29px!important;color:#1749ce!important;box-shadow:0 6px 0 #bed5f6!important;font-weight:1000!important;line-height:1.05!important;transition:transform .13s,background .13s}.answer-choices button:nth-child(2){border-color:#1b58d2!important}.answer-choices button:nth-child(3){border-color:#1b58d2!important}.answer-choices button.selected{background:#ffce09!important;border-color:#ffb300!important;box-shadow:0 6px 0 #e6a200!important;color:#113f9d!important}.answer-choices button:active,.assessment-choices button:active{transform:translateY(3px) scale(.97)!important;box-shadow:0 2px 0 #9ebcf1!important}.answer-choices button span{word-break:normal}.game-play-scene .answer-choices:has(.visual-option){grid-template-columns:repeat(3,minmax(0,1fr))}.answer-choices .visual-option{display:flex;flex-wrap:wrap;align-items:center;align-content:center;justify-content:center;min-height:116px!important;padding:8px!important;gap:0!important}.visual-option .item-count .item-art{width:clamp(18px,3vw,36px)!important;height:clamp(18px,3vw,36px)!important}.game-play-scene .math-group{background:#fff;border:3px solid #cfddf9;box-shadow:0 4px 0 #c4dbf8;border-radius:24px;padding:12px 7px}.math-group .dot-grid{margin:7px auto 5px}.game-play-scene .math-groups{gap:13px}.game-play-scene .merge-target,.game-play-scene .kid-drop-basket{background:#fff9df!important;border:3px dashed #ffbf42!important;border-radius:26px!important;padding:12px;min-height:100px}.game-play-scene .merge-target.drag-hover{background:#ffe68d!important}.game-play-scene .math-block.item-block{width:clamp(49px,9.6vw,69px);height:clamp(49px,9.6vw,69px)}.block-zone{gap:6px!important}.game-play-scene .counter-text{font-weight:900;color:#214fb2;text-align:center}.game-play-scene .shape-choice{border:3px solid #1f5fd7!important;border-radius:22px;box-shadow:0 5px 0 #bdd3f5;background:white!important}.game-play-scene .shape-choice.selected{background:#ffcf08!important;border-color:#edb20a!important}.game-play-scene .num-token{background:white;border:3px solid #1b5bd7;box-shadow:0 4px 0 #bdd1f4;border-radius:21px;font-weight:1000}.game-play-scene .sequence-shelf[data-dropzone]{background:#fff9de;border:3px dashed #f4c250}.game-help{margin-top:13px;background:#fff7d6!important;border:2px solid #ffe18b!important;display:flex;gap:8px;flex-wrap:wrap;color:#725319}.game-help strong{flex:none}.game-help span{font-weight:700}.game-feedback{margin:12px 0!important;display:flex;gap:8px;align-items:center;padding:12px 15px!important;border:2px solid #a7edbe!important}.game-feedback:not(.try){background:#e8faed!important;color:#117445!important}.game-feedback.try{background:#fff2df!important;border-color:#ffd18b!important;color:#a86b10!important}.game-actions{display:flex;justify-content:flex-start;margin:8px 0 0!important;gap:12px}.game-actions .btn.ghost{border:2px solid #d3e4ff!important;background:#eaf2ff!important;color:#164fc6!important;border-radius:17px!important;min-height:52px!important;padding:10px 18px!important}.game-actions .btn.primary{margin-left:auto}.game-card .auto-lesson-hint{display:none!important}
/* Summary, badge, assessment — no form-like plain rectangles */
.kid-celebration{max-width:800px;margin:10px auto 30px;position:relative;overflow:hidden;border:3px solid #d7e7ff!important;border-radius:40px!important;background:linear-gradient(155deg,#e8f4ff 0%,#fff 66%,#fff9d8 100%)!important;box-shadow:0 8px 0 #d9e9ff!important;text-align:center;padding:28px 23px 38px!important}.celebrate-mascots{display:flex;align-items:center;justify-content:center;gap:5px;height:165px}.celebrate-star{width:160px;height:150px;object-fit:contain;filter:drop-shadow(0 7px 0 rgba(250,175,0,.15));transform:rotate(-11deg)}.celebrate-duck{width:110px;height:120px;object-fit:contain;transform:rotate(12deg)}.celebrate-pill{display:inline-block;border-radius:50px;background:#ffcb06;color:#1242a2;font-weight:1000;font-size:12px;letter-spacing:.12em;padding:10px 18px}.kid-celebration h1{font-weight:1000;color:#1243b1;font-size:clamp(42px,6vw,62px);margin:9px 0}.kid-celebration p{color:#5271a7;font-weight:950;font-size:19px}.celebrate-stars{font-size:44px;color:#ffca05;letter-spacing:6px;text-shadow:0 4px 0 #f1a700}.celebrate-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:27px}.celebrate-actions .btn{min-width:138px;min-height:59px}.celebrate-confetti{position:absolute;color:#ffca09;font-size:42px}.c-one{left:24px;top:37px}.c-two{right:24px;top:28px;color:#ff6862}.c-three{left:12%;bottom:90px;color:#52d17b;font-size:22px}.assessment-wrap{max-width:785px;margin:0 auto}.assessment-wrap .lesson-card{border-radius:37px!important;box-shadow:0 7px 0 #e8efff!important;border:3px solid #e2eafa!important;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);text-align:center;padding:24px 23px}.assessment-wrap .lesson-card h1{color:#153b9b;font-size:clamp(26px,5vw,39px);margin-bottom:20px}.assessment-choices button{border:3px solid #1b5cdc!important;background:#fff!important;box-shadow:0 5px 0 #cee0f7!important;font-size:clamp(24px,5vw,39px)!important}.assessment-wrap .assessment-dots{background:#ecf7ff;border-radius:26px;padding:22px;margin:22px 0}.assessment-finish{padding:39px!important;background:#fff6c9!important;border:3px solid #ffe59d!important}.assessment-mascot{width:150px;height:145px;object-fit:contain;margin:0 auto 8px}
/* Parent workspace: same visual family, appropriately calmer for adults */
.parent-tabs{background:#f2f7ff;border-radius:19px;padding:6px;border:2px solid #e0eaff;gap:3px!important}.parent-tabs button{border:0!important;background:transparent!important;border-radius:14px!important;font-weight:900;padding:12px 15px}.parent-tabs button.active{color:#fff;background:#1755eb!important;box-shadow:0 3px 0 #0a399b}.parent-tabs+div .card{border-radius:24px}.metric{background:#f2f7ff!important;border-radius:19px!important}.metric:nth-child(2){background:#fff9df!important}.metric:nth-child(3){background:#ecfaed!important}.competency-row{background:#f8fbff;border-radius:16px;margin-bottom:6px}.parent-tabs~.card,.parent-tabs~.two-column .card{border-radius:24px}.page-head .btn{border-color:#d3e1fb}.modal{border:3px solid #dae7fa;border-radius:31px!important}.modal .modal-close{border-radius:50%!important;background:#edf4ff}.modal .icon-bubble{background:#fff3b8!important;color:#1550d9}.modal h2{color:#173a9a}.modal .profile-option{border-radius:16px}.modal .avatar{background:#ffce09;color:#1246bf}.onboard-form .field input,.onboard-form .field select,.modal input,.modal textarea{border-radius:16px;border:2px solid #dce9ff}
/* Onboarding has a scene, not just a traditional form */
.kid-onboarding .welcome-hero{min-height:460px;background:linear-gradient(145deg,#e4f1ff,#f6fbff)!important;border-radius:35px!important;border:2px solid #d4e7ff;box-shadow:0 7px 0 #cfe4ff}.kid-onboarding .welcome-hero:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:#ffce0b;right:-100px;top:-123px}.kid-onboarding .welcome-hero:after{content:"✦";position:absolute;bottom:22px;left:17px;font-size:40px;color:#ffbf00}.kid-onboarding .welcome-hero h1{max-width:440px;color:#1545b4!important;font-size:clamp(30px,4vw,45px)!important}.kid-onboarding .welcome-hero h1 span{color:#ff9f00!important}.kid-onboarding .welcome-hero p{font-size:18px;font-weight:900}.kid-onboarding .onboarding-sticker{width:185px;height:185px;bottom:4px;right:0;transform:rotate(11deg)}.kid-onboarding .onboard-form{padding:22px;border:2px solid #dce7fc!important;box-shadow:0 7px 0 #e4edfc}.kid-onboarding .onboard-form h2{font-size:26px;color:#1543ac}.kid-onboarding-logo{display:flex;align-items:center;font-size:53px;gap:8px}.kid-onboarding-logo span:nth-child(1){color:#1454ef}.kid-onboarding-logo span:nth-child(2){color:#ffb600}.kid-onboarding-logo span:nth-child(3){color:#fa5b69}.kid-onboarding .onboard-form .btn.primary{min-height:60px;font-size:18px}
/* Responsive constraints: preserve real tap-target sizes and avoid tiny text */
@media(max-width:810px){.topic-hero{padding:25px 22px;min-height:175px}.topic-illustration{width:118px;height:120px}.topic-main-img{width:120px;height:120px}.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kid-activity-grid{gap:12px}.kid-card-visual.kids-illustrated-items{height:140px}.kid-illustration{width:86px;height:95px}.game-card{padding:19px 18px 17px}}
@media(max-width:550px){.app-shell{padding:0 13px}.app-header{height:69px}.main-content{padding-top:14px;padding-bottom:103px}.brand{font-size:20px}.brand small{font-size:7.7px}.kid-welcome-banner{border-radius:25px!important}.kid-welcome-mascot{width:160px}.kid-welcome-mascot .home-mascot{width:100%}.kid-card-visual.kids-illustrated-items{height:116px}.kid-illustration{width:74px;height:88px}.kid-activity-card{min-height:194px}.kid-activity-card .kid-card-bottom{font-size:13px}.kid-section-top h2{font-weight:1000;color:#153fa6}.topic-hero{min-height:152px;border-radius:25px;padding:17px 12px 18px 17px;margin-bottom:23px}.topic-hero h1{font-size:clamp(25px,6.7vw,33px)}.topic-kicker{font-size:9px;padding:7px 8px}.topic-hero p{font-size:11px;line-height:1.35}.topic-illustration{width:95px;height:100px}.topic-main-img{width:96px;height:98px}.topic-pop{font-size:29px}.topic-section .level-head{padding:9px;margin-bottom:10px}.topic-section .level-head h3{font-size:17px}.topic-section .level-head p{font-size:11px}.topic-tiles{gap:10px}.lesson-tile{padding:12px;min-height:142px;border-radius:21px}.lesson-tile .tile-icon{width:64px;height:57px}.lesson-tile .tile-item{width:59px;height:59px}.lesson-tile .title{font-size:14px}.lesson-tile .mini-label{font-size:9px}.explore-grid{gap:11px}.explore-play-card{min-height:174px;border-radius:23px;padding:12px}.explore-image .tile-icon{width:85px;height:78px}.explore-image .tile-item{width:75px;height:73px}.explore-text strong{font-size:14px}.explore-text small{font-size:10px}.explore-go{width:29px;height:29px;bottom:10px;right:9px}.intro-page{padding-top:5px}.lesson-intro-card{padding:16px 13px 31px;border-radius:30px}.intro-illustration{height:145px}.intro-illustration .tile-icon{width:135px;height:127px}.intro-illustration .tile-item{width:126px;height:117px}.intro-side-star{width:69px;height:67px;right:25px}.lesson-intro-card h1{font-size:clamp(33px,8.5vw,43px)}.lesson-intro-card p{font-size:17px}.intro-steps{grid-template-columns:repeat(2,1fr);gap:7px}.intro-steps span{padding:9px 6px;font-size:12px}.intro-start{font-size:18px;min-height:60px}.game-card{border-radius:31px!important;border-width:2px!important;padding:15px 11px 16px}.lesson-progress{margin:1px 0 15px}.lesson-progress .step{height:11px}.game-topline{margin:0 3px 15px}.game-card .stage-mark{font-size:9.7px!important;padding:8px 10px!important}.game-sound{padding:9px 10px;min-height:39px;font-size:12px}.game-sound svg{width:18px;height:18px}.game-question h1{font-size:clamp(26px,7.8vw,35px)!important;margin:5px 0}.game-description{font-size:12px;margin:5px auto 12px}.game-play-scene{border-radius:25px;margin:5px -1px 12px;padding:6px 2px 13px}.game-play-scene .activity-zone{padding:10px 3px 29px!important}.game-play-scene .activity-zone .tiny{font-size:9px}.game-number-display{height:170px;margin:2px auto 14px}.hero-number-tile{height:157px;width:154px;font-size:117px;border-width:6px;border-radius:30px;padding-right:9px;box-shadow:0 7px 0 #f8b100,0 10px 0 rgba(18,57,147,.09)}.hero-friend{width:72px;height:72px;right:2px;bottom:6px}.hero-sun-rays{left:15px}.answer-choices{gap:8px!important;max-width:100%!important;margin:12px auto 0!important}.answer-choices button{min-height:76px!important;border-radius:22px!important;border-width:3px!important;font-size:clamp(26px,8vw,41px)!important;box-shadow:0 5px 0 #c2d9f8!important}.game-play-scene .item-count .item-art{width:clamp(39px,12.5vw,55px);height:clamp(39px,12.5vw,55px)}.game-play-scene .dot-grid.object-grid{gap:2px;margin:9px auto 17px}.game-play-scene .math-group{padding:7px 4px}.game-play-scene .math-groups{gap:7px}.game-play-scene .math-block.item-block{width:clamp(43px,12.5vw,55px);height:clamp(43px,12.5vw,55px)}.game-play-scene .answer-choices .visual-option{min-height:96px!important}.game-play-scene .visual-option .item-count .item-art{width:clamp(17px,5.3vw,24px)!important;height:clamp(17px,5.3vw,24px)!important}.game-equation-display{min-height:94px}.game-equation-display strong{font-size:clamp(33px,9vw,56px);padding:11px 14px;border-width:5px}.game-story-display{min-height:110px}.game-actions .btn.ghost{min-height:45px!important;font-size:13px}.game-card .lesson-toolbar{margin-top:4px!important}.kid-celebration{padding:19px 13px 28px!important;border-radius:32px!important}.celebrate-mascots{height:135px}.celebrate-star{width:130px;height:126px}.celebrate-duck{width:95px;height:100px}.kid-celebration h1{font-size:45px}.celebrate-stars{font-size:34px}.assessment-wrap .lesson-card{padding:17px 12px!important}.assessment-wrap .lesson-card h1{font-size:28px}.assessment-choices{gap:8px!important}.assessment-choices button{min-width:72px}.kid-onboarding .welcome-hero{min-height:235px!important;padding:15px}.kid-onboarding .welcome-hero h1{font-size:25px!important}.kid-onboarding .welcome-hero p{font-size:13px}.kid-onboarding .onboarding-sticker{width:118px;height:118px}.parent-tabs{overflow:auto;scrollbar-width:none}.parent-tabs button{font-size:12px;white-space:nowrap;padding:10px 13px}.app-shell .mobile-nav{margin:0 -13px}}
@media(max-width:360px){.app-shell{padding:0 10px}.game-card{padding:13px 8px}.game-play-scene .item-count .item-art{width:35px;height:35px}.game-question h1{font-size:24px!important}.topic-illustration{width:73px}.topic-main-img{width:80px}.kid-card-bottom{font-size:12px!important}}
@media(prefers-reduced-motion:no-preference){.kid-illustration.piece-2{animation:kidFloat 3.1s ease-in-out infinite}.topic-main-img{animation:kidFloat 3.2s ease-in-out infinite}.hero-friend{animation:kidWiggle 3.5s ease-in-out infinite}.celebrate-star{animation:kidWiggle 3s ease-in-out infinite}.explore-play-card,.lesson-tile{transition:transform .15s}.kid-activity-card:hover .kid-illustration.piece-2{animation-duration:1.4s}}@keyframes kidFloat{0%,100%{transform:translate(0,-10%) rotate(4deg)}50%{transform:translate(0,-16%) rotate(-2deg)}}@keyframes kidWiggle{0%,100%{transform:rotate(10deg)}50%{transform:rotate(-8deg)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Final responsive refinements from browser screenshots */
.game-play-scene .activity-zone{width:100%;min-width:0}
.game-play-scene .answer-choices{width:100%!important;min-width:0!important;align-self:stretch}
.game-play-scene .answer-choices button{padding:8px 5px!important}
.game-play-scene .answer-choices:has(.visual-option){width:100%!important}
.metric{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0!important}
.metric .number{display:block;line-height:1.15!important;font-size:32px!important;letter-spacing:-.04em}
.metric small{display:block!important;font-size:12px;line-height:1.4;margin-top:2px}
.parent-tabs{max-width:100%;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.parent-tabs button{flex-shrink:0}
html,body{max-width:100%;overflow-x:clip}
@media(max-width:550px){.game-play-scene .answer-choices{padding:0 7px}.game-play-scene .answer-choices button{min-height:81px!important}.metric .number{font-size:28px!important}}
.metric .number small{display:inline!important;font-size:17px!important;font-weight:900!important;letter-spacing:0;color:#6d84ad;margin:0 0 0 3px;vertical-align:baseline}
/* Every parent tab visible without a hidden horizontal gesture */
.parent-tabs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible!important;gap:5px!important}
.parent-tabs button{width:100%;min-width:0;white-space:normal!important;line-height:1.2;overflow-wrap:anywhere;text-align:center}
@media(max-width:550px){.parent-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px!important}.parent-tabs button{padding:10px 4px!important;font-size:11px!important}}
