:root{--bg:#08152e;--surface:#102a50;--surface2:#174277;--edge:#376e9c;--mint:#9af4d9;--cyan:#69ddec;--text:#f4f9ff;--muted:#c1d6ef;--warn:#ffbbc1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse 65% 25% at 50% 0,#1e4388,var(--bg) 75%);color:var(--text);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;min-height:100vh}a{color:inherit}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ffe87b;outline-offset:3px}.skip{position:absolute;top:-100px;left:10px;background:white;color:black;padding:12px;z-index:100}.skip:focus{top:8px}.shell{width:min(1120px,calc(100% - 30px));margin:auto}.top{padding:12px max(15px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;gap:15px;background:#06162cb8;border-bottom:1px solid #2c597a}.brand img{display:block;width:128px;height:auto}.top nav{display:flex;gap:18px}.top nav a{font-size:13px;color:#ddedff;font-weight:700;text-decoration:none}.hero{text-align:center;padding:34px 0 20px}.eyebrow{color:var(--cyan);font-size:11px;font-weight:900;letter-spacing:.13em}.hero h1{font-size:clamp(2.3rem,6vw,4.8rem);margin:7px 0;letter-spacing:-.06em}.hero h1 span{color:var(--mint)}.hero p{color:var(--muted);margin:5px auto 0;line-height:1.65;max-width:670px}.track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px auto 20px}.track{background:linear-gradient(145deg,#174b88,#0b2346);border:1px solid #3979aa;border-radius:21px;padding:23px;display:flex;flex-direction:column;align-items:start;gap:10px;text-align:left;color:var(--text);cursor:pointer;min-height:240px;transition:transform .16s}.track:hover{transform:translateY(-3px);border-color:#8ae4e8}.track .giant{font-size:52px}.track strong{font-size:22px}.track .hint{font-size:13px;line-height:1.6;color:var(--muted)}.track .go{margin-top:auto;color:var(--mint);font-weight:800}.progress-local{font-size:12px;color:var(--mint)}.intro-note{color:var(--muted);padding:12px 16px;border:1px solid #315979;border-radius:13px;line-height:1.6}.lesson-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 15px}.link-button,.small-button{border:1px solid #4c84aa;border-radius:10px;background:#132f53;color:var(--text);padding:10px 13px;cursor:pointer;font-weight:750}.mode-switch{display:flex;gap:6px;padding:5px;background:#0b2444;border:1px solid #345879;border-radius:13px}.mode-switch button{border:0;background:transparent;color:#e8f6ff;border-radius:9px;padding:9px 12px;font-weight:800;cursor:pointer}.mode-switch button[aria-pressed=true]{color:#071930;background:var(--mint)}.board{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.8fr);gap:18px;align-items:start}.mission,.coach{background:linear-gradient(155deg,#103563,#0b2144);border:1px solid #366895;border-radius:22px;padding:24px}.mission-number{font-size:12px;font-weight:900;color:var(--mint);letter-spacing:.07em}.mission h2{font-size:clamp(1.5rem,3.2vw,2.25rem);line-height:1.25;margin:9px 0}.mission-prompt{color:#e2f5ff;font-size:clamp(19px,3vw,26px);font-weight:800;margin:15px 0}.scene{background:linear-gradient(#86c9ed 0 57%,#aee6a1 57%);position:relative;min-height:126px;overflow:hidden;border-radius:18px;display:flex;align-items:center;justify-content:center;gap:8px;margin:17px 0}.scene:before{content:'☁️';position:absolute;top:12px;left:23px;font-size:26px;opacity:.95}.scene:after{content:'🌳';position:absolute;right:10px;bottom:5px;font-size:65px}.scene .scene-message{position:relative;z-index:1;border:1px solid #ffffffaa;background:#ffffffd8;color:#143862;font-weight:900;padding:12px 17px;border-radius:20px;max-width:83%;text-align:center}.items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px}.pick{background:#214d7c;border:2px solid #5686b2;color:white;border-radius:18px;min-height:122px;padding:14px 12px;cursor:pointer;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;transition:transform .12s,background .12s}.pick:hover:not(:disabled){transform:translateY(-2px);background:#2b618f}.pick .object{font-size:42px;line-height:1.15}.pick .name{font-size:15px;font-weight:850}.pick:disabled{cursor:default;opacity:.87}.pick.chosen-right{border-color:#8af2bf;background:#176450}.pick.chosen-wrong{border-color:#ffa9b0;background:#743b58}.dialogue-list{display:grid;gap:12px}.dialogue-list .pick{text-align:left;align-items:start;min-height:74px}.dialogue-list .pick .name{font-size:17px}.feedback{border-radius:16px;padding:14px 16px;margin-top:17px;background:#102c3d;border:1px solid #4e959f}.feedback.needs-fix{border-color:#e19da8;background:#51334c}.feedback p{line-height:1.55;margin:6px 0}.feedback .fix{color:#c2fff1;font-weight:700}.robo{display:flex;gap:11px;align-items:center;margin-bottom:13px}.robo img{width:66px;height:76px;object-fit:contain;filter:drop-shadow(0 5px 6px #01091877)}.robo strong{font-size:14px;color:var(--mint)}.robo small{display:block;color:var(--muted)}.coach p,.coach li{font-size:14px;line-height:1.65;color:#cfe5f4}.coach ul{padding-left:19px}.speaking{background:#163e6b;border:1px solid #6b9ac0;border-radius:16px;padding:17px;margin-top:17px}.speaking strong{display:block;color:#baffec;margin-bottom:10px}.spoken-line{font-size:21px;font-weight:850;line-height:1.4;margin:8px 0 15px}.btnrow{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 4px}.primary{background:var(--mint);color:#10263a;border:1px solid #88d4bf;padding:12px 16px;border-radius:12px;font-weight:900;cursor:pointer}.secondary{background:#174677;color:#effaff;border:1px solid #609cc7;padding:12px 16px;border-radius:12px;font-weight:850;cursor:pointer}.primary:hover,.secondary:hover{filter:brightness(1.08)}.caption{font-size:12px;line-height:1.6;color:#afc9e2}.meters{height:11px;background:#123150;border-radius:20px;overflow:hidden;margin:11px 0 4px}.meters span{height:100%;background:linear-gradient(90deg,#56d9d5,#b7ffad);display:block;transition:width .18s}.finish{background:#102f55;border:1px solid #3e80aa;border-radius:22px;padding:28px;text-align:center}.finish .large{font-size:59px}.finish h2{font-size:33px}.finish p{color:var(--muted);line-height:1.6}.finish .evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0}.finish .evidence>div{background:#0a2547;padding:15px;border-radius:12px}.finish .evidence b{display:block;font-size:24px;color:var(--mint)}.finish .btnrow{justify-content:center}body.teacher .mission-prompt{font-size:clamp(25px,3.5vw,36px)}body.teacher .pick{min-height:145px}body.teacher .pick .object{font-size:54px}body.teacher .coach{border-color:#74adbd}footer{border-top:1px solid #23496c;margin-top:48px;padding:25px 0 35px;color:#9dbdd8;font-size:12px}footer a{color:var(--mint)}
@media(max-width:760px){.track-grid{grid-template-columns:1fr}.track{min-height:0}.board{grid-template-columns:1fr}.top{flex-wrap:wrap}.top nav{gap:10px}.top nav a{font-size:11px}.mission,.coach{padding:18px}.finish .evidence{grid-template-columns:1fr}}
@media(max-width:380px){.items{grid-template-columns:1fr}.mode-switch button{font-size:12px}.top nav a:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

.item-asset{display:block;width:65px;height:65px;object-fit:contain;margin:auto}

/* Olympia library: standalone, no heavy assets loaded with Kids Lab */
.olympia-spotlight{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border:1px solid #bba66a;border-radius:16px;padding:16px 19px;margin:12px 0 24px;background:#1b304b;color:#e9f5ff}
.olympia-spotlight b{font-size:16px}.olympia-spotlight p{margin:5px 0;color:#c6d6e9;font-size:13px}.olympia-spotlight a{display:inline-flex;border-radius:10px;padding:11px 15px;background:#76ead7;color:#0b2e3a;font-weight:850;text-decoration:none}
.olympia-spotlight a:focus-visible{outline:3px solid #ffe09b}
