@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&family=VT323&display=swap";:root{font-family:DM Sans,sans-serif;color:#dfe7df;background:#0b1216;font-synthesis:none;--muted: #82989e;--line: #283a41;--accent: #a9d9c0}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:transparent;color:#c9d8d9;padding:10px 13px;border-radius:4px;font-size:12px;transition:background .15s,border .15s}.button-link{border:1px solid var(--line);color:#c9d8d9;padding:10px 13px;border-radius:4px;font-size:12px;text-decoration:none}.button-link:hover,button:hover{background:#1c2b31;border-color:#718b91}button:focus-visible,select:focus-visible{outline:2px solid #eeb372;outline-offset:3px}button:disabled{opacity:.32;cursor:default}button[aria-pressed=true]{color:#f3bc7f;border-color:#977449;background:#392b1d}button.action{background:#b6d6be;color:#16221e;border-color:#b6d6be;font-weight:600}button.action:hover{background:#d0e8d3}kbd{font:9px monospace;opacity:.65;border:1px solid currentColor;border-radius:3px;padding:2px 4px;margin-left:6px}button[hidden],[hidden]{display:none!important}.shell{max-width:1160px;padding:0 40px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;min-height:90px;border-bottom:1px solid var(--line);gap:20px}.wordmark{font:700 13px Space Grotesk,sans-serif;letter-spacing:2px;color:#e8ecdf;text-decoration:none}.wordmark span{font-weight:400;color:#92aaa8}.wordmark i{color:#c7daa4;font-size:21px;font-style:normal;margin-left:16px}.header-actions{display:flex;gap:9px;align-items:center}.edition{font:8px monospace;letter-spacing:1.2px;margin-right:14px;color:var(--muted)}.heading{display:flex;justify-content:space-between;align-items:center;margin:34px 0 27px}.eyebrow{font:10px monospace;letter-spacing:1.7px;color:var(--accent);margin:0 0 12px}.eyebrow span{color:#4d656c;margin:0 10px}h1{font:500 42px Space Grotesk,sans-serif;letter-spacing:-1.8px;margin:0;color:#e9eddf}.intro{font-size:13px;color:var(--muted);margin:10px 0 0}.study-stamp{display:flex;gap:12px;align-items:center;font:10px monospace;letter-spacing:1px;line-height:1.8;color:#b5c9c6}.study-stamp small{color:#5c7981;font-size:8px}.dot{width:7px;height:7px;border-radius:50%;background:#abd6b1;box-shadow:0 0 12px #abd6b133}.console{border:1px solid #34464c;background:#081014;border-radius:7px;overflow:hidden;box-shadow:0 18px 60px #0004}.room-bar{padding:11px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:10px}.room-bar>div{display:flex;align-items:center;gap:13px}#room-title{font:500 14px Space Grotesk,sans-serif}.room-index{color:#8faa9e;font-size:20px}#view-label{font:9px monospace;letter-spacing:1px;color:#6a8992;border-left:1px solid #39505a;padding-left:14px}#remote{font:11px monospace;border:none;padding:7px 9px}.remote-light{display:inline-block;width:6px;height:6px;background:#6c8081;border-radius:50%;margin-right:7px}#remote[aria-pressed=true] .remote-light{background:#efac66;box-shadow:0 0 8px #efac6666}#game{width:100%;aspect-ratio:3/2;max-height:640px;position:relative;background:#060c10}#game canvas{display:block;image-rendering:pixelated}.location-bar{display:flex;gap:15px;padding:12px 20px;background:#101c22;border-top:1px solid #263740;color:#7f9da6;font:9px monospace;letter-spacing:.5px}#location{flex:1}#carrying{color:#d5b480}.controls{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;align-items:center;border-top:1px solid #21323a}.controls>div{display:flex;gap:7px;align-items:center}.dpad{display:flex;gap:3px}.dpad button{width:34px;height:34px;padding:4px;font-size:18px;touch-action:none;-webkit-user-select:none;user-select:none}#wiring-tools{padding:16px 20px;background:#21231d;color:#dec89d;font:11px monospace;border-top:1px solid #4b4934}#wiring-tools>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}select{background:#152027;color:#dde0d4;border:1px solid #56686e;border-radius:3px;font-size:12px;padding:6px}.status{display:flex;gap:13px;align-items:flex-start;min-height:65px;padding:18px 10px;color:#bbcfc9;font-size:12px;line-height:1.6}.status-mark{color:#dcbd85}.field-notes{border-top:1px solid var(--line);padding:23px 0;display:grid;grid-template-columns:1fr 1.6fr;column-gap:40px;row-gap:16px}h2{font:500 20px Space Grotesk,sans-serif;letter-spacing:-.5px;margin:0;color:#dfe7d9}.field-notes p:not(.eyebrow){font-size:12px;line-height:1.8;color:#9bb0b4;margin:0}.notes-actions{grid-column:1/-1;display:flex;align-items:center;gap:10px}.notes-actions button{border-color:#2a4149;font-size:11px}#lesson-count{font:10px monospace;color:#b4d4b7;margin-left:8px}#save-status{font:9px monospace;color:#587780;margin-left:auto}.robot-manifest{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;gap:15px}.robot-manifest>div{display:grid;grid-template-columns:8px auto 1fr;align-items:center;column-gap:8px;row-gap:5px}.robot-manifest i{width:7px;height:7px;background:var(--robot-color)}.robot-manifest b{font-size:12px;font-weight:500}.robot-manifest span{font-size:9px;color:#77919a;margin-left:4px}.robot-manifest small{grid-column:2/-1;font:9px monospace;color:#597b86;line-height:1.4}footer{padding:23px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:15px}footer>span{font:8px monospace;color:#506c76;letter-spacing:.6px}footer button{font-size:9px;padding:5px 8px;border-color:transparent;color:#728c95}dialog{background:#111e24;color:#b7c9ca;border:1px solid #40545b;border-radius:8px;padding:38px;max-width:600px;width:calc(100% - 28px);box-shadow:0 30px 100px #000a}dialog::backdrop{background:#020709cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}dialog h2{font-size:30px;margin-bottom:20px}dialog p{font-size:13px;line-height:1.8}dialog .close{position:absolute;top:12px;right:12px;font-size:20px;border:none}#checklist{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px}#checklist li{color:#6e868e;display:flex;gap:9px}#checklist li.done{color:#c2dcba}#checklist span{color:#8cba99}@media(min-width:1600px){.shell{max-width:1240px}.heading{margin-top:40px}#game{max-height:700px}}@media(max-width:800px){.shell{padding:0 18px}.edition,.study-stamp{display:none}header{min-height:70px}.wordmark{font-size:10px;letter-spacing:1px}.wordmark i{display:none}.header-actions button{padding:7px;font-size:10px}h1{font-size:34px}.heading{margin:25px 0 21px}.room-bar{padding:10px}#view-label{font-size:8px;padding-left:8px}.room-bar>div{gap:7px}#room-title{font-size:12px}#remote{font-size:10px}kbd{display:none}.controls{padding:10px;flex-wrap:wrap}.controls>div{flex:1;justify-content:space-between}.controls .walk-controls{justify-content:flex-start}button{padding:9px;font-size:11px}.field-notes{grid-template-columns:1fr;gap:12px}.robot-manifest{grid-template-columns:1fr}.robot-manifest>div{grid-template-columns:8px 45px 1fr}.robot-manifest small{grid-column:3}footer{flex-wrap:wrap}.location-bar{padding:10px;font-size:8px;gap:8px}#coordinates{display:none}dialog{padding:30px 23px}#checklist{grid-template-columns:1fr}.notes-actions{flex-wrap:wrap}#save-status{margin-left:0}}body.focus-mode .shell{max-width:min(1200px,calc((100dvh - 160px)*1.5 + 40px));padding:10px 20px}body.focus-mode header,body.focus-mode .heading,body.focus-mode .field-notes,body.focus-mode .robot-manifest,body.focus-mode footer{display:none}body.focus-mode #game{height:calc(100dvh - 160px);max-height:none;aspect-ratio:3/2}body.focus-mode .status{padding:12px 5px;min-height:0;font-size:11px}body.focus-mode .console{border-radius:4px}body.focus-mode .room-bar{padding:8px 12px}body.focus-mode .controls{padding:10px 12px}body.focus-mode .location-bar{padding:8px 12px}@media(max-width:600px){body.focus-mode .shell{max-width:100%;padding:8px}body.focus-mode #game{height:auto;aspect-ratio:3/2}.header-actions #sound{display:none}.header-actions{gap:4px}body.focus-mode .status:after{content:"F · Exit focus";font:9px monospace;color:#6a8992;white-space:nowrap}}.room-bar #focus{font:9px monospace;border:none;padding:5px;color:#89a4ac}.study-nav{display:flex;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap}.study-nav a{color:var(--muted, #9aafb7);text-decoration:none;font-size:.85rem;padding:.5rem 0}.study-nav a[aria-current=page]{color:#f4af65;border-bottom:1px solid currentColor}#wiring-tools{flex-wrap:wrap}#wiring-tools [hidden]{display:none}#toolkit-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #29414a}#toolkit-tools[hidden]{display:none}#toolkit-stock{color:#f4af65;font-family:monospace;white-space:nowrap}#toolkit-hint{color:#a6b9bf;font-size:12px}#hot-cursor[aria-pressed=true]{color:#101519;background:#f4af65}.study-nav{flex-wrap:wrap}#chip-tools{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px;border-top:1px solid #263943}.character-bar{margin:0 0 14px}.character-bar>button{width:100%;display:flex;align-items:center;gap:14px;text-align:left;background:#101c24;padding:10px 18px}.character-bar strong,.character-bar small{display:block}.character-bar small{color:#7896a2;font:9px monospace;letter-spacing:1.5px;margin-bottom:5px}.character-portrait{width:32px;height:52px;flex:none;background-size:160px 156px;image-rendering:auto}.change-character{margin-left:auto;color:#91cece}#character-dialog{max-width:940px;max-height:calc(100dvh - 32px)}.character-preview-controls{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.appearance-controls{display:flex;flex-wrap:wrap;gap:12px;width:100%}.appearance-controls label{display:grid;gap:6px;flex:1;min-width:140px;font-size:12px}.appearance-controls select{padding:10px;color:#dce9ec;background:#0a151c;border:1px solid #38546b}#character-motion{margin-left:auto}.character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.character-card{min-width:0;padding:12px 8px;background:#0a151c;text-align:center}.character-stage{display:flex;justify-content:center;align-items:flex-end;height:166px;margin-bottom:10px;background:radial-gradient(ellipse at 50% 100%,#20424a 0%,transparent 65%);border-bottom:1px solid #29424b}.character-preview{display:block;width:132px;height:156px;background-size:2772px 468px;background-position:0 calc(var(--sprite-row) * -156px);image-rendering:auto}.character-grid[data-walking=true] .character-preview{animation:character-run .64s steps(16) infinite}@keyframes character-run{0%{background-position-x:-660px}to{background-position-x:-2772px}}.character-card strong,.character-card small,.character-selected{display:block}.character-card strong{font-size:12px}.character-card small{color:#8da4ae;font-size:10px;line-height:1.5;margin-top:6px;min-height:30px}.character-selected{visibility:hidden;margin-top:8px;color:#eeb372;font-size:10px}.character-card[aria-pressed=true] .character-selected{visibility:visible}.character-picker-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}#character-status{font-size:11px;color:#a9c6c6}@media(prefers-reduced-motion:reduce){.character-grid[data-walking=true] .character-preview{animation:none}}@media(max-width:650px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#character-dialog{padding:30px 16px 20px}.change-character{font-size:10px;max-width:85px}.character-picker-footer{flex-wrap:wrap}}body.focus-mode .character-bar{margin-bottom:8px}body.focus-mode .character-bar>button{padding:4px 12px}body.focus-mode #game{height:calc(100dvh - 226px)}@media(max-width:600px){body.focus-mode #game{height:auto}}#chip-tools[hidden]{display:none}#chip-dialog label{display:flex;gap:12px;align-items:center;margin:8px 0}#chip-dialog input{flex:1;min-width:0;padding:7px;color:#e5ece5;background:#10202a;border:1px solid #456074}#chip-pin-records{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:600px){#chip-pin-records{grid-template-columns:1fr}}:root{--title-orange: #f39a4a;--title-orange-deep: #a8521c;--title-cyan: #2fb6e0;--title-cyan-deep: #155f7a;--title-mint: #a9d9c0;background:#000;color:#e9eddf}body.title-mode{margin:0;overflow:hidden;background:#000}.title-screen{position:fixed;inset:0;overflow:hidden;background:#000;font-family:VT323,monospace;-webkit-user-select:none;user-select:none}.scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,#0000 0 2px,#0003 2px 3px);mix-blend-mode:multiply}.iris-in{animation:iris-in 1.6s ease both}.title-screen.menu.iris-in{animation-duration:1s}.leaving .splash-art,.title-screen.menu.leaving{animation:iris-out .65s ease-in both}@keyframes iris-in{0%{clip-path:circle(0% at 50% 55%)}to{clip-path:circle(75% at 50% 55%)}}@keyframes iris-out{0%{clip-path:circle(75% at 50% 55%)}to{clip-path:circle(0% at 50% 55%)}}.splash-presents{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#8ea6a3;font-size:clamp(18px,2.2vw,28px);letter-spacing:2px;animation:presents 2.6s ease both}.splash-presents p{margin:6px 0}.splash-tagline{color:var(--title-mint);font-family:"Press Start 2P",monospace;font-size:clamp(11px,1.3vw,16px);text-transform:uppercase;letter-spacing:3px;margin-top:18px!important}@keyframes presents{0%{opacity:0}20%,75%{opacity:1}to{opacity:0}}.splash-art{position:absolute;inset:0;animation-delay:2.3s}.splash-art>img,.menu-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.splash-art>img{animation:drift 24s ease-in-out 2.3s infinite alternate both}@keyframes drift{0%{transform:scale(1.04) translateY(.6%)}to{transform:scale(1.09) translateY(-.6%)}}.beams{position:absolute;left:50%;bottom:57%;width:0;height:0;mix-blend-mode:screen;pointer-events:none}.beams i{position:absolute;left:-3vw;bottom:0;width:6vw;height:62vh;transform-origin:50% 100%;background:linear-gradient(to top,#fff6dd44,#fff6dd0c 75%,#0000);clip-path:polygon(47% 100%,53% 100%,100% 0,0 0);filter:blur(3px);animation:sweep 8s ease-in-out infinite alternate}.beams i:nth-child(1){--a: -48deg;animation-delay:-1s}.beams i:nth-child(2){--a: -16deg;animation-delay:-5s}.beams i:nth-child(3){--a: 16deg;animation-delay:-2s}.beams i:nth-child(4){--a: 48deg;animation-delay:-6s}@keyframes sweep{0%{transform:rotate(calc(var(--a) - 9deg))}to{transform:rotate(calc(var(--a) + 9deg))}}.sparks i{position:absolute;left:var(--x);bottom:var(--y);width:3px;height:3px;background:var(--title-mint);box-shadow:0 0 8px var(--title-mint);opacity:0;animation:spark 3.4s linear calc(var(--i) * -.47s) infinite}.sparks i:nth-child(3n){background:var(--title-orange);box-shadow:0 0 8px var(--title-orange)}@keyframes spark{0%{opacity:0;transform:translateY(0)}15%{opacity:1}to{opacity:0;transform:translateY(-22vh)}}.logo{position:absolute;top:7vh;left:0;right:0;margin:0;display:flex;flex-direction:column;align-items:center;gap:2.4vh;font-family:"Press Start 2P",monospace;font-weight:400;text-transform:uppercase;line-height:1;animation:logo-drop .9s cubic-bezier(.2,1.4,.4,1) 3.3s both}.logo span{display:block;letter-spacing:.06em}.logo-top{font-size:clamp(34px,6.2vw,92px);color:var(--title-orange);text-shadow:4px 4px 0 var(--title-orange-deep),8px 8px 0 #2a1407,0 0 28px #f39a4a66}.logo-bottom{font-size:clamp(30px,5.4vw,80px);color:var(--title-cyan);text-shadow:4px 4px 0 var(--title-cyan-deep),8px 8px 0 #06202a,0 0 28px #2fb6e066;animation:flicker 5s linear 4.4s infinite}@keyframes logo-drop{0%{opacity:0;transform:translateY(-40px) scale(1.08)}to{opacity:1;transform:none}}@keyframes flicker{0%,41%,43%,45%,to{opacity:1}42%,44%{opacity:.35}}.logo-sub{position:absolute;top:calc(13.5vh + clamp(34px,6.2vw,92px) + clamp(30px,5.4vw,80px));left:0;right:0;margin:0;text-align:center;color:var(--title-mint);font-size:clamp(20px,2.4vw,34px);letter-spacing:.4em;text-transform:uppercase;text-shadow:0 2px 0 #000,0 0 14px #000;animation:fade-in .8s ease 4s both}.press-any{position:absolute;bottom:5vh;left:0;right:0;margin:0;text-align:center;font-family:"Press Start 2P",monospace;font-size:clamp(12px,1.4vw,18px);letter-spacing:.25em;text-transform:uppercase;color:#fff;text-shadow:0 0 10px var(--title-orange),0 3px 0 #000;animation:fade-in .6s ease 4.6s both,blink 1.1s steps(1) 5.2s infinite}@keyframes fade-in{0%{opacity:0}}@keyframes blink{50%{opacity:0}}.menu-backdrop{filter:brightness(.75) saturate(1.05)}.title-screen.menu{display:grid;grid-template-rows:1fr auto;justify-items:center;align-items:center}.menu-panel{position:relative;width:min(620px,78vw);padding:22px 0 18px;background:#000d;box-shadow:0 0 0 2px #000,0 20px 80px #000c}.menu-title{margin:0 28px 14px;padding-bottom:10px;border-bottom:3px solid #e9eddf;text-align:center;font-family:"Press Start 2P",monospace;font-weight:400;font-size:clamp(16px,2.1vw,24px);letter-spacing:.08em;color:#fff}.menu-list{list-style:none;margin:0;padding:0}.menu-heading{margin:14px 28px 6px;font-family:"Press Start 2P",monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--title-orange)}.menu-choice{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 16px;padding:3px 14px;border-left:4px solid var(--title-cyan);border-right:4px solid var(--title-cyan);outline:2px solid transparent;outline-offset:-2px;cursor:pointer;color:#e9eddf}.menu-choice:focus{outline-color:transparent}.choice-label{font-size:clamp(24px,2.6vw,32px);line-height:1.1}.choice-caption{font-size:clamp(15px,1.5vw,19px);letter-spacing:.06em;text-transform:uppercase;color:#7f9b9f;white-space:nowrap}.choice-caption b{font-weight:400;color:var(--title-mint)}.menu-choice.selected{outline-color:var(--title-orange);background:#f39a4a14}.menu-choice.selected .choice-label{color:#fff;text-shadow:0 0 12px #f39a4a99}.menu-choice.sealed{cursor:default;color:#4f6266}.menu-choice.sealed .choice-caption{color:#3d5054}.menu-choice.launching{animation:launch-blink .15s steps(1) 5}@keyframes launch-blink{50%{background:var(--title-orange);color:#000}}.menu-cursor{position:absolute;left:-78px;width:64px;height:auto;transform:translateY(-50%);transition:top .09s ease;pointer-events:none;filter:drop-shadow(0 0 10px #2fb6e066);animation:hover 1.4s ease-in-out infinite alternate}@keyframes hover{to{translate:0 -5px}}.menu-blurb{min-height:2.6em;margin:14px 28px 0;font-size:clamp(17px,1.7vw,21px);line-height:1.3;color:var(--title-mint)}.menu-help{position:relative;margin:0 0 3.5vh;text-align:center;font-family:"Press Start 2P",monospace;font-size:clamp(10px,1.1vw,14px);color:#fff;text-shadow:0 2px 0 #000}.menu-help kbd{display:inline-block;margin:0 6px;padding:3px 6px 2px;background:#fff;color:#000;font:inherit;text-shadow:none}.menu-help small{display:block;margin-top:10px;font-family:VT323,monospace;font-size:clamp(15px,1.4vw,18px);color:#8ea6a3}@media(max-height:760px){.menu-panel{padding:14px 0 12px}.menu-heading{margin:8px 28px 4px}.choice-label{font-size:23px}}@media(prefers-reduced-motion:reduce){.title-screen *,.title-screen.iris-in{animation-duration:.01s!important;animation-iteration-count:1!important}}
