/* KIDS DISCOVERY – child-first visual system. AZGARD splash is deliberately unchanged. */
:root{--ink:#3d3471;--line:#eae4ff;--shadow:0 12px 0 #d9d5ef66,0 20px 36px #6750a51f}
body:not([data-view="splash"]){color:#40346f;background:
 radial-gradient(circle at 11% 16%,#fff5b8 0 7%,transparent 7.3%),
 radial-gradient(circle at 84% 8%,#dcceff 0 10%,transparent 10.5%),
 radial-gradient(circle at 5% 75%,#c6fae2 0 14%,transparent 14.5%),
 linear-gradient(145deg,#f7f2ff,#e7f9ff 45%,#fff8e7 100%)}
body:not([data-view="splash"]):before{content:'✦   ·     ☆     ·     ✦     ·    ☆';position:fixed;top:0;left:0;right:0;font-size:31px;letter-spacing:50px;white-space:nowrap;color:#bca0ef29;pointer-events:none;z-index:-1;overflow:hidden}
body:not([data-view="splash"]) .app-shell{max-width:1290px;padding:20px 22px 44px}
body:not([data-view="splash"]) h1,body:not([data-view="splash"]) h2,body:not([data-view="splash"]) h3{letter-spacing:-.5px}
body:not([data-view="splash"]) .topbar{border:3px solid white;background:#fffffff5;border-radius:27px;box-shadow:0 7px 0 #e7dffd,0 14px 23px #8478b428;padding:13px 19px;margin-bottom:22px}
.kid-brand-icon{height:52px;width:52px;border-radius:18px;display:grid;place-items:center;font-size:31px;background:linear-gradient(155deg,#fff4b7,#ffd3ed);border:3px solid white;box-shadow:0 3px 0 #e6ccfa}
body:not([data-view="splash"]) .brand-title{color:#6740b9;font-size:21px;letter-spacing:-.6px;font-weight:1000}.kid-brand-star{color:#ffad25}
body:not([data-view="splash"]) .brand-sub{color:#a087bc;font-size:10px;letter-spacing:1.5px}
body:not([data-view="splash"]) .chip{border:2px solid #e8dcfa;border-radius:16px;color:#7855a6;background:#fff9ff;font-weight:1000;box-shadow:0 3px 0 #ede5f6}
body:not([data-view="splash"]) .chip.active{background:#7b53d6;border-color:#7b53d6;color:#fff;box-shadow:0 4px 0 #5630ae}
body:not([data-view="splash"]) .primary{background:linear-gradient(135deg,#ff767f,#f346a2);box-shadow:0 6px 0 #bd3682,0 12px 19px #f366a24b;border:2px solid #ffe1f0;border-radius:20px;color:white;text-shadow:0 1px 1px #873d6d44}
body:not([data-view="splash"]) .primary:hover{filter:brightness(1.07)}
body:not([data-view="splash"]) .primary:disabled{opacity:.45;filter:grayscale(.55);box-shadow:0 5px 0 #d0bdca;cursor:not-allowed}
body:not([data-view="splash"]) .secondary{border:2px solid #d9c7f4;color:#7d51b8;border-radius:18px;background:white;box-shadow:0 3px 0 #f0ddf8}
body:not([data-view="splash"]) .pill{background:#fce8ff;color:#9d4ac5;font-size:13px;border:2px solid #fff}
/* Child-centered welcome meadow */
.home-hero{grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);gap:19px}
.hero-copy{background:linear-gradient(165deg,#70dafa 0%,#b0f0ff 46%,#e4ffcd 100%);border:5px solid #fff;border-radius:36px;box-shadow:0 9px 0 #a2d4e3,0 20px 30px #529baf2f;min-height:405px;padding:27px 31px 17px;position:relative;isolation:isolate;color:#4b3876;overflow:hidden}
.hero-copy:before{display:none}
.hero-sky{position:absolute;inset:0;pointer-events:none;z-index:-1}.sky-cloud,.sky-star,.sky-sun{position:absolute;filter:drop-shadow(0 5px 2px #fff7)}.sky-cloud{font-size:44px;opacity:.87}.sky-cloud.c1{top:20px;right:24%;animation:floaty 5s ease-in-out infinite}.sky-cloud.c2{top:120px;right:4%;font-size:32px;animation:floaty 7s ease-in-out infinite reverse}.sky-star{font-size:23px}.sky-star.s1{left:45%;top:27px}.sky-star.s2{right:8%;top:38%}.sky-sun{right:35px;top:30px;font-size:54px}
.hero-ribbon{display:inline-block;padding:9px 15px;border-radius:100px;background:#ffdb65;color:#a15a2b;border:3px solid #fff;font-weight:1000;font-size:12px;box-shadow:0 4px 0 #ffbb69;position:relative;z-index:2}
.hero-copy h1{max-width:610px;color:#56338d;font-size:clamp(35px,4.5vw,58px);line-height:1.06;text-shadow:0 3px 0 #ffffffab;margin:19px 0 12px;position:relative;z-index:2;letter-spacing:-1.8px}
.hero-copy h1 em{font-style:normal;color:#f04b9b;text-shadow:0 3px 0 #ffe9fb}
.hero-copy p{color:#526583;font-size:15px;font-weight:750;line-height:1.5;max-width:380px;margin-bottom:0;position:relative;z-index:2}
.hero-characters{position:absolute;right:4%;bottom:63px;width:40%;height:175px;z-index:1;pointer-events:none}.hero-buddy{position:absolute;display:block;font-size:clamp(45px,6.5vw,86px);filter:drop-shadow(0 9px 1px #62844655);animation:floaty 4s ease-in-out infinite}.hero-buddy.buddy-1{left:3%;bottom:10%}.hero-buddy.buddy-2{right:5%;bottom:3%;animation-delay:1s}.hero-buddy.buddy-3{right:20%;top:-14px;font-size:52px;animation-delay:.6s}.hero-buddy.buddy-4{left:40%;bottom:-5px;font-size:30px}.hero-meadow{height:42px;background:#7cd865;border-radius:100%;bottom:-14px;left:-20px;right:-12px;position:absolute;z-index:-1}
@keyframes floaty{50%{transform:translateY(-9px) rotate(-3deg)}}
.hero-copy .stats{position:relative;z-index:3;margin-top:37px;display:flex;gap:10px;flex-wrap:wrap}.hero-copy .stat{padding:9px 14px;min-width:100px;border:3px solid #fff;background:#ffffffd9;border-radius:19px;box-shadow:0 4px 0 #d9ecca}.hero-copy .stat b{font-size:20px;color:#7141a4}.hero-copy .stat small{color:#856d9d;font-size:11px}
.parent-helper{background:linear-gradient(165deg,#fff,#fff7ef);border:4px solid white;box-shadow:0 9px 0 #eddaf1,0 20px 30px #b588ad20;border-radius:34px;padding:26px}
.parent-helper .helper-icon{background:linear-gradient(140deg,#fff1af,#ffcee5);border:4px solid white;border-radius:26px;width:80px;height:76px;display:grid;place-items:center;font-size:39px;box-shadow:0 4px 0 #edcee0;margin-bottom:9px}
.helper-mini{color:#ca7eae;font-size:10px;font-weight:1000;letter-spacing:1.7px}.parent-helper h3{color:#6d43a4;font-weight:1000;font-size:23px;margin:6px 0 7px}.parent-helper p{color:#8a749c;font-size:13px}.parent-helper label{color:#7c57ac;margin:17px 0 8px}
.parent-helper select,.session-select{background:#f7edff;border:2px solid #dac4f7;border-radius:16px;color:#69409e;padding:15px;font-weight:900}
.parent-helper .reco{display:flex;gap:10px;align-items:flex-start;background:#e6fff2;border:2px solid #bcecd3;color:#31795c;border-radius:18px;padding:14px;margin-top:16px}.reco>span{font-size:24px}.reco strong{display:block;font-size:15px;color:#206e53;margin:2px 0}.reco b{font-size:11px}.reco small{font-size:11px;color:#6c9c86;line-height:1.45}
.parent-helper .parent-reminder{border-top:1px dashed #eedce9;padding-top:12px;color:#947b95;font-size:12px;margin:16px 0 0}
.section-head{margin:33px 0 18px}.section-head h2{color:#644094;font-size:clamp(23px,3vw,34px)}.section-eyebrow{font-size:11px;font-weight:1000;letter-spacing:1.7px;color:#e782ad}.section-head .section-missions{display:inline-flex;align-items:center;background:#fff4bb;padding:9px 15px;border:2px solid white;border-radius:50px;color:#c5813e;box-shadow:0 4px 0 #f4e09d;font-size:13px}
.world-grid{gap:16px;grid-template-columns:repeat(5,minmax(0,1fr))}
.world-card{padding:0;border:4px solid white;min-height:330px;border-radius:29px;background:white;box-shadow:0 7px 0 #d9d0ea,0 17px 26px #725d9133;overflow:hidden;color:#49317d;display:flex;flex-direction:column;isolation:isolate;text-align:left}
.world-card.selected{outline:none;box-shadow:0 7px 0 var(--accent),0 17px 24px #725d9133}.world-card:hover{transform:translateY(-6px);border-color:white}
.world-art{height:157px;position:relative;background:linear-gradient(180deg,color-mix(in srgb,var(--tint) 72%,#a4ddff),var(--tint));display:flex;align-items:center;justify-content:center;overflow:hidden}
.world-art .age{position:absolute;top:10px;left:10px;z-index:4;border:2px solid #ffffffbd;padding:6px 9px;border-radius:13px;box-shadow:0 3px 0 #322b4940;background:var(--accent);font-size:10px}
.world-main-emoji{font-size:84px;filter:drop-shadow(0 11px 1px #6b4c7933);position:relative;z-index:2;transform:rotate(-6deg);transition:transform .22s}
.world-card:hover .world-main-emoji{transform:rotate(4deg) scale(1.11)}
.friend-emojis{position:absolute;bottom:10px;right:7px;font-size:24px;z-index:3;white-space:nowrap;filter:drop-shadow(0 3px 1px #fff)}
.world-grass{position:absolute;bottom:-17px;left:-20px;right:-20px;height:50px;border-radius:50% 50% 0 0;background:#82d97877}
.card-cloud{position:absolute;top:17px;right:15px;color:#fff;font-size:43px;opacity:.8}.card-sun{position:absolute;left:16px;bottom:28px;color:#fff1a6;font-size:31px}
.world-content{padding:13px 13px 17px;flex:1;display:flex;flex-direction:column}
.world-label{font-size:11px;font-weight:1000;color:var(--accent);letter-spacing:.3px;text-transform:uppercase}.world-card h3{font-size:17px;color:#4e377c;margin:9px 0 7px;line-height:1.18}.world-card small{font-size:11px;color:#897b9e;line-height:1.4}
.world-card .bottom-row{position:static;margin-top:auto;padding-top:18px;color:#8668a3;font-size:11px;display:flex}.world-play{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:white;background:var(--accent);box-shadow:0 4px 0 #5a356e44;font-size:13px}
.kid-footnote{text-align:center;margin:25px 0;color:#9173ae;font-weight:800;font-size:12px}
/* Intro is a playful illustrated invitation, not a corporate panel. */
.intro-wrap{max-width:990px;margin:0 auto}.intro-back{margin-bottom:17px}.intro-card{background:#fff;border:5px solid white;border-radius:36px;box-shadow:0 10px 0 #e6d9f3,0 22px 34px #8165a92c;overflow:hidden;display:grid;grid-template-columns:44% 56%}.intro-art{min-height:470px;background:linear-gradient(160deg,#aaedfa,var(--world-tint) 60%,#c5f7b6);display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate}.intro-art:after{content:'';position:absolute;bottom:-30px;left:-30px;right:-30px;height:112px;border-radius:50%;background:#86d97790;z-index:-1}.intro-cloud{position:absolute;top:40px;left:30px;font-size:56px}.intro-sun{position:absolute;top:38px;right:28px;font-size:55px}.intro-emoji{font-size:clamp(110px,15vw,195px);filter:drop-shadow(0 17px 3px #475b6933);animation:floaty 3.8s ease-in-out infinite}.intro-friends{position:absolute;bottom:65px;font-size:37px;left:20px;right:20px;text-align:center}
.intro-info{padding:34px 30px 35px}.intro-badge{display:inline-block;font-size:12px;color:#8957b8;background:#f5e6ff;border-radius:24px;padding:8px 12px;font-weight:1000}.intro-info h1{color:#633b91;margin:18px 0;font-size:clamp(29px,4vw,43px)}.intro-info p{color:#7f6b92;font-size:16px}.intro-highlights{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.intro-highlights span{font-size:12px;color:#7b51a7;background:#fbf0ff;border:2px solid #f4e1ff;border-radius:20px;padding:8px 10px;font-weight:900}.intro-advice{background:#eafff2;border:2px solid #c7eeda;border-radius:17px;padding:13px;color:#34765b;font-size:13px;font-weight:800;line-height:1.6}.intro-info label{display:block;margin:23px 0 7px;font-weight:1000;color:#784e9c}.intro-info .session-select{max-width:340px}.intro-start{display:block;margin-top:23px;font-size:19px;width:100%;max-width:340px}
/* Five vibrant stage worlds. */
.kid-stage.theme-first{--stage-a:#d9faff;--stage-b:#e9fff3;--stage-border:#66d6dd;--stage-dark:#1596ac}
.kid-stage.theme-match{--stage-a:#e2ffdd;--stage-b:#fffbcf;--stage-border:#90d66c;--stage-dark:#3d9d6e}
.kid-stage.theme-word{--stage-a:#fff0c7;--stage-b:#ffdddb;--stage-border:#ffc072;--stage-dark:#de8430}
.kid-stage.theme-story{--stage-a:#f3e7ff;--stage-b:#dbeaff;--stage-border:#bfa1ee;--stage-dark:#9061c9}
.kid-stage.theme-logic{--stage-a:#ffe2ed;--stage-b:#e9e4ff;--stage-border:#f5a8c9;--stage-dark:#d65d94}
.game-shell{grid-template-columns:minmax(0,1fr) 240px;gap:16px}
.game-panel{border:5px solid #fff;border-radius:33px;box-shadow:0 9px 0 #e6d8f4,0 22px 31px #8669aa2a;background:#fffdfd;padding:25px}
.game-panel .pill{background:var(--stage-a);color:var(--stage-dark);border:2px solid white;padding:10px 14px;font-size:13px}
.game-info{color:#9978b5;font-size:13px}.progress-track{background:#f2eaff;border:2px solid #f2e0ff;height:17px}.progress-track div{background:linear-gradient(90deg,#f7c550,#f28b9f,#bf76f1)}
.game-panel h2{color:#62418e;font-size:clamp(25px,3.4vw,40px);margin-top:23px;line-height:1.2}.game-subtitle{color:#ae90c1;font-weight:750}
.visual-scene{border:4px solid var(--stage-border);border-radius:29px;background:linear-gradient(175deg,var(--stage-a),var(--stage-b));min-height:250px;padding:25px;box-shadow:inset 0 7px 0 #ffffff7d,0 4px 0 #dfdcf0}
.visual-scene:before{font-size:30px;opacity:.85;right:25px;top:18px}.visual-scene:after{content:'✿';color:var(--stage-dark);left:17px;bottom:13px}
.visual-big{font-size:clamp(80px,12vw,142px)}.text-scene{color:#654e88;font-weight:770;line-height:1.58}.text-scene .big-emoji{font-size:48px}
.visual-number,.keycap{color:#674b90;border:4px solid #fff;background:#fff8d3;box-shadow:0 6px 0 #bfaadc}
.choices{gap:13px;margin-top:22px}.choice{border:3px solid #ebd4f8;background:linear-gradient(155deg,#fff,#fdf4ff);border-radius:24px;min-height:110px;box-shadow:0 6px 0 #e4d0f0;color:#604882;transition:transform .12s,filter .12s}.choice:not(:disabled):hover{filter:brightness(1.025);transform:translateY(-2px)}.choice.big{min-height:160px}.choice .option-label{color:#633e8e;font-size:clamp(17px,2vw,23px)}.choice .emoji{font-size:57px}.choice.big .emoji{font-size:90px}
.choice.correct{background:#e2fff2;border-color:#53d79b;box-shadow:0 6px 0 #a9edcd}.choice.wrong{background:#fff0f3;border-color:#ff91b4;box-shadow:0 6px 0 #f8bacc}
.letter-choice{border:3px solid #b9d2fb;background:#fffbef;border-radius:17px;color:#6b46a4;box-shadow:0 5px 0 #dae1f3;font-size:28px}.letter-slot{color:#7243ad;border-color:#a78bdb}.game-actions .secondary{padding:12px 14px}.game-actions{gap:8px}
.side-panel{border:4px solid #fff;background:linear-gradient(160deg,#fff7d3,#ffe4ef 78%,#f4e8ff);box-shadow:0 9px 0 #edd4e3,0 20px 30px #a886ab22;border-radius:30px;color:#7952a2;padding:20px}
.side-panel h3{color:#7749a6}.side-panel p{color:#9378aa}.side-stat{background:#ffffffcf;border:2px solid #fae3f4;border-radius:17px}.side-stat .n{color:#ec649e}.side-stat .lbl{color:#9474a7}.side-tip{color:#8c679d;background:#fffdf6;border:2px solid white}
.feedback{border-radius:20px}.feedback.try{background:#fff9df}
.report{border:5px solid white;border-radius:38px;background:linear-gradient(#fff,#fff9ff);box-shadow:0 10px 0 #e7d4f5,0 20px 36px #997eb42b}.report-head .trophy{filter:drop-shadow(0 6px 0 #dbb3e7)}.report h1{color:#6942a1}.report-metrics .metric{background:linear-gradient(155deg,#fff5d8,#f9ebff);border:3px solid white;box-shadow:0 5px 0 #edd9f6}.metric strong{color:#9e51b7}.report-progress{background:#fbf4ff;border:2px solid #f1dfff}.report-row .bar{background:#f0ddf4}.report-row .bar i{background:linear-gradient(90deg,#ffc77d,#f080b8,#ab7eea)}
@media(max-width:1080px){.home-hero{grid-template-columns:1fr 340px}.hero-copy{min-height:410px}.hero-characters{width:38%;bottom:67px}.world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.game-shell{grid-template-columns:minmax(0,1fr) 210px}}
@media(max-width:760px){body:not([data-view="splash"]) .app-shell{padding:11px 11px 29px}.home-hero{grid-template-columns:1fr}.hero-copy{min-height:390px;padding:24px 23px 19px}.hero-copy h1{font-size:clamp(33px,7vw,49px);max-width:550px}.hero-copy p{max-width:70%}.hero-characters{width:35%;bottom:72px}.hero-buddy{font-size:57px}.parent-helper{padding:21px}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-card{min-height:315px}.world-art{height:155px}.world-content{padding:13px}.topbar{gap:10px}.game-shell{grid-template-columns:1fr}.side-panel{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.side-panel h3,.side-panel p,.side-tip{grid-column:span 2}.intro-card{grid-template-columns:1fr}.intro-art{min-height:265px}.intro-emoji{font-size:130px}.intro-friends{bottom:30px}.intro-info{padding:24px 23px 29px}.intro-info h1{font-size:34px}.game-panel{padding:17px}.visual-scene{min-height:205px}.choice.big{min-height:140px}.choice.big .emoji{font-size:70px}}
@media(max-width:440px){body:not([data-view="splash"]) .app-shell{padding:9px 9px 26px}.topbar{border-radius:19px;padding:10px 11px}.kid-brand-icon{width:40px;height:40px;font-size:25px;border-radius:13px}.brand-title{font-size:15px!important}.brand-sub{font-size:8px!important;letter-spacing:1px!important}.toolbar{justify-content:space-between}.chip{font-size:11px!important;padding:7px 7px!important}.hero-copy{min-height:410px;border-radius:28px;padding:20px 17px}.hero-ribbon{font-size:10px;padding:8px}.hero-copy h1{font-size:36px;letter-spacing:-1.3px}.hero-copy p{font-size:13px;max-width:90%}.hero-characters{right:-1%;bottom:74px;width:57%;height:117px}.hero-buddy{font-size:51px!important}.hero-buddy.buddy-3{font-size:32px!important}.hero-copy .stats{margin-top:140px;gap:6px}.hero-copy .stat{padding:7px 9px;min-width:0;flex:1;border-width:2px}.hero-copy .stat b{font-size:14px}.hero-copy .stat small{font-size:9px}.sky-sun{font-size:36px}.parent-helper{border-radius:27px}.section-head{align-items:center}.section-head h2{font-size:23px}.section-head .section-missions{font-size:10px;padding:7px 9px}.world-grid{gap:10px}.world-card{border-radius:24px;min-height:290px}.world-art{height:125px}.world-main-emoji{font-size:66px}.friend-emojis{font-size:19px}.world-content{padding:9px}.world-card h3{font-size:15px}.world-card small{font-size:10px}.world-card .age{font-size:9px}.world-content .bottom-row{font-size:10px}.world-play{width:26px;height:26px}.game-panel{border-radius:25px;padding:12px}.game-panel h2{font-size:27px}.game-panel .pill{font-size:11px;padding:7px}.game-info{font-size:10px}.visual-scene{min-height:185px;padding:13px}.visual-big{font-size:85px}.choice{min-height:90px;padding:12px 7px;border-radius:19px}.choice.big{min-height:125px}.choice.big .emoji{font-size:61px}.choice .emoji{font-size:43px}.choice .option-label{font-size:15px}.game-actions{justify-content:center}.game-actions .secondary{font-size:12px;padding:10px}.game-actions .primary{margin-left:0}.intro-info h1{font-size:29px}.intro-info{padding:19px}.intro-art{min-height:240px}.intro-friends{font-size:27px}.report{padding:16px}}
@media(prefers-reduced-motion:reduce){.hero-buddy,.intro-emoji,.sky-cloud{animation:none}}
