@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@600;700;800;900&display=swap');
:root{font-family:Nunito,system-ui,sans-serif;color:#173e36;background:#89b9b5}*{box-sizing:border-box}body{margin:0;overflow:hidden}canvas{position:fixed;inset:0;width:100%;height:100%;touch-action:none}header{position:fixed;inset:0 0 auto;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:12px 25px;pointer-events:none}header>a,.hud{pointer-events:auto}header img{width:190px;filter:drop-shadow(0 4px 0 #fff0cd)}.hud{display:flex;align-items:center;gap:8px}.hud span,.hud button{background:#fff4d8eF;padding:12px 16px;border:2px solid #b8904a;border-radius:19px;font-weight:900}button,a{ -webkit-tap-highlight-color:transparent}button{font:inherit;font-weight:900;cursor:pointer;color:#183e36;border:2px solid #234d43;background:#fff5dc;border-radius:16px;padding:13px 20px;box-shadow:0 5px 0 #133e3650;transition:transform .15s,filter .15s}button:hover{transform:translateY(-3px);filter:brightness(1.05)}button:active{transform:translateY(3px);box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:4px solid #e17b38;outline-offset:4px}button:disabled{opacity:.6;cursor:wait}#overlay{position:fixed;inset:105px 22px 40px;pointer-events:none;display:flex;align-items:center}.scene-copy{pointer-events:auto;max-width:500px;width:43%;background:#fff3d9f2;border:3px solid #b88c42;border-radius:32px;padding:30px;box-shadow:0 12px 0 #214f4333,0 25px 90px #214f4340;animation:arrive .45s both}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:900;color:#a9572c}h1{font-size:clamp(32px,4.5vw,65px);line-height:1.05;margin:10px 0 20px}h2{font-size:32px;line-height:1.15;margin:12px 0}p{font-size:18px;line-height:1.5}.primary{background:#e7b84f;border-color:#9f6c2b}.scene-copy .primary{width:100%;margin-top:12px}.subtle{font-size:13px;color:#57736b}.game-picker{display:flex;gap:10px;margin:18px 0}.game-picker button{flex:1;padding:12px 8px;font-size:14px}.game-picker b{font-size:28px;display:block}.game-picker button.active{background:#1b5147;color:#fff0cc}.film-button{margin-top:12px;width:100%}.in-game{align-self:flex-start;margin:0 auto;pointer-events:auto;text-align:center;background:#fff4d8ed;padding:10px 25px;border:2px solid #b08a45;border-radius:20px}.in-game h2{font-size:24px;margin:3px}.in-game p{margin:4px;font-size:15px}.timer{font-size:20px;color:#a55c2c;font-weight:900}.finish{width:min(520px,100%);max-width:520px;text-align:center;margin:auto}.energy-orb{font-size:75px;color:#d89b2d;text-shadow:0 0 25px #ffd85f;animation:spin 3s linear infinite;display:block}.question-scene{width:min(600px,50%);max-width:600px}.answer-grid{display:grid;gap:10px}.answer-grid button{text-align:left;display:flex;gap:12px;align-items:center;font-size:17px}.answer-grid b{border-radius:50%;background:#ddb05a;min-width:35px;height:35px;display:grid;place-items:center}.tokens{display:flex;gap:9px;justify-content:center;margin:12px}.tokens i{font-style:normal;color:#cfc2a2;font-size:29px}.tokens i.on{color:#c38a22;text-shadow:0 0 15px #e9b837}.teach-copy{padding:14px;background:#e3ead4;border-radius:16px;font-size:16px}.question-scene h2{font-size:25px}.ask-row{display:flex;gap:10px;margin-top:12px}.ask-row button{font-size:14px;flex:1}#controls{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);display:flex;gap:15px;z-index:4}#controls[hidden]{display:none}#controls button{min-width:90px;min-height:65px;touch-action:none;background:#fff1cce8}#ask{position:fixed;right:20px;bottom:20px;z-index:5;background:#1b5147;color:#fff4d6;display:flex;gap:12px;align-items:center;border-color:#e2b44d;padding:8px 16px 8px 8px;border-radius:40px}#ask img{width:55px;height:55px;object-fit:cover;border-radius:50%;object-position:45% 35%}#ask span{max-width:100px;line-height:1.2}#status{position:fixed;bottom:0;left:20px;font-size:12px;color:#173e36}dialog{max-width:520px;width:90%;border:3px solid #c39748;border-radius:28px;background:#fff3d7;color:#173e36;padding:26px}dialog::backdrop{background:#103f38aa;backdrop-filter:blur(7px)}#close-help{float:right}input{width:100%;padding:13px;border:2px solid #9fae92;border-radius:12px;font:inherit;margin:10px 0}#help-chat{max-height:230px;overflow:auto}.help-shortcuts{display:flex;gap:6px;margin-top:20px;flex-wrap:wrap}.help-shortcuts button{font-size:13px;padding:8px}.chat-answer{background:#deead5;border-radius:16px;padding:14px;font-size:16px}.chat-question{font-weight:900;font-size:15px}dialog video{width:100%;border-radius:14px}@keyframes arrive{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}@keyframes spin{50%{transform:rotateY(180deg)}}@media(max-width:800px){header{padding:8px 12px}header img{width:130px}.hud span,.hud button{font-size:12px;padding:9px}.hud{gap:4px}#overlay{inset:80px 12px 100px;align-items:flex-end}.scene-copy{width:100%;max-width:100%;padding:20px;max-height:70vh;overflow:auto}.question-scene{max-height:72vh}.scene-copy h1{font-size:34px}p{font-size:15px}.in-game{align-self:flex-start}.game-picker{margin:10px 0}#ask{right:8px;bottom:8px}#ask img{width:38px;height:38px}#ask span{font-size:12px;max-width:80px}#controls{bottom:12px;left:12px;transform:none;gap:8px}#controls button{min-width:55px;min-height:55px;padding:8px}#status{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

select{display:block;width:100%;font:inherit;padding:10px;margin:6px 0 14px;background:#fff9e7;border:2px solid #a6ad8b;border-radius:10px}dialog label{text-transform:capitalize;font-weight:900}

.book-dialog{max-width:700px;max-height:85vh;overflow:auto}.book-dialog textarea{width:100%;min-height:100px;font:inherit;padding:12px;border-radius:12px;border:2px solid #b29b66;margin:8px 0}.book-dialog section{border-top:2px solid #d9c795;padding:15px 0}#island-book-print{display:none}@media print{body{overflow:visible;background:white}body>*{display:none!important}body>#island-book-print{display:block!important}#island-book-print article{break-after:page;padding:20mm;color:#173e36}#island-book-print img{max-width:100%;max-height:180mm;object-fit:contain}#island-book-print h1{font-size:40pt}#island-book-print p{font-size:18pt}}

.power-win{border:5px solid #efbd3f;box-shadow:0 0 80px #ffd858aa}.power-celebration{position:fixed;inset:0;pointer-events:none;overflow:hidden}.power-celebration i{position:absolute;left:var(--x);top:-40px;font-style:normal;font-size:28px;color:#e9ad35;text-shadow:0 0 15px #fff5c8;animation:power-sparks 3.2s var(--delay) infinite ease-in;transform:rotate(var(--turn))}@keyframes power-sparks{to{top:110%;transform:rotate(calc(var(--turn) + 250deg))}}

.station-briefing video{width:100%;border-radius:17px;border:2px solid #ba9147;background:#173e36}.station-briefing h2{font-size:30px}

.arcade-briefing-video{width:100%;border-radius:14px;max-height:230px;margin-top:10px}.worksheet-download{display:inline-block;color:#215247;font-weight:800;font-size:14px}

.scene-copy{max-height:calc(100dvh - 155px);overflow:auto}.arcade-intro h1{font-size:38px}.arcade-intro p{font-size:16px;margin:10px 0}.arcade-intro .arcade-briefing-video{max-height:220px}.arcade-intro .film-button{padding:9px}@media(max-width:800px){.scene-copy{max-height:70dvh}.arcade-intro h1{font-size:30px}}

header img{animation:retro-sign 4s ease-in-out infinite;transform-origin:center}@keyframes retro-sign{0%,100%{transform:rotate(-1deg) translateY(0)}50%{transform:rotate(1deg) translateY(-3px)}}header a:hover img{filter:drop-shadow(0 0 15px #f0bf55)}

@media(max-width:650px){header img{width:105px}.hud{max-width:72%;flex-wrap:wrap;justify-content:flex-end}.hud span,.hud button{font-size:10px;padding:7px}}
progress{width:100%;height:18px;accent-color:#d59e37}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.mini-grid button{min-height:75px;font-size:33px;background:#24594e;color:#fff1cb;border:3px solid #b68c48;transition:background .15s,transform .15s}.mini-grid button.lit{background:#f5bf49;color:#173d34;box-shadow:0 0 25px #f4b93c;transform:scale(1.07)}.mini-board h2{font-size:32px}
.kart-hud{position:fixed;top:110px;left:50%;transform:translateX(-50%);background:#fff0cbdc;color:#173f35;border:3px solid #ba9147;border-radius:20px;padding:10px 22px;pointer-events:none;text-align:center;max-width:90vw;width:max-content}.kart-hud h2{font-size:22px;margin:0}.kart-hud p{font-size:15px;font-weight:800;margin:8px 0}.kart-controls{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);display:flex;gap:10px;pointer-events:auto}.kart-controls button{min-width:70px;min-height:65px;font-weight:900;touch-action:none;background:#fff0cf;color:#174638;border:3px solid #b58b42;box-shadow:0 5px 0 #85652e}.kart-controls button:active{transform:translateY(4px);box-shadow:none;background:#efbd4f}.kart-instructions{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:16px}#kart-countdown{font-size:65px;color:#c56832;text-shadow:2px 2px #fff7dc}@media(max-width:650px){.kart-hud{top:115px;padding:7px 12px}.kart-hud p{font-size:11px}.kart-controls{gap:5px;bottom:20px;width:95%;justify-content:center}.kart-controls button{min-width:0;flex:1;font-size:13px;padding:8px}}
/* Expedition hub and earned creator rewards */
.quest-map-panel{width:340px!important;max-width:31vw!important;left:22px!important;bottom:25px!important;padding:25px!important}.quest-map-panel h2{font-size:30px}.quest-map-panel>p{font-size:14px}.mission-banner{display:flex;gap:12px;background:#e7bd6140;border:1px solid #c4a15b;border-radius:16px;padding:14px;margin:18px 0}.mission-banner>span{font-size:30px;color:#b87932}.mission-banner p{font-size:13px;margin:6px 0 0}.hub-tools{display:grid;grid-template-columns:1fr;gap:6px;margin-top:14px}.hub-tools button{text-align:left;font-size:13px;padding:11px}.island-stations{position:fixed;inset:0;pointer-events:none}.station-pin{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;padding:8px 12px!important;border:2px solid #c8a25c!important;border-radius:18px;background:#fff2d5f2!important;box-shadow:0 5px 0 #b39152,0 8px 20px #163f3630;color:#173f35!important;pointer-events:auto;white-space:nowrap;font-size:12px!important;z-index:3}.station-pin b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#d5b56b;color:#183f35;font-size:15px}.station-pin small{display:block;font-size:10px;font-weight:500;margin-top:3px}.station-pin:disabled{opacity:.72}.station-pin.powered b{background:#327768;color:#fff4d1}.station-pin.next-station{outline:3px solid #fff2b1;animation:station-beacon 2s infinite}.station-pin.next-station:after{content:'YOUR NEXT STOP';position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#204d42;color:#fff2cb;padding:5px 9px;font-size:9px;border-radius:8px;letter-spacing:1px}@keyframes station-beacon{50%{box-shadow:0 0 0 8px #f6ca5d55,0 7px 0 #b39152}}
.garage-panel h2,.passport-panel h2,.round-briefing h2{font-size:30px}.garage-panel h3{font-size:16px;margin:16px 0 8px}.paint-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.paint-options button{padding:10px;font-size:12px;text-align:left}.paint-options i{display:block;width:30px;height:18px;border-radius:12px;border:1px solid #173f3540;margin-bottom:7px}.paint-options small,.track-options small{display:block;font-size:10px;font-weight:500;margin-top:5px}.paint-options [aria-pressed=true],.track-options [aria-pressed=true]{outline:3px solid #d1983b;background:#ffe2a3}.track-options{display:grid;gap:7px}.track-options button{text-align:left;font-size:13px;padding:11px}.assist-option{display:flex;align-items:flex-start;gap:10px;font-size:13px!important;line-height:1.5;margin-top:15px}.assist-option input{width:20px!important;margin:0;flex-shrink:0;accent-color:#2b6a57}.garage-panel #garage-status{font-size:12px}.passport-stamps{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.stamp{border:2px dashed #bcaa85;background:#e7e0c7;color:#6d786c;border-radius:16px;min-height:92px;display:grid;place-content:center;text-align:center;gap:5px;padding:8px}.stamp b{font-size:28px}.stamp span{font-size:11px}.stamp.earned{background:#f7d78a;border:3px double #9a742e;color:#214f42;transform:rotate(-2deg);box-shadow:0 3px 0 #c4a55a}.stamp.earned:nth-child(even){transform:rotate(2deg)}.new-stamp{display:flex;align-items:center;gap:15px;background:#f3d38b;border:3px double #a77b31;border-radius:18px;padding:16px;margin:15px 0;animation:stamp-arrive .5s ease-out}.new-stamp b{font-size:44px}.new-stamp span{font-size:14px;font-weight:800}@keyframes stamp-arrive{from{opacity:0;transform:scale(1.5) rotate(-12deg)}to{opacity:1;transform:scale(1)}}.lesson-emblem{font-size:52px;display:block;color:#b47d32}.round-briefing ul{padding-left:22px;line-height:1.8;font-size:16px}.mission-idea,.answer-takeaway{font-weight:800;color:#a6632a}.reward-confetti i{animation-iteration-count:2}.race-minimap{position:fixed;top:115px;right:20px;width:150px;height:168px;background:#173f35e6;border:3px solid #c9a15b;border-radius:20px;padding:5px;pointer-events:none;color:#fff0c9;text-align:center;font-size:11px}.race-minimap svg{width:140px;height:140px}.race-minimap b{display:block;margin-top:-6px}
@media(max-width:800px){.quest-map-panel{max-width:100%!important;width:calc(100% - 30px)!important;left:15px!important;bottom:20px!important;max-height:33dvh;padding:16px!important}.quest-map-panel h2{font-size:23px}.quest-map-panel .mission-banner{margin:8px 0;padding:9px}.quest-map-panel .hub-tools{grid-template-columns:1fr 1fr}.quest-map-panel>p,.quest-map-panel .subtle,.quest-map-panel .worksheet-download{font-size:11px}.station-pin{font-size:10px!important;padding:6px!important;max-width:130px;white-space:normal}.station-pin small{font-size:9px}.station-pin b{width:22px;flex-shrink:0}.race-minimap{top:210px;right:10px;width:95px;height:110px}.race-minimap svg{width:85px;height:85px}.race-minimap b{margin:0;font-size:9px}}
@media(prefers-reduced-motion:reduce){.station-pin.next-station,.new-stamp,.reward-confetti i{animation:none}}
.race-stars{font-size:48px;color:#c38f2f;letter-spacing:10px;text-shadow:0 3px #fff3c8}
.explore-tools{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.explore-tools button{font-size:12px;padding:8px 10px;min-height:36px}.island-stations[hidden]{display:none}.station-pin:hover{transform:translate(-50%,-50%) scale(1.06)}.quest-map-panel{background:#fff4dce8!important;backdrop-filter:blur(10px);box-shadow:0 10px 35px #143f3633!important}.quest-map-panel .mission-banner{background:#f7dc9a77}.quest-map-panel .hub-tools{gap:7px}
#orbit-hint{position:fixed;right:25%;bottom:23px;transform:translateX(35%);pointer-events:none;color:#fff5dc;background:#154c49bf;border:1px solid #e5c58680;border-radius:30px;padding:10px 17px;font-size:12px;font-weight:800;box-shadow:0 5px 20px #0d383b22;backdrop-filter:blur(8px)}#orbit-hint[hidden]{display:none}@media(max-width:800px){#orbit-hint{top:105px;bottom:auto;right:50%;transform:translateX(50%);font-size:10px;white-space:nowrap;padding:7px 11px}}
.explore-dock{position:fixed;bottom:24px;left:24px;display:flex;gap:8px;pointer-events:auto;z-index:4}.explore-dock[hidden]{display:none}.explore-dock button{font-size:13px;padding:10px 14px;background:#fff4dce8;backdrop-filter:blur(8px)}@media(max-width:800px){.explore-dock{bottom:20px;left:10px;gap:4px}.explore-dock button{font-size:10px;padding:8px}}

/* Original Northridge matching arcade */
header>a{display:flex;align-items:center;gap:18px;text-decoration:none}.island-wordmark{font-size:28px;font-weight:1000;letter-spacing:2px;color:#194b42;text-shadow:2px 2px #e8b653}.island-wordmark small{display:block;font-size:9px;letter-spacing:1.6px;text-shadow:none}.header-northridge{max-width:110px!important;max-height:55px!important}.matching-stage{pointer-events:auto;width:min(1080px,94vw);margin:100px auto 32px;padding:26px 36px;background:linear-gradient(135deg,#fff5dc,#f0dfb0);border:3px solid #ba914c;border-radius:32px;box-shadow:0 18px 70px #092c3b88,inset 0 0 0 7px #fff8e655;color:#194b42;text-align:center}.arcade-brand{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #d9bd80;padding-bottom:12px}.arcade-brand strong{font-size:24px;letter-spacing:3px;text-shadow:2px 2px #e8b653}.arcade-brand img{width:115px;height:55px;object-fit:contain}.matching-stage h1{font-size:clamp(26px,3.5vw,44px);margin:12px 0}.matching-heading p{margin:8px}.matching-progress{display:flex;justify-content:center;gap:12px;margin:16px}.matching-progress i{font-style:normal;color:#acb5a1;font-size:26px;transition:transform .3s}.matching-progress .earned{color:#c58c27;transform:scale(1.2);text-shadow:0 0 12px #ffc958}.clue-marquee{background:#194b42;color:#fff4d5;border:4px solid #c49b4e;border-radius:22px;padding:16px;margin-bottom:20px;box-shadow:0 6px #123c35}.clue-marquee h2{font-size:25px;margin:10px}.illustration-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.match-option,.arcade-selection button{border:3px solid #bc9856!important;border-radius:22px!important;background:linear-gradient(145deg,#fff9e9,#e8d29f)!important;color:#1d5148!important;box-shadow:0 7px #a8823f!important;transition:transform .2s,box-shadow .2s}.match-option:hover:not(:disabled),.arcade-selection button:hover{transform:translateY(-5px);box-shadow:0 12px #a8823f!important}.match-option svg{width:100%;max-width:125px;filter:drop-shadow(0 5px 2px #806a2d33)}.match-option span{display:block;text-transform:capitalize}.match-option.selected{outline:5px solid #dc793b}.match-option.matched{background:#d2e4bb!important;border-color:#56875a!important}.match-option:disabled{opacity:.65}.try-again{animation:match-wiggle .3s}.connection-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}.connection-columns>div{display:grid;gap:12px}.connection-tool{display:flex!important;align-items:center;gap:18px;text-align:left!important;padding:8px 16px!important}.connection-tool svg{width:54px}.connection-result{min-height:80px}.sorting-card{display:flex;justify-content:center;align-items:center;gap:20px;border:3px solid #d4b469;background:#fffbef;border-radius:24px;padding:12px}.sorting-card svg{width:90px}.sort-ports{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.sort-ports svg{width:80px}.sort-ports b,.sort-ports span{display:block}.sort-ports span{font-size:14px;margin-top:8px}#match-feedback{min-height:28px;font-weight:700;margin:23px 0 12px}.matching-actions{display:flex;justify-content:center;gap:12px}.matching-win svg{width:140px;animation:match-glow 1s infinite alternate}.arcade-selection{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:25px 0}.arcade-selection button{padding:18px;text-align:center}.arcade-selection svg{width:100px;display:block;margin:auto}.arcade-selection b,.arcade-selection span,.arcade-selection small{display:block}.arcade-selection b{font-size:21px;margin:12px 0}.arcade-selection span{font-size:15px;line-height:1.5}.arcade-selection small{margin-top:12px;color:#9a532a}.matching-stage button:focus-visible{outline:5px solid #d46e35;outline-offset:4px}@keyframes match-wiggle{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes match-glow{to{transform:scale(1.08) rotate(5deg)}}@media(max-width:650px){.header-northridge{display:none}.island-wordmark{font-size:18px}.island-wordmark small{font-size:7px}.matching-stage{padding:16px;margin-top:95px}.illustration-choices,.arcade-selection{grid-template-columns:repeat(2,1fr)}.connection-columns{gap:12px}.connection-tool{gap:6px;font-size:13px}.connection-result{font-size:13px}.sorting-card h2{font-size:21px}.sort-ports{gap:12px}.matching-actions{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.matching-stage *{animation:none!important;transition:none!important}}

.question-picture{margin:16px 0;padding:12px;border:3px solid #ba914c;border-radius:22px;background:#fff7df}.question-picture figcaption,.visual-comparison figcaption{font-size:12px;letter-spacing:1px;font-weight:800;padding:8px;color:#21574b}.picture-crop{width:100%;height:clamp(210px,28vh,340px);background-size:300% 100%;background-repeat:no-repeat;border-radius:14px}.question-picture p{font-size:14px;margin:8px 0!important}.visual-comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.visual-comparison figure{margin:0;background:#fff4d7;border:2px solid #ba914c;border-radius:18px;overflow:hidden}.visual-comparison svg{width:100%;display:block}.visual-prompt{min-height:145px;display:grid;align-content:center;text-align:center;font-size:24px;padding:12px}.visual-prompt strong{color:#b84f3d}@media(max-width:500px){.visual-comparison figcaption{font-size:10px}.visual-prompt{font-size:18px;min-height:105px}}

.start-station{border:4px solid #e7a53e!important;box-shadow:0 0 0 7px #fff0bd88,0 8px 24px #173e3577!important}.start-station b{background:#e4ae48!important;color:#173e35!important}.start-station span{font-weight:900}.start-station small{color:#a85c29!important}.splash-stations .station-pin:disabled{opacity:.8;filter:saturate(.55)}.splash-stations .station-pin{max-width:225px}.splash-stations .station-pin b{flex-shrink:0}.splash-stations .station-pin span{font-size:14px}.splash-stations .station-pin small{font-size:10px}@media(max-width:800px){.splash-stations{display:none}#enter{font-size:17px}}

#power-clock{position:fixed;z-index:18;right:28px;top:100px;width:270px;background:linear-gradient(145deg,#184e45,#103c36);border:4px solid #d3a549;border-radius:24px;padding:16px;text-align:center;color:#fff1c7;box-shadow:0 9px 24px #0d332c55;pointer-events:none}#power-clock[hidden]{display:none}#power-clock span{font-size:10px;letter-spacing:1.4px;font-weight:900;display:block}#power-clock strong{display:block;font-size:66px;line-height:1.2;font-variant-numeric:tabular-nums;color:#efc66a;text-shadow:0 0 22px #e7a83344}#power-clock small{display:block;font-size:12px}.power-low{border-color:#dd7043!important}.power-low strong{color:#ffb17e!important}.island-power-out #island{filter:brightness(.38) saturate(.5)}.power-out-screen{border:4px solid #cf9651}.power-out-screen .energy-orb{filter:grayscale(.6)}@media(max-width:800px){#power-clock{right:12px;top:90px;width:155px;padding:9px;border-width:2px}#power-clock strong{font-size:36px}#power-clock span{font-size:8px}#power-clock small{font-size:9px}}

.flight-hud{pointer-events:none;position:fixed;left:26px;top:100px;background:#174e45ed;color:#fff2cc;border:3px solid #d0a34e;border-radius:22px;padding:18px 24px;min-width:275px}.flight-hud h2{font-size:28px;margin:8px 0;color:#f4cf77}.flight-hud p{margin:8px 0}.tower-meter{display:flex;gap:12px;margin:14px 0}.tower-meter i{border:2px solid #738a6e;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-style:normal;font-weight:900;color:#829889}.tower-meter .restored{color:#173e35;background:#f1c35e;box-shadow:0 0 22px #f7bd55}.flight-hud meter{display:block;width:100%;height:17px}.flight-reticle{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:90px;height:90px;border:2px solid #fff2bf66;border-radius:50%;pointer-events:none}.flight-reticle i{position:absolute;inset:40px;border:2px solid #fff5d5;border-radius:50%}.flight-reticle.boosting{box-shadow:0 0 35px #ffe49a;border-color:#ffe49a}#flight-ready{position:fixed;left:50%;top:40%;font-size:100px;font-weight:1000;color:#ffe49a;text-shadow:0 5px #184c43}.flight-buttons{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:12px;pointer-events:auto}.flight-buttons button{min-width:70px;min-height:64px;touch-action:none;font-size:23px;border:3px solid #b48a42;background:#fff0c9;box-shadow:0 5px #9b7737}.flight-buttons button:active{transform:translateY(4px);background:#eab954}.flight-exit{position:fixed;right:24px;top:100px;pointer-events:auto}.flight-tutorial{display:grid;grid-template-columns:130px 1fr;gap:14px;background:#e3d2a6;padding:20px;border-radius:20px;margin:20px 0}.flight-tutorial b{color:#a45e31}.featured-arcade{border-color:#d07a3c!important}.cable-board{display:grid;grid-template-columns:repeat(var(--columns),1fr);gap:9px;max-width:440px;margin:10px auto 20px}.cable-board button{border:0!important;box-shadow:none!important;border-radius:18px!important;padding:0!important;background:none!important;position:relative;transition:transform .15s}.cable-board button:hover{transform:scale(1.04)}.cable-board svg{width:100%;display:block;filter:drop-shadow(0 5px 2px #173e3544)}.cable-board small{position:absolute;bottom:7px;left:0;right:0;font-size:9px;color:#fff1be;letter-spacing:1px}.cable-board button:disabled{opacity:1}.cable-hint{outline:4px solid #e48c48;outline-offset:3px}.current-flow{animation:current-flow 1.1s linear infinite}@keyframes current-flow{to{stroke-dashoffset:-32}}.grid-endpoints{max-width:440px;display:flex;justify-content:space-between;margin:20px auto 10px;color:#a55c29;font-size:12px}.grid-stage h1{font-size:34px}.grid-stage{max-width:760px}#grid-message{font-weight:800}.featured-games{grid-template-columns:repeat(3,1fr)!important}@media(max-width:650px){.flight-hud{top:90px;left:12px;min-width:210px;padding:10px}.flight-hud h2{font-size:23px}.flight-hud .eyebrow{font-size:8px}.flight-exit{top:90px;right:12px;font-size:12px}.flight-buttons{gap:6px;bottom:18px}.flight-buttons button{min-width:48px;min-height:54px;font-size:17px;padding:9px}.flight-tutorial{grid-template-columns:90px 1fr}.cable-board{max-width:360px;gap:6px}}

@media(min-width:1000px){.question-scene:has(.question-picture),.question-scene:has(.visual-comparison){width:min(900px,calc(100vw - 370px))}.question-scene .question-picture{float:right;width:42%;margin:16px 0 16px 22px}.question-scene .question-picture .picture-crop{height:290px}.question-scene:has(.question-picture) .answer-grid{overflow:hidden}.question-scene:has(.question-picture) .ask-row{clear:both}.question-scene:has(.question-picture) .teach-copy{margin-bottom:18px}.question-scene .visual-comparison{max-width:560px;margin:16px auto}}
@media(min-width:1000px){.question-scene:has(.question-picture),.question-scene:has(.visual-comparison){max-width:900px}.question-scene .question-picture .picture-crop{height:auto;aspect-ratio:1}.visual-comparison .picture-crop{height:auto;aspect-ratio:1}}

.flight-difficulty{display:block;font-weight:800;margin:18px 0}.flight-difficulty select{display:block;width:100%;margin-top:8px;border:2px solid #ba914c;border-radius:13px;background:#fff7df;padding:12px;color:#1a5145}.flight-guide{position:fixed;transform:translate(-50%,-50%);pointer-events:none;z-index:6;color:#fff0a6;font-size:12px;font-weight:1000;text-shadow:0 2px 5px #173d35;transition:left .1s,top .1s}.flight-guide[hidden]{display:none}.flight-guide span{display:block;background:#174d45cc;border:2px solid #efd07b;border-radius:20px;padding:6px 11px;transform:translateY(-45px)}#flight-flash{position:fixed;inset:0;pointer-events:none;z-index:5;opacity:0;background:radial-gradient(ellipse,transparent 30%,#ffc76266 100%)}#flight-flash.ring-flash{animation:energy-catch .55s ease-out}#flight-toast{position:fixed;top:21%;left:50%;transform:translateX(-50%);pointer-events:none;font-size:clamp(20px,3vw,38px);font-weight:1000;color:#ffe59a;text-shadow:0 3px #174c43,0 0 25px #f8be53;text-align:center}.flight-boosting:after{content:'';pointer-events:none;position:fixed;inset:0;border:22px solid #fff0aa17;box-shadow:inset 0 0 100px #f2cf7933;z-index:4}@keyframes energy-catch{0%{opacity:1}100%{opacity:0}}@media(prefers-reduced-motion:reduce){#flight-flash.ring-flash{animation:none}.flight-guide{transition:none}.flight-boosting:after{display:none}}

/* Audit: prevent long arcade boards from clipping their heading on small screens. */
.matching-stage{max-height:100%;overflow-y:auto;overscroll-behavior:contain;margin:0 auto}.pause-dialog{width:min(460px,92vw);padding:30px;background:#fff2d4;border:4px solid #bd944b;border-radius:28px;color:#174c43;text-align:center;box-shadow:0 20px 100px #143b3988}.pause-dialog::backdrop{background:#102f37aa;backdrop-filter:blur(5px)}.pause-dialog button{display:block;width:100%;margin-top:16px}.pause-dialog p{font-size:17px}.cable-board button:disabled{cursor:default}
@media(max-width:800px){header{align-items:flex-start;gap:8px}header>a{min-width:104px;max-width:116px;padding-top:10px}.hud{max-width:245px;justify-content:flex-end;flex-wrap:wrap}.island-wordmark{font-size:17px;letter-spacing:1px}.island-wordmark small{font-size:7px;line-height:1.4;letter-spacing:1px}#overlay{inset:110px 10px 96px}.matching-stage{margin:0 auto;padding:14px;align-self:stretch}.arcade-brand img{width:96px;height:45px}.arcade-brand strong{font-size:20px}.matching-stage h1,.grid-stage h1{font-size:27px}.matching-heading p{font-size:14px}.cable-board{margin:8px auto 16px}.grid-endpoints{margin-top:10px}.flight-hud{top:110px}.flight-exit{top:110px}#power-clock{top:105px;left:12px;right:12px;width:auto;display:grid;grid-template-columns:1fr 90px;align-items:center;gap:2px;text-align:left;padding:10px 15px}#power-clock strong{grid-column:2;grid-row:1/3;text-align:right;font-size:36px}#power-clock span{font-size:9px}#power-clock small{font-size:11px}body:has(#power-clock:not([hidden])) #overlay{top:195px}.question-scene{max-height:100%}}
@media(max-width:800px){body:has(.flight-buttons) #ask,body:has(.kart-controls) #ask{top:175px;bottom:auto;right:12px;width:48px;padding:5px;min-width:0;justify-content:center}body:has(.flight-buttons) #ask span,body:has(.kart-controls) #ask span{display:none}body:has(.flight-buttons) #ask img,body:has(.kart-controls) #ask img{width:32px;height:32px}}

.learning-scene .teach-copy{margin:16px 0}.learning-scene>button:not(.primary){margin-top:12px}.learning-scene h2{font-size:29px}.learning-scene .visual-comparison{max-width:500px}@media(max-width:800px){.question-scene:not(.learning-scene) .question-picture .picture-crop{height:150px;aspect-ratio:auto}.question-scene:not(.learning-scene) .question-picture{padding:8px;margin:9px 0}.question-scene:not(.learning-scene) .question-picture p{display:none}.question-scene:not(.learning-scene) h2{font-size:23px}.question-scene:not(.learning-scene) .answer-grid button{font-size:15px;padding:10px;min-height:55px}.learning-scene .question-picture .picture-crop{height:185px}.learning-scene .teach-copy{padding:12px}.learning-scene .teach-copy p{font-size:15px}}
@media(max-width:800px){.question-scene .question-picture .picture-crop{width:min(100%,185px);height:auto!important;aspect-ratio:1!important;margin:auto}.question-scene:not(.learning-scene) .tokens{margin:5px 0}.question-scene:not(.learning-scene) .tokens i{font-size:20px}}

/* The same Blender studio lighting, original character and materials across activities. */
.game-art{display:block;width:100%;max-width:150px;aspect-ratio:1;object-fit:contain;margin:auto;filter:drop-shadow(0 7px 5px #7b602b22)}.arcade-selection .game-art{max-width:150px}.match-option .game-art{max-width:150px;transition:transform .22s}.match-option:hover:not(:disabled) .game-art{transform:translateY(-4px) rotate(-3deg)}.connection-tool .game-art{width:65px;margin:0}.sort-ports .game-art{width:100px}.sorting-card .game-art{width:100px;margin:0}.matching-win .game-art{width:160px;animation:match-glow 1s infinite alternate}.comparison-art{display:block;width:100%;aspect-ratio:1;object-fit:contain;max-height:260px;padding:6px;background:radial-gradient(ellipse at 50% 65%,#f6e4b8,#fff7df)}.passport-stamps .stamp b{display:block}.passport-stamps .game-art{width:76px;height:76px}.passport-stamps .stamp:not(.earned) .game-art{filter:grayscale(1);opacity:.3}.picture-pair-controls{position:fixed;bottom:20px;left:22px;display:grid;grid-template-columns:repeat(4,70px);gap:8px;pointer-events:auto}.picture-pair-controls button{padding:5px;min-height:65px;border:2px solid #b28b48;background:#fff2d2;display:grid;place-items:center;font-size:21px}.picture-pair-controls .game-art{width:43px;height:43px}.picture-pair-controls small{font-size:9px;line-height:1.15}.picture-pair-controls button:disabled{opacity:.8;cursor:default}.in-game #pairs-exit{padding:7px 12px;font-size:12px;margin-top:5px}@media(max-width:800px){.game-art{max-width:125px}.arcade-selection .game-art{max-width:120px}.comparison-art{max-height:185px}.picture-pair-controls{left:12px;bottom:14px;grid-template-columns:repeat(4,54px);gap:5px}.picture-pair-controls button{min-height:55px}.picture-pair-controls .game-art{width:33px;height:33px}.picture-pair-controls small{font-size:8px}body:has(.picture-pair-controls) #ask{right:10px;top:150px;bottom:auto;width:48px;padding:5px}body:has(.picture-pair-controls) #ask span{display:none}}

.energy-orb:has(.game-art){animation:none;min-height:145px}.energy-orb .game-art{width:145px;height:145px;animation:reward-bob 2.8s ease-in-out infinite}.mini-grid .game-art{width:85px;height:85px}.mini-grid button.lit .game-art{filter:drop-shadow(0 0 12px #fff0a0);transform:scale(1.08)}.mini-grid button{background:linear-gradient(145deg,#fff6d8,#cfb675);border-color:#a9803b}.mini-grid .spark-port{display:block;color:#b39959;font-size:38px;text-shadow:0 2px #fff8d8}@keyframes reward-bob{50%{transform:translateY(-6px)}}
header>a{background:#fff2d7ef;border:1px solid #c49c55;border-radius:18px;padding:8px 12px}#pair-count{display:block;margin:8px 0}.in-game #pairs-exit{display:block;margin:8px auto 0}.picture-pair-controls[aria-busy="true"] button:not([aria-pressed="true"]){opacity:.55}@media(max-width:800px){header>a{padding:6px}}
@media(max-width:800px){body:has(.picture-pair-controls) #ask{top:auto;bottom:20px;right:12px}}

/* Keep every station label inside its bubble, including the start marker */
.station-pin{white-space:normal!important;width:max-content;max-width:225px;min-width:0}
.station-pin>span{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
.station-pin>b{flex:0 0 26px}.station-pin small{white-space:normal;overflow-wrap:anywhere;line-height:1.3}
.station-pin.next-station:after{white-space:nowrap}
.launch-panel{max-height:calc(100dvh - 135px);overflow:auto;padding:22px 28px}
.launch-panel-brand{display:flex;align-items:center;justify-content:space-between;gap:16px}.launch-panel-brand>img:first-child{width:200px;max-width:65%;height:85px;object-fit:contain}.launch-panel-brand>.game-art{width:78px;height:78px;margin:0}
.launch-panel h1{font-size:clamp(32px,3.5vw,50px);margin:8px 0 14px}.launch-panel>p{font-size:16px;margin:10px 0}.launch-panel>button{display:flex;gap:12px;align-items:center;text-align:left;min-height:58px;padding:7px 15px;margin-top:8px}.launch-panel>button .game-art{width:45px;height:45px;margin:0;flex:0 0 45px}.launch-panel .featured-games{margin:12px 0}.launch-panel .featured-games .game-art{width:64px;height:64px}.launch-panel .featured-games button{padding:4px 5px 10px}.launch-panel .featured-games span{display:block;font-size:12px}
.launch-splash{max-width:920px;width:calc(100% - 28px);max-height:94dvh;overflow:auto;padding:30px;text-align:center;box-shadow:0 0 100px #e7ba5c55;background:radial-gradient(ellipse at center,#fff9e8,#eee0b8)}
.launch-splash::backdrop{background:#123f38f2;backdrop-filter:blur(12px)}.launch-logo-stage{position:relative;min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.launch-logo-stage[hidden],.launch-video-stage[hidden]{display:none}.animated-club-logo{width:min(560px,80%);filter:drop-shadow(0 12px 0 #b8964a44);animation:club-arrival 1s cubic-bezier(.2,.8,.3,1) both,club-float 3s 1s ease-in-out infinite}.launch-star{position:absolute;color:#d68d30;font-size:65px;animation:club-spark 2.5s infinite}.star-one{left:4%;top:17%}.star-two{right:5%;top:49%;animation-delay:.7s}.launch-logo-stage p{font-size:24px;font-weight:900;margin:0}.launch-video-stage h1{font-size:32px}.launch-video-stage video{width:100%;max-height:55dvh;background:#173e36;object-fit:contain;border:3px solid #c79a4f;border-radius:20px}.launch-video-stage>button{margin:10px auto;display:block}.launch-video-stage>button[hidden]{display:none}.launch-skip{margin-top:18px;border:0;box-shadow:none;background:transparent;font-size:13px}.ready-to-play{box-shadow:0 0 0 5px #ecc65b66}.launch-video-stage p{font-size:15px}
@keyframes club-arrival{from{opacity:0;transform:scale(.6) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes club-float{50%{transform:translateY(-9px) rotate(1deg)}}@keyframes club-spark{50%{transform:scale(.6) rotate(70deg);opacity:.4}}
@media(max-width:800px){.launch-panel{max-height:72dvh;padding:18px}.launch-panel-brand>img:first-child{height:65px;width:170px}.launch-panel-brand>.game-art{width:60px;height:60px}.launch-panel h1{font-size:34px}.launch-panel>button{font-size:14px}.station-pin{max-width:150px}.station-pin>b{flex-basis:22px}.launch-splash{padding:18px}.launch-logo-stage{min-height:330px}.launch-video-stage h1{font-size:26px}.launch-video-stage video{max-height:45dvh}.launch-star{font-size:40px}}
@media(prefers-reduced-motion:reduce){.animated-club-logo,.launch-star{animation:none!important}}
/* Feedback-led learning and a readable phone station path */
.picture-workshop,.learning-report{max-width:760px;max-height:90dvh;overflow:auto}.picture-workshop img{width:100%;border-radius:18px}.picture-workshop details img{max-height:280px;object-fit:contain}.picture-checks{background:#e4ead7;padding:16px;border:2px solid #b69a5b;border-radius:18px}.picture-checks label{display:block;text-transform:none}.learning-report article>img{width:190px}.learning-report h1{font-size:35px}.learning-report li{border-top:1px solid #c5b47f;padding:12px 0}.learning-report li p{font-size:15px}.practice-scene>.game-art{height:90px;width:90px}.practice-scene h3{font-size:20px}.practice-scene button{margin-top:8px}.video-sound-on{display:block;margin:8px auto;background:#e7b84f}.passport-stamps .stamp small{display:block;font-size:11px;line-height:1.4;margin:5px 0}.passport-stamps .stamp{min-width:0}.recommended-game{padding:16px;background:#e2e9cd;border:2px solid #b9a062;border-radius:18px;text-align:left}.recommended-game p{font-size:14px;margin:6px 0}.recommended-game button{font-size:14px;padding:8px 14px}.token-flight{position:fixed;z-index:9;font-size:45px;color:#efbd4c;pointer-events:none;left:50%;top:50%;text-shadow:0 0 25px #fff2ad;animation:token-to-counter 1.1s ease-in forwards}@keyframes token-to-counter{to{left:78%;top:25px;transform:scale(.2);opacity:0}}
@media(max-width:700px){#overlay:has(.quest-map-panel){display:flex;flex-direction:column;align-items:stretch;overflow-y:auto;gap:18px;inset:100px 12px 85px;padding-bottom:20px;pointer-events:auto}.quest-map-panel{position:relative!important;left:auto!important;bottom:auto!important;max-height:none!important;max-width:100%!important;width:100%!important;flex:none}.quest-map-panel>h2,.quest-map-panel>.mission-banner,.quest-map-panel>.subtle,.quest-map-panel>.worksheet-download,.quest-map-panel>.explore-tools{display:none}.quest-map-panel>p{margin:8px 0}.quest-map-panel .hub-tools{grid-template-columns:1fr 1fr}.island-stations:not(.splash-stations){position:relative;inset:auto;display:flex;flex-direction:column;gap:18px;padding:20px 16px;border:3px solid #ba914c;border-radius:26px;background:linear-gradient(130deg,#f9edcb,#e0e8cd);pointer-events:auto;flex:none}.island-stations:not(.splash-stations):before{content:'YOUR ISLAND PATH · FOLLOW STATIONS 1–6';display:block;font-size:11px;font-weight:900;letter-spacing:1px;text-align:center}.island-stations:not(.splash-stations) .station-pin{position:relative!important;left:auto!important;top:auto!important;transform:none!important;visibility:visible!important;width:94%;max-width:none!important;min-height:68px;margin:0;white-space:normal;font-size:15px!important;gap:15px;text-align:left;padding:13px!important}.island-stations:not(.splash-stations) .station-pin:nth-child(even){align-self:flex-end}.island-stations:not(.splash-stations) .station-pin b{flex:0 0 34px;width:34px;height:34px}.island-stations:not(.splash-stations) .station-pin small{font-size:11px}.island-stations .station-pin.next-station:after{content:'NEXT';left:auto;right:10px;top:-12px;bottom:auto;transform:none;font-size:9px}.island-stations .station-pin:disabled{opacity:.8;cursor:default}.passport-panel{max-height:72dvh}.passport-stamps{grid-template-columns:repeat(2,minmax(0,1fr))!important}.picture-workshop,.learning-report{padding:18px}.learning-report h1{font-size:27px}}
@media print{body.printing-report{overflow:visible!important;background:white!important}body.printing-report>*{display:none!important}body.printing-report>.learning-report{display:block!important;position:static!important;max-width:none!important;width:100%!important;max-height:none!important;overflow:visible!important;border:0!important;background:white!important;padding:10mm!important}body.printing-report .learning-report>button{display:none!important}body.printing-report .learning-report li{break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.token-flight{animation:none;display:none}}
.silent-reaction{width:180px;max-height:130px;object-fit:cover;border:3px solid #c69a4f;border-radius:24px;display:block;margin:0 auto 12px;background:#fff0d2}
@media(max-width:700px){body:has(.quest-map-panel){background:#bfd3bd}body:has(.quest-map-panel) #island,body:has(.quest-map-panel) #orbit-hint{visibility:hidden}}
#world-loading{position:fixed;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;background:radial-gradient(ellipse,#f9efcf,#bad4cb);pointer-events:none}#world-loading img{width:min(360px,60vw);animation:club-float 3s infinite}#world-loading p{font-weight:900;color:#1d5148}.world-loading #island{opacity:0}@media(max-width:700px){body:has(.launch-panel) #island{visibility:hidden}}
#world-loading[hidden]{display:none}
.adaptive-label{font-weight:800;color:#194d43;font-size:1.05rem}.adaptive-clue{background:#fff5d5;border:2px solid #c9a250;border-radius:20px;padding:1rem;margin:1rem 0}.adaptive-clue p{margin:.4rem 0}.station-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.map-tools summary{font-weight:800;padding:14px;cursor:pointer}.subtle{color:#405e55;font-size:max(.95rem,15px)}.answer-grid [hidden]{display:none!important}button:active{transform:translateY(2px) scale(.98)}
.quality-setting{font-size:13px;font-weight:800;display:flex;gap:5px;align-items:center}.quality-setting select{font:inherit;padding:7px;border:1px solid #c9b785;border-radius:12px;background:#fff5df;color:#194d43}body[data-quality="flat"]:has(.quest-map-panel) #island{visibility:hidden}body[data-quality="flat"] .island-stations{position:relative!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;inset:auto!important;margin:20px;max-width:1000px;pointer-events:auto}body[data-quality="flat"] .station-pin{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important}body[data-quality="flat"] #overlay:has(.quest-map-panel){display:block;overflow:auto;background:linear-gradient(#b5d4cc,#f4e7c1)}body[data-quality="flat"] .quest-map-panel{position:relative!important;width:min(90%,720px)!important;margin:20px auto;max-height:none!important}body[data-quality="flat"] #orbit-hint{display:none!important}@media(max-width:700px){.quality-setting{font-size:0}.quality-setting select{font-size:12px;max-width:75px}}
.tap-picture{position:relative}.book-hotspot{position:absolute;left:32%;width:36%;height:7%;min-height:0;padding:0;border:2px dashed #fff5ca;background:transparent;box-shadow:none;border-radius:6px}.book-hotspot:focus-visible,.book-hotspot:hover{background:#ffeab64d;outline:3px solid #efaa42}.book-one{top:58%}.book-two{top:67%}.book-three{top:76%}.saved-picture-library img{max-height:280px;object-fit:contain}.quality-setting{color:#16443e}.adaptive-clue{position:relative;z-index:1}
.tap-picture{aspect-ratio:900/620}.tap-picture>img.picture-crop{position:absolute;inset:0;width:100%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important;object-fit:fill!important}.question-scene{max-height:calc(100dvh - 150px);overflow:auto}.teach-copy,.adaptive-clue{overflow:hidden}
/* Full-screen cinema: controls are part of the game, not an embedded player card. */
.launch-splash{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:#092e2d;box-shadow:none;color:#fff4d9}.launch-splash::backdrop{background:#092e2d}.launch-video-stage{position:absolute;inset:0;text-align:left;background:radial-gradient(ellipse at 65% 40%,#28695d,#092e2d)}.launch-video-stage video{position:absolute;inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0;object-fit:contain;background:#0c302c}.launch-video-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#092f2dda 0%,transparent 45%),linear-gradient(0deg,#062c2df5,transparent 30%,transparent 78%,#082c2d80)}.cinema-brand{position:absolute;z-index:2;top:32px;left:44px;display:flex;align-items:center;gap:22px;font-weight:900;letter-spacing:3px}.cinema-brand img{width:175px;filter:drop-shadow(0 4px 12px #0004)}.cinema-brand span{border-left:1px solid #f4d78e66;padding-left:22px;font-size:20px}.cinema-brand small{font-size:9px;letter-spacing:2px}.cinema-heading{position:absolute;z-index:2;top:28%;left:6%;max-width:470px;pointer-events:none}.cinema-heading .eyebrow{color:#f5c878}.cinema-heading h1{font-size:clamp(32px,4.6vw,68px);line-height:1.07;letter-spacing:-2px;text-shadow:0 3px 20px #052c2d80}.cinema-mission{position:absolute;z-index:2;bottom:145px;left:6%;display:flex;gap:26px;font-size:14px;color:#e8bd73}.cinema-mission span{display:flex;gap:9px;align-items:center}.cinema-mission b{font-size:14px;color:#fff2d4}.cinema-bottom{position:absolute;z-index:3;inset:auto 5% 48px;display:flex;align-items:center;gap:12px}.cinema-bottom button{border:1px solid #eddbac55;background:#123e3d99;color:#fff4da;box-shadow:none;font-size:13px;border-radius:100px;padding:13px 20px;backdrop-filter:blur(15px)}.cinema-bottom #launch-enter{width:auto;margin:0 0 0 auto;background:linear-gradient(135deg,#ffe5a2,#e4ad49);color:#123c35;border:1px solid #fff0bd;padding:19px 32px;font-size:18px;box-shadow:0 5px 24px #d5a34833}.cinema-bottom #launch-enter span{padding-left:24px}.cinema-progress{position:absolute;z-index:3;bottom:0;left:0;right:0;height:4px;background:#ffffff16}.cinema-progress i{display:block;height:100%;width:0;background:#edc46f;transition:width .2s linear}.launch-video-stage>#launch-play{position:absolute;z-index:4;right:5%;top:30px;border-radius:100px;font-size:13px;background:#123e3dbb;color:#fff3d9;border:1px solid #ffe8ad77;box-shadow:none;backdrop-filter:blur(12px)}.launch-splash .launch-skip{position:absolute;z-index:5;right:5%;bottom:108px;color:#f1e3bf;font-size:12px;padding:6px}.launch-logo-stage{position:absolute;inset:0;min-height:0;background:radial-gradient(ellipse at 50% 40%,#39796a,#082e2d 75%)}.launch-logo-stage .animated-club-logo{filter:drop-shadow(0 15px 35px #0005);width:min(600px,70vw)}.launch-logo-stage p{font-size:18px;letter-spacing:4px;text-transform:uppercase}.launch-logo-stage .primary{border-radius:100px;padding:16px 28px;border:1px solid #ffeab7;background:#ebbd62}.launch-star{color:#f5d48a88}.cinema-finished .cinema-heading{animation:arrive .7s both}.launch-splash video::cue{background:#052c2dcc;color:#fff5db;font-family:Nunito,sans-serif;font-size:20px}@media(max-width:800px){.cinema-brand{left:20px;top:20px;gap:12px}.cinema-brand img{width:115px}.cinema-brand span{font-size:15px;padding-left:12px}.cinema-brand small{font-size:7px;letter-spacing:1px}.cinema-heading{top:16%;left:6%;max-width:80%}.cinema-heading h1{font-size:36px;letter-spacing:-1px}.cinema-heading .eyebrow{font-size:9px}.launch-video-stage video{object-fit:contain}.cinema-mission{bottom:190px;flex-direction:column;gap:7px}.cinema-bottom{bottom:34px;flex-wrap:wrap;gap:8px}.cinema-bottom #launch-enter{order:-1;width:100%;margin-bottom:8px;padding:16px}.cinema-bottom button{font-size:11px;padding:10px 16px}.launch-splash .launch-skip{bottom:148px}.launch-video-stage>#launch-play{top:90px;font-size:10px;padding:10px}.launch-splash video::cue{font-size:15px}}
@media(min-width:801px){.cinema-heading{left:auto;right:6%;max-width:620px}.launch-video-stage:after{background:linear-gradient(270deg,#092f2dd9 0%,transparent 50%),linear-gradient(0deg,#062c2df5,transparent 30%,transparent 82%,#082c2d80)}}
.launch-logo-stage{align-items:flex-start;padding:6%;background:linear-gradient(90deg,#082d2fe8 0%,#082d2f80 40%,transparent 78%),url('/assets/coastal-rally-keyart.webp') center/cover no-repeat}.launch-logo-stage .animated-club-logo{width:min(450px,42vw);margin-bottom:8px}.launch-logo-stage p{font-size:clamp(20px,3vw,42px);font-weight:900;letter-spacing:1px;text-shadow:0 3px 25px #052d2e;max-width:500px}.launch-logo-stage .primary{margin-top:12px;min-width:230px;box-shadow:0 8px 25px #031b1c60}.launch-logo-stage .launch-star{display:none}@media(max-width:800px){.launch-logo-stage{align-items:center;justify-content:flex-end;padding:0 20px 100px;background:linear-gradient(0deg,#082d2ff5 0%,#082d2f66 45%,transparent 90%),url('/assets/coastal-rally-keyart.webp') 64% center/cover no-repeat}.launch-logo-stage .animated-club-logo{width:250px;max-width:70vw}.launch-logo-stage p{font-size:22px}.cinema-heading{top:18%;left:auto;right:7%;text-align:right;max-width:60%;pointer-events:none}.cinema-heading h1{font-size:25px}.cinema-heading .eyebrow{font-size:8px;letter-spacing:1px}}
body:has(.kart-controls) header>a{opacity:.9}body:has(.kart-controls) #energy,body:has(.kart-controls) .quality-setting,body:has(.kart-controls) #account,body:has(.kart-controls) #fullscreen{display:none}.kart-hud{top:25px;max-width:55vw;padding:0;border:0;background:transparent;color:#fff7de;text-shadow:0 2px 5px #092f2d99;box-shadow:none}.kart-hud h2{font-size:12px;letter-spacing:3px;text-transform:uppercase}.kart-hud #kart-live{display:flex;gap:10px;margin-top:10px}.kart-hud #kart-live>span{display:flex;flex-direction:column;min-width:88px;padding:8px 16px;border-radius:15px;border:1px solid #f1d79488;background:linear-gradient(135deg,#123c3cee,#215c55cc);box-shadow:0 4px 14px #001b1a33;backdrop-filter:blur(12px)}.kart-hud small{font-size:9px;letter-spacing:2px;color:#eccc89}.kart-hud b{font-size:28px;line-height:1.2}.kart-hud em{font-style:normal;font-size:14px;opacity:.6}#kart-countdown{position:fixed;top:35vh;left:50%;transform:translateX(-50%);font-size:130px;color:#ffe5a2;text-shadow:0 6px 0 #ae6b24,0 10px 30px #001c1b77}.kart-controls{left:24px;right:24px;bottom:24px;transform:none;justify-content:flex-start;gap:10px}.kart-controls button{border:1px solid #f3dfad99;background:#123e3dc9;color:#fff1d0;border-radius:100px;box-shadow:0 6px 18px #001b1b33;backdrop-filter:blur(12px);min-width:64px;min-height:64px}.kart-controls [data-kart="brake"]{margin-left:auto}.kart-controls [data-kart="boost"]{background:linear-gradient(135deg,#ffe7ac,#dcab4c);color:#153c35;min-width:120px}.race-minimap{border:1px solid #f3d79366!important;background:#123d3bb0!important;box-shadow:0 5px 20px #001c1c33}.kart-controls~#ask{opacity:.8}@media(max-width:800px){.kart-hud{top:78px;max-width:95vw;width:auto}.kart-hud h2{display:none}.kart-hud #kart-live{gap:5px}.kart-hud #kart-live>span{min-width:60px;padding:6px 10px}.kart-hud b{font-size:21px}.kart-hud small{font-size:7px}.kart-controls{width:auto;left:12px;right:12px;bottom:16px;gap:6px}.kart-controls button{min-height:54px;min-width:45px;flex:none;font-size:12px;padding:8px 13px}.kart-controls [data-kart="boost"]{min-width:85px}.kart-controls [data-kart="brake"]{margin-left:auto}}
.cinema-subtitles{position:absolute;z-index:4;bottom:118px;left:17%;right:17%;margin:0;text-align:center;pointer-events:none;font-size:clamp(17px,1.4vw,24px)!important;font-weight:700;color:#fff8e7;text-shadow:0 2px 6px #001d20;background:#072c2dcc;border-radius:12px;padding:9px 18px;box-shadow:0 4px 18px #001b1c30}.cinema-subtitles:empty{display:none}.cinema-mission{bottom:190px}@media(max-width:800px){.cinema-subtitles{left:6%;right:6%;bottom:174px;font-size:16px!important;padding:10px}.cinema-mission{bottom:240px}}

/* Keep the desktop world visible; only deliberate 2D/phone paths hide it. */
@media(min-width:701px){body:not([data-quality="flat"]) #island{visibility:visible!important}body[data-screen="map"]:not([data-quality="flat"]) #overlay{background:transparent}.quality-setting select{min-width:108px;max-width:none}}
#world-loading[hidden]{display:none!important}
.quality-setting select{width:108px;flex-shrink:0}

/* A game command deck, with illustrated destinations rather than a form menu. */
.quest-map-panel{background:linear-gradient(145deg,#103f46ed,#102e38e0)!important;color:#fff6db;border:1px solid #e4c67988!important;border-radius:12px 30px 12px 30px!important;box-shadow:0 18px 45px #001c2b66!important;padding:22px!important;max-height:calc(100dvh - 150px);overflow:auto}
.quest-map-panel>.eyebrow{font-size:10px;color:#efd08e;letter-spacing:.17em;margin:0 0 12px}.island-game-title{font-size:clamp(40px,4vw,65px);font-weight:1000;letter-spacing:-.05em;line-height:.95;transform:skew(-5deg);color:#fff1b7;text-shadow:1px 1px #996528,2px 2px #996528,3px 3px #996528,4px 4px #996528,5px 6px #092e35,0 4px 18px #001b2b80}.island-game-title span{color:#f5b353}.map-mission-title{font-size:11px!important;font-weight:900;letter-spacing:.2em;color:#eac676;margin:18px 0 8px}.quest-map-panel .mission-banner{background:transparent;border:0;padding:0;margin:8px 0 12px}.quest-map-panel .mission-banner>span{display:none}.quest-map-panel .mission-banner p{display:none}.quest-map-panel .mission-banner b{font-size:17px}.quest-map-panel>.primary{border-radius:7px;transform:skew(-3deg);background:linear-gradient(#ffe2a1,#e6af46);border:1px solid #ffe6b1;box-shadow:0 4px 0 #936322;color:#173d3c;margin:5px 0 12px}.quest-map-panel>p:not(.eyebrow):not(.map-mission-title){font-size:12px;color:#d8e8df}.quest-map-panel progress{height:8px}.quest-map-panel .hub-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px}.quest-map-panel .hub-tools button{position:relative;min-height:88px;padding:8px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#346c6b,#184b53);color:#fff8dd;border:1px solid #c7dcd477;border-radius:8px;box-shadow:0 4px 0 #092e36;font-size:12px}.quest-map-panel .hub-tools .game-art{width:50px;height:45px;object-fit:contain;margin:0;filter:drop-shadow(0 3px 3px #001c2b80)}.quest-map-panel .map-tools summary{font-size:12px;color:#fff0c9}.quest-map-panel .worksheet-download{font-size:11px;color:#d9eadd}.quest-map-panel .explore-tools button{font-size:11px}.book-picture-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.book-picture-picker button{padding:5px;font-size:11px;box-shadow:none}.book-picture-picker img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.book-picture-picker [aria-pressed="true"]{outline:3px solid #d68f25;background:#ffe1a1}.book-picture-picker span{display:block}.printed-prompt{font-size:12px}
@media(max-width:700px){.quest-map-panel{max-height:none}.island-game-title{font-size:48px}.quality-setting select{width:95px;max-width:95px}}

#thinking-lab-host{pointer-events:auto;width:min(100%,850px);margin:auto;max-height:calc(100dvh - 190px);overflow:auto;background:linear-gradient(145deg,#fff6dd,#e8e5cc);border:2px solid #d2ac5e;border-radius:24px;padding:28px;box-shadow:0 18px 60px #052e4280}.thinking-lab h2{font-size:35px}.thinking-lab .lab-goal{font-size:16px}.thinking-lab>.game-art{width:100px;float:right}.lab-compare{display:flex;gap:16px;justify-content:center;align-items:center}.lab-compare figure{flex:1;margin:8px;text-align:center;background:#fff9e8;border-radius:16px;padding:14px}.lab-compare img{width:80px;height:100px;object-fit:contain}.lab-compare figcaption{font-size:11px;font-weight:900;letter-spacing:1px}.lab-compare p{font-size:15px}.lab-options{display:flex;gap:10px;flex-wrap:wrap}.lab-options button{flex:1}.training-example{text-align:center}.training-example img{height:180px;max-width:100%;object-fit:contain}.thinking-lab #lab-feedback{padding:12px;background:#dce8d2;border-radius:12px;min-height:45px;font-size:17px}.thinking-lab button{margin:5px 3px}.ai-claim{border-left:5px solid #cf8a3c;padding:8px 18px;background:#fff2c9}.ai-claim p{margin:4px}.thinking-lab .question-picture{max-width:460px;margin:auto}.thinking-lab [hidden]{display:none!important}@media(max-width:700px){#thinking-lab-host{padding:16px;max-height:calc(100dvh - 180px)}.lab-compare{gap:4px}.lab-compare figure{padding:6px;margin:2px}.thinking-lab h2{font-size:28px}.lab-options{flex-direction:column}}
/* Thinking challenges use the same in-world instrument styling as the command deck. */
#thinking-lab-host{background:linear-gradient(130deg,#103a48f5,#154f53f2);color:#fff5db;border:1px solid #f0cf82aa;border-radius:14px 35px 14px 35px;box-shadow:0 24px 80px #001a2e99;padding:30px;backdrop-filter:blur(14px)}.thinking-lab .eyebrow{color:#efbe63}.thinking-lab h2{font-size:42px;letter-spacing:-1px;color:#ffe3a3;text-shadow:0 3px #071d2a}.thinking-lab .lab-goal{color:#d3e9e4;font-size:15px}.training-example{background:radial-gradient(ellipse,#5eaca56b,transparent 65%);padding:20px}.training-example img{height:230px;filter:drop-shadow(0 12px 14px #001b2f88)}.thinking-lab button{border-radius:9px;background:linear-gradient(#fff0bd,#e4bc67);border:1px solid #ffe8a6;color:#163e45;box-shadow:0 4px #80622f;font-weight:900}.thinking-lab #lab-feedback{background:#062c3899;border:1px solid #65a8a466;color:#fff6da}.thinking-lab .lab-compare figure{background:#0a2f3dbb;color:#fff2cf;border:1px solid #63a69b66}.thinking-lab .lab-compare img{height:130px;width:100px}.thinking-lab .ai-claim{background:#674b2580}.thinking-lab .question-picture{background:#fff3d8;color:#153b3b;border-radius:14px;padding:10px}.thinking-lab input{background:#fff8e7}.thinking-lab #lab-back{background:transparent;color:#e1eee5;border-color:#8ab8ae;box-shadow:none;font-size:13px}.thinking-lab label{display:block;margin:15px 0;font-weight:800}@media(max-width:700px){.thinking-lab h2{font-size:30px}.training-example img{height:170px}#thinking-lab-host{padding:18px}}
#creator-license-host{pointer-events:auto;width:min(890px,100%);margin:auto;max-height:calc(100dvh - 170px);overflow:auto;background:linear-gradient(135deg,#123c4cf5,#16565af2);color:#fff3d4;border:1px solid #e9c378;border-radius:16px 38px 16px 38px;padding:28px;box-shadow:0 25px 70px #001c2b99;backdrop-filter:blur(12px)}.license-stage h2{font-size:31px;color:#ffe1a4;line-height:1.15}.license-stage .eyebrow{color:#efbe63}.license-stage button{border-radius:10px}.license-stage>.primary{background:linear-gradient(#ffe4a2,#dba84b);margin:16px 5px}.license-stage .subtle{color:#cce4dc}.license-stage textarea{width:100%;min-height:95px;padding:16px;font:inherit;border:2px solid #c6a158;border-radius:12px;color:#173e36;background:#fff8e8}.license-progress{display:flex;gap:20px;align-items:center}.license-progress progress{flex:1}.license-type{text-transform:uppercase;font-size:11px;letter-spacing:2px;color:#d4eddf;font-weight:900}.license-choices{display:grid;gap:10px;margin:20px 0}.license-choices button{background:#fff5d9;text-align:left;display:flex;align-items:center;gap:16px}.license-choices [aria-pressed="true"]{outline:4px solid #ffc453;background:#ffe3a4}.compare-choices{grid-template-columns:1fr 1fr}.compare-choices button{flex-direction:column;text-align:center}.license-choices img,.license-hero-art{height:150px;object-fit:contain}.license-hero-art{display:block;margin:15px auto}.license-art-pair{display:flex;justify-content:center}.license-art-pair img{height:130px}.license-sort{display:grid;gap:12px}.license-sort label{display:flex;align-items:center;gap:15px;padding:12px;background:#092f3e88;border:1px solid #6b999466;border-radius:12px}.license-sort span{flex:1}.license-sort img{width:65px;height:65px;object-fit:contain}.license-sort select{max-width:200px;background:#fff4d6;color:#173e36;font:inherit;padding:10px;border-radius:8px}.license-stage .question-picture{max-width:430px;margin:14px auto;background:#fff5db;color:#153e3b;padding:8px;border-radius:12px}.license-feedback .silent-reaction{height:170px;max-width:260px;object-fit:cover;border-radius:18px;display:block;margin:auto}.license-feedback p{font-size:19px}.license-summary{text-align:center}.license-summary>img{height:120px}.license-score{font-size:75px!important;font-weight:1000;color:#ffdc83;margin:12px}.license-score small{font-size:28px}.license-summary ul{text-align:left;font-size:16px;line-height:1.8}.license-evidence{border:1px solid #8ab6a8;margin:20px 0;padding:15px;border-radius:10px}.license-evidence label{display:block;margin:12px 0}.license-evidence input{width:auto}.license-home>.game-art{height:100px;float:right}.license-home .subtle{font-size:14px}
@media(max-width:700px){#creator-license-host{padding:18px;max-height:calc(100dvh - 175px)}.license-stage h2{font-size:25px}.license-sort label{flex-wrap:wrap}.license-sort select{width:100%;max-width:none}.compare-choices{grid-template-columns:1fr 1fr}.license-choices button{padding:10px;font-size:14px}.license-sort span{font-size:15px}.license-choices img{height:90px}}
/* One title language across the island, trials, and completed-license celebrations. */
.island-game-title{font-family:Impact,'Arial Black',sans-serif;font-size:68px;letter-spacing:.015em;line-height:.88;text-transform:uppercase;color:#fff5d5;text-shadow:1px 1px #ce9d47,2px 2px #ce9d47,3px 3px #ce9d47,4px 4px #967034,5px 6px #062a3b,0 8px 25px #001c2b80}.quest-map-panel>.eyebrow{display:none}.quest-map-panel .hub-tools button:hover{background:linear-gradient(135deg,#4b8b82,#1b535a);box-shadow:0 5px 0 #082d37,0 0 25px #e7bd5b44}.license-stage h2,.thinking-lab h2{font-family:Impact,'Arial Black',sans-serif;letter-spacing:.02em;font-weight:900;font-size:40px}.license-home h2{font-family:Impact,'Arial Black',sans-serif;font-size:42px;letter-spacing:.01em}.license-summary{background:radial-gradient(ellipse at top,#f1bb5030,transparent 70%)}header .hud>button,header .hud>span{border-radius:13px;box-shadow:0 3px 0 #92744155}.license-home .game-art{filter:drop-shadow(0 10px 20px #d6a74266)}.map-license-count{display:flex;gap:10px;align-items:center;color:#ffe09b!important;font-size:13px!important;font-weight:900}
@media(max-width:700px){.island-game-title{font-size:57px}.license-stage h2,.thinking-lab h2{font-size:29px}}
.sort-playfield{text-align:center}.sort-card{width:min(440px,100%);min-height:190px;margin:18px auto;padding:24px;background:linear-gradient(145deg,#fff2c6,#eac77e);color:#123e46;border:2px solid #ffe4a3;border-radius:18px;box-shadow:0 9px #9a7336,0 18px 30px #001b2b55;transform:rotate(-1deg)}.sort-card>img{height:115px;max-width:100%;object-fit:contain}.sort-card p{font-weight:1000;font-size:25px;margin:10px 0}.sort-card small{font-size:13px}.sort-signal{font-size:44px;color:#bd7932}.sort-homes{display:flex;gap:15px;margin:28px 0 22px}.sort-homes button{flex:1;min-height:140px;border:2px solid #a6d1c3;background:linear-gradient(#337c76,#14545c);color:#fff8dc;box-shadow:0 6px #092c3a;border-radius:16px}.sort-homes .home-1{border-color:#efc76a;background:linear-gradient(#8c6633,#59452a)}.sort-homes .home-2{background:linear-gradient(#4c7191,#274a69)}.sort-homes img{display:block;width:75px;height:75px;object-fit:contain;margin:0 auto 8px;filter:drop-shadow(0 4px 5px #001c2b66)}.sort-homes [aria-pressed="true"]{outline:4px solid #ffe4a1}.sort-progress{display:flex;gap:8px;justify-content:center}.sort-progress button{border-radius:50%;width:40px;height:40px;padding:0;min-height:0;background:#fff0b9}.sort-progress [aria-pressed="true"]{background:#e8ad47;outline:3px solid #fff0bd}@media(max-width:700px){.sort-card{min-height:140px;padding:15px}.sort-card p{font-size:21px}.sort-homes{gap:7px}.sort-homes button{font-size:12px;padding:9px 5px;min-height:105px}.sort-homes img{width:55px;height:55px}}
#club-host{pointer-events:auto;width:min(850px,100%);max-height:calc(100dvh - 170px);overflow:auto;margin:auto;padding:28px;background:linear-gradient(135deg,#133e4bf5,#1c5b5bf2);color:#fff2d1;border:1px solid #e5bb69;border-radius:18px 35px;backdrop-filter:blur(12px)}.club-stage h2{font:40px Impact,'Arial Black',sans-serif;color:#ffe2a1;letter-spacing:.02em}.club-stage .eyebrow{color:#eac06c}.club-stage .subtle{color:#cfe4d9}.club-stage button{border-radius:12px}.club-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.club-cards button{background:linear-gradient(#fff0bb,#dbb775);display:flex;flex-direction:column;align-items:center;padding:22px;gap:10px}.club-cards b{font-size:22px}.club-cards span{font-size:14px}.club-cards img{width:100px;height:100px;object-fit:contain;filter:drop-shadow(0 7px 8px #36452a66)}.club-track{position:relative;margin:35px 0 20px;height:38px;background:repeating-linear-gradient(90deg,#ddcb8d 0 18px,transparent 18px 30px) center/100% 3px no-repeat;border:2px solid #abbb9a;border-radius:30px}.club-track>img{position:absolute;width:70px;top:-25px;filter:drop-shadow(0 8px 7px #001c2b80);transition:left .5s}.club-team-board{padding:12px 18px;margin:22px 0;background:#082e3c77;border-radius:16px}.club-story-art{width:110px;height:100px;object-fit:contain;float:right}.club-stage details{font-size:13px;line-height:1.7;color:#d4e9dd}.club-stage a{color:#ffe5a6}.weekly-picture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.weekly-picture-grid img{width:100%;border-radius:8px}.weekly-picture-grid button{padding:7px;font-size:11px}.weekly-picture-grid [aria-pressed="true"]{outline:4px solid #eab349}.weekly-check{display:block;padding:15px;background:#082d3c88;border-radius:12px;margin:15px 0}.weekly-check input{width:auto}.club-stage #club-status,.club-stage #news-status,.club-stage #weekly-status{font-size:16px;padding:10px}.club-stage #news-status button{display:block;margin:15px 0}@media(max-width:700px){#club-host{padding:17px}.club-stage h2{font-size:30px}.club-cards{gap:10px}.club-cards button{padding:12px}.club-cards b{font-size:17px}.club-cards img{width:70px;height:70px}}
.launch-panel,.question-scene,.license-home,.finish,.arcade-intro,.garage-panel,.passport-panel{background:linear-gradient(135deg,#153e4cf2,#1b5457ef);color:#fff5da;border:1px solid #e4bf79;box-shadow:0 20px 60px #00253888;backdrop-filter:blur(10px)}.launch-panel h1,.arcade-intro h1{font-family:Impact,'Arial Black',sans-serif;letter-spacing:.02em;text-transform:uppercase;color:#fff0bd;text-shadow:2px 3px #77552d,4px 6px #062e3b}.launch-panel .eyebrow,.question-scene .eyebrow,.license-home .eyebrow,.finish .eyebrow,.arcade-intro .eyebrow,.garage-panel .eyebrow,.passport-panel .eyebrow{color:#f1c676}.launch-panel .subtle,.question-scene .subtle,.license-home .subtle,.finish .subtle,.arcade-intro .subtle,.garage-panel .subtle,.passport-panel .subtle{color:#d0e5db}.question-scene .teach-copy,.question-scene .adaptive-clue{background:#092f3cb3;color:#fff5d9;border:1px solid #7bb0a16b}.question-scene .question-picture,.question-scene .visual-comparison figure{background:#fff4d9;color:#173e36;border-radius:14px;padding:10px}.question-scene .adaptive-label{color:#ffe0a0}.launch-panel .featured-games{gap:8px}.launch-panel .featured-games button{border:1px solid #8ab8ac;background:linear-gradient(#2c7470,#154851);color:#fff1cd;border-radius:12px}.launch-panel .film-button{background:#0b303d77;color:#fff2cf;border:1px solid #80afa6;box-shadow:0 3px #062a36}.launch-panel .primary{border-radius:9px;box-shadow:0 5px #8e642e}.finish h2,.question-scene h2{color:#ffe2a6}.finish .answer-takeaway{color:#fff4da}.passport-panel .stamp{color:#173e36}.garage-panel label,.garage-panel h3{color:#fff0c8}
.station-pin span{min-width:0;white-space:normal;overflow-wrap:break-word}.station-pin small{white-space:normal;max-width:180px;line-height:1.25}.station-pin.next-station{z-index:2}
.license-letter{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dca84b;color:#163b3d;margin-right:8px}#license-hear{font-size:13px;padding:8px 14px;background:#0b303e88;color:#fff3ce;border:1px solid #86b0a7;box-shadow:none}
#mobile-settings{display:none}.mobile-game-settings label{display:block}.mobile-game-settings select{display:block;width:100%;font:inherit;padding:12px;margin:12px 0;border-radius:10px}.mobile-game-settings button{display:block;width:100%;margin-top:12px}
@media(max-width:700px){header{padding:8px;gap:7px;align-items:flex-start}header>a{width:106px;flex:none;padding:7px!important}header .island-wordmark{font-size:18px!important}header .island-wordmark small{font-size:7px!important}.hud{gap:4px;flex-wrap:nowrap!important;justify-content:flex-end;max-width:calc(100vw - 130px)}header .quality-setting,header #account,header #fullscreen{display:none!important}header #energy{width:88px;max-width:88px;padding:7px 6px;font-size:10px;line-height:1.15;min-height:33px;text-align:center}header #sound{width:62px;padding:6px;font-size:10px;line-height:1.2;min-height:33px}header #island-home,header #mobile-settings{display:block;width:30px;min-width:30px;padding:5px;font-size:16px;min-height:33px;border-width:1px}.mobile-game-settings h2{font-size:28px}}
body[data-quality="flat"] .map-tools{display:none}@media(max-width:700px){.map-tools{display:none}header .island-wordmark{font-size:14px!important;letter-spacing:.02em;white-space:nowrap}header .island-wordmark small{white-space:normal}}
@media(max-width:700px){.sort-card{padding:12px;margin:12px auto;min-height:120px}.sort-signal{font-size:28px}.sort-card p{font-size:19px;margin:7px 0}.sort-card small{font-size:11px}.sort-homes{margin:18px 0 12px}.sort-homes button{min-height:90px}.sort-homes img{height:48px;width:48px}.sort-progress button{width:34px;height:34px}.license-stage>.primary{margin:9px 3px}.license-stage .subtle{font-size:12px}}

/* Reliable touch target stays above the video, captions, and cinematic overlays */
.launch-splash .launch-skip{z-index:20;min-height:48px;min-width:160px;touch-action:manipulation;pointer-events:auto;background:#092e2de8;border:1px solid #f4d78e80;border-radius:24px;font-size:14px}
.hub-tools button img{display:block!important;visibility:visible!important;opacity:1!important;object-fit:contain;min-height:48px;width:64px;height:64px;filter:drop-shadow(0 5px 7px #0005)}
body[data-quality="flat"] #overlay:has(.quest-map-panel){background:linear-gradient(90deg,#092e2de8,#092e2d55),url('/assets/coastal-rally-keyart.webp') center/cover fixed}
.map-world-button{font-weight:900;min-height:48px}

.lab-hub{max-width:980px!important}.lab-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lab-hub-grid button{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px;white-space:normal}.lab-hub-grid .game-art{width:80px;height:80px;object-fit:contain}.lab-hub-grid span{font-size:16px;line-height:1.4}.lab-hub-grid small{font-size:14px}.authorship-card{padding:24px;border:3px solid #d5ac59;border-radius:24px;background:#fff9e8}@media(max-width:700px){.lab-hub-grid{grid-template-columns:1fr}.lab-hub-grid button{padding:18px}}

@media(max-width:700px){.map-world-button{display:none}}

/* The map remains a living world on phones too; 2D is an explicit setting */
@media(max-width:700px){body:not([data-quality="flat"]):has(.quest-map-panel) #island{visibility:visible!important}body:not([data-quality="flat"]) #overlay:has(.quest-map-panel){background:transparent;padding-top:235px}.quest-map-panel{background:#103e43ee!important}body:not([data-quality="flat"]) .map-world-button{display:block}}
.daily-progress-ring{display:grid!important;place-items:center;width:76px;height:76px;border-radius:50%;background:radial-gradient(circle,#123f42 57%,transparent 59%),conic-gradient(#f5c65f var(--daily),#ffffff25 0);font-size:25px!important;font-weight:900;color:#fff1c9}.club-cards small{font-size:15px;color:#fff0c9}.hub-tools #map-book img{display:block!important;min-height:48px;opacity:1!important}

.club-cards small{color:#194d43;font-weight:800}

/* Keep the island readable, with secondary destinations tucked away */
.quest-map-panel .hub-primary{grid-template-columns:1fr;gap:8px;margin-top:12px}.quest-map-panel .hub-primary button{min-height:54px;flex-direction:row;justify-content:flex-start;gap:12px;padding:7px 12px;text-align:left;font-size:14px}.quest-map-panel .hub-primary .game-art{width:38px;height:38px;min-height:38px;margin:0}.hub-more{margin:12px 0}.hub-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:900;color:#ffe3a1}.hub-more summary:before{content:'＋';margin-right:10px}.hub-more[open] summary:before{content:'−'}.book-tile-icon{display:block!important;visibility:visible!important;opacity:1!important;min-height:48px;flex-shrink:0}@media(min-width:701px){.quest-map-panel{max-height:calc(100dvh - 150px)!important;width:300px!important}.quest-map-panel .map-world-button{font-size:13px}.quest-map-panel .island-game-title{font-size:54px}}

body[data-screen="kart"] #ask,body[data-screen="flight"] #ask,body[data-screen="runner"] #ask,body[data-screen="pairs"] #ask,body[data-screen="power-grid"] #ask,body[data-screen="matching"] #ask,body[data-screen="quiz-mini"] #ask{display:none!important}.expedition-next-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.expedition-next-actions .primary{flex:1;min-width:220px}.quiz-answer-result .silent-reaction{max-height:130px;width:auto}.quiz-answer-result .new-stamp{padding:6px;margin:6px}.saved-picture-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.saved-picture-grid figure{margin:0;padding:12px;background:#fff7e0;border:2px solid #cda85a;border-radius:18px}.saved-picture-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.saved-picture-grid figcaption{font-weight:800;font-size:15px}.saved-picture-grid p{font-size:13px}.picture-save-button{display:inline-block;border:2px solid #215f59;background:#215f59;color:#fff7e0!important;border-radius:12px;padding:12px;text-decoration:none;font-weight:900;margin:8px 0}@media(max-height:800px){.quiz-answer-result{padding:18px!important}.quiz-answer-result h2{font-size:28px;margin:8px 0}.quiz-answer-result p{margin:8px 0;font-size:16px}.quiz-answer-result .silent-reaction{max-height:80px}.quiz-answer-result .new-stamp{font-size:12px}.quiz-answer-result .new-stamp b{display:none}}

.session-nudge{position:fixed;z-index:90;right:20px;top:100px;width:min(340px,calc(100vw - 40px));padding:18px;background:#fff4d4;border:3px solid #d2a44a;border-radius:22px;color:#174a41;box-shadow:0 10px 40px #0004}.session-nudge p{font-size:17px;line-height:1.45}.session-nudge button{margin:4px;min-height:44px}
/* Island energy reservoir: brass casing, lit fuel and a gentle travelling glint. */
header #energy.fuel-gauge{display:flex;align-items:center;gap:7px;width:184px;min-height:49px;padding:2px 10px 3px 5px;background:linear-gradient(145deg,#214d49,#102f32);border:2px solid #c99d50;border-radius:15px;color:#fff1ba;box-shadow:inset 0 1px 0 #ffffff32,0 3px 0 #183b3670,0 0 15px #efc46618;font-size:inherit;text-align:left;overflow:hidden}
.fuel-tank{display:block;width:108px;height:46px;flex:none;filter:drop-shadow(0 2px 1px #0005)}.fuel-readout{display:flex;flex-direction:column;gap:1px;line-height:1}.fuel-readout small{font-size:8px;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;color:#ecd4a0}.fuel-readout b{font-size:23px;font-variant-numeric:tabular-nums;text-shadow:0 2px 0 #061f24}.fuel-level{transition:width 1.2s cubic-bezier(.22,.8,.25,1)}.fuel-shimmer{animation:fuel-glint 4.8s ease-in-out infinite}.fuel-bubble{animation:fuel-rise 3.4s ease-in infinite;transform-box:fill-box;transform-origin:center}.bubble-two{animation-delay:-1.8s}.fuel-bolt{animation:fuel-heartbeat 3s ease-in-out infinite}.fuel-full{filter:drop-shadow(0 0 4px #ffd87755)}
@keyframes fuel-glint{0%,20%{transform:translateX(0)}80%,100%{transform:translateX(160px)}}@keyframes fuel-rise{0%{transform:translateY(0);opacity:0}20%{opacity:.8}90%,100%{transform:translateY(-23px);opacity:0}}@keyframes fuel-heartbeat{0%,100%{opacity:.75}50%{opacity:1;filter:drop-shadow(0 0 3px #ffdb77)}}
@media(max-width:700px){header #energy.fuel-gauge{width:96px;max-width:96px;min-height:33px;gap:3px;padding:2px 4px;border-radius:10px}.fuel-tank{width:49px;height:29px}.fuel-readout small{font-size:6px;letter-spacing:0;white-space:normal;max-width:30px;line-height:1.1}.fuel-readout b{font-size:15px}.fuel-readout{gap:2px}}
@media(prefers-reduced-motion:reduce){.fuel-shimmer,.fuel-bubble,.fuel-bolt{animation:none}.fuel-level{transition:none}}
body[data-motion="paused"] .fuel-shimmer,body[data-motion="paused"] .fuel-bubble,body[data-motion="paused"] .fuel-bolt{animation-play-state:paused}
.hud .fuel-readout{background:none;border:0;border-radius:0;padding:0;box-shadow:none;min-width:0;color:#fff1ba}.hud #energy.fuel-gauge{flex-shrink:0}
.fuel-readout small{white-space:normal;font-size:7px;line-height:1.05;max-width:48px}.fuel-readout b{line-height:1.05}
@media(max-width:700px){.fuel-readout small{font-size:6px;max-width:30px}}
/* Keep the round exit choices in view; only the explanation/retry area scrolls. */
#overlay:has(.quiz-answer-result){inset:100px 16px 20px;align-items:center}.quiz-answer-result{display:flex;flex-direction:column;max-height:calc(100dvh - 125px);overflow:hidden!important;width:min(600px,100%);max-width:600px;padding:18px!important}.quiz-feedback-scroll{overflow:auto;min-height:0;flex:1;padding:0 4px;overscroll-behavior:contain}.quiz-feedback-footer{flex:none;padding:10px 0 0;border-top:1px solid #d2b470;margin-top:8px;background:inherit}.quiz-feedback-footer>p{margin:0 0 8px;font-size:14px}.quiz-feedback-footer .primary{margin-top:0;padding:12px;font-size:15px;min-width:0}.quiz-feedback-footer .expedition-next-actions{flex-wrap:nowrap;gap:8px}.quiz-retry{text-align:left;padding:10px;background:#fff4da;border-radius:12px;color:#193f3a}.quiz-retry summary{cursor:pointer;font-weight:900}.quiz-retry .answer-grid{margin-top:12px}.quiz-answer-result .silent-reaction{height:72px;width:auto;max-width:100%;object-fit:contain}.quiz-answer-result .new-stamp{font-size:14px}.quiz-feedback-scroll p{font-size:16px;line-height:1.4}
@media(max-width:700px){#overlay:has(.quiz-answer-result){inset:68px 10px 95px}.quiz-answer-result{max-height:calc(100dvh - 175px)}.quiz-feedback-footer .expedition-next-actions{flex-direction:column}.quiz-feedback-footer .primary{min-height:44px;flex:none}.quiz-feedback-scroll h2{font-size:25px}}
.game-music-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px;font-weight:900;margin:14px 0;padding:12px;border:1px solid #c89f58;border-radius:14px;background:#143d38;color:#fff0c8}.game-music-picker select{font:inherit;padding:8px;min-height:44px;border-radius:10px;background:#fff4d7;color:#173e36}.game-music-picker small{font-size:12px;font-weight:700;flex-basis:100%;line-height:1.4}.season-hub-card{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:10px!important;margin:12px 0;background:linear-gradient(135deg,#254e51,#123336);color:#fff1bf;border:1px solid #c8a45a;box-shadow:0 3px 0 #071f2580}.season-hub-card b{font-size:12px;display:block}.season-hub-card small{display:block;font-size:11px;line-height:1.3;color:#e0d9c0}.season-symbol{font-size:25px;color:#ffd369}
.club-board{list-style:none;padding:0}.board-row{display:flex;gap:12px;padding:12px;margin:8px 0;background:#fff3d8;color:#173e36;border-radius:12px}.board-row>span{flex:1}.board-row small{display:block;font-size:13px;line-height:1.4}.own-row{border:3px solid #e4a834}.club-board-stage{max-height:calc(100dvh - 180px);overflow:auto}
.retry-prompt{display:flex;flex-direction:column;gap:7px;background:#fff0c6;color:#183f3c;padding:14px 16px;border:2px solid #e4a23c;border-radius:16px;animation:retry-glow .65s ease-in-out 3}.retry-prompt strong{font-size:22px;color:#855015}.retry-prompt span{font-size:16px;line-height:1.4}.retry-prompt small{font-size:14px;line-height:1.4}@keyframes retry-glow{50%{box-shadow:0 0 0 5px #f7bd4f66;transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.retry-prompt{animation:none}}
.news-centre{max-width:820px;max-height:85dvh;overflow:auto}.news-close{float:right}.news-cards{display:grid;gap:18px}.news-cards article{padding:18px;border-radius:20px;border:2px solid #b8924a;background:#fff9e9}.news-cards h3{font-size:25px}.news-cards aside{background:#e1ead9;border-radius:12px;padding:12px}.news-cards p{font-size:16px}.news-art{float:right;margin:6px 0 10px 12px}.news-art img{width:90px;height:90px;object-fit:contain}.news-cards details{margin-top:12px}.news-invitation{max-width:480px}.news-invitation button{width:100%;margin-top:12px}@media(max-width:700px){.news-centre{width:95%;padding:16px}.news-cards article{padding:14px}.news-cards h3{font-size:22px}.news-art img{width:65px;height:65px}}
.replay-version-label{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.replay-version-label select{font:inherit;max-width:100%;min-height:44px;padding:9px;border:2px solid #c09b50;border-radius:12px;background:#fff4d5;color:#183f3c}.replay-scene-card,.replay-count-art{margin:12px 0;background:#fff1d0;color:#183e3b;border:2px solid #bd934b;border-radius:22px;padding:14px;overflow:hidden}.replay-character{max-width:150px;width:40%;max-height:165px;object-fit:contain}.replay-scene-card .replay-character{float:left;margin-right:12px}.replay-scene-card p{font-size:20px;line-height:1.4}.replay-scene-card figcaption,.replay-count-art figcaption{font-size:12px;font-weight:900;letter-spacing:1px;margin-bottom:10px}.replay-count-art svg{width:100%;max-height:180px}.replay-count-art p{font-size:15px;margin:6px}.replay-idea{margin:12px 0}.replay-idea summary{font-weight:900;cursor:pointer}
.board-row .player-avatar{width:42px;height:42px;flex:none}
/* Ten-lap journey: readable touch controls and a compact progress ring. */
.lap-badge{display:flex;align-items:center;gap:8px;max-width:230px}.lap-badge svg{width:42px;height:42px;flex:none}.lap-badge span{display:grid;gap:2px}.lap-badge small{font-size:12px}.lap-hub-card,.vault-hub-card{display:grid;width:100%;text-align:left;margin:10px 0;padding:13px 16px}.lap-hub-card span{font-size:13px}.lap-road{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.lap-road span{border:2px solid #81978c;border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.lap-road .done{background:#f1bf55;color:#143f3b}.lap-road .current{border-color:#ffd77c;box-shadow:0 0 0 4px #f1bf5533}.lap-stage{max-width:850px!important}.lap-teaching{display:flex;gap:16px;align-items:center;background:#123f3d88;border-radius:20px;padding:15px}.lap-teaching img{width:80px;height:90px;object-fit:contain}.lap-stage fieldset{border:0;padding:0;margin:18px 0}.lap-choice{display:flex!important;gap:14px;align-items:center;background:#fff1cb;color:#163f3b;padding:15px;border:2px solid #caa04e;border-radius:16px;margin:12px 0;font-size:19px}.lap-choice input{width:24px;height:24px;flex:none}.lap-stage textarea{display:block;width:100%;min-height:95px;background:#fff4d6;color:#143f3b;border:2px solid #caa04e;border-radius:12px;padding:14px;font:inherit;margin:8px 0 18px}.lap-object-grid{display:flex;flex-wrap:wrap;gap:9px}.lap-object-grid button{width:100px;padding:4px}.lap-object-grid svg{width:100%;display:block}.lap-object-grid [aria-pressed=true]{outline:4px solid #ed9b40}.lap-training{display:flex;gap:12px;flex-wrap:wrap}.lap-training label{display:grid;gap:8px;flex:1;min-width:130px}.training-ball{display:block;width:65px;height:65px;border-radius:50%;box-shadow:inset -12px -12px 16px #0005,inset 8px 8px 12px #fff5}.lap-comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px}.lap-comparison article{background:#fff0cb;color:#143f3b;border-radius:18px;padding:18px}.lap-comparison img{width:130px;max-width:100%}.vault-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.vault-slots button{min-height:110px;display:grid;place-items:center}.vault-slots img{width:100%;border-radius:12px}.vault-slots small{font-size:12px}.vault-stage{max-width:900px!important}@media(max-width:600px){.lap-badge{max-width:150px;gap:4px}.lap-badge small{font-size:10px}.lap-badge svg{width:32px;height:32px}.lap-badge b{font-size:12px}.lap-object-grid button{width:70px}.vault-slots{grid-template-columns:repeat(3,1fr)}.lap-teaching{gap:8px;padding:12px}.lap-teaching img{width:55px}.lap-choice{font-size:17px}.lap-comparison{grid-template-columns:1fr 1fr;gap:8px}}
#season-card[hidden]{display:none!important}
body[data-screen="lap-journey"] .lap-stage,body[data-screen="vault"] .vault-stage{width:min(760px,calc(100vw - 44px))!important;max-width:760px!important;background:linear-gradient(145deg,#fff3cf,#f3e4ba)!important;color:#163f3b;max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain}
body[data-screen="lap-journey"] .lap-teaching{background:#dfebd7}.lap-stage #lap-feedback:not(:empty){padding:16px;border:2px solid #cfaa57;border-radius:18px;margin-top:16px}.lap-stage #lap-feedback h3{margin-top:0}.lap-badge>span{border:0!important;box-shadow:none!important;padding:0!important;background:none!important}.lap-stage .lap-road .current{color:#163f3b}
@media(max-width:700px){body[data-screen="lap-journey"] .lap-stage,body[data-screen="vault"] .vault-stage{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 175px);margin:8px 12px 110px!important}.lap-stage h2{font-size:27px}.lap-stage .lap-teaching p{font-size:16px}.lap-stage fieldset legend{font-weight:800}.lap-stage .lap-road span{width:25px;height:25px;font-size:13px}.lap-stage .lap-road{gap:4px}}

#lap-learn-panel[hidden],#lap-question[hidden],#lap-form[hidden]{display:none!important}.lap-stage .lap-object-grid button{height:90px}.lap-stage .lap-object-grid svg{height:80px}.lap-stage .lap-choice{margin:8px 0;padding:12px}.lap-stage fieldset{margin:12px 0}.lap-stage .lap-instruction{font-size:21px;font-weight:800}.lap-stage #lap-form>.primary{width:100%}
@media(max-width:700px){body[data-screen="lap-journey"] .lap-stage,body[data-screen="vault"] .vault-stage{position:fixed!important;top:82px!important;left:12px!important;transform:none!important;margin:0!important;width:calc(100vw - 24px)!important;max-height:calc(100dvh - 180px)!important;padding:20px!important}header #energy.lap-badge svg{width:20px;height:26px}header #energy.lap-badge b{font-size:9px}header #energy.lap-badge small{font-size:8px;line-height:1.25}header #energy.lap-badge{gap:3px;padding:5px 4px}.lap-playing>h2,.lap-playing>.lap-road,.lap-playing>p:not(.eyebrow){display:none}.lap-playing #lap-question h3{font-size:18px;line-height:1.35;margin:10px 0}.lap-playing #lap-fields>p{margin:10px 0}.lap-playing .lap-object-grid button{height:75px}.lap-playing .lap-object-grid svg{height:65px}.lap-playing fieldset{margin:8px 0}.lap-playing .lap-choice{padding:10px;font-size:16px}.lap-playing .eyebrow{margin:0 0 10px}}

.detective-scene{display:block;position:relative;width:min(100%,420px);aspect-ratio:1;margin:12px auto;background-size:300% 100%;border:3px solid #d4a652;border-radius:20px;cursor:crosshair;padding:0}.detective-marker{position:absolute;transform:translate(-50%,-50%);font-size:44px;color:white;text-shadow:0 0 4px #003c3a;pointer-events:none}.vault-example{display:flex;align-items:center;gap:16px;margin:12px 0}.vault-example img{width:96px;border-radius:20px}.vault-slots button:disabled{opacity:.8}.vault-slots b{font-size:30px}@media(max-width:600px){.detective-scene{width:min(100%,280px)}}
.lap-playing>.lap-road,.lap-playing>h2,.lap-playing>.lap-road+p{display:none}.lap-playing #lap-fields:has(.detective-scene){display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;align-items:start}.lap-playing #lap-fields:has(.detective-scene)>p{grid-column:1/-1;margin:6px 0}.lap-playing .detective-scene{width:100%;grid-column:1;grid-row:3/6;margin:4px 0}.lap-playing #lap-fields:has(.detective-scene)>fieldset{grid-column:2;grid-row:3/6;min-width:0;margin:0}.lap-playing #spot-status{font-size:14px}.lap-playing .lap-choice{padding:10px}.lap-playing #lap-fields:has(.detective-scene)>#spot-status{grid-row:6}@media(max-width:600px){.lap-playing #lap-fields:has(.detective-scene){display:block}.lap-playing .detective-scene{width:210px;margin:8px auto}.lap-playing .lap-choice{font-size:15px;padding:8px}}

/* Learning is a separate room: the island returns only on the map. */
body.learning-focus{background:radial-gradient(ellipse at 50% 0%,#28565e 0%,#12363e 65%,#0a252d 100%)}
body.learning-focus #island{visibility:hidden!important;pointer-events:none}
body.learning-focus .scene-copy,body.learning-focus .thinking-lab{background:#123a43!important;opacity:1;border:2px solid #bda56e;color:#fff4d8;left:50%!important;transform:translateX(-50%)!important;animation:none!important}
body.learning-focus .lap-stage{background:#fff1d0!important;color:#173f3d}
body.learning-focus .teach-copy{background:#0e3039!important}
body.learning-focus .island-stations,body.learning-focus .map-orbit-copy{display:none!important}
@media(max-width:600px){body.learning-focus .scene-copy,body.learning-focus .thinking-lab{left:12px!important;transform:none!important;width:calc(100% - 24px)!important}}

/* Inside the building: the world is separate from the readable task panel. */
body.workshop-active #island{visibility:visible!important;pointer-events:none}
body.workshop-active .scene-copy,body.workshop-active .thinking-lab{position:relative!important;left:auto!important;top:auto!important;transform:none!important;margin:110px 24px 100px auto!important;width:min(48vw,680px)!important;max-height:none!important;background:#103b46!important;color:#fff4db!important;box-sizing:border-box;opacity:1!important}
body.workshop-active .island-stations{display:none!important}
body.workshop-active .scene-copy p{line-height:1.5}
.studio-kinds{display:flex;gap:8px;flex-wrap:wrap}.studio-kinds button{flex:1}.studio-panel label{display:block;margin:10px 0}.studio-panel select,.studio-panel textarea{display:block;width:100%;padding:12px;border-radius:12px;font:inherit;box-sizing:border-box}.studio-panel textarea{color:#173f3d;background:#fff5da}.studio-panel small{display:block;margin-top:10px}
@media(max-width:700px){body.workshop-active .scene-copy,body.workshop-active .thinking-lab{margin:260px 12px 110px!important;width:calc(100% - 24px)!important}body.workshop-active #island{height:340px!important}body.workshop-active #overlay{background:linear-gradient(transparent 220px,#103b46 340px)}}
body.workshop-active #creative-studio-host,body.workshop-active #thinking-lab-host,body.workshop-active #creator-license-host{width:100%!important;max-width:none!important;flex:1 1 100%}
body.workshop-active .studio-panel{max-width:680px!important;margin-top:0!important}
body.workshop-active .studio-panel .eyebrow{color:#f2cc80}

body[data-screen="map"] .quest-map-panel{opacity:1!important;animation:none!important;filter:none!important}body[data-screen="map"] #overlay{opacity:1!important;filter:none!important}.studio-panel input:not([type="checkbox"]){width:100%;padding:12px;font:inherit;border-radius:12px}.studio-panel input[type="checkbox"]{width:auto;margin-right:8px}
/* Question-first stage: one headline, three choices, optional help. */
body.workshop-active #island{pointer-events:auto!important;cursor:grab}
body.workshop-active #island:active{cursor:grabbing}
.room-controls{position:fixed;left:24px;bottom:28px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;max-width:43vw;pointer-events:auto;background:#103b46ed;padding:10px;border:1px solid #edc871;border-radius:18px;color:#fff4db}
.room-controls span{width:100%;font-size:10px;font-weight:900;letter-spacing:.13em}.room-controls button{padding:9px 12px;font-size:12px;min-height:42px}
body.workshop-active .quiz-show{padding:24px!important;width:min(55vw,760px)!important;margin-top:90px!important;border:2px solid #eec96e;background:linear-gradient(145deg,#113c50,#102b42)!important;box-shadow:0 16px 60px #031d39a0,inset 0 1px #ffffff30}
.quiz-show .question-meta{display:flex;justify-content:space-between;gap:14px;font-size:12px;font-weight:900;letter-spacing:.08em;color:#f3cf82}
.quiz-show #main-question{font-size:clamp(30px,3.3vw,48px);line-height:1.15;color:#fff8e8;margin:22px 0 12px;text-wrap:balance}
.quiz-show .question-instruction{font-size:15px;margin:0 0 16px;color:#c9e4ea}
.quiz-show .answer-grid{gap:12px}.quiz-show .answer-grid button{font-size:clamp(17px,1.5vw,22px);min-height:70px;text-align:left;border:2px solid #e4ba63;border-radius:18px;box-shadow:0 5px 0 #061b2a;display:flex;align-items:center;gap:14px;padding:14px 18px}
.quiz-show .answer-grid button b{display:grid;place-items:center;border-radius:50%;background:#efbd58;min-width:36px;height:36px;color:#103b46}
.quiz-show .ask-row{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px}.quiz-show .ask-row button{font-size:13px;padding:10px 14px}.quiz-show #stage-hint[hidden]{display:none}.quiz-show #answer-status:empty{display:none}
.restart-adventure{width:100%;margin:16px 0;background:linear-gradient(#ffd677,#e9a741);font-size:24px;border:3px solid #855219;padding:20px;letter-spacing:.04em}.restart-adventure small{display:block;font-size:13px;letter-spacing:0;margin-top:5px}.restart-dialog{max-width:550px}.restart-dialog input{display:block;width:100%;padding:14px;font:inherit;margin:12px 0}
@media(max-width:700px){.room-controls{top:170px;left:12px;bottom:auto;max-width:calc(100% - 24px);padding:6px}.room-controls span{display:none}.room-controls button{font-size:11px;padding:7px 10px}body.workshop-active .quiz-show{width:calc(100% - 24px)!important;margin:270px 12px 100px!important;padding:20px!important}.quiz-show #main-question{font-size:30px}.quiz-show .answer-grid button{font-size:17px;min-height:64px}}
body.workshop-active .station-cinema{width:min(860px,90vw)!important;margin:24px auto 90px!important;padding:24px!important;box-shadow:0 0 0 100vmax #061f3988,0 24px 80px #0008}
.station-cinema video{width:100%;max-height:48vh;object-fit:contain;border:2px solid #eac36e;border-radius:20px;background:#061b2a}.station-cinema>p{margin:10px 0}.station-cinema h2{font-size:clamp(28px,4vw,44px)}
.station-completion-cinema{width:min(920px,94vw);max-width:94vw;background:linear-gradient(135deg,#103b46,#10253d);color:#fff4db;border:3px solid #edc36d;border-radius:28px;text-align:center;padding:24px}.station-completion-cinema::backdrop{background:#06182be8}.station-completion-cinema video{width:100%;max-height:56vh;border-radius:18px;object-fit:contain}.station-completion-cinema h2{font-size:clamp(28px,4vw,44px)}.station-completion-cinema .eyebrow{color:#edc36d}
@media(max-width:700px){body.workshop-active .station-cinema{margin:120px 12px 100px!important;width:calc(100% - 24px)!important;padding:16px!important}}
header .ai-island-header-logo{width:142px;height:84px;object-fit:contain;filter:none}header .header-northridge{width:90px}.island-title-logo{display:block;width:min(100%,320px);height:180px;object-fit:contain;margin:0 auto 12px}.brand-mission-heading{font-size:28px}.splash-ai-logo{width:min(60vw,470px);max-height:34vh;object-fit:contain}.film-ai-logo{width:140px;max-height:85px;object-fit:contain;float:right}#island-battery.fuel-gauge{display:flex;align-items:center;padding:6px 10px;gap:6px}#island-battery[hidden],#round-time[hidden]{display:none!important}#island-battery .fuel-tank{width:78px;height:40px}#island-battery .fuel-readout{padding:0;border:0;background:none}#island-battery small,#round-time small{display:block;font-size:10px}#island-battery b,#round-time b{display:block;font-size:20px}#round-time{min-width:78px;text-align:center;font-variant-numeric:tabular-nums}
@media(max-width:800px){header .ai-island-header-logo{width:90px;height:57px}header .header-northridge{display:none}.hud{max-width:calc(100vw - 130px);gap:4px}#island-battery.fuel-gauge{padding:3px 6px}#island-battery .fuel-tank{width:42px;height:28px}#island-battery small{font-size:8px}#island-battery b,#round-time b{font-size:16px}#round-time{padding:4px 7px;min-width:58px}.island-title-logo{height:145px}}
.ai-brand-lockup{display:flex;align-items:center;flex-direction:column}.ai-brand-lockup small{font-size:10px;font-weight:900;letter-spacing:.04em;color:#183e36;text-align:center}.brand-byline{font-size:12px!important;text-align:center;letter-spacing:.04em;margin:0 0 16px!important}.ai-brand-lockup .ai-island-header-logo{width:180px;height:92px}@media(max-width:800px){.ai-brand-lockup .ai-island-header-logo{width:100px;height:60px}.ai-brand-lockup small{font-size:7px;max-width:110px}}

/* Comfortable lesson reading at desktop and classroom screen sizes. */
body.workshop-active .learning-scene{width:min(48vw,860px)!important;max-width:860px;padding:clamp(24px,2.2vw,42px);margin-top:90px!important}
.learning-scene h2{font-size:clamp(32px,2.5vw,46px);line-height:1.18;margin:16px 0 24px}
.learning-scene .eyebrow{font-size:14px;letter-spacing:.12em}
.learning-scene .teach-copy{padding:24px;border-color:#80aaa9;background:#082b35!important}
.learning-scene .teach-copy b{font-size:18px;color:#e3eeed}
.learning-scene .teach-copy p{font-family:system-ui,sans-serif;font-size:clamp(22px,1.45vw,29px);font-weight:500;line-height:1.65;color:#fffaf0;margin:16px 0 4px;max-width:48ch}
.learning-scene>button{font-size:20px;min-height:56px;padding:15px 22px}
.learning-scene .subtle{font-size:17px;color:#e1edeb;line-height:1.5}
#island-battery .fuel-readout small{color:#173e36;text-shadow:none}
@media(max-width:800px){body.workshop-active .learning-scene{width:calc(100% - 24px)!important;padding:22px;margin-top:270px!important}.learning-scene h2{font-size:32px}.learning-scene .teach-copy{padding:18px}.learning-scene .teach-copy p{font-size:22px}.learning-scene>button{font-size:18px}.learning-scene .eyebrow{font-size:12px}.learning-scene .subtle{font-size:16px}}
/* Every station film takes over the game viewport. */
body:has(.station-cinema) header,body:has(.station-cinema) #ask,body:has(.station-cinema) .room-controls,body:has(.station-cinema) #island{visibility:hidden!important;pointer-events:none!important}
body:has(.station-cinema) #overlay{inset:0!important;z-index:20;overflow:visible!important}
body.workshop-active .station-cinema,.station-cinema,dialog.station-completion-cinema{position:fixed!important;inset:0!important;left:0!important;top:0!important;transform:none!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#061b2a!important;box-shadow:none!important;overflow:hidden!important;display:flex;flex-wrap:wrap;align-content:flex-end;justify-content:center;gap:10px;isolation:isolate}
.station-cinema video,dialog.station-completion-cinema video{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;background:#061b2a;border:0;border-radius:0;z-index:-2;padding-bottom:150px}
.station-cinema::after,dialog.station-completion-cinema::after{content:'';position:absolute;inset:auto 0 0;height:150px;background:#061b2a;z-index:-1;pointer-events:none}
.station-cinema>.eyebrow,.station-cinema>h2,dialog.station-completion-cinema>.eyebrow,dialog.station-completion-cinema>h2,.station-cinema>.film-ai-logo{display:none}
.station-cinema>p:not(.eyebrow),dialog.station-completion-cinema>p:not(.eyebrow){flex:0 0 100%;text-align:center;margin:4px 16px;font-size:20px;color:#fff4db}
.station-cinema>button,dialog.station-completion-cinema>button{width:auto!important;margin:4px 0 24px!important;padding:14px 20px;font-size:17px;min-height:52px;flex:0 1 auto}
.station-cinema video::cue,dialog.station-completion-cinema video::cue{font-size:24px;background:#061b2ae8;color:#fff}
@media(max-width:700px){.station-cinema video,dialog.station-completion-cinema video{padding-bottom:230px}.station-cinema::after,dialog.station-completion-cinema::after{height:230px}.station-cinema>button,dialog.station-completion-cinema>button{flex:0 1 44%;font-size:15px;padding:10px;margin:3px 0 10px!important}.station-cinema>p:not(.eyebrow),dialog.station-completion-cinema>p:not(.eyebrow){font-size:17px;margin:8px 16px}.station-cinema{gap:7px!important}}
/* Game HUD: clear white labels against solid dark surfaces. */
body.workshop-active header>a{background:#092435e8;border-color:#51becb}
body.workshop-active .ai-brand-lockup small{color:#fff}
body.workshop-active .hud>span,body.workshop-active .hud>button{background:#092b40;color:#fff;border-color:#5da8b5}
body.workshop-active .hud label{color:#fff;background:#092b40;border-radius:12px;padding:6px}
body.workshop-active #island-battery .fuel-readout small{color:#fff}
body.workshop-active .learning-scene{background:linear-gradient(135deg,#09283feb,#142449f5)!important;border:2px solid #65ccdb;border-radius:20px;box-shadow:0 18px 55px #020e2c80,inset 0 2px #b9f5ff55}
.learning-scene .teach-copy>b{display:none}
.learning-scene .teach-copy{padding:0;border:0!important;background:transparent!important}
body.learning-focus .learning-scene .teach-copy{background:transparent!important}
.learning-scene .teach-copy p{margin:8px 0 24px}
.learning-scene h2{color:#fff!important;text-shadow:0 3px #052033}
.learning-scene .eyebrow{color:#7deeff!important}
.learning-scene .primary{background:linear-gradient(#ffe888,#f6b737);border:2px solid #ffeaa0;box-shadow:0 5px #9c640b}
.lesson-tools{margin-top:20px}.lesson-tools summary{font-size:18px;color:#def4f8;cursor:pointer;padding:10px 0}.lesson-tools button{font-size:17px;margin:10px 8px 0 0}
/* Keep the task in focus; secondary controls live in the game menu. */
.hud>.quality-setting,.hud>#sound,.hud>#account,.hud>#fullscreen,.hud>#island-home{display:none!important}
.hud>#mobile-settings{display:block!important;font-size:20px;padding:12px 16px;color:#fff;background:#0a293f;border:1px solid #70cbd6;border-radius:14px}
body.workshop-active #energy{display:none!important}
body.workshop-active header{padding:16px 24px}
body.workshop-active header>a{border:0;background:transparent!important;box-shadow:none;padding:0}
body.workshop-active .ai-brand-lockup small{display:none}
body.workshop-active .ai-brand-lockup .ai-island-header-logo{width:120px;height:76px}
.room-controls{background:#082a40de;border:1px solid #70cbd6;padding:0;border-radius:14px;max-width:40vw}
.room-controls details{padding:12px 16px}.room-controls summary{cursor:pointer;font-size:16px;font-weight:800;color:#fff}.room-controls details[open] span{display:block;margin:14px 0 8px;color:#e4f5fa}.room-controls details button{margin:4px}
body.workshop-active #ask{border:1px solid #78cdd7;border-radius:16px;background:#082a40e8;padding:10px 14px;box-shadow:none}
body.workshop-active #ask img{width:36px;height:36px}body.workshop-active #ask span{font-size:14px}
.mobile-game-settings{background:#0c2b40;color:#fff;border-color:#7bcdd8}.mobile-game-settings label{display:block;font-size:18px}.mobile-game-settings select{font:inherit;margin:12px;padding:10px}.mobile-game-settings button{display:block;width:100%;margin-top:12px}
@media(max-width:700px){body.workshop-active header{padding:10px 12px}body.workshop-active .ai-brand-lockup .ai-island-header-logo{width:86px;height:58px}.room-controls{top:180px;max-width:calc(100vw - 24px)}.room-controls details{padding:9px 12px}.room-controls summary{font-size:14px}}
/* A lab has one card, not an opaque full-screen card around another card. */
body.workshop-active #thinking-lab-host{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;backdrop-filter:none;pointer-events:none}
body.workshop-active #thinking-lab-host .thinking-lab{pointer-events:auto;padding:28px;border:2px solid #70cbd6;border-radius:22px;box-shadow:0 14px 50px #00182c55;max-width:720px}
.thinking-lab h2{font-family:Nunito,system-ui,sans-serif;letter-spacing:0;font-size:36px;text-shadow:none;color:#fff}.thinking-lab .lab-goal{display:none}
.room-bonus-dialog{background:linear-gradient(135deg,#0a2a42,#18334f);color:#fff;border:2px solid #70d8e5;max-width:650px}.room-bonus-dialog h2{font-size:30px;line-height:1.25}.room-bonus-dialog .eyebrow{color:#82edff}.room-bonus-dialog .bonus-close{float:right;font-size:15px}.room-bonus-dialog #secret-feedback{font-size:20px;color:#fff2b7}.lap-future{margin:12px 0}.lap-future summary{cursor:pointer}

/* Phone missions come first, without a reserved blank 3D hero. */
#round-time{display:none!important}
body.workshop-active .learning-scene .teach-copy p{color:#fffaf0!important;font-size:clamp(22px,1.45vw,29px);line-height:1.6}
body.workshop-active .learning-scene .question-picture{background:#12394b;color:#fff;border-color:#70cbd6}
body.workshop-active .learning-scene .question-picture p,body.workshop-active .learning-scene .question-picture small{color:#fff!important}
@media(max-width:800px){
 body[data-screen="map"] #overlay:has(.quest-map-panel){padding:86px 12px 90px!important;inset:0!important;display:block;overflow:auto;background:#123b48!important}
 body[data-screen="map"] .quest-map-panel{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:20px!important}
 body[data-screen="map"] .quest-map-panel>.island-title-logo,body[data-screen="map"] .quest-map-panel>.brand-byline{display:none}
 body[data-screen="map"] .quest-map-panel .season-hub-card{margin-top:0}
 body.workshop-active .room-controls{position:relative!important;inset:auto!important;max-width:none;width:calc(100% - 24px);margin:0 12px 100px!important;display:block;clear:both}
 body.workshop-active #overlay{display:block;overflow:auto}
 body.workshop-active .learning-scene,body.workshop-active .quiz-show,body.workshop-active #thinking-lab-host{margin-bottom:16px!important}
 body.workshop-active .room-controls details{padding:12px}
}

/* One persistent progress readout; the lap stays on its hub card. */
.hud>#energy{display:none!important}
#island-battery .fuel-readout small,#island-battery .fuel-readout b{color:#163d3a!important;text-shadow:none!important}
body.workshop-active #island-battery .fuel-readout small,body.workshop-active #island-battery .fuel-readout b{color:#fff!important}
@media(max-width:800px){body[data-screen="map"] header .ai-brand-lockup .ai-island-header-logo{width:86px;height:58px}body[data-screen="map"] header .ai-brand-lockup small{display:none}body[data-screen="map"] header>a{padding:0;background:transparent;border:0;box-shadow:none}}

/* The island unfolds from a single mission, with extras deliberately tucked away. */
.quest-map-panel .map-mission-title{margin:0 0 14px!important;color:#9fefff!important}
.quest-map-panel #continue-mission{margin:0!important;font-size:19px;line-height:1.4;min-height:64px}
.quest-map-panel .mission-progress{font-size:14px!important;color:#d6e9ed!important;margin:16px 0!important}
.mission-more{border-top:1px solid #73b8bf55;padding-top:6px}
.mission-more>summary{cursor:pointer;color:#fff;font-size:15px;font-weight:800;padding:14px 0;min-height:44px}
.mission-more-content>button{width:100%;margin:8px 0}
.mission-more-content .restart-adventure{font-size:17px;padding:12px}
body[data-screen="map"] header .ai-brand-lockup .ai-island-header-logo{width:128px;height:76px}
body[data-screen="map"] header>a{background:transparent;border:0;box-shadow:none;padding:0}
body[data-screen="map"] header .ai-brand-lockup small{display:none}
@media(min-width:801px){body[data-screen="map"] .quest-map-panel{margin-top:110px!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - 150px)!important}}

/* Films retain their native detail instead of stretching across huge monitors. */
body.workshop-active .station-cinema{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;align-content:normal!important;gap:12px!important;padding:24px!important;overflow:auto!important;background:radial-gradient(ellipse at center,#20485d,#061b2a 75%)!important}
.station-cinema::after{display:none!important}
.station-cinema>h2{display:block!important;color:#fff;font-size:28px;margin:0!important}
.station-cinema video{position:relative!important;inset:auto!important;width:min(960px,100%)!important;height:auto!important;max-height:calc(100dvh - 210px)!important;aspect-ratio:960/630;object-fit:contain;padding:0!important;z-index:auto!important;border-radius:16px;box-shadow:0 20px 70px #0006}
.station-cinema>p:not(.eyebrow){flex:none!important;font-size:18px!important;margin:0!important;max-width:55ch}
.briefing-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.briefing-actions button{padding:13px 20px;font-size:17px;min-height:48px}
.station-reward{width:min(1050px,94vw);max-width:1050px;max-height:94dvh;overflow:auto;padding:0;border:2px solid #73dbe4;border-radius:30px;background:#092c40;color:#fff;box-shadow:0 0 100px #1ac7d744}
.station-reward[open]{display:grid;grid-template-columns:1fr 1fr}.station-reward::backdrop{background:#041725ed;backdrop-filter:blur(12px)}
.reward-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(#379caa,#092c40);min-height:420px}.reward-visual img{width:100%;height:100%;object-fit:cover}.reward-stars{position:absolute;bottom:22px;display:flex;gap:7px;font-size:38px;color:#ffe277;text-shadow:0 3px 15px #563f00}.reward-stars span{animation:reward-arrive .7s both;animation-delay:calc(var(--i)*.1s)}
.reward-copy{padding:36px}.reward-copy h2{font-size:54px;color:#fff;margin:12px 0}.reward-copy .eyebrow{color:#8eefff}.reward-station{font-size:23px}.reward-score{display:block;font-size:52px;color:#ffe277;line-height:1.2;margin:24px 0 12px}.reward-score small{display:block;font-size:17px;color:#fff}.reward-earned{font-size:21px;color:#ffe277}.reward-copy button{width:100%;margin-top:12px;min-height:50px;font-size:17px}
@keyframes reward-arrive{from{opacity:0;transform:translateY(25px) scale(.5)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.reward-stars span{animation:none}}
@media(max-width:700px){body.workshop-active .station-cinema{padding:16px!important}.station-cinema video{max-height:60dvh!important}.station-cinema>h2{font-size:24px}.station-reward[open]{grid-template-columns:1fr}.reward-visual{min-height:0;height:200px}.reward-visual img{object-fit:contain}.reward-copy{padding:22px}.reward-copy h2{font-size:38px}.reward-score{font-size:38px;margin:12px 0}.reward-stars{font-size:28px;bottom:10px}}
@media(min-width:701px){.station-reward[open]{height:min(620px,90dvh)}.reward-visual{min-height:0;height:100%}.reward-visual img{min-height:0;height:100%;object-fit:cover}.reward-copy{overflow:auto}}

.island-secret-hotspot{position:fixed;z-index:4;transform:translate(-50%,-50%);width:44px;height:44px;padding:0;background:transparent;border:0;box-shadow:none;color:#fff2a6;font-size:24px;cursor:pointer;text-shadow:0 0 9px #e6bd4a}
.island-secret-hotspot:hover,.island-secret-hotspot:focus-visible{background:#153b4bc9;outline:2px solid #ffe39c;border-radius:50%}.island-secret-hotspot[hidden]{display:none!important}
.island-secrets-dialog{width:min(500px,92vw);padding:30px;background:#103745;color:#fff;border:2px solid #f0cf83;border-radius:26px;text-align:center}.island-secrets-dialog::backdrop{background:#051c2bcc}.island-secrets-dialog h2{font-size:32px;color:#fff}.island-secrets-dialog p{font-size:19px;line-height:1.5}.island-secrets-dialog .secret-icon{font-size:65px}.secret-collection-item{text-align:left;border-top:1px solid #8ab1bb55;padding:16px 0}.secret-collection-item p{font-size:16px}.island-secrets-dialog button{min-height:48px}

.island-secrets-dialog .eyebrow{color:#ffe39c}.island-secrets-dialog .muted,.island-secrets-dialog .subtle{color:#c8e4ea}

/* Keep the brand and next action in one compact island panel. */
body[data-screen="map"] #brand-home{display:none!important}
body[data-screen="map"] header{justify-content:flex-end}
body[data-screen="map"] .quest-map-panel>.island-title-logo{display:block!important;width:140px!important;height:92px!important;object-fit:contain;margin:0 auto 18px!important}
@media(min-width:801px){body[data-screen="map"] .quest-map-panel{top:24px!important;bottom:auto!important;left:24px!important;transform:none!important;margin-top:0!important;max-height:calc(100dvh - 48px)!important}}

/* Branded cinema frame; logos sit outside the moving image. */
.module-film-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(1280px,100%)}
.module-film-heading img{width:100px;height:64px;object-fit:contain}.module-film-heading h2{font-size:26px;color:#fff;margin:0;text-align:center}
.station-cinema.module-cinema video{width:min(1280px,100%,calc((100dvh - 180px)*16/9))!important;aspect-ratio:16/9!important;max-height:calc(100dvh - 180px)!important}
body:has(.module-cinema) header,body:has(.module-cinema) .room-controls,body:has(.module-cinema) #ask{display:none!important}
@media(max-width:700px){.module-film-heading img{width:72px;height:48px}.module-film-heading h2{font-size:20px}.module-film-heading{gap:10px}.module-cinema .briefing-actions{gap:8px}.module-cinema .briefing-actions button{font-size:14px;padding:10px}.module-cinema video::cue{font-size:16px}}

/* Station navigation has one brand, one title, and one settings control. */
#station-header-title{display:none}
body.workshop-active header{display:grid;grid-template-columns:100px minmax(0,1fr) 48px;gap:12px;align-items:center;background:#082637f2;min-height:76px;padding:8px 16px;}
body.workshop-active #station-header-title{display:block;color:#fff;text-align:center;font-size:clamp(17px,2.4vw,26px);line-height:1.2;min-width:0}
body.workshop-active header .header-northridge,body.workshop-active header #island-battery{display:none!important}
body.workshop-active header .ai-brand-lockup .ai-island-header-logo{width:90px;height:56px}
body.workshop-active header>a{width:auto!important}
body.workshop-active header .hud{max-width:none;justify-content:flex-end}
body.workshop-active header #mobile-settings{width:44px;height:44px;padding:6px}
@media(min-width:801px){body[data-screen="map"] #overlay{background:transparent!important}body[data-screen="map"] #island{display:block;opacity:1;visibility:visible}}
body.workshop-active header{background:#082637}
.module-film-heading img:last-child{display:none}
.module-film-heading h2{flex:1}
.vault-map-pin{display:grid;gap:2px;background:#153e47!important;color:#fff4cf!important}
.vault-map-pin[hidden]{display:none!important}
.visual-prompt{overflow-wrap:anywhere}
@media(max-width:800px){.quiz-show .question-picture .visual-prompt{min-height:0;padding:16px;font-size:20px}}

/* Mobile rooms: size the actual WebGL viewport, then use one scroll surface. */
@media(max-width:1024px){
 body.workshop-active{--room-preview:180px;--game-header:72px}
 body.workshop-active header{min-height:var(--game-header);padding:6px 12px;grid-template-columns:80px minmax(0,1fr) 44px;gap:8px}
 body.workshop-active header .ai-brand-lockup .ai-island-header-logo{width:74px;height:54px}
 body.workshop-active #island{top:var(--game-header);height:var(--room-preview)!important;width:100%!important}
 body.workshop-active #overlay{inset:var(--game-header) 0 0!important;display:block!important;overflow-y:auto!important;overflow-x:hidden!important;padding:var(--room-preview) 0 76px!important;background:transparent!important;scroll-padding-top:12px;overscroll-behavior:contain}
 body.workshop-active .scene-copy,body.workshop-active .thinking-lab,body.workshop-active .quiz-show,body.workshop-active .learning-scene{position:relative!important;inset:auto!important;transform:none!important;width:calc(100% - 24px)!important;max-width:none!important;max-height:none!important;overflow:visible!important;margin:12px!important;padding:18px!important;min-width:0}
 body.workshop-active .quiz-show #main-question,body.workshop-active .learning-scene h2{font-size:clamp(24px,5.5vw,32px);line-height:1.2;margin:12px 0}
 body.workshop-active .learning-scene .teach-copy p{font-size:19px!important;line-height:1.5}
 body.workshop-active .quiz-show .answer-grid button{font-size:17px;min-height:56px;padding:12px;gap:10px}
 body.workshop-active .question-picture{float:none!important;width:100%!important;max-width:100%!important;margin:12px 0!important}
 body.workshop-active .question-picture .picture-crop{max-width:280px;margin:auto}
 body.workshop-active .visual-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
 body.workshop-active .visual-comparison figure{margin:0;padding:10px;min-width:0}
 body.workshop-active .visual-prompt{min-height:0!important;font-size:18px;padding:12px!important}
 body.workshop-active .room-controls{position:relative!important;inset:auto!important;width:calc(100% - 24px);max-width:none;margin:12px!important}
 body.workshop-active #ask{right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:6px;border-radius:50%;width:48px;height:48px}
 body.workshop-active #ask span{display:none}body.workshop-active #ask img{width:34px;height:34px}
 body.workshop-active .quiz-show .ask-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 body.workshop-active #creative-studio-host,body.workshop-active #thinking-lab-host{padding:0!important}
 body:has(.module-cinema) #overlay{inset:0!important;padding:0!important;overflow:hidden!important}
 body.workshop-active .module-cinema{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;align-content:stretch!important;justify-content:stretch!important;gap:12px!important;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))!important}
 .module-cinema .module-film-heading{width:100%;align-self:end}
 .module-cinema .module-film-heading img{height:48px;width:72px}
 .module-cinema .module-film-heading h2{font-size:20px}
 body.workshop-active .station-cinema.module-cinema video{width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:10px}
 .module-cinema .briefing-actions{display:flex!important;flex-wrap:nowrap!important;gap:8px;align-items:center}
 .module-cinema .briefing-actions button{width:auto!important;flex:1!important;min-width:0;min-height:44px;margin:0!important;font-size:14px!important;padding:10px!important}
 .module-cinema video::cue{font-size:16px!important}
 .station-reward[open]{display:block!important;height:auto!important;max-height:94dvh;overflow-y:auto}
 .station-reward .reward-visual{height:160px;min-height:0}.station-reward .reward-copy{padding:20px}
}
@media(max-width:1024px) and (max-height:500px){
 body.workshop-active{--room-preview:0px;--game-header:60px}
 body.workshop-active #island{height:calc(100dvh - 60px)!important}
 body.workshop-active #overlay{background:#082637a8!important}
 body.workshop-active .scene-copy{margin:12px auto!important;width:calc(100% - 32px)!important}
 body.workshop-active .module-cinema{gap:6px!important;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left))!important}
 .module-cinema .module-film-heading img{height:30px;width:52px}.module-cinema .module-film-heading h2{font-size:18px}
 .module-cinema .briefing-actions{justify-content:center}.module-cinema .briefing-actions button{flex:0 1 260px!important}
}
@media(max-width:1024px){
 body.workshop-active .scene-copy.station-cinema.module-cinema{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;margin:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;overflow-y:auto!important}
 body.workshop-active .station-cinema.module-cinema video{flex:none!important;width:min(100%,calc((100dvh - 150px)*16/9))!important;height:auto!important;aspect-ratio:16/9!important;max-height:calc(100dvh - 150px)!important;object-fit:contain!important}
 .module-cinema .module-film-heading{align-self:auto;flex:none}.module-cinema .briefing-actions{width:100%;flex:none}
}
@media(max-width:1024px) and (max-height:500px){
 body.workshop-active .station-cinema.module-cinema video{width:min(100%,calc((100dvh - 110px)*16/9))!important;max-height:calc(100dvh - 110px)!important}
}

/* iOS must scroll the document, not a pointer-transparent fixed overlay. */
@media(max-width:1024px){
 body.workshop-active:not(:has(.station-cinema)){overflow-y:auto!important;overflow-x:hidden!important;height:auto!important;min-height:100dvh;touch-action:pan-y pinch-zoom}
 body.workshop-active:not(:has(.station-cinema)) #overlay{position:relative!important;inset:auto!important;margin-top:var(--game-header,72px);height:auto!important;min-height:calc(100dvh - var(--game-header,72px));max-height:none!important;overflow:visible!important;pointer-events:auto;touch-action:pan-y pinch-zoom;padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}
 body.workshop-active:not(:has(.station-cinema)) #overlay .scene-copy{touch-action:pan-y pinch-zoom}
 body.workshop-active:not(:has(.station-cinema)) #overlay button{touch-action:pan-y pinch-zoom}
}

/* Keep fixed mission actions above moving map markers. */
.quest-map-panel{z-index:8!important;isolation:isolate}.mission-more-content{overflow-anchor:none}.reset-settings{margin-top:24px;border-top:1px solid #88b6bc;padding-top:16px}.mission-more-content .restart-adventure{font-size:16px!important;padding:10px!important;background:#fff3d7!important;color:#143e42!important;letter-spacing:0}
#help .chat-answer,#help .chat-question{font-size:18px;line-height:1.55}#help .help-shortcuts button{font-size:16px}video::cue{font-size:clamp(18px,2vw,28px);color:white;background:#071d2de8}.island-secret-hotspot .secret-label{display:block;font-size:12px;color:#fff}.island-secret-hotspot{min-width:58px;min-height:48px;background:#123b48!important}.station-pin:disabled{opacity:.9!important}.station-pin small{color:#103d38!important}#ending-starters{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}#ending-starters button{font-size:16px}#ending-progress{font-size:17px}#film-loading{color:#fff;font-size:17px}.context-reveal summary{cursor:pointer;padding:12px;color:#173f35;background:#ffdf78;border-radius:10px;list-style:none}.context-reveal[open] img{margin-top:10px}.context-closeup{border-radius:12px}

.context-evidence:has(details[open]) .context-closeup{display:none}body:has(.module-cinema) .island-secret-hotspot,body:has(.module-cinema) #orbit-hint{display:none!important}

.mobile-game-settings .settings-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.mobile-game-settings .settings-heading h2{margin:0}.mobile-game-settings .settings-close-circle{width:60px!important;height:60px!important;min-width:60px;flex:none;padding:0!important;margin:0!important;border:3px solid #83d3e4;border-radius:50%!important;font-family:Arial,sans-serif;font-size:42px!important;line-height:1;color:#fff;background:#173f52}.settings-close-circle:focus-visible{outline:4px solid #ffde78;outline-offset:4px}

/* Exploring must uncover the live canvas at every responsive breakpoint. */
body[data-screen="map"].island-exploring #overlay{background:transparent!important;padding:0!important;overflow:hidden!important;pointer-events:none!important}
body.island-exploring .quest-map-panel[hidden],body.island-exploring .island-stations[hidden]{display:none!important}
body[data-screen="map"].island-exploring #island{display:block!important;visibility:visible!important;opacity:1!important;position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;pointer-events:auto!important;touch-action:none}
body.island-exploring .explore-dock{display:flex;flex-wrap:wrap;bottom:max(16px,env(safe-area-inset-bottom));left:12px;right:12px;justify-content:center;z-index:20;pointer-events:auto}
body.island-exploring .explore-dock button{font-size:15px;min-height:48px;padding:10px 14px}
body.island-exploring #ask{display:none!important}

.hud>#quick-mute{display:block!important;width:46px;min-width:46px;height:48px;min-height:48px;padding:6px;font-size:22px;border:2px solid #73c5d4;border-radius:15px;background:#0c3045;color:white;order:90;box-shadow:0 3px 0 #041e2d}
.hud>#mobile-settings{order:100}.hud>#quick-mute:focus-visible{outline:3px solid #ffd26d;outline-offset:3px}
.news-centre{background:radial-gradient(ellipse at top left,#245d60 0,#102e40 50%,#0a2034 100%);color:#fff6db;border:2px solid #d8b768;box-shadow:0 28px 100px #001321aa,inset 0 1px #fff5cd55;padding:28px;border-radius:28px}
.news-centre>h2{font-size:clamp(29px,4vw,38px);color:#fff5d6;letter-spacing:-.025em;margin-bottom:14px}.news-centre>.eyebrow{color:#8ce5e9}.news-centre>.subtle{color:#c9e1df}.news-centre>p{line-height:1.65}
.news-centre .news-cards{gap:24px;margin-top:24px}.news-centre .news-cards article{position:relative;background:linear-gradient(140deg,#fffbed,#f5e9cd);border:1px solid #d4b676;border-top:4px solid #d9af56;padding:24px;color:#153d3d;box-shadow:0 12px 24px #00172455,inset 0 1px #fff;border-radius:20px;overflow:hidden}
.news-centre .news-cards article>.eyebrow{font-size:12px;letter-spacing:.12em;line-height:1.7;color:#865122}.news-centre .news-cards h3{font-size:27px;line-height:1.2;margin-top:12px;color:#123d40}.news-centre .news-cards p{font-size:17px;line-height:1.65}.news-centre .news-art{width:104px;height:104px;border-radius:22px;display:grid;place-items:center;background:radial-gradient(circle,#f9e8b7,#d7c596);border:1px solid #bfa460;box-shadow:inset 0 2px 10px #fff8,0 7px 13px #203c3825}.news-centre .news-art img{width:90px;height:90px;filter:drop-shadow(0 5px 4px #182c3744)}
.news-centre .news-cards aside{background:#e4eddf;border-left:4px solid #3a8179;padding:16px}.news-centre .news-cards summary{min-height:32px;font-weight:700}.news-centre .news-close{min-height:48px}
@media(max-width:700px){.news-centre{padding:18px}.news-centre .news-cards article{padding:18px}.news-centre .news-art{width:76px;height:76px}.news-centre .news-art img{width:68px;height:68px}.news-centre .news-cards h3{font-size:24px}.hud>#quick-mute{width:40px;min-width:40px;height:44px;min-height:44px}}

/* Native portrait films fit above the phone controls without cropping. */
body.workshop-active .station-cinema.module-cinema[data-film-shape="portrait"] video{width:min(100%,calc((100dvh - 180px)*9/16))!important;height:auto!important;aspect-ratio:9/16!important;max-height:calc(100dvh - 180px)!important;object-fit:contain!important;align-self:center}

/* Writing and lap activities use a single viewport scroll surface, independent of 3D card offsets. */
body:is([data-screen="studio"],[data-screen="lap-journey"]) #overlay{
 position:fixed!important;inset:var(--game-header,90px) 0 0!important;margin:0!important;
 display:block!important;overflow-y:auto!important;overflow-x:hidden!important;
 height:auto!important;min-height:0!important;max-height:none!important;
 padding:16px 12px calc(90px + env(safe-area-inset-bottom))!important;
 box-sizing:border-box;touch-action:pan-y pinch-zoom;pointer-events:auto;
}
body:is([data-screen="studio"],[data-screen="lap-journey"]) :is(#creative-studio-host,#lap-host){width:100%!important;max-width:800px!important;margin:0 auto!important;padding:0!important}
body:is([data-screen="studio"],[data-screen="lap-journey"]) #overlay .scene-copy{
 position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;
 width:100%!important;max-width:none!important;min-width:0!important;max-height:none!important;
 height:auto!important;overflow:visible!important;margin:0!important;box-sizing:border-box;
}
body[data-screen="studio"] .room-controls{display:none!important}
body[data-screen="lap-journey"] fieldset{min-width:0}
@media(max-width:600px){body:is([data-screen="studio"],[data-screen="lap-journey"]) #overlay .scene-copy{padding:20px!important}}

body:is([data-screen="studio"],[data-screen="lap-journey"],[data-screen="login"]) :is(#orbit-hint,.island-secret-hotspot){display:none!important}

.hub-more button.mission-locked{filter:grayscale(1);opacity:.5;cursor:not-allowed;box-shadow:none!important}.games-unlock-note{font-size:14px;line-height:1.5}.mission-bonus-panel{max-height:calc(100dvh - 130px);overflow-y:auto}.mission-bonus-panel .game-art{height:90px;width:90px}

/* Short laptop windows keep the puzzle and its controls together. */
@media (min-width:600px) and (max-height:650px){
 body[data-screen="power-grid"] .grid-stage{display:grid;grid-template-columns:minmax(210px,1fr) minmax(210px,1fr);gap:6px 18px;padding:14px;max-width:850px;margin:0 auto;align-content:start}
 body[data-screen="power-grid"] .grid-stage .arcade-brand{display:none}
 body[data-screen="power-grid"] .grid-stage .eyebrow,body[data-screen="power-grid"] .grid-stage h1,body[data-screen="power-grid"] .grid-stage>p,body[data-screen="power-grid"] .grid-stage>button{grid-column:2;margin:0}
 body[data-screen="power-grid"] .grid-stage h1{font-size:24px}
 body[data-screen="power-grid"] .grid-stage .grid-endpoints{grid-column:1;grid-row:1;margin:0;font-size:11px}
 body[data-screen="power-grid"] .cable-board{grid-column:1;grid-row:2 / span 9;width:100%;max-width:300px;align-self:start;margin:0 auto}
 body[data-screen="power-grid"] .grid-stage>button{min-height:44px;padding:8px}
}
.studio-panel #studio-back{position:relative}.studio-panel textarea{max-width:100%;box-sizing:border-box}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

#demo-flight,#demo-kart,#demo-grid,#arcade-launch{display:none!important}
@media (min-width:600px) and (max-height:650px){body[data-screen="power-grid"] #overlay{position:fixed;inset:108px 10px 8px;height:auto;width:auto;padding:0;display:block}body[data-screen="power-grid"] .grid-stage{box-sizing:border-box;width:100%;height:100%;max-height:100%;overflow:auto}body[data-screen="power-grid"] .cable-board{max-width:260px}}

.building-stars{display:block!important;color:#b67708;font-size:13px;line-height:1.5;letter-spacing:1px;white-space:nowrap}.scene-copy .building-stars{font-size:22px;color:#ffda70}

.adventure-art-tile{width:100%;aspect-ratio:1;background-size:300% 300%;background-repeat:no-repeat;border-radius:14px;background-color:#17484d}.adventure-illustration .art-context{font-size:14px;margin:8px 0 0}.adventure-visuals{display:grid;gap:10px}.adventure-visuals .has-evidence{display:block;max-width:180px;margin:0 auto}.adventure-visuals .has-evidence .art-context{display:none}.adventure-illustration{overflow:hidden}body[data-screen="replay-lesson"] .question-scene{max-height:calc(100dvh - 100px);overflow:auto}@media(max-width:700px){.adventure-art-tile{max-width:280px;margin:auto}.adventure-illustration{max-width:330px;margin:10px auto}}

/* The 3D world leads; signs appear only when a building is explored. */
@media(min-width:701px){
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station]{opacity:0;pointer-events:none;transition:opacity .15s ease;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station].next-station{opacity:1;pointer-events:auto;background:transparent;border-color:transparent;box-shadow:none;min-width:48px;width:48px;height:48px;padding:0;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station].next-station>b,body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station].next-station>span{display:none;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin.next-station::before{content:'★';position:static;display:block;background:#123d48;color:#ffe183;font-size:32px;line-height:46px;width:48px;height:48px;border:2px solid #f8cf6d;border-radius:50%;padding:0;box-shadow:0 0 20px #ffd36688;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station]:is(.sign-revealed,:focus-visible,:hover){opacity:1;pointer-events:auto;background:#fff3cf;border:2px solid #c39c50;box-shadow:0 4px 0 #ad965b;min-width:180px;width:auto;height:auto;padding:12px;z-index:5;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station]:is(.sign-revealed,:focus-visible,:hover)>b,body[data-screen="map"]:not([data-quality="flat"]) .station-pin[data-station]:is(.sign-revealed,:focus-visible,:hover)>span{display:block;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin.next-station:is(.sign-revealed,:focus-visible,:hover)::before{display:none;}
 body[data-screen="map"] .vault-map-pin{opacity:0;}
 body[data-screen="map"] .vault-map-pin:is(:hover,:focus-visible){opacity:1;}
}
@media(min-width:701px){
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin.next-station:not(.sign-revealed):not(:focus-visible):not(:hover){background:transparent!important;border:0!important;box-shadow:none!important;animation:none!important;}
 body[data-screen="map"]:not([data-quality="flat"]) .station-pin.next-station::after{display:none!important;}
}

.hub-ask-ai{display:flex!important;flex-direction:column;gap:6px;width:100%;margin:12px 0;padding:14px!important;min-height:64px}.hub-ask-ai small{font-size:13px;line-height:1.4}.help-source{display:block;font-size:13px;line-height:1.5;margin:0 0 16px;color:#224d48}#help{max-height:85dvh;overflow-y:auto;width:min(560px,calc(100vw - 32px));box-sizing:border-box}#help input{min-width:0;max-width:100%;box-sizing:border-box}

/* Compact creative tools, usable on iPad and small screens. */
.hub-ask-ai{display:flex!important;align-items:center;justify-content:center;gap:12px}.ai-button-icon{font-size:32px;flex-shrink:0}.hub-ask-ai b{font-size:18px;line-height:1.25}.hub-picture-ai{font-size:18px!important}
.simple-picture{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}.simple-picture header{display:flex;align-items:center;justify-content:space-between;gap:16px}.simple-picture header h2{margin:0}.simple-picture header button{font-size:28px;min-width:48px}.simple-picture textarea{width:100%;box-sizing:border-box;font:inherit;resize:vertical}.simple-picture form{display:grid;gap:14px;margin-top:20px}.picture-progress progress{width:100%;height:18px;accent-color:#d4a334}.picture-progress p{font-size:16px}.simple-picture-result img{display:block;width:100%;border-radius:16px;margin-top:16px}#help{max-height:calc(100dvh - 32px);overflow:auto}#demo-nickname{box-sizing:border-box;width:100%}

.simple-picture header{position:static!important;inset:auto!important;width:auto!important;height:auto!important;padding:0!important;background:transparent!important;box-shadow:none!important;color:#164541!important;z-index:auto!important}.simple-picture header h2{font-size:26px}.ai-button-icon{width:44px;height:44px;object-fit:cover;border-radius:50%}

.simple-picture textarea{padding:14px;border:2px solid #a3ae92;border-radius:14px;background:#fff;color:#164541;min-height:110px}.picture-progress{margin-top:16px}

.parent-pin-dialog{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;width:min(540px,calc(100vw - 32px))}.parent-pin-dialog form{display:grid;gap:12px}.parent-pin-dialog p{margin:8px 0}.parent-pin-dialog input{box-sizing:border-box;width:100%}

/* Keep the guide in the learning card instead of covering its final action. */
body.inline-guide #ask{display:none!important}
.inline-guide-button{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:16px;min-height:48px;width:100%;font-size:16px}
.inline-guide-button img{width:36px;height:36px;object-fit:contain}
.book-dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}
.book-dialog textarea{width:100%;box-sizing:border-box;min-height:100px;font:inherit;padding:12px}

/* Free device edition contains learning activities, without unavailable generation. */
.device-learning-edition :is(#account,#mobile-pass,#picture-tool,#map-picture,#practice-picture,#practice-lab,#use-ai-now,#secret-vault,#hub-labs,#hub-club,#studio-picture,#weekly-picture,.creation-only){display:none!important}

/* Spenser review fixes, 2026-11-03: one scroll surface and distinct actions. */
body.workshop-active:not(:has(.nr-inline-film)) #overlay{position:fixed!important;inset:72px 0 0!important;margin:0!important;height:auto!important;min-height:0!important;max-height:none!important;display:block!important;overflow-y:auto!important;overflow-x:hidden!important;padding:16px 16px calc(32px + env(safe-area-inset-bottom))!important;box-sizing:border-box;touch-action:pan-y pinch-zoom;overscroll-behavior:contain}
body.workshop-active #overlay .scene-copy{position:relative!important;inset:auto!important;transform:none!important;margin:0 0 16px auto!important;width:min(580px,100%)!important;max-width:100%!important;min-width:0!important;height:auto!important;max-height:none!important;overflow:visible!important;box-sizing:border-box}
body.workshop-active .scene-copy :is(p,h2,h3,button,summary){overflow-wrap:anywhere;white-space:normal}
body.workshop-active .scene-copy .answer-grid{display:grid;gap:12px;clear:both;min-width:0}
body.workshop-active .scene-copy .answer-grid button{background:#ffdf83!important;color:#123a44!important;border:2px solid #cba84c;min-height:54px!important;width:100%;text-align:left;font-weight:700}
body.workshop-active .scene-copy :is(.ask-row button,.lesson-tools button,#replay-hear,#replay-read,.inline-guide-button,.lesson-exit,#replay-exit){background:#153b49!important;color:#effbff!important;border:1px solid #8cbac5;min-height:48px;padding:12px;font-size:16px}
body.workshop-active .scene-copy .lesson-exit{display:block;width:100%;margin-top:20px;background:transparent!important;text-decoration:underline}
body.workshop-active .ask-row{border-top:1px solid #8cbac5;padding-top:16px;margin-top:20px;display:flex!important;flex-wrap:wrap;gap:10px}
body.workshop-active .room-controls{position:relative!important;inset:auto!important;width:min(580px,100%)!important;margin:0 0 0 auto!important}
body.workshop-active .question-picture{max-width:42%;float:right;margin:0 0 16px 16px}
@media(max-width:700px){body.workshop-active #overlay .scene-copy{width:100%!important;padding:18px!important}body.workshop-active .question-picture{float:none;max-width:100%;margin:12px 0}}
body.mission-menu-open .quest-map-panel{max-height:calc(100dvh - 96px)!important;overflow-y:auto!important;overscroll-behavior:contain}
body.mission-menu-open :is(.island-stations,.island-secret-hotspot){visibility:hidden!important;pointer-events:none!important}
.island-secret-hotspot{width:96px!important;max-width:96px;min-height:68px;white-space:normal!important;overflow-wrap:anywhere;line-height:1.25}
.island-secret-hotspot .secret-label{font-size:14px!important;line-height:1.3;white-space:normal!important}
body:is([data-screen="map"],[data-screen="splash"]) .station-pin{outline-offset:2px}
body[data-screen="map"]:not([data-quality="flat"]) .station-pin.next-station::before{content:'\2605'!important}
.station-pin>b{font-size:14px!important;min-width:64px}.station-pin small{line-height:1.35;white-space:normal}
#mobile-settings{min-width:48px!important;min-height:48px!important;font-size:26px!important}
.nr-inline-film{object-fit:contain!important}.nr-inline-close{display:none!important}

/* Visible companion stays outside transformed lesson cards and clear of controls. */
body.workshop-active.nr-watching{padding-bottom:0!important}
body.workshop-active > .nr-watcher{position:fixed!important;inset:auto auto max(16px,env(safe-area-inset-bottom)) 16px!important;width:120px!important;margin:0!important;z-index:20}
body.workshop-active > .nr-watcher button{min-height:44px;font-size:12px}
@media(max-width:959px){
 body.workshop-active.nr-watching:not(:has(.nr-inline-film)) #overlay{bottom:calc(128px + env(safe-area-inset-bottom))!important}
 body.workshop-active > .nr-watcher{inset:auto 16px max(8px,env(safe-area-inset-bottom)) 16px!important;width:auto!important;height:112px;display:grid;grid-template-columns:88px 1fr;grid-template-rows:1fr 48px;gap:0 8px;padding:6px 10px}
 body.workshop-active > .nr-watcher video{grid-row:1 / 3;width:88px;height:98px}
 body.workshop-active > .nr-watcher small{font-size:12px;align-self:center;padding:0}
 body.workshop-active > .nr-watcher button{width:100%;min-height:44px;align-self:center;border-radius:8px}
}

/* Keep support action labels whole while preserving the approved wrapping row. */
body.workshop-active .scene-copy .ask-row button{flex:1 1 140px;min-width:min(140px,100%);max-width:100%;overflow-wrap:normal;word-break:normal;hyphens:none}

/* Preserve existing controls; enlarge phone touch targets. */
@media(max-width:700px){
 .hud>#quick-mute{width:44px;min-width:44px}
 body.workshop-active .room-controls summary,
 body.workshop-active .scene-copy .replay-idea>summary{box-sizing:border-box;min-height:44px;padding-block:12px;cursor:pointer}
}

/* Reserve space for both existing header controls on narrow screens. */
@media(max-width:700px){body.workshop-active header{grid-template-columns:80px minmax(0,1fr) max-content}}
