
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--navy:#101a32;--panel:#18253e;--text:#f7f4eb;--muted:#b0bdd3;--mint:#8cf0d5;--gold:#ffd589;--lav:#cbb8ff}*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--text);font:16px/1.6 'DM Sans',system-ui,sans-serif}h1,h2,h3{font-family:'Outfit',system-ui,sans-serif;line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(36px,5vw,68px)}h2{font-size:clamp(28px,3vw,38px);margin:12px 0 20px}h3{font-size:23px}p{color:var(--muted)}button,select{font:inherit;color:inherit}button{border:1px solid #8b9cbb44;background:#ffffff08;padding:12px 19px;border-radius:12px;cursor:pointer;min-height:46px;transition:background .15s,transform .15s}button:hover{background:#ffffff18}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--mint);color:#102f32;font-weight:800;border:0;box-shadow:0 6px 30px #76e4cd15}button.primary:hover{background:#b7ffe9;transform:translateY(-2px)}button.primary span{margin-left:35px}.glass{backdrop-filter:blur(12px);background:#14223866}.buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.textbutton{border:0;padding:10px 0;color:var(--mint);font-weight:700;background:none}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.22em;color:var(--mint)}header{height:96px;display:flex;align-items:center;gap:40px;max-width:1500px;margin:auto;padding:0 5%;position:relative;z-index:2;background:#101a32}.brand{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:13px;line-height:1.3;letter-spacing:.16em;font-size:17px;font-weight:800}.brand small{display:block;font-size:8px;letter-spacing:.2em;color:var(--muted);margin-top:5px}.brandstar{color:var(--gold);font-size:45px}nav{display:flex;gap:8px;margin-left:auto}nav button{border:0;background:none;color:#d3dced;padding:9px 14px;font-size:14px}.grade{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted);white-space:nowrap}.grade select{background:#25334b;border:1px solid #9caccc44;border-radius:8px;padding:8px}.hero{position:relative;min-height:640px;max-width:1600px;margin:auto;overflow:hidden}.heroart{position:absolute;inset:0;background:linear-gradient(90deg,#101a32 0%,#101a32e8 22%,#101a3280 43%,transparent 65%),linear-gradient(0deg,#101a32,transparent 25%),url('assets/starlight-lagoon.png') 64% center/cover;animation:reveal 1.5s ease-out}.herocopy{position:relative;max-width:640px;padding:70px 0 80px 7%}.herocopy h1{font-size:clamp(60px,7vw,98px);letter-spacing:-.045em;margin:20px 0 23px;line-height:.98}.herocopy h1 span{display:block;color:var(--gold)}.herocopy p{font-size:18px;line-height:1.7;color:#c1cce0}.hero-meta{font-size:9px;letter-spacing:.13em;color:#9aaccc;margin-top:34px;white-space:nowrap}.hero-meta i{font-style:normal;color:var(--gold);margin:0 12px}.location{position:absolute;bottom:44px;right:6%;letter-spacing:.15em;font-size:10px;color:#fff3d4;background:#101a3270;border:1px solid #ffffff22;padding:10px 17px;border-radius:30px}.welcome{max-width:1280px;margin:auto;padding:50px 5% 70px;display:grid;grid-template-columns:1.3fr 1fr;gap:95px;align-items:center;border-bottom:1px solid #ffffff12}.welcome>div{position:relative;padding-left:58px}.welcome p{max-width:630px;font-size:15px}.orb{position:absolute;left:0;top:12px;font-size:36px;color:var(--gold)}.journey{padding:25px;border-radius:18px;background:linear-gradient(110deg,#26314c,#18243d);border:1px solid #829bc92d}.journey>div:first-child{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em}.journey b{color:var(--gold);font-size:12px}.skyprogress{height:7px;background:#0d172c;border-radius:20px;margin:22px 0 15px;overflow:hidden}.skyprogress i{height:100%;display:block;background:var(--mint);border-radius:20px}.journey small{font-size:11px;color:var(--muted)}.journey p{font-size:11px;margin-bottom:0}.map-section{max-width:1380px;margin:auto;padding:60px 6% 80px}.sectiontitle{display:flex;align-items:center;justify-content:space-between;gap:15px}.districts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:25px}.district{border:1px solid #ffffff14;border-radius:20px;padding:23px;background:radial-gradient(ellipse at 80% 10%,#53667a25,transparent 65%),#18253c;position:relative;overflow:hidden}.district:nth-child(3n+2){background:radial-gradient(ellipse at 80% 10%,#9474ce25,transparent 65%),#1b2542}.district:nth-child(3n){background:radial-gradient(ellipse at 80% 10%,#c9974125,transparent 65%),#202a3e}.district-top{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.09em;color:var(--muted)}.district-num{color:var(--gold);font-size:12px}.ride{height:100px;display:grid;place-items:center;font-size:54px;filter:drop-shadow(0 8px 20px #afbfef22)}.district h3{font-size:21px;margin:15px 0 12px}.district p{font-size:12px;min-height:60px;line-height:1.7}.district .textbutton{font-size:11px;text-align:left}.lessonlink{display:block;width:100%;text-align:left;margin:9px 0;padding:10px 12px;min-height:64px}.lessonlink span{font-weight:700;font-size:12px;display:block}.lessonlink small{display:block;color:var(--muted);font-size:10px}.standard{max-width:1180px;margin:auto;padding:55px 5% 90px}.standard h1{max-width:850px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stats>div{background:var(--panel);padding:25px;border-radius:20px;color:var(--muted)}.stats strong{display:block;font:700 36px 'Outfit',sans-serif;color:var(--gold)}.tablewrap{overflow:auto;margin-top:35px}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:14px;border-bottom:1px solid #ffffff22}th{color:var(--mint)}.list{margin-top:35px}.list article{display:flex;align-items:center;gap:15px;padding:20px 0;border-bottom:1px solid #ffffff22}.list article>div{margin-right:auto}.list h3{font-size:18px;margin:0 0 8px}.list small{color:var(--muted)}.list button{font-size:12px}.lesson-intro{display:grid;grid-template-columns:1fr 1.2fr;max-width:1400px;margin:0 auto;min-height:750px}.intro-image{background:linear-gradient(0deg,#101a32,transparent 25%),url('assets/starlight-lagoon.png') 75% center/cover;min-height:450px}.intro-text{padding:45px 8%}.intro-text h1{font-size:40px}.coach{display:flex;align-items:center;gap:18px;padding:20px;border:1px solid #88e3d322;background:#7df5d508;border-radius:18px;margin:20px 0}.coach p{font-size:14px;margin:5px 0}.robot{display:grid;place-items:center;width:64px;height:60px;min-width:64px;border:5px solid #e7d6b2;background:#10353e;color:#ffdc8d;font-size:38px;border-radius:20px;box-shadow:0 0 30px #88e7d51a}.play{max-width:1250px;margin:auto;padding:30px 5% 70px}.playhead{display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:12px}.playhead button{font-size:12px}.clueprogress{display:flex;gap:8px;margin:25px 0 40px}.clueprogress i{height:5px;flex:1;background:#35435b;border-radius:10px}.clueprogress .active{background:var(--mint)}.question-layout{display:grid;grid-template-columns:2.4fr 1fr;gap:35px}.question{padding:30px;background:var(--panel);border:1px solid #96adc62a;border-radius:24px}.question h2{font-size:28px;line-height:1.45}.options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.options button{font-size:27px;font-weight:700;padding:17px;border-color:#9bb4d970}.coachpanel{padding:25px 5px}.coachpanel h3{color:var(--gold)}.coachpanel p{font-size:14px}.tiny{font-size:11px!important;color:#9ba9c0}.hint{border-left:3px solid var(--mint);padding:10px 15px;margin:20px 0;font-size:14px}.success,.support{padding:18px;border-radius:12px;background:#8cf0d518;color:var(--mint)}.support{color:var(--gold);background:#ffd58912}details{margin:25px 0;font-size:13px}details button{display:block;font-size:12px;margin:10px 0}summary{cursor:pointer;color:var(--mint);padding:10px 0}.mathmodel{padding:15px;margin:20px 0;background:#0e1b2f;border-radius:16px;text-align:center;max-width:100%;overflow:hidden;min-height:70px}.mathmodel svg{width:300px;max-width:100%;max-height:220px;display:block;margin:auto}.mathmodel small{display:block;color:#c0cbe0;margin:12px 0;font-size:11px}.dot{display:inline-block;background:var(--mint);border-radius:50%;width:17px;height:17px;box-shadow:0 0 12px #8cf0d532}.counters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;padding:15px}.gold{background:var(--gold)!important}.cross{background:#45536d;position:relative}.cross:after{content:'×';position:absolute;inset:0;color:white;font-size:20px;line-height:17px}.empty{background:none;border:1px solid #7a90b0}.tenframe{display:grid;grid-template-columns:repeat(5,28px);gap:8px;width:max-content;margin:auto;border:2px solid #7695bc;padding:12px}.tenframe .dot{width:26px;height:26px}.array{display:grid;gap:7px;width:max-content;margin:10px auto}.fraction{display:grid;gap:3px;margin:18px auto;height:50px;max-width:450px}.part{background:#2e3d57;border:1px solid #96a9c7}.part.lit{background:var(--mint)}.part.second{background:var(--gold)}.coin{background:#ac7442;border:3px solid #d9a368;border-radius:50%;width:43px;height:43px;display:grid;place-items:center;font-style:normal;color:#fff8df;font-size:12px}.silver{background:#637587;border-color:#aec0cd}.bar{background:var(--mint);color:#102b30;padding:5px;border-radius:4px;margin:12px 0;font-size:13px;min-width:90px}.place{display:flex;justify-content:center;gap:10px;padding:10px;flex-wrap:wrap}.place b{font-size:12px;padding:6px 10px;border:1px solid #5d7495;border-radius:8px;font-weight:500}.place strong{display:block;font-size:26px;color:var(--gold)}.rect{padding:35px 10px;border:3px solid var(--mint);max-width:330px;margin:auto}.timeline{font-size:18px;padding:25px 0}.timeline span{font-size:13px;color:var(--mint)}.finish{text-align:center;max-width:760px;padding:50px 5% 100px;margin:auto}.finish .buttons{justify-content:center}.finish h1{font-size:47px}.finish details{text-align:left}.portal{width:160px;height:160px;display:grid;place-items:center;border:8px solid var(--mint);border-radius:50%;color:var(--gold);font-size:70px;box-shadow:0 0 80px #78f0d53a,inset 0 0 50px #78f0d52a;margin:20px auto 45px;animation:pulse 3s ease-in-out infinite}.portal.dawn{border-color:var(--gold);box-shadow:0 0 90px #ffd58955}.moviegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0}.moviecard{padding:0;overflow:hidden;text-align:left}.moviecard img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.moviecard span{display:block;font:600 22px 'Outfit',sans-serif;padding:20px 20px 8px}.moviecard small{display:block;padding:0 20px 22px;color:var(--muted)}dialog{background:#142139;color:var(--text);width:min(980px,94vw);max-height:94vh;overflow:auto;border:1px solid #a0b4d455;border-radius:22px;padding:35px}dialog::backdrop{background:#020918dc;backdrop-filter:blur(10px)}dialog video{width:100%;max-height:68vh;background:#050b16}.close{float:right;font-size:25px}.printtoolbar{padding:25px}.printlesson{max-width:850px;margin:auto;padding:40px}.printq{border-bottom:1px solid #8190a8;padding:10px}footer{border-top:1px solid #ffffff15;padding:30px 6%;font-size:11px;color:#889ab7;display:flex;justify-content:space-between}.skip{position:absolute;top:-100px;left:20px;z-index:9;background:var(--mint);color:#102e34;padding:15px}.skip:focus{top:10px}#save-warning{position:fixed;bottom:0;left:0;background:#47360b;color:white;padding:15px;width:100%;z-index:10}.float{animation:float 4s ease-in-out infinite}@keyframes float{50%{transform:translateY(-7px)}}@keyframes pulse{50%{transform:scale(1.04)}}@keyframes reveal{from{opacity:.2;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.reduced *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:1600px){.hero{border-radius:25px}}@media(max-width:1050px){header{gap:15px;padding:0 4%}nav{gap:0}nav button{font-size:12px;padding:9px}.districts{grid-template-columns:repeat(2,1fr)}.welcome{gap:30px}.herocopy{padding-left:6%}.heroart{background-position:70% center}.question-layout{grid-template-columns:2fr 1fr;gap:20px}}@media(max-width:700px){header{height:auto;min-height:100px;flex-wrap:wrap;padding:14px 5%;gap:5px}.brand{font-size:14px}.brandstar{font-size:34px}.grade{margin-left:auto}nav{order:3;width:100%;justify-content:space-between}nav button{font-size:12px;padding:6px 9px}.hero{min-height:780px}.heroart{background:linear-gradient(0deg,#101a32,transparent 40%),linear-gradient(180deg,transparent 30%,#101a32 64%),url('assets/starlight-lagoon.png') 75% top/auto 440px no-repeat}.herocopy{padding:370px 6% 70px;max-width:none}.herocopy h1{font-size:62px}.herocopy p{font-size:16px}.hero-meta{font-size:8px;white-space:normal}.location{top:25px;bottom:auto;font-size:8px;right:5%}.welcome{grid-template-columns:1fr;padding:35px 6%;gap:25px}.welcome>div{padding-left:0}.orb{display:none}.map-section{padding:40px 6%}.sectiontitle{display:block}.districts{gap:12px}.district{padding:16px}.district h3{font-size:19px}.district p{font-size:11px;min-height:82px}.ride{height:80px;font-size:45px}.district-top{font-size:6px}.lesson-intro{grid-template-columns:1fr}.intro-image{min-height:260px;background-position:75% 70%}.intro-text{padding:30px 6%}.intro-text h1{font-size:33px}.play{padding:20px 5%}.playhead{flex-wrap:wrap;font-size:10px}.question-layout{grid-template-columns:1fr}.question{padding:22px}.question h2{font-size:23px}.coachpanel{padding:10px 5px}.coachpanel .robot{float:left;margin-right:20px}.coachpanel h3{margin-top:15px}.stats{gap:10px}.stats>div{padding:15px;font-size:10px}.stats strong{font-size:27px}.list article{flex-wrap:wrap}.list article>div{width:100%}.moviegrid{grid-template-columns:1fr}.standard{padding-top:35px}.finish h1{font-size:36px}footer{gap:20px;font-size:9px}.array{gap:5px}.mathmodel{padding:12px}.options button{font-size:23px}}@media print{body{color:#101820;background:white;font:12px/1.4 sans-serif}header,footer,.printtoolbar,.skip{display:none}h1{font-size:25px;text-align:center}h2{font-size:22px}p{color:#182840}.printlesson{break-before:page;padding:0}.printq{break-inside:avoid}.mathmodel{background:#edf2f6;max-width:420px;margin:8px 0;padding:8px;min-height:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.mathmodel svg{height:140px}.mathmodel small{color:#24364a}.printq .mathmodel:has(.place){color:#1a2c40}.place b{color:#1a2c40}.place strong{color:#1a2c40}.bar{print-color-adjust:exact}.dot{box-shadow:none}.printq{padding:4px}.mathmodel svg text{fill:#152744}.rect{color:#152744}.timeline{color:#152744}}
a{color:var(--mint)}

.companion{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:18px;border:1px solid #a4b7d533;margin-bottom:10px}.ending{width:100%;border-radius:18px;margin:20px 0}
@media(max-width:700px){.heroart{background:linear-gradient(180deg,transparent 200px,#101a32 335px),url('assets/starlight-lagoon.png') right top/auto 320px no-repeat}.herocopy{padding-top:310px}}
.mathmodel .dot,.mathmodel .part{animation:clue-in .45s ease both}.mathmodel :nth-child(2){animation-delay:.06s}.mathmodel :nth-child(3){animation-delay:.12s}.mathmodel :nth-child(4){animation-delay:.18s}.mathmodel :nth-child(5){animation-delay:.24s}.mathmodel :nth-child(6){animation-delay:.30s}@keyframes clue-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media print{.mathmodel *{animation:none!important}}
/* The moonlit island replaces the district card grid */
.island-map{max-width:1560px;margin:auto}.island-map .sectiontitle{align-items:center}.park-intro{font-size:15px;color:#b4d4d5;margin:10px 0 0}.park-explorer{border:1px solid #8ccfc92b;border-radius:28px;overflow:hidden;background:#10253b;box-shadow:0 30px 90px #0003}.park-stage{position:relative;height:min(70vw,680px);min-height:510px;overflow:hidden;touch-action:pan-y;cursor:grab;isolation:isolate}.park-stage:active{cursor:grabbing}.park-stage canvas{position:absolute;inset:0;width:100%;height:100%}.park-watermark{position:absolute;left:28px;top:25px;font-size:12px;letter-spacing:5px;line-height:1.8;color:#c0dfd7;pointer-events:none}.park-watermark b{font-size:28px;letter-spacing:7px;color:#fff0c8}.park-watermark span{display:block;font-size:10px;letter-spacing:4px;color:#82bebc}.park-pin{position:absolute;display:flex;align-items:center;gap:7px;transform:translate(-50%,-100%);padding:6px 11px 6px 6px;border:1px solid #aad9c575;background:#142d40ee;border-radius:30px;color:#fff2d4;white-space:nowrap;box-shadow:0 5px 18px #0006;min-height:48px;cursor:pointer;text-align:left;line-height:1.2}.park-pin:after{content:'';position:absolute;left:50%;top:100%;height:18px;width:1px;background:#c2f3d5}.park-pin i{font-style:normal;border-radius:50%;background:#f6dca6;color:#183247;width:29px;height:29px;display:grid;place-items:center;font-size:12px;font-weight:800}.park-pin span{font-size:12px;font-weight:700}.park-pin small{display:block;font-size:9px;color:#a4ceca;letter-spacing:.5px;margin-top:4px;font-weight:400}.park-pin:hover,.park-pin[aria-expanded=true]{background:#295467;border-color:#ffe9ab;box-shadow:0 0 22px #a5e4d54a}.park-controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);z-index:1500;display:flex;gap:5px;padding:6px;background:#0d2034ee;border:1px solid #9ccebd40;border-radius:30px;white-space:nowrap}.park-controls button{min-height:44px;min-width:44px;padding:8px 12px;border-radius:22px;background:transparent;border:0;color:#d1f1e6;font-size:18px}.park-controls [data-park=motion]{font-size:12px}.park-controls button:hover{background:#315263}.park-compass{position:absolute;right:25px;bottom:85px;text-align:center;color:#b8d4c9;font-size:12px;line-height:1.5;pointer-events:none}.park-popup{position:absolute;right:22px;top:22px;width:330px;max-height:calc(100% - 110px);overflow:auto;z-index:2000;padding:28px 22px 22px;background:#14273bf5;backdrop-filter:blur(20px);border:1px solid #e8d2a26b;border-radius:22px;box-shadow:0 20px 80px #0008;cursor:default}.park-popup[hidden]{display:none}.park-popup h3{font-size:28px;margin:12px 0}.park-popup p{font-size:14px;color:#bfd1da;line-height:1.6;margin:0 0 18px}.park-popup .eyebrow{font-size:9px;letter-spacing:2px}.park-close{position:absolute;right:4px;top:2px;background:transparent;border:0;min-width:44px;min-height:44px;font-size:27px;color:#fff2d0}.park-missions{display:grid;gap:10px}.park-missions .lessonlink{margin:0;width:100%;padding:14px;text-align:left;min-height:64px}.park-missions b{float:right;color:#8ce2ce}.park-directory{display:flex;flex-wrap:wrap;gap:8px 13px;padding:22px 26px;background:#122439;border-top:1px solid #88bdb926}.park-directory>span{width:100%;font-size:9px;letter-spacing:3px;color:#8ab3bb;margin-bottom:3px}.park-directory button{background:transparent;border:0;padding:8px 0;min-height:44px;color:#d0e1df;font-size:12px}.park-directory i{font-style:normal;color:#f0d29b;margin-right:7px;font-size:10px}.island-map button:focus-visible,.park-stage:focus-visible{outline:3px solid #ffde9e;outline-offset:3px}@media(max-width:680px){.island-map .sectiontitle{gap:10px;align-items:flex-start}.island-map h2{font-size:30px}.park-intro{font-size:12px;max-width:220px}.island-map .textbutton{font-size:12px;padding:4px;white-space:nowrap}.park-stage{height:600px;min-height:0}.park-watermark{left:16px;top:18px;font-size:9px;letter-spacing:3px}.park-watermark b{font-size:21px}.park-pin{padding:5px;gap:4px;min-height:44px}.park-pin i{width:22px;height:22px;font-size:10px}.park-pin span{font-size:9px}.park-pin small{font-size:8px}.park-popup{right:10px;left:10px;top:105px;width:auto;max-height:380px}.park-directory{padding:16px;gap:4px 14px}.park-directory button{font-size:11px}.park-controls{gap:0;bottom:15px}.park-controls button{padding:8px;min-width:40px}.park-controls [data-park=motion]{font-size:11px}.park-explorer{border-radius:20px}.map-section{padding-left:14px;padding-right:14px}}
/* The Blender park is the scene, with controls floating over the landscape */
.park-view header{position:relative;z-index:2100;background:#101c30e8;border-bottom:1px solid #a4d8ce20}.park-view main{padding:0;max-width:none;outline:none}.park-view footer{display:none}.park-view .map-section{padding:0;max-width:none}.park-view .island-map>.eyebrow{position:absolute;z-index:1200;left:30px;top:118px;font-size:9px;pointer-events:none}.park-view .island-map>.sectiontitle{position:absolute;z-index:1200;left:30px;right:30px;top:135px;margin:0;pointer-events:none;align-items:flex-start}.park-view .sectiontitle h2{font-size:30px;text-shadow:0 3px 12px #061b2a}.park-view .park-intro{font-size:12px;margin-top:8px;color:#c4e1dc;text-shadow:0 2px 8px #000}.park-view .sectiontitle button{pointer-events:auto;background:#102a3ab8;border-radius:25px;padding:12px 18px;font-size:12px;min-height:44px}.park-view .park-explorer{border:0;border-radius:0;box-shadow:none;position:relative}.park-view .park-stage{height:calc(100dvh - 98px);min-height:620px;border-radius:0;touch-action:none;background:#182d45}.park-view .park-stage canvas{touch-action:none}.park-view .park-watermark{display:none}.park-view .park-pin{min-height:44px;min-width:44px;max-width:180px;border-radius:22px;padding:4px 10px 4px 4px;background:#102638d9;backdrop-filter:blur(8px);border-color:#e6e1bb69;transform:translate(-50%,-50%);box-shadow:0 8px 25px #051b264a}.park-view .park-pin:after{height:22px;background:#f5df9c75}.park-view .park-pin i{width:28px;height:28px;flex-shrink:0}.park-view .park-pin span{font-size:10px;line-height:1.35}.park-view .park-pin small{font-size:8px;margin-top:2px}.park-view .park-pin:hover,.park-view .park-pin-selected{background:#376b65;border-color:#ffe2a7}.park-view .park-controls{bottom:24px;border-color:#c4dece40;background:#112d3ee8;padding:5px 8px}.park-view .park-controls button{min-height:46px;min-width:46px}.park-view .park-compass{bottom:35px;right:30px}.park-view .park-popup{top:125px;right:25px;width:340px;max-height:calc(100% - 215px);background:#10283aec;box-shadow:0 30px 100px #0417287a}.park-overview{background:transparent;border:0;color:#9de4d2;margin-top:14px;padding:9px 0;font-size:12px;min-height:44px}.park-view .park-directory{padding:12px 28px 16px;background:#102437}.park-load{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;z-index:1300;background:linear-gradient(#182d45eb,#183d4be8);font-size:16px;color:#daf0d9;text-align:center;padding:35px}.park-load[hidden]{display:none}.park-loading-orb{display:block;width:52px;height:52px;border:2px solid #9be9d629;border-top-color:#b6f3d7;border-radius:50%;animation:park-load-turn 1.2s linear infinite}.park-retry{padding:15px 22px;background:#92e5ce;color:#10283a;border-radius:25px}.park-load .tiny{max-width:280px}@keyframes park-load-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.park-loading-orb{animation:none}}@media(max-width:680px){.park-view header{padding:14px 15px;gap:10px;flex-wrap:wrap}.park-view header nav{order:3;width:100%;justify-content:space-between}.park-view header nav button{min-height:44px}.park-view .island-map>.eyebrow{top:139px;left:18px;font-size:8px}.park-view .island-map>.sectiontitle{top:153px;left:18px;right:18px}.park-view .sectiontitle h2{font-size:23px;max-width:230px}.park-view .park-intro{font-size:10px;max-width:220px}.park-view .sectiontitle button{font-size:0;width:44px;padding:0}.park-view .sectiontitle button:before{content:'↺';font-size:24px}.park-view .park-stage{height:calc(100dvh - 125px);min-height:580px}.park-view .park-pin{padding:4px;min-width:44px;min-height:44px;border-radius:24px}.park-view .park-pin i{width:32px;height:32px}.park-view .park-pin span{display:none}.park-view .park-popup{top:auto;bottom:95px;right:12px;left:12px;width:auto;max-height:365px;padding:22px 20px 15px}.park-view .park-popup h3{font-size:23px;margin:9px 0}.park-view .park-popup p{font-size:12px;line-height:1.5;margin-bottom:12px}.park-view .park-missions{gap:7px}.park-view .park-missions .lessonlink{min-height:55px;padding:10px 13px}.park-view .park-popup .park-overview{margin-top:4px}.park-view .park-controls{bottom:20px}.park-view .park-controls button{min-width:41px}.park-view .park-compass{display:none}.park-view .park-directory{padding:16px}.park-view .park-directory>span{font-size:9px}}
.park-view .park-pin{padding:4px;min-width:40px;min-height:40px;border-radius:50%}.park-view .park-pin span{display:none}.park-view .park-pin:hover,.park-view .park-pin:focus-visible,.park-view .park-pin-selected{border-radius:25px;padding-right:12px}.park-view .park-pin:hover span,.park-view .park-pin:focus-visible span,.park-view .park-pin-selected span{display:block}.park-view .park-pin i{width:30px;height:30px}.park-view .park-pin:after{height:13px}.park-view .park-pin{min-height:44px;min-width:44px}
/* Approved illustrated map, preserved as painted Blender relief */
.park-view .park-stage,.park-view .park-explorer{background:#fbfaf7}.park-view .island-map>.eyebrow{color:#3f6e62}.park-view .sectiontitle h2{color:#173f3e;text-shadow:0 2px 5px #fff}.park-view .park-intro{color:#375a54;text-shadow:0 1px 4px #fff}.park-view .sectiontitle button{background:#fffdf4d9;color:#28594f;border:1px solid #62897933}.park-view .park-compass{color:#27594c}.park-view .park-pin{min-width:36px;min-height:36px;padding:3px;background:#fff8e8e8;border-color:#38675880;box-shadow:0 3px 14px #203a3433}.park-view .park-pin i{width:27px;height:27px;background:#244f49;color:#fff0c6;font-size:11px}.park-view .park-pin span{color:#193f37}.park-view .park-pin small{color:#4d6a5b}.park-view .park-pin:after{background:#3f786679}.park-view .park-pin:hover,.park-view .park-pin-selected{background:#fff4cf;border-color:#254e41}.park-view .park-controls{background:#fffdf3ec;border-color:#234e493b;box-shadow:0 5px 20px #24493a15}.park-view .park-controls button{color:#245c4d}.park-view .park-controls button:hover{background:#e3eee3}.park-view .park-load{background:linear-gradient(#fbfaf7fa,#ecf0e4f5);color:#25594c}.park-view .park-loading-orb{border-color:#70997b44;border-top-color:#2a6d55}.park-view .park-directory{background:#173c35}.park-view .park-pin{min-width:44px;min-height:44px}@media(max-width:680px){.park-view .park-stage{min-height:620px}.park-view .park-pin:hover span,.park-view .park-pin:focus-visible span{display:none}.park-view .park-pin i{width:30px;height:30px}}
/* Fully modeled living park with separate reflective water */
.park-view .park-stage,.park-view .park-explorer{background:#183548}.park-view .island-map>.eyebrow{color:#ace8cc}.park-view .sectiontitle h2{color:#fff0d8;text-shadow:0 2px 12px #102c39}.park-view .park-intro{color:#d0e9dc;text-shadow:0 1px 5px #142f3d}.park-view .sectiontitle button{background:#163c48c9;color:#c9eddb;border-color:#bddbc740}.park-view .park-compass{color:#b6dacc}.park-view .park-controls{background:#143947ec;border-color:#c2dec54d}.park-view .park-controls button{color:#e6f4da}.park-view .park-controls button:hover{background:#38645f}.park-view .park-load{background:linear-gradient(#153747fa,#264a4af5);color:#d4efcf}
@media(max-width:680px){.park-view header{height:auto;min-height:116px;max-width:100%;padding:10px 14px;gap:4px 14px}.park-view header nav{margin:0;gap:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0}.park-view header nav button{font-size:11px;padding:7px 3px;min-width:0}.park-view .brand{font-size:13px;min-width:0}.park-view .brandstar{font-size:30px}.park-view .brand small{font-size:6px}.park-view .grade{margin-left:auto;gap:5px}.park-view .park-stage{height:calc(100dvh - 116px);width:100%;min-height:600px}.park-view .park-explorer,.park-view .map-section,.park-view main{width:100%;min-width:0;max-width:100%}.park-view .park-directory{width:100%;min-width:0;overflow:hidden}}

/* Approved-art reconstruction: light paper surrounds the actual 3D island. */
.park-view .park-stage,.park-view .park-explorer{background:#f7f4ed}.park-view .island-map>.eyebrow{color:#426b60}.park-view .sectiontitle h2{color:#173f3e;text-shadow:0 2px 5px #fff}.park-view .park-intro{color:#375a54;text-shadow:0 1px 4px #fff}.park-view .sectiontitle button{background:#fffdf4e8;color:#28594f;border:1px solid #62897933}.park-view .park-controls{background:#fffdf3ec;border-color:#234e493b}.park-view .park-controls button{color:#245c4d}.park-view .park-compass{color:#27594c}.park-view .park-load{background:#f7f4edf5;color:#25594c}.park-view .park-pin{min-height:44px;min-width:44px}

/* Local learner choices: no identity, account or entitlement claim. */
header{gap:clamp(8px,2vw,24px)}#learner-switch{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;min-height:44px;padding:8px 12px;border-color:#8cf0d566}.learner-screen{max-width:980px;margin:auto}.learner-screen h1{font-size:clamp(30px,5vw,48px)}.nickname-rule{font-weight:800;color:#ffd589;font-size:20px}.learner-screen form{padding:24px;background:#18253e;border:1px solid #8b9cbb44;border-radius:22px}.learner-screen form>label{display:block;font-weight:700}.learner-screen input[type=text]{display:block;width:min(100%,480px);min-height:50px;margin:9px 0;padding:10px 14px;font:inherit;border:2px solid #81949c;border-radius:10px;background:#0f1e32;color:#fff}.learner-screen small{display:block;color:#b0bdd3}.learner-screen fieldset{border:0;padding:0;margin:24px 0}.learner-screen legend{font-weight:700;margin-bottom:12px}.avatar-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.avatar-choice{position:relative;display:grid;justify-items:center;gap:9px;padding:12px 6px;min-height:132px;border:2px solid #75889866;border-radius:15px;cursor:pointer;text-align:center;font-size:13px}.avatar-choice input{position:absolute;top:8px;left:8px;accent-color:#8cf0d5;width:18px;height:18px}.avatar-choice:has(input:checked){border-color:#8cf0d5;background:#8cf0d518}.avatar-choice:focus-within{outline:3px solid #ffd589;outline-offset:3px}.learner-avatar{display:inline-grid;place-items:center;overflow:hidden;flex-shrink:0;width:72px;height:72px;border-radius:50%;background:#234350}.learner-avatar img{width:100%;height:100%;object-fit:contain}.learner-dino{background-image:url('branding/after-dark-logo.png');background-size:400% 200%;background-position:var(--face-position) 0;background-repeat:no-repeat}.learner-shape{color:#ffd589;font-size:48px}.learner-list{display:grid;gap:14px}.learner-list article{display:flex;gap:18px;align-items:center;padding:18px;border:1px solid #81949c66;border-radius:16px}.learner-list .buttons{margin-top:8px}.legacy-progress{margin-top:28px;padding:20px;border:1px solid #ffd58966;border-radius:16px}.learner-screen #profile-error:empty{display:none}.learner-screen .buttons{gap:10px}.learner-screen button{min-height:46px}.learner-screen form button[type=reset]{font-size:13px}#save-warning{position:fixed;bottom:0;left:0;right:0;z-index:2500;margin:0;padding:10px 16px;background:#442d11;color:#fff0cb;font-size:13px}
@media(max-width:680px){header{height:auto;min-height:116px;flex-wrap:wrap;padding:10px 14px;gap:4px 10px}header .brand{font-size:13px;min-width:0}header .brandstar{font-size:30px}header .brand small{font-size:6px}header nav{order:3;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0}header nav button{min-width:0;min-height:44px;padding:7px 3px;font-size:11px}header .grade{order:1;gap:5px;margin-left:auto}#learner-switch{order:2;max-width:105px;font-size:11px;padding:7px}.learner-screen{padding:24px 14px}.learner-screen form{padding:18px 14px}.avatar-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.nickname-rule{font-size:18px}.learner-list article{align-items:flex-start;padding:14px}.learner-list .buttons{display:grid}.learner-screen .buttons>button{max-width:100%}}
