*{box-sizing:border-box}html,body,#root{color:#eaf0f5;background:#0b1016;min-height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui}button,textarea{font:inherit}.app{grid-template-rows:70px 1fr 42px;height:100vh;display:grid;overflow:hidden}header{background:#0e151e;border-bottom:1px solid #263342;justify-content:space-between;align-items:center;padding:0 28px;display:flex}header>div:first-child{letter-spacing:.06em;flex-direction:column;display:flex}header small{color:#71859a;margin-top:4px;font:11px monospace}.hud{color:#8093a7;gap:28px;font:13px monospace;display:flex}main{grid-template-columns:minmax(0,1fr) 330px;min-height:0;display:grid}.gamehost{background:#111821;min-width:0;min-height:0}.gamehost canvas{object-fit:contain;image-rendering:auto;max-width:100%;max-height:100%;display:block}aside{background:#111923;border-left:1px solid #263342;padding:24px;overflow:auto}.paneltitle{color:#78c841;letter-spacing:.1em;align-items:center;gap:8px;font:12px monospace;display:flex}aside h2{margin:18px 0 8px;font-size:25px}aside p{color:#91a0af;font-size:13px;line-height:1.5}.questlist{gap:8px;margin-top:20px;display:grid}.mission{background:#16212c;border:1px solid #334253;align-items:center;gap:11px;padding:11px;display:flex}.mission>span{background:#273647;flex:0 0 34px;place-items:center;height:34px;font:700 11px monospace;display:grid}.mission>span svg{width:14px}.mission div{flex-direction:column;gap:3px;min-width:0;display:flex}.mission b{font-size:12px}.mission small{color:#8394a6;font-size:10px}.mission.done{border-color:#2b765e}.mission.done>span{color:#07120e;background:#78c841}.mission.locked{opacity:.38}.controls{color:#8193a5;border-top:1px solid #273441;gap:12px;margin-top:20px;padding-top:18px;display:flex}.controls div{flex-direction:column;gap:6px;display:flex}.controls b{color:#cbd5df;font:11px monospace}.controls span{font-size:11px;line-height:1.6}.reset{color:#617385;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:18px;font-size:11px;display:flex}.reset svg{width:13px}footer{color:#b9c5d0;background:#080c11;border-top:1px solid #263342;justify-content:space-between;align-items:center;padding:0 25px;font:12px monospace;display:flex}.footerhint{color:#61798e}.overlay{z-index:20;background:#05080cef;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.challenge{background:#101822;border:1px solid #344558;grid-template-columns:42% 58%;width:min(1200px,96vw);height:min(740px,92vh);display:grid;position:relative;overflow:hidden;box-shadow:0 25px 90px #000}.close{z-index:3;color:#aab8c6;cursor:pointer;background:#111a24;border:1px solid #3b4a5b;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:14px;right:14px}.lesson{border-right:1px solid #334253;padding:38px;overflow:auto}.eyebrow{letter-spacing:.13em;color:#78c841;font:11px monospace}.lesson h1{margin:10px 0 20px;font-size:31px}.speech{background:#17232e;border-left:3px solid #78c841;gap:14px;padding:14px;display:flex}.speech p{color:#b9c5d0;margin:0;font-size:13px;line-height:1.45}.speech p small{color:#70869a;margin:2px 0 5px;display:block}.portrait{background:#111a22;border:1px solid #78c841;flex:0 0 44px;place-items:center;height:44px;display:grid;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%;display:block}.steps{gap:8px;margin:24px 0 17px;display:flex}.steps span{color:#6d8094;border:1px solid #405266;border-radius:50%;place-items:center;width:28px;height:28px;font:11px monospace;display:grid}.steps span.on{color:#07120e;background:#78c841;border-color:#78c841}.lesson h2{margin:0 0 7px;font-size:20px}.lesson>p{color:#a8b5c1;font-size:14px;line-height:1.55}.concept{border:1px solid #2e4052;flex-direction:column;gap:5px;margin-top:16px;padding:12px;display:flex}.concept b{color:#78c841;font:11px monospace}.concept span{color:#aebac6;font-size:12px}.hint{color:#b9e596;background:#182614;border:1px solid #527c34;gap:8px;margin-top:12px;padding:11px;font-size:12px;display:flex}.hint svg,.ghost svg{flex:none;width:15px}.ghost{color:#b9c6d2;cursor:pointer;background:0 0;border:1px solid #405165;align-items:center;gap:8px;margin-top:12px;padding:9px 12px;display:flex}.feedback{color:#9bb0c4;margin-top:12px;font-size:12px}.workspace{background:#0b1118;grid-template-rows:48px minmax(180px,1fr) 250px 60px;min-width:0;display:grid}.editorbar{color:#aebdca;border-bottom:1px solid #273748;justify-content:space-between;align-items:center;padding:0 18px;font:12px monospace;display:flex}.editorbar b{color:#78c841}.workspace textarea{resize:none;color:#e6edf3;caret-color:#78c841;background:#0b1118;border:0;outline:0;padding:25px;font:17px/1.75 SFMono-Regular,Consolas,monospace}.preview{background:#17202a;border-top:1px solid #2e3c4b;padding:15px 22px;overflow:hidden}.preview>small{color:#75889b;letter-spacing:.12em;font:10px monospace}.studentcard{color:#111820;background:#eef2f5;grid-template-rows:auto 1fr auto;grid-template-columns:1fr auto;width:280px;height:135px;margin-top:10px;padding:15px;display:grid;box-shadow:8px 8px #263545}.studentcard b{color:#78c841;font-size:19px}.studentcard strong{grid-column:1/3;align-self:end;font-size:24px}.studentcard span{color:#43505c;grid-column:1/3;font:12px monospace}.webpreview{color:#1b2530;background:#fff;width:100%;height:180px;margin-top:8px;padding:35px 22px 15px;position:relative}.fakeurl{color:#62717f;background:#dfe5ea;height:25px;padding:5px 10px;font:10px monospace;position:absolute;inset:0 0 auto}.webpreview h3{margin:0 0 4px}.webpreview p{color:#68737d;font-size:11px}.webpreview button{color:#fff;border:0;padding:10px 15px}.robotworld{background:linear-gradient(#172b3a 70%,#25382b 70%);border:1px solid #344b5e;height:180px;margin-top:8px;position:relative;overflow:hidden}.track{background:#5c7183;height:3px;position:absolute;bottom:43px;left:8%;right:8%}.robot{font-size:31px;transition:left .35s;position:absolute;bottom:49px;transform:translate(-50%)}.charger{font-size:34px;position:absolute;bottom:47px;right:7%}.robotworld small{color:#91a5b7;font:10px monospace;position:absolute;bottom:8px;left:10px}.system{color:#8095a7;background:#081018;border:1px solid #385065;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:180px;margin-top:8px;font:12px monospace;display:flex}.system svg{width:28px}.system b{color:#d5dee7;font-size:17px}.system.online{border-color:#78c841;box-shadow:inset 0 0 40px #78c84115}.system.online b,.system.online svg{color:#78c841}.power{background:#1c2b36;width:180px;height:8px}.power i{background:#78c841;height:100%;transition:width .3s;display:block}.run{color:#07120e;letter-spacing:.05em;cursor:pointer;background:#78c841;border:0;justify-content:center;align-items:center;gap:10px;font:700 13px monospace;display:flex}.run:hover{filter:brightness(1.08)}.run svg{width:18px}.victory{background:#05090cf5}.victorybox{text-align:center;background:#0c1716;border:1px solid #2c765e;width:min(620px,90vw);padding:48px;box-shadow:0 0 100px #78c84118}.bigcheck{color:#78c841;border:2px solid #78c841;place-items:center;width:70px;height:70px;margin:auto auto 20px;font-size:36px;display:grid}.victorybox h1{margin:10px;font-size:38px}.victorybox p{color:#9fb1ad;line-height:1.6}.learned{flex-wrap:wrap;justify-content:center;gap:8px;margin:25px;display:flex}.learned span{color:#75c9ae;border:1px solid #315d50;padding:7px 10px;font:10px monospace}.victorybox>strong{color:#78c841;margin:20px;font:28px monospace;display:block}.victorybox button{cursor:pointer;background:#78c841;border:0;padding:14px 22px;font:700 12px monospace}@media (width<=900px){main{grid-template-columns:1fr}aside{display:none}.challenge{grid-template-columns:1fr;height:94vh;overflow:auto}.lesson{border-right:0}.workspace{min-height:620px}.overlay{padding:10px}.footerhint{display:none}}main{grid-template-columns:minmax(0,1fr) 350px}.gamewrap{background:#111820;min-width:0;min-height:0;position:relative;overflow:hidden}.gamehost{position:absolute;inset:0}.worldhelp{z-index:8;color:#dce5eb;pointer-events:none;background:#101820e8;border:1px solid #fff3;grid-template-columns:auto auto;align-items:center;gap:7px 12px;padding:12px 14px;display:grid;position:absolute;top:18px;left:18px;box-shadow:0 8px 25px #0005}.worldhelp b{color:#8fa1ae;letter-spacing:.08em;font:10px monospace}.worldhelp span{font-size:11px}.worldhelp kbd{color:#fff;background:#26343d;border:1px solid #6e7f8b;border-bottom-width:3px;border-radius:4px;place-items:center;min-width:25px;height:25px;margin-right:3px;font:700 11px monospace;display:inline-grid}.worldhelp strong{color:#f2bd43;font-size:18px}.gamehost canvas{outline:none}.controls{background:#0c141c;border:1px solid #2c3c49;padding:13px!important}.mission:not(.locked):not(.done)>span{color:#16120a;background:#d29b2e}.deadline{color:#8a4d00;letter-spacing:.08em;background:#fff0d8;border:1px solid #e8b45e;margin-bottom:10px;padding:7px 10px;font:800 11px/1 Arial,sans-serif;display:inline-block}.rewardline{background:#f7f4ec;border-left:4px solid #e0a52f;flex-direction:column;gap:4px;margin:14px 0 18px;padding:12px;display:flex}.rewardline b{letter-spacing:.12em;font-size:11px}.rewardline span{color:#55616a;font-size:13px}.intro{z-index:200;background:radial-gradient(circle at 50% 25%,#263a47,#0d151b 65%);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.introcard{background:#f5f0e6;border:4px solid #111820;width:min(720px,92vw);padding:42px;box-shadow:14px 14px #0006}.glitch{letter-spacing:.14em;color:#51616c;font:900 15px/1 monospace}.alert{color:#fff;letter-spacing:.1em;background:#c84b52;margin:22px 0 8px;padding:8px 12px;font:900 12px/1 Arial;display:inline-block}.intro p{color:#46545d;font-size:17px;line-height:1.55}.missionbrief span{background:#fff;border:1px solid #d5cfc4;padding:16px;font-size:13px;font-weight:800}.missionbrief b{color:#d99e2c;margin-bottom:8px;font-size:24px;display:block}.zero{background:#e8f5ef;border-left:4px solid #43b98c;padding:12px 14px}.intro button{color:#fff;cursor:pointer;background:#17232b;border:0;align-items:center;gap:10px;margin-top:20px;padding:16px 24px;font-size:15px;font-weight:900;display:flex}.intro button:hover{transform:translateY(-2px)}.pitch{color:#fff;background:#17232b;flex-direction:column;gap:6px;margin:20px 0;padding:16px;display:flex}.pitch b{color:#78c841;letter-spacing:.1em;font-size:12px}.pitch span{line-height:1.45}.workspace textarea{caret-color:#fff}.workspace textarea:focus{outline-offset:-3px;outline:3px solid #e0a52f}@media (width<=760px){.missionbrief{grid-template-columns:1fr}.introcard{padding:26px}.intro h1{font-size:34px}}.editorbar{gap:16px;padding:0 10px 0 18px}.editoractions{align-items:center;gap:14px;height:100%;display:flex}.close{color:#c7d2dc;letter-spacing:.06em;cursor:pointer;background:#16212c;border:1px solid #405165;align-items:center;gap:7px;width:auto;height:34px;padding:0 10px;font:10px monospace;display:flex;position:static}.close svg{width:15px;height:15px}.close:hover{color:#fff;background:#263544}.close span{display:inline}.lesson{padding-top:32px}.lesson h1{padding-right:0}.mission:not(.locked)>span{color:#d69719}.mission.done>span{color:#07120e}@media (width<=600px){.close span{display:none}.editoractions{gap:7px}.editorbar{padding-left:12px}.close{padding:0 8px}}:root{--ink:#26323b;--paper:#f7f2e8;--red:#e84f5b;--yellow:#f1c85b;--cyan:#62b9d9;--purple:#a57bdd;--green:#58c39b}.app{background:#17202a}header{border-bottom:4px solid var(--ink);color:var(--ink);background:#f7f2e8}header small,.hud{color:#66747c}aside{color:var(--ink);border-left:4px solid var(--ink);background:#f7f2e8}.paneltitle{color:#168765;font-weight:900}.rewardline{border:2px solid var(--ink);border-left:8px solid var(--yellow);background:#fff;box-shadow:4px 4px #26323b22}.mission{background:#fff;border:2px solid #c9c3b7}.mission>span{background:var(--paper);border:2px solid var(--ink)}.controls{color:#5c6970;border:2px solid var(--ink)!important;background:#fff!important}footer{background:var(--ink);color:#f7f2e8;border:0}.stylebadge{z-index:9;background:var(--paper);color:var(--ink);border:3px solid var(--ink);pointer-events:none;flex-direction:column;padding:10px 12px;display:flex;position:absolute;top:18px;right:18px;box-shadow:5px 5px #0004}.stylebadge b{letter-spacing:.1em;font:900 11px/1 monospace}.stylebadge span{color:#617078;margin-top:5px;font:10px/1.4 monospace}.worldhelp{background:var(--paper);color:var(--ink);border:3px solid var(--ink);box-shadow:5px 5px #0004}.worldhelp kbd{background:var(--ink);color:#fff;border-color:#10161b}.introcard{border:4px solid var(--ink);background:var(--paper);box-shadow:12px 12px 0 var(--yellow)}.intro h1{color:var(--ink)}.intro p{color:#536168}.missionbrief span{border:2px solid var(--ink);box-shadow:3px 3px #26323b22}.missionbrief b{color:#bd8615}.zero{border-color:var(--green);background:#e7f4ee}.intro button{background:var(--red);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}.stylebadge{color:#fff;background:#121923;border-color:#05080c;box-shadow:5px 5px #0008}.stylebadge b{color:#78c841}.stylebadge span{color:#aab6c5}.gamewrap.iso{background:radial-gradient(circle at 50% 45%,#222c39 0,#111620 72%)}.worldhelp{color:#f7f9fb;background:#121923eb;border-color:#05080c;box-shadow:5px 5px #0008}.worldhelp b{color:#9ba9ba}.worldhelp kbd{color:#111722;background:#f6f7f9;border-color:#7b8795}.worldhelp strong{color:#ffd447}header{color:#fff;background:#101720;border-bottom-color:#05080c}header b{color:#fff}header small{color:#78c841}.hud{color:#a9b5c2}.hud b{color:#ffd447}aside{color:#f7f9fb;background:#161e29;border-left-color:#05080c}aside p{color:#aab6c5}.paneltitle{color:#78c841}.rewardline{color:#fff;background:#101720;border-color:#05080c;box-shadow:4px 4px #0005}.rewardline span{color:#bac4ce}.mission{background:#111923;border-color:#303c4d}.mission small{color:#8f9cac}.mission:not(.locked):not(.done){border-color:#78c841;box-shadow:4px 4px #78c84133}.controls{color:#9eacbb;background:#101720!important;border-color:#303c4d!important}.controls b{color:#fff}footer{color:#dce4ec;background:#090e14}.footerhint b{color:#ffd447}.app.v2 header{background:#0d141b;border-bottom:1px solid #26313b;padding:0 18px}.app.v2 .hud{letter-spacing:.08em;font-size:11px}.app.v2 .hud b{color:#78c841}.app.v2 .topreset{color:#667787;margin:0}.app.v2 main.gameonly{min-height:0;display:block;position:relative;overflow:hidden}.app.v2 .gamewrap.topdown{background:#0f151c;position:absolute;inset:0;overflow:hidden}.app.v2 .gamehost{position:absolute;inset:0}.app.v2 .gamehost canvas{object-fit:cover;width:100%;height:100%;image-rendering:auto!important}.app.v2 .worldhelp{background:#101820e8;border:1px solid #35424d;border-radius:6px;padding:10px 12px;top:16px;left:16px;box-shadow:0 10px 30px #0006}.app.v2 .worldhelp kbd{box-shadow:none;border-radius:4px}.app.v2 footer{background:#080d12;border-top:1px solid #202a33;padding:0 18px}.dialogueLayer{z-index:150;pointer-events:auto;justify-content:center;align-items:flex-end;padding:0 28px 46px;display:flex;position:fixed;inset:0}.dialogueSceneShade{pointer-events:none;background:linear-gradient(#0000 20%,#05090d12 55%,#05090d9c 100%);position:absolute;inset:0}.dialogueWrap{z-index:1;filter:drop-shadow(0 18px 34px #0009);grid-template-columns:205px minmax(0,1fr);align-items:end;gap:0;width:min(1080px,94vw);display:grid;position:relative}.dialoguePortrait{z-index:2;background:#111a22;border:3px solid #070b0f;border-bottom-width:0;border-radius:10px 10px 0 0;justify-content:center;align-self:end;align-items:flex-end;height:258px;display:flex;position:relative;overflow:hidden}.dialoguePortrait img{object-fit:cover;width:100%;height:100%;display:block}.dialogueBox{color:#edf3f7;background:linear-gradient(#141e28 0%,#0c141c 100%);border:3px solid #070b0f;border-left:0;min-height:190px;padding:26px 28px 22px 34px;position:relative}.dialogueBox:before{content:"";pointer-events:none;border:1px solid #ffffff18;position:absolute;inset:7px}.dialogueName{color:#fff;background:#78c841;border:3px solid #070b0f;align-items:baseline;gap:12px;padding:9px 14px 8px;display:flex;position:absolute;top:-31px;left:30px;box-shadow:5px 5px #0005}.dialogueName b{letter-spacing:.045em;text-transform:uppercase;font:900 14px/1 monospace}.dialogueName span{color:#e8f5df;text-transform:uppercase;opacity:.82;font:600 10px/1 monospace}.dialogueBox p{color:#e6edf2;max-width:800px;margin:11px 0 24px;font-size:18px;line-height:1.55}.dialogueActions{z-index:2;justify-content:flex-end;gap:10px;display:flex;position:relative}.dialogueActions button{letter-spacing:.08em;cursor:pointer;border:1px solid #42515f;min-height:42px;padding:0 16px;font:800 11px/1 monospace}.dialogueLater{color:#9eacb8;background:#131d26}.dialogueLater:hover{color:#fff;background:#202c37}.dialogueHelp{align-items:center;gap:7px;display:flex;color:#18140a!important;background:#78c841!important;border-color:#78c841!important}.dialogueHelp:hover{filter:brightness(1.08)}.dialogueHelp svg{width:16px;height:16px}@media (width<=760px){.dialogueLayer{padding:0 12px 24px}.dialogueWrap{grid-template-columns:125px 1fr}.dialoguePortrait{height:190px}.dialogueBox{min-height:165px;padding:24px 18px 16px 22px}.dialogueName{left:18px}.dialogueName span{display:none}.dialogueBox p{margin-bottom:16px;font-size:15px}}.wayfindingLayer{z-index:175;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#071019b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.wayfindingCard{color:#17212a;background:#f4f0e7;border:4px solid #17212a;width:min(620px,92vw);padding:0 28px 26px;box-shadow:12px 12px #78c841}.wayfindingHeader{border-bottom:3px solid #17212a;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 0 18px;display:flex}.wayfindingHeader span{letter-spacing:.15em;color:#b47700;font:800 11px monospace}.wayfindingHeader h2{margin:4px 0 0;font-size:30px}.wayfindingHeader button{cursor:pointer;background:#fff;border:2px solid #17212a;place-items:center;width:40px;height:40px;display:grid}.wayfindingHeader button svg{width:20px}.wayfindingIntro{color:#59666d;margin:18px 0;line-height:1.5}.wayfindingList{background:#fff;border:3px solid #17212a;display:grid}.wayfindingRow{border-bottom:2px solid #d6d1c7;grid-template-columns:190px 1fr;align-items:center;min-height:58px;padding:8px 16px;display:grid}.wayfindingRow:last-child{border-bottom:0}.wayfindingRoom{align-items:center;gap:9px;font:900 14px monospace;display:flex}.wayfindingRoom svg{color:#78c841;width:17px}.wayfindingRow strong{font-size:16px}.wayfindingTip{color:#637078;align-items:center;gap:12px;margin-top:18px;font-size:12px;display:flex}.wayfindingTip kbd{color:#fff;background:#17212a;border:0;border-radius:3px;padding:7px 10px;font:700 12px monospace}@media (width<=620px){.wayfindingCard{padding:0 18px 20px}.wayfindingRow{grid-template-columns:1fr;gap:5px}.wayfindingHeader h2{font-size:24px}}:root{--glr-green:#78c841;--glr-green-dark:#4f9f25;--glr-ink:#17212a;--glr-paper:#f6f3ea}.intro{background:radial-gradient(circle at 50% 18%,#26362a 0%,#111820 58%,#0b1016 100%)}.introcard{background:var(--glr-paper);width:min(720px,92vw);color:var(--glr-ink);border:4px solid var(--glr-ink);box-shadow:14px 14px 0 var(--glr-green);padding:42px}.intro h1{color:var(--glr-ink);margin:0 0 18px;font-size:46px;line-height:1.05}.introcard>p{color:#46545d;margin:0 0 22px;font-size:17px;line-height:1.65}.introcard>p b{color:var(--glr-green-dark)}.missionbrief{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0;display:grid}.missionbrief span{text-align:center;color:#36434b;border:2px solid var(--glr-ink);background:#fff;justify-content:center;align-items:center;min-height:68px;padding:12px 10px;font-size:12px;line-height:1.45;display:flex;box-shadow:3px 3px #17212a22}.missionbrief b{color:var(--glr-green-dark);margin-right:4px}.zero{border-left:5px solid var(--glr-green);background:#eaf5e2;padding:13px 15px;color:#314038!important}.zero b{color:#356d1b!important}.intro button{border:3px solid var(--glr-ink);background:var(--glr-green);color:#10200c;box-shadow:5px 5px 0 var(--glr-ink);cursor:pointer;align-items:center;gap:10px;margin-top:18px;padding:16px 24px;font-size:15px;font-weight:900;display:flex}.intro button:hover{background:#88d653;transform:translateY(-2px)}.intro button:focus-visible{outline-offset:4px;outline:4px solid #fff}@media (width<=760px){.missionbrief{grid-template-columns:1fr}.introcard{padding:26px}.intro h1{font-size:34px}.introcard>p{font-size:15px}}.app.v2 .worldhelp{color:#fff;background:#101923f0;border:2px solid #5d6772;border-radius:10px;max-width:300px;padding:14px 16px;box-shadow:0 10px 22px #0008}.app.v2 .worldhelp b{color:#78c841;margin-bottom:5px;display:block}.app.v2 .worldhelp span{color:#dfe8ee;margin-bottom:6px;display:block}.app.v2 .worldhelp kbd{color:#fff;background:#1b2530;border:1px solid #6e7a86}.dialogueBox{background:linear-gradient(#1a262f 0%,#111820 100%)}.challenge .eyebrow,.paneltitle,.wayfindingHeader span{color:#78c841}.wayfindingCard{box-shadow:12px 12px #78c841}.app.v2{background:#303a43;grid-template-rows:1fr}.app.v2>header,.app.v2>footer{display:none!important}.app.v2 main.gameonly{grid-row:1;min-height:100vh}.app.v2 .gamewrap.topdown{background:#303a43;inset:0}.app.v2 .gamehost canvas{image-rendering:auto!important}.gameBrief{z-index:30;color:#f5f7f8;pointer-events:none;background:#151e28f2;border:2px solid #67727d;border-radius:9px;flex-direction:column;gap:3px;width:min(440px,46vw);padding:13px 16px;font:500 14px/1.35 system-ui,sans-serif;display:flex;position:absolute;top:18px;left:18px;box-shadow:0 8px 22px #0007}.gameBrief b{color:#8bd957;margin-bottom:2px;font:800 17px/1.25 system-ui,sans-serif}.gameBrief strong{color:#8bd957}.gameBrief span{display:block}.gameControls{z-index:30;color:#fff;pointer-events:none;background:#151e28f2;border:2px solid #67727d;border-radius:9px;align-items:center;gap:22px;padding:10px 14px;display:flex;position:absolute;top:18px;right:18px;box-shadow:0 8px 22px #0007}.gameControls i{color:#fff;background:#202b35;border:2px solid #a6b0b8;border-radius:5px;place-items:center;width:27px;height:27px;font:800 13px/1 monospace;display:grid;box-shadow:inset 0 0 0 1px #0d141a}.wasd{grid-template-rows:27px 27px auto;grid-template-columns:repeat(3,27px);gap:3px;display:grid}.wasd i:first-child{grid-column:2}.wasd i:nth-child(2){grid-area:2/1}.wasd i:nth-child(3){grid-area:2/2}.wasd i:nth-child(4){grid-area:2/3}.wasd small{text-align:center;grid-column:1/4;margin-top:3px}.ekey{flex-direction:column;align-items:center;gap:6px;display:flex}.gameControls small{color:#e8edf0;white-space:nowrap;font:600 11px/1 system-ui,sans-serif}@media (width<=720px){.gameBrief{width:calc(100vw - 36px);font-size:12px}.gameBrief b{font-size:15px}.gameControls{transform-origin:100% 100%;top:auto;bottom:16px;right:16px;transform:scale(.88)}}.gameBrief{z-index:8!important}.gameControls{z-index:8!important;top:auto!important;bottom:18px!important;right:18px!important}.overlay{z-index:100!important}.dialogueLayer{z-index:150!important}.wayfindingLayer{z-index:175!important}.gamehost canvas{image-rendering:auto!important}.studentcard small{letter-spacing:.08em;color:#5f6c73;margin-top:10px;font:700 10px monospace;display:block}.openDayPreview h3{margin-bottom:8px;font-size:25px}.openDayPreview button{color:#14220e!important;background:#78c841!important;border-color:#17212a!important;border-radius:4px!important;font-size:12px!important}.routepreview .charger{color:#f4fff1;background:#173e25;border:2px solid #78c841;border-radius:4px;place-items:center;width:62px;height:42px;font:900 10px monospace;display:grid;right:5%}.routepreview .routeStart{color:#9eabb4;font:800 9px monospace;position:absolute;top:32%;left:5%}.visitorTerminal{gap:8px}.visitorTerminal>span{color:#78c841;font-weight:800}.terminalRows{gap:5px;width:100%;margin-top:5px;display:grid}.terminalRows span{color:#aebac3;justify-content:space-between;gap:20px;font:700 10px monospace;display:flex}.terminalRows strong{color:#f4fff1}.printerPreview{color:#eaf2f5;background:#18222b;border:2px solid #3d4b55;border-radius:8px;grid-template-columns:190px 1fr;align-items:center;gap:24px;width:min(520px,92%);padding:24px;display:grid}.printerBody{background:#10171d;border:10px solid #37434b;border-top-width:18px;height:170px;position:relative;box-shadow:inset 0 0 0 2px #65737c}.printerTop{background:#78c841;height:8px;position:absolute;top:16px;left:18px;right:18px}.printerBed{background:#6c7780;border:3px solid #252e35;height:20px;position:absolute;bottom:24px;left:28px;right:28px}.printerBed i{clip-path:polygon(20% 0,80% 0,100% 100%,0 100%);background:#78c841;width:40px;height:12px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.printerHead{background:#9ca7ad;border:3px solid #313a40;width:32px;height:30px;position:absolute;top:42px;left:50%;transform:translate(-50%)}.printerHead:after{content:"";background:#78c841;width:4px;height:18px;position:absolute;bottom:-18px;left:50%;transform:translate(-50%)}.printerInfo{flex-direction:column;gap:9px;display:flex}.printerInfo>b{color:#78c841;font:900 13px monospace}.printerInfo>span{color:#9eabb3;justify-content:space-between;gap:12px;font:11px monospace;display:flex}.printerInfo strong{color:#fff}.printerInfo small{color:#b5bec4;background:#2b3339;margin-top:10px;padding:8px 10px;font:700 10px monospace}.printerPreview.ready{border-color:#78c841}.printerPreview.ready .printerInfo small{color:#cffaaf;background:#173d22}@media (width<=700px){.printerPreview{grid-template-columns:1fr}.printerBody{height:145px}}.gameReset{z-index:9;color:#edf2f5;letter-spacing:.05em;cursor:pointer;background:#151e28ee;border:2px solid #66727c;border-radius:7px;align-items:center;gap:7px;padding:9px 12px;font:800 11px/1 monospace;display:flex;position:fixed;top:18px;right:18px;box-shadow:0 6px 18px #0007}.gameReset:hover{color:#bdf08f;border-color:#78c841}.gameReset svg{width:15px;height:15px}.overlay~.gameReset,.dialogueLayer~.gameReset,.wayfindingLayer~.gameReset{pointer-events:none}@media (width<=720px){.gameReset{top:12px;right:12px}}
