*{box-sizing:border-box}:root{--ink:#10264d;--muted:#6d83a0;--line:#dce8f4;--card:#fff;--green:#19a66a;--teal:#10a3a2;--yellow:#ffd84d;--pink:#ff5f8d;--purple:#745cff}body{margin:0;font-family:Inter,ui-rounded,"Nunito",system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 10% 4%,#fff4a9 0 8%,transparent 24%),radial-gradient(circle at 90% 2%,#cafaff 0 8%,transparent 25%),linear-gradient(180deg,#eff8ff,#f8fff9 58%,#eef7ff);min-height:100vh}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(14px,4vw,48px);background:#ffffffec;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand-mark{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#19a66a,#0b92d0);color:#fff;font-weight:1000;box-shadow:0 9px 23px #159a6a35}.brand b{font-size:18px}.brand small{display:block;font-size:10px;color:#7186a0;font-weight:800;letter-spacing:.08em}.top-actions{display:flex;align-items:center;gap:9px}.pill,.icon-btn,.cta,.play-mini,.back-btn,.audio-btn,.text-btn{border:0;cursor:pointer;font:inherit}.pill{padding:11px 14px;border-radius:14px;background:#eef5ff;color:#254a75;font-weight:900}.pill.ghost{background:#f5f8fc}.icon-btn{width:42px;height:42px;border-radius:14px;background:#f2f7fb;font-size:19px}.xp-pill{padding:11px 14px;border-radius:14px;background:#fff8cc;font-weight:950;color:#745b09}.app-shell{max-width:1320px;margin:auto;padding:34px 22px 60px}.view{display:none}.view.active{display:block}.hero-card{min-height:410px;border-radius:34px;overflow:hidden;display:grid;grid-template-columns:1.08fr .92fr;background:linear-gradient(135deg,#0e9f6e 0%,#12b886 42%,#57cc99 100%);color:#fff;box-shadow:0 30px 75px #128d6531;position:relative}.hero-copy{padding:clamp(34px,5vw,64px);z-index:2}.eyebrow{display:inline-block;font-size:11px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase;background:#ffffff22;border:1px solid #ffffff33;padding:8px 10px;border-radius:999px}.hero-copy h1{font-size:clamp(46px,6vw,76px);line-height:.9;letter-spacing:-.055em;margin:18px 0}.hero-copy h1 span{color:#fff09b}.hero-copy p{font-size:18px;line-height:1.62;max-width:650px;color:#effff8}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.cta{padding:15px 18px;border-radius:16px;background:#fff;color:#0e7d57;font-weight:1000;box-shadow:0 14px 25px #004f3340}.hero-copy .pill{background:#ffffff22;color:#fff;border:1px solid #ffffff38}.mini-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:14px;color:#e9fff5}.hero-world{position:relative;min-height:410px;overflow:hidden;background:linear-gradient(#aeeeff 0 48%,#9ce083 48% 100%)}.sun{position:absolute;right:9%;top:7%;font-size:62px;filter:drop-shadow(0 10px 8px #d5a50022)}.tree{position:absolute;right:9%;bottom:20%;font-size:145px}.pet{position:absolute;font-size:64px;filter:drop-shadow(0 9px 6px #0002);animation:bob 2.4s ease-in-out infinite}.p1{left:9%;bottom:19%;font-size:78px}.p2{left:42%;bottom:17%;animation-delay:.3s}.p3{left:62%;bottom:29%;animation-delay:.7s}.p4{left:29%;bottom:43%;font-size:48px;animation-delay:1s}.sign{position:absolute;left:8%;top:11%;background:#fff8d9;color:#316044;border:7px solid #8b623d;border-radius:12px;padding:13px 20px;text-align:center;font-weight:1000;font-size:24px;transform:rotate(-3deg);box-shadow:0 12px 24px #0002}.sign small{font-size:11px;display:block;letter-spacing:.08em}.grass{position:absolute;left:-5%;right:-5%;bottom:-28px;height:115px;background:repeating-linear-gradient(110deg,#3cae58 0 8px,#61c966 8px 17px);border-radius:50% 50% 0 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:38px 3px 18px}.section-head .eyebrow{background:#e9fff2;border:0;color:#138357}.section-head h2{font-size:32px;margin:8px 0 0}.text-btn{background:transparent;color:#537293;font-weight:900}.episode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.episode-card{--accent:#19a66a;background:#fff;border:1px solid var(--line);border-radius:24px;padding:21px;box-shadow:0 17px 45px #123d6811;min-height:260px;display:flex;flex-direction:column;position:relative;overflow:hidden}.episode-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:var(--accent)}.ep-top{display:flex;align-items:center;justify-content:space-between}.ep-icon{font-size:44px}.ep-no{font-weight:1000;color:var(--accent);background:#f1f7fb;padding:7px 9px;border-radius:10px}.episode-card h3{font-size:22px;margin:13px 0 5px}.ep-sub{font-size:12px;color:#7489a5;font-weight:800}.ep-target{color:#607895;line-height:1.45;margin:14px 0 18px;font-size:13px}.ep-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px}.stars{font-size:16px;letter-spacing:1px}.play-mini{padding:10px 13px;border-radius:12px;background:var(--accent);color:#fff;font-weight:1000}.teacher-love{margin-top:24px;background:linear-gradient(135deg,#fff9db,#fff);border:1px solid #f2e7ad;border-radius:24px;padding:22px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}.teacher-icon{font-size:42px}.teacher-love h3{margin:0 0 5px}.teacher-love p{margin:0;color:#6d7e91;line-height:1.5}.game-layout{display:grid;grid-template-columns:275px 1fr;gap:18px;align-items:start}.game-sidebar{position:sticky;top:92px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:0 16px 44px #133f6210}.back-btn{background:#eef6ff;color:#315c88;padding:10px 12px;border-radius:12px;font-weight:900}.mission-title{font-size:22px;font-weight:1000;margin-top:18px}.mission-sub{font-size:12px;color:#7c8ea4;margin-top:5px}.progress-wrap{height:10px;background:#edf1f5;border-radius:999px;overflow:hidden;margin:18px 0}.progress-bar{height:100%;width:0;background:linear-gradient(90deg,#17a768,#39c78d);transition:.35s}.side-stats{display:flex;justify-content:space-between;gap:6px;font-weight:900}.learning-target{margin-top:18px;padding:14px;border-radius:16px;background:#f0fff6;color:#406d56;font-size:13px;line-height:1.5}.rescue-mini{display:flex;align-items:center;gap:8px;margin-top:18px}.rescue-line{flex:1;height:8px;background:#edf2f5;border-radius:99px;overflow:hidden}.rescue-line i{display:block;height:100%;width:0;background:linear-gradient(90deg,#fbbf24,#16a34a);transition:.35s}.game-stage{min-height:690px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:22px;box-shadow:0 20px 55px #133f6210}.game-hud{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}.stage-chip{padding:9px 11px;border-radius:999px;background:#edf9f2;color:#19784f;font-weight:900;font-size:12px}.audio-btn{padding:9px 12px;border-radius:12px;background:#eef5ff;color:#2c5885;font-weight:900}.game-canvas{min-height:500px}.prompt-card{border-radius:26px;background:linear-gradient(180deg,#fbfdff,#f5fff8);border:1px solid #e2edf4;padding:clamp(20px,4vw,36px);text-align:center;min-height:500px}.prompt-card .eyebrow{background:#e9fff2;color:#128159;border:0}.prompt-card h2{font-size:clamp(28px,4vw,42px);line-height:1.15;margin:17px auto;max-width:820px}.subprompt{color:#6c829c;font-size:16px;margin-bottom:20px}.visual{font-size:70px;margin:15px auto}.answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:820px;margin:26px auto 0}.answer-btn,.animal-btn,.like-btn,.spot-btn,.sound-btn,.cam-btn{border:2px solid #e1eaf3;background:#fff;border-radius:18px;padding:17px 14px;font:inherit;font-weight:900;color:#26496f;cursor:pointer;transition:.15s;box-shadow:0 8px 20px #244b7110}.answer-btn:hover,.animal-btn:hover,.like-btn:hover,.spot-btn:hover,.sound-btn:hover,.cam-btn:hover{transform:translateY(-2px);border-color:#9ed9bb}.correct{background:#dff9e9!important;border-color:#39b975!important;color:#10643d!important}.wrong{background:#fff0f0!important;border-color:#f18f96!important;color:#922e35!important}.animal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;max-width:900px;margin:24px auto}.animal-btn{min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.animal-btn b{font-size:55px}.animal-btn span{font-size:13px}.position-scene{position:relative;width:min(680px,100%);height:290px;margin:20px auto;background:linear-gradient(#dff7ff 0 63%,#f1d49d 63%);border:8px solid #fff;border-radius:26px;box-shadow:inset 0 0 0 2px #d9e7ee,0 18px 35px #153c5b13;overflow:hidden}.desk{position:absolute;left:26%;top:34%;font-size:135px}.bag{position:absolute;right:13%;top:44%;font-size:95px}.scene-pet{position:absolute;font-size:66px;z-index:3;filter:drop-shadow(0 7px 5px #0002)}.scene-pet.on{left:38%;top:19%}.scene-pet.under{left:40%;top:65%}.scene-pet.in{right:18%;top:51%;font-size:53px}.position-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.spot-btn{min-width:130px;font-size:18px}.likes-scene{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:840px;margin:22px auto}.person-card,.pet-card{background:#fff;border:2px solid #e4edf4;border-radius:24px;padding:22px;display:grid;place-items:center}.person-face{font-size:75px}.mood{font-size:34px}.pet-card .pet-big{font-size:88px}.sentence-builder{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}.like-btn{min-width:180px}.story-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:900px;margin:20px auto}.story-panel{border:2px solid #e1eaf2;background:#fff;border-radius:18px;padding:15px;min-height:145px}.story-panel .pic{font-size:45px}.story-panel b{display:block;margin:8px 0}.story-panel small{color:#71859b;line-height:1.4}.phonics-row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:28px auto;max-width:880px}.sound-btn{min-width:150px;font-size:22px}.cam-stage{position:relative;width:min(820px,100%);height:330px;margin:22px auto;border-radius:28px;overflow:hidden;border:7px solid #fff;box-shadow:0 16px 34px #123d5b17}.cam-stage.leaves{background:radial-gradient(circle,#6fcf72 0 8%,transparent 9%) 0 0/44px 44px,linear-gradient(135deg,#1f7c45,#56b45a)}.cam-stage.rocks{background:radial-gradient(circle at 20% 20%,#d5c6a8 0 9%,transparent 10%) 0 0/58px 58px,linear-gradient(135deg,#9b8f77,#c8b89c)}.cam-stage.grass{background:repeating-linear-gradient(80deg,#a7bd43 0 7px,#d2c856 7px 14px)}.cam-stage.trees{background:linear-gradient(90deg,#76552d 0 8%,transparent 8% 26%,#684822 26% 35%,transparent 35% 62%,#7d5d35 62% 71%,transparent 71%),linear-gradient(#54a65d,#2b7741)}.hidden-animal{position:absolute;font-size:76px;opacity:.48;filter:saturate(.65);text-shadow:0 4px 6px #0003;cursor:pointer}.cam-options{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.cam-btn{min-width:150px}.feedback{min-height:70px;margin-top:12px}.feedback-box{border-radius:17px;padding:15px 18px;display:flex;gap:12px;align-items:center;text-align:left}.feedback-box.good{background:#e7faef;color:#17613e}.feedback-box.bad{background:#fff1e6;color:#8b4b14}.celebrate{text-align:center;padding:50px 20px}.celebrate .big{font-size:90px}.celebrate h2{font-size:40px;margin:12px}.result-stars{font-size:30px}.teacher-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px}.report-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.report-card{background:#f7fbff;border:1px solid #e2ecf5;border-radius:18px;padding:18px}.report-card span{display:block;color:#73869c;font-size:12px;font-weight:800}.report-card b{display:block;font-size:26px;margin-top:5px}.report-table{margin-top:20px;border:1px solid #e2eaf2;border-radius:18px;overflow:hidden}.report-row{display:grid;grid-template-columns:2fr .6fr .6fr .8fr;gap:10px;padding:13px 15px;border-top:1px solid #edf1f5;align-items:center}.report-row.head{border-top:0;background:#f4f8fb;font-weight:1000;font-size:12px}.teacher-note{margin-top:20px;border-radius:18px;background:#f0fff6;padding:18px;color:#416958}.modal{position:fixed;inset:0;background:#10264d99;z-index:40;display:grid;place-items:center;padding:20px}.modal[hidden]{display:none}.modal-card{position:relative;background:#fff;border-radius:28px;padding:28px;max-width:960px;width:min(960px,96vw);max-height:88vh;overflow:auto}.modal-close{position:absolute;right:16px;top:14px;border:0;background:#eef3f6;width:38px;height:38px;border-radius:12px;font-size:22px;cursor:pointer}.learn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}.learn-card{background:#f7fbff;border:1px solid #e0e9f2;border-radius:18px;padding:16px;text-align:center}.learn-card .emo{font-size:45px;min-height:56px}.learn-card button{margin-top:9px;border:0;background:#e9fff2;color:#11774d;border-radius:10px;padding:8px 10px;font-weight:900;cursor:pointer}.confetti-piece{position:fixed;top:-20px;width:9px;height:15px;z-index:99;animation:fall 2.1s linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}@keyframes bob{50%{transform:translateY(-10px)}}@media(max-width:1050px){.episode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-card{grid-template-columns:1fr}.hero-world{min-height:300px}.game-layout{grid-template-columns:1fr}.game-sidebar{position:static}.report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.topbar{height:auto;min-height:68px;padding:10px 12px}.top-actions{gap:5px}.top-actions .ghost,.xp-pill{display:none}.app-shell{padding:18px 12px 38px}.hero-copy{padding:30px 22px}.hero-copy h1{font-size:50px}.hero-world{min-height:250px}.episode-grid{grid-template-columns:1fr}.teacher-love{grid-template-columns:auto 1fr}.teacher-love .pill{grid-column:1/-1}.answer-grid{grid-template-columns:1fr}.animal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.likes-scene{grid-template-columns:1fr}.story-strip{grid-template-columns:1fr}.report-cards{grid-template-columns:1fr 1fr}.report-row{grid-template-columns:1.6fr .6fr}.report-row span:nth-child(3),.report-row span:nth-child(4){display:none}.learn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.game-stage{padding:12px;min-height:600px}.prompt-card{padding:20px 12px}.position-scene{height:250px}.desk{left:17%;font-size:120px}}
/* Wave 4 — Lunchtime visual layer */
.wave4{--green:#ff7a36;--teal:#ef5f74;--yellow:#ffe06d;--pink:#ef5f8f;--purple:#7e63dc;background:radial-gradient(circle at 10% 4%,#fff1a8 0 8%,transparent 24%),radial-gradient(circle at 90% 2%,#ffd7cb 0 8%,transparent 25%),linear-gradient(180deg,#fff8ec,#fffdf8 58%,#f4fbff)}
.wave4 .brand-mark{background:linear-gradient(135deg,#ff7a36,#ef4d70)}
.wave4 .hero-card{background:linear-gradient(135deg,#ff7a36 0%,#f45e67 48%,#df4f90 100%);box-shadow:0 30px 75px #d9575731}
.wave4 .hero-copy h1 span{color:#fff4a7}.wave4 .cta{color:#c24739}.wave4 .section-head .eyebrow{background:#fff3e8;color:#c85a2e}.wave4 .progress-bar{background:linear-gradient(90deg,#ff8a3d,#ed4e70)}.wave4 .learning-target{background:#fff6ec;color:#885534}.wave4 .stage-chip{background:#fff2e9;color:#ad4b28}.wave4 .teacher-note{background:#fff8e8;color:#775e3f}
.lunch-world{background:linear-gradient(#dff5ff 0 46%,#fff0c9 46% 100%)}.cafeteria-sign{position:absolute;left:8%;top:9%;background:#fff;color:#a5492d;border:6px solid #ffb24a;border-radius:15px;padding:12px 20px;text-align:center;font-weight:1000;font-size:25px;transform:rotate(-2deg);box-shadow:0 12px 24px #0002}.cafeteria-sign small{font-size:10px;display:block;letter-spacing:.08em}.chef{position:absolute;right:9%;bottom:17%;font-size:118px;filter:drop-shadow(0 9px 6px #0002)}.tray{position:absolute;font-size:65px;animation:bob 2.1s ease-in-out infinite;filter:drop-shadow(0 9px 6px #0002)}.t1{left:13%;bottom:17%}.t2{left:37%;bottom:21%;animation-delay:.25s}.t3{left:54%;bottom:17%;animation-delay:.55s}.t4{left:34%;bottom:41%;animation-delay:.85s}.counter{position:absolute;left:0;right:0;bottom:0;height:78px;background:linear-gradient(#d58a48,#a86332);border-top:8px solid #f1bd73}
.food-conveyor{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;max-width:920px;margin:20px auto}.food-tile{border:2px solid #e6eaf1;background:#fff;border-radius:20px;padding:14px 10px;min-height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:grab;touch-action:none;box-shadow:0 9px 20px #244b7110}.food-tile:active{cursor:grabbing;transform:scale(.98)}.food-tile .emo{font-size:52px}.food-tile small{font-weight:900;color:#576f8b}.basket-zone{width:min(360px,88%);min-height:150px;border:4px dashed #f2a23f;background:linear-gradient(#fff8df,#ffedbd);border-radius:30px;margin:18px auto;display:grid;place-items:center;font-weight:1000;color:#a45b22;font-size:20px;transition:.18s}.basket-zone.dragover{transform:scale(1.03);background:#fff0b5;border-color:#e47531}.basket-icon{font-size:74px;display:block}.hintline{font-size:13px;color:#74869b;margin-top:4px}
.lunchbox-scene{max-width:760px;margin:18px auto;padding:22px;background:linear-gradient(180deg,#b8ec70,#78c752);border:8px solid #4f9c36;border-radius:36px;box-shadow:0 20px 36px #285b2430;position:relative}.lunchbox-lid{text-align:center;font-weight:1000;color:#2d641e;font-size:20px;margin-bottom:12px}.lunchbox-inner{min-height:190px;background:#fffdf3;border:5px solid #e9dfc6;border-radius:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:17px}.lunch-item{background:#fff;border:1px solid #eee4d0;border-radius:18px;display:grid;place-items:center;font-size:55px;min-height:110px}.fridge-scene{width:min(650px,100%);margin:20px auto;background:#e9f8ff;border:8px solid #b9d8e7;border-radius:30px;padding:18px;box-shadow:0 20px 40px #17466a1a}.fridge-title{font-weight:1000;color:#39708a;margin-bottom:10px}.fridge-shelves{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fridge-item{min-height:100px;border-radius:18px;background:#fff;border:2px solid #d8e8f0;display:grid;place-items:center;font-size:50px}.fridge-door{height:14px;background:#b7d9e8;border-radius:999px;margin:13px 30px 0}.yesno-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:18px}.yesno{border:0;border-radius:18px;padding:18px 26px;font:inherit;font-weight:1000;cursor:pointer;min-width:200px}.yesno.yes{background:#dcfae9;color:#197047}.yesno.no{background:#fff0ef;color:#a43e3e}
.pizza-story{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:980px;margin:18px auto}.pizza-panel{min-height:155px;border:2px solid #e8e4ef;background:#fff;border-radius:18px;padding:14px;display:flex;flex-direction:column;justify-content:center}.pizza-panel .pic{font-size:45px}.pizza-panel b{margin:7px 0}.pizza-panel small{color:#718096;line-height:1.4}.queue-track{display:flex;align-items:center;justify-content:center;gap:5px;margin:12px 0;font-size:32px}.queue-arrow{font-size:20px;color:#c56d35}
.market-stage{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:820px;margin:20px auto}.market-crate{min-height:180px;border:4px dashed #d8a84e;border-radius:25px;padding:15px;background:#fff9df;display:flex;flex-direction:column;justify-content:center;align-items:center}.market-crate.veg{border-color:#62b968;background:#eeffec}.market-crate .big{font-size:55px}.produce-card{display:inline-flex;flex-direction:column;align-items:center;gap:6px;padding:17px 26px;border-radius:20px;background:#fff;border:2px solid #e1e9ef;box-shadow:0 10px 22px #23445c16;margin:5px}.produce-card .big{font-size:72px}.number-shelf{max-width:780px;margin:20px auto;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.number-box{padding:14px 8px;background:#fff;border:2px solid #e2eaf0;border-radius:16px;font-weight:1000;font-size:18px}.boss-kitchen{font-size:80px;display:flex;justify-content:center;gap:12px;margin:16px 0;animation:bob 2s ease-in-out infinite}@media(max-width:760px){.food-conveyor{grid-template-columns:repeat(2,minmax(0,1fr))}.pizza-story{grid-template-columns:repeat(2,minmax(0,1fr))}.market-stage{grid-template-columns:1fr}.number-shelf{grid-template-columns:repeat(2,1fr)}.lunchbox-inner{grid-template-columns:repeat(2,1fr)}.fridge-shelves{grid-template-columns:repeat(2,1fr)}}
