@charset "UTF-8";
:root{color-scheme:dark;--ink:#10205f;--cream:#fff9d8;--blue:#1136a3;--focus:#ffed8c;font-family:"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100svh;background:#0c2d94;color:var(--cream);background-image:linear-gradient(115deg,#062579c9,#114db39c),url("assets/galaxie/galaxie-cartoon.png");background-size:cover;background-position:center;background-attachment:fixed}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:4px solid var(--focus);outline-offset:5px}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}.shell{max-width:1512px;margin:auto;padding:24px 36px 12px}.welcome{display:flex;align-items:center;gap:22px;margin-bottom:26px;min-height:108px}.avatar-button{width:100px;height:100px;flex:none;border:4px solid #a0ebff;border-radius:50%;padding:0;background:#8be6ff;box-shadow:0 0 30px #67bcff66;transition:transform .18s}.avatar-button img{border-radius:50%;height:100%;width:100%;object-fit:cover}.avatar-button:hover{transform:rotate(-4deg)}h1{font-size:clamp(2rem,4.5vw,4.2rem);line-height:1.1;letter-spacing:-1.5px;text-shadow:0 4px 0 #08257675}.greeting p{margin-top:9px;color:#c0eaff;font-size:clamp(1rem,1.65vw,1.5rem);font-weight:700}.parent-button{align-self:flex-start;margin:10px 0 0 auto;padding:10px 14px;background:#092d7b88;border:1px solid #a5d7ff55;color:#e1f4ff;border-radius:18px;font-size:1rem}.parent-button:hover{background:#0b2979}.home-grid{display:grid;grid-template-columns:minmax(0,1.78fr) minmax(0,1fr);gap:24px;height:clamp(560px,73svh,850px)}.mission-card,.world-card{overflow:hidden;border:4px solid #8bd7ff;border-radius:38px;box-shadow:0 12px 0 #031c664d,0 20px 44px #00114c55}.mission-card{position:relative;background:#153a9b;isolation:isolate;min-width:0}.mission-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 32%;z-index:-2}.mission-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0c2c91 0%,#0d329ff5 16%,#0d329fdb 26%,#0d329f00 58%)}.mission-content{position:absolute;bottom:28px;left:28px;right:28px;text-align:center}.mission-content h2{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.15;text-shadow:0 3px 0 #082463}.mission-invite{font-size:clamp(1.3rem,2.2vw,2.25rem);margin-top:9px;color:#fff}.mission-meta{font-size:clamp(1rem,1.4vw,1.3rem);margin:13px 0 22px;color:#c8edff}.mission-meta span{padding:0 5px}.start-button{min-height:76px;width:min(100%,510px);border:3px solid #fff4a9;border-radius:28px;padding:13px 24px;color:#112162;background:linear-gradient(#fff583,#ffdb38 60%,#ffc52a);box-shadow:inset 0 4px 0 #fffcd9,0 6px 0 #b78110,0 7px 27px #ffdd5255;font-size:clamp(1.65rem,2.65vw,2.7rem);font-weight:900;transition:transform .16s,filter .16s}.start-button span{font-size:.6em;display:inline-block;margin-left:16px;vertical-align:middle}.start-button:hover{transform:translateY(-3px);filter:brightness(1.05)}.start-button:active{transform:translateY(3px);box-shadow:inset 0 3px 0 #fffcd9,0 3px 0 #b78110}.side-cards{display:grid;grid-template-rows:1fr 1fr;gap:24px;min-height:0}.world-card{position:relative;width:100%;padding:0;background:#97dfff;display:flex;flex-direction:column;transition:transform .18s,border-color .18s;min-height:0;text-align:left}.world-card:hover{transform:translateY(-4px);border-color:#fff6b9}.world-card img{width:100%;min-height:0;flex:1;object-fit:cover;object-position:50% 48%}.world-label{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;padding:14px 18px;min-height:79px;color:#10235f;font-weight:900;font-size:clamp(1.7rem,2.65vw,2.8rem);line-height:1.15;background:linear-gradient(#efffff,#a9e0fa);border-top:3px solid #f2ffff;box-shadow:0 -9px 28px #74c2f822}.world-label span{opacity:.5;font-family:system-ui,sans-serif}.play-card{border-color:#c2b4ff;background:#bcb3ff}.play-card .world-label{background:linear-gradient(#f3eaff,#c9b0f8);border-color:#ffefff}.play-card img{object-position:75% 52%}.home-footer{text-align:center;font-size:.875rem;color:#c6ddff;margin:22px 0 2px;opacity:.8}
/* Activities use real text and controls, separate from the illustrations. */
dialog{color-scheme:light;padding:0;width:min(760px,calc(100% - 32px));max-height:calc(100svh - 40px);border:3px solid #a1d3ff;border-radius:30px;background:#f4f8ff;color:var(--ink);box-shadow:0 35px 100px #00134588;overflow:auto}dialog::backdrop{background:#001646bd;backdrop-filter:blur(9px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 22px;background:#e4eeff;border-bottom:1px solid #d1dff5}.dialog-location{font-size:.95rem;color:#46608d}.close-button{border:0;background:#fff;color:#234373;padding:10px 14px;border-radius:14px;font-size:1rem;min-height:44px}.close-button span{font-size:1.4em;margin-left:8px}#dialog-content{padding:28px 32px 32px}#dialog-content h2{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.2;margin-bottom:16px;letter-spacing:-.7px}#dialog-content p{font-family:"Trebuchet MS",system-ui,sans-serif;font-size:1.125rem;line-height:1.6}.eyebrow{font-size:.9rem;color:#526b96;margin-bottom:12px}.dialog-art{width:100%;height:175px;object-fit:cover;border-radius:18px;margin-bottom:22px}.question{font-size:clamp(2.2rem,5vw,3.7rem);text-align:center;background:#e1ecff;padding:24px;border-radius:20px;margin:24px 0}.answers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.answer{min-height:74px;border:2px solid #aec6ed;background:white;color:#183c80;border-radius:18px;font-size:1.85rem;font-weight:800;transition:background .15s}.answer:hover:not(:disabled){background:#dceeff;border-color:#4778ca}.answer:disabled{opacity:.65}.answer.correct{background:#d9f5dc;border-color:#479658;opacity:1}.feedback{margin-top:20px;border-radius:16px;background:#e4ecfb;padding:14px 18px;line-height:1.5;font-family:"Trebuchet MS",system-ui,sans-serif;font-size:1.1rem}.feedback:empty{display:none}.feedback.success{background:#def2e6;color:#1d623b}.dialog-actions{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:24px}.action{padding:13px 22px;border:2px solid #16459a;border-radius:16px;background:#2058b5;color:white;font-size:1.1rem;min-height:52px}.action.light{color:#1d4b8d;background:#e4edfc;border-color:#c7d7ef}.action.gold{background:#ffdc57;border-color:#e9bd36;color:#19336c}.text-button{background:none;border:0;color:#345a90;padding:12px 4px;font-size:1rem;text-decoration:underline;text-underline-offset:4px}.activity-list{display:grid;gap:14px}.activity-option{display:flex;gap:20px;align-items:center;text-align:left;padding:14px;border:2px solid #ccdff6;border-radius:20px;background:white;color:var(--ink)}.activity-option:hover{border-color:#4874c7;background:#eef5ff}.activity-option img{width:115px;height:85px;object-fit:cover;border-radius:12px}.activity-option strong{display:block;font-size:1.3rem;margin-bottom:7px}.activity-option small{font-size:1rem;color:#546b90}.reading-text{padding:24px;background:#fff;border:2px solid #d3e1f5;border-radius:20px;margin:20px 0}.reading-answers{grid-template-columns:1fr}.reading-answers .answer{font-size:1.2rem;min-height:57px}.reward-avatar{width:110px;height:110px;border-radius:50%;margin:0 auto 20px;border:4px solid #ffdb59}.reward{text-align:center}.reward-name{background:#fff1be;border:2px solid #f1d575;border-radius:20px;padding:18px;margin:22px 0}.reward-name strong{display:block;font-size:1.6rem;margin-bottom:8px}.memory-board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.memory-card{height:140px;overflow:hidden;padding:0;border:3px solid #81adf2;border-radius:18px;background:linear-gradient(140deg,#3065d3,#613ec0);color:#e7efff;font-size:2.8rem}.memory-card img{height:100%;width:100%;object-fit:cover}.memory-card.matched{border-color:#63a984;opacity:.68}.parent-note{background:#fff2d5;border-radius:14px;padding:14px 18px;margin-bottom:20px}.parent-block{padding:18px 0;border-bottom:1px solid #d8e2f1}.parent-block h3{font-size:1.2rem;margin-bottom:7px}.parent-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px}.parent-links a{color:#24509b}.status-note{margin-top:16px;color:#526884;font-size:1rem!important}body.modal-open{overflow:hidden}
@media(min-width:1500px){.shell{padding-top:30px}.welcome{margin-bottom:30px}}
@media(max-width:900px){.shell{padding:20px}.home-grid{gap:16px;grid-template-columns:1.5fr 1fr;height:620px}.side-cards{gap:16px}.mission-card,.world-card{border-radius:28px}.mission-content{left:18px;right:18px;bottom:25px}.world-label{gap:10px;font-size:1.75rem;padding:13px 8px}.avatar-button{width:78px;height:78px}.welcome{gap:15px;margin-bottom:18px}.start-button{font-size:1.9rem;min-height:70px}}
@media(max-width:650px){.shell{padding:18px 14px}.welcome{gap:12px;min-height:80px}.avatar-button{width:62px;height:62px;border-width:3px}h1{font-size:2rem;letter-spacing:-1px}.greeting p{font-size:.95rem;margin-top:5px}.parent-button{font-size:.8rem;margin-top:0;padding:8px}.home-grid{height:auto;grid-template-columns:1fr;gap:18px}.mission-card{height:580px}.mission-content h2{font-size:2.25rem}.mission-invite{font-size:1.6rem}.mission-art{height:72%;object-position:40% 30%}.side-cards{grid-template-columns:1fr 1fr;grid-template-rows:240px;gap:12px}.world-label{font-size:1.25rem;min-height:62px;gap:5px}.world-card{border-width:3px;border-radius:24px}.world-label span{display:none}.home-footer{line-height:1.6}#dialog-content{padding:22px 20px}.dialog-top{padding:12px 16px}.dialog-location{font-size:.8rem}.memory-card{height:110px}.activity-option{gap:12px}.activity-option img{width:80px;height:80px}.activity-option strong{font-size:1.15rem}}
@media(max-width:380px){.parent-button{padding:8px 5px}.welcome{gap:8px}h1{font-size:1.6rem}.greeting p{font-size:.85rem}.avatar-button{width:52px;height:52px}.side-cards{grid-template-columns:1fr;grid-template-rows:240px 240px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}

/* Short learning sessions: one task, one answer, one next step. */
.lesson-number{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:18px;background:#dfeeff;color:#234b91;font-size:1.6rem;font-weight:bold;margin:12px}
.lesson-banner{height:125px;position:relative;overflow:hidden;border-radius:22px;margin-bottom:22px;background:#184bb4}
.lesson-banner img{width:100%;height:100%;object-fit:cover;object-position:center 38%;opacity:.62}
.lesson-banner span{position:absolute;bottom:16px;left:22px;color:white;font-size:1.35rem;font-weight:bold;text-shadow:0 2px 8px #163662}
#dialog-content progress{width:100%;height:10px;accent-color:#3276d8;margin-bottom:18px}
#answer-form{display:grid;gap:14px;margin-top:24px}
#answer-form label{font-weight:bold}
#lesson-answer{box-sizing:border-box;width:100%;border:3px solid #9ebfe9;border-radius:18px;padding:16px 20px;font:inherit;font-size:1.8rem;background:white;color:#183968}
#lesson-answer:focus{outline:4px solid #ffcf5a;outline-offset:3px}
#answer-form>.action{justify-self:start}
.word-to-learn{font-size:clamp(2rem,5vw,3.5rem);text-align:center;padding:32px 16px;background:white;border-radius:22px;color:#214ba0;margin:22px 0;font-weight:bold}
.accent-keys{display:flex;flex-wrap:wrap;gap:8px}.accent-keys[hidden]{display:none}
.accent-keys button{border:1px solid #aac3e5;background:white;border-radius:10px;min-width:42px;min-height:42px;color:#244778;font:inherit;font-size:1.25rem}
.lesson-navigation{display:flex;gap:20px;justify-content:space-between;margin-top:22px}
.feedback .action{margin-top:14px}
@media(max-width:650px){.lesson-banner{height:90px}.lesson-navigation{flex-wrap:wrap}.mission-meta{max-width:300px}}
@media(min-width:651px) and (max-height:850px){
.learning-dialog #dialog-content{padding:18px 28px}
.learning-dialog .lesson-banner{height:70px;margin-bottom:12px}
.learning-dialog .eyebrow{margin:8px 0}
.learning-dialog progress{margin-bottom:6px!important}
.learning-dialog h2{font-size:2rem;margin:10px 0}
.learning-dialog p{margin:10px 0}
.learning-dialog #answer-form{margin-top:12px;gap:8px}
.learning-dialog #lesson-answer{padding:10px 16px;font-size:1.5rem}
.learning-dialog .feedback:empty{display:none}
.learning-dialog .lesson-navigation{margin-top:12px}
.learning-dialog .action{padding:12px 20px}
}
