*{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}}
