:root{color:#f4f7e8;background:#070907;font-family:Cascadia Mono,Lucida Console,monospace;font-synthesis:none;text-rendering:geometricprecision;--shell-bg: #070907;--shell-ink: #f4f7e8;--shell-muted: #9db6a9;--shell-panel: rgba(13, 18, 13, .94);--shell-green: #d9f45c;--shell-cyan: #74dfc4;--shell-red: #ff5b57;--shell-amber: #ffbd4a;--shell-line: rgba(217, 244, 92, .4)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:linear-gradient(90deg,rgba(217,244,92,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(116,223,196,.07) 1px,transparent 1px),linear-gradient(135deg,rgba(255,189,74,.08),transparent 42%),var(--shell-bg);background-size:44px 44px,44px 44px,auto,auto}button,input{font:inherit}button{border-radius:6px}.patch-notes-shell{min-height:100vh}.boot-scene{display:grid;min-height:100vh;padding:28px;place-items:center}.machine-panel{display:grid;width:min(100%,1040px);min-height:640px;grid-template-columns:92px minmax(0,1fr);border:2px solid var(--shell-green);border-radius:8px;background:linear-gradient(180deg,rgba(116,223,196,.12),transparent 36%),linear-gradient(135deg,rgba(217,244,92,.12),transparent 38%),var(--shell-panel);box-shadow:0 0 0 4px #070907d1,0 24px 72px #0000007a}.machine-panel[data-patch-notes-presentation=player]{width:min(100%,1180px);grid-template-columns:minmax(0,1fr)}.status-rail{display:flex;align-items:stretch;justify-content:space-between;flex-direction:column;gap:12px;border-right:1px solid var(--shell-line);padding:16px;background:repeating-linear-gradient(0deg,rgba(244,247,232,.04) 0,rgba(244,247,232,.04) 1px,transparent 1px,transparent 9px),#0000003d}.status-marker{display:grid;min-height:74px;place-items:center;border:1px solid rgba(244,247,232,.22);border-radius:6px;color:var(--shell-green);font-size:.72rem;letter-spacing:0;writing-mode:vertical-rl}.shell-content{display:flex;justify-content:center;flex-direction:column;gap:20px;padding:72px}.shell-content-menu,.shell-content-story{max-width:760px}.shell-content-play{gap:16px;padding:28px}.debug-panel{display:grid;gap:16px}.shell-content-screen{max-width:740px}.shell-kicker,.boundary-note,.run-id,.shell-status{margin:0}.shell-kicker,.run-id{color:var(--shell-cyan);font-size:.92rem}.shell-title{max-width:10ch;margin:0;color:var(--shell-ink);font-size:6.5rem;line-height:.92;letter-spacing:0;text-transform:uppercase}.story-title{max-width:13ch;margin:0;color:var(--shell-ink);font-size:4.4rem;line-height:.96;letter-spacing:0;text-transform:uppercase}.story-body{display:grid;max-width:42rem;gap:10px}.story-line,.story-progress{margin:0}.story-line{color:var(--shell-ink);font-size:1.02rem;line-height:1.55}.story-progress{color:var(--shell-cyan);font-size:.82rem}.screen-title{margin:0;color:var(--shell-ink);font-size:2.4rem;line-height:1.05;letter-spacing:0}.shell-tagline,.screen-copy{max-width:48rem;margin:0;color:var(--shell-ink);font-size:1.18rem;line-height:1.5}.screen-copy{color:var(--shell-muted)}.shell-status{max-width:48rem;border-left:4px solid var(--shell-amber);padding:10px 0 10px 14px;color:var(--shell-green);font-size:.98rem;line-height:1.5}.level-summary,.channel-state-panel{display:grid;gap:8px}.level-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.channel-state-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-state-title{grid-column:1 / -1;margin:0;color:var(--shell-cyan);font-size:.92rem;letter-spacing:0}.level-summary-row,.channel-state-row,.channel-target-row,.platform-state-row,.load-error{margin:0;border:1px solid rgba(244,247,232,.2);border-radius:6px;padding:10px;color:var(--shell-muted);background:#00000038;font-size:.82rem;line-height:1.35}.channel-state-row,.channel-target-row{border-color:#74dfc447;color:var(--shell-ink)}.channel-target-row{border-color:#ffbd4a57}.platform-state-row{border-color:#d9f45c52;color:var(--shell-ink)}.load-error{max-width:48rem;border-color:var(--shell-red);color:var(--shell-ink);background:#ff5b5729}.shell-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.options-panel{display:grid;max-width:34rem;gap:14px}.option-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid rgba(116,223,196,.28);border-radius:6px;padding:12px;background:#00000038}.option-label{color:var(--shell-ink)}.option-checkbox{width:18px;height:18px;accent-color:var(--shell-green)}.option-range{width:100%;accent-color:var(--shell-cyan)}.shell-action{min-height:48px;border:1px solid var(--shell-green);padding:12px 18px;color:var(--shell-bg);background:var(--shell-green);cursor:pointer}.shell-action:hover{background:var(--shell-cyan)}.shell-action:focus-visible{outline:3px solid var(--shell-ink);outline-offset:3px}.shell-action-secondary{color:var(--shell-ink);background:transparent}.shell-action-danger{border-color:var(--shell-red);color:var(--shell-ink);background:#ff5b5733}.shell-action-danger:hover{background:var(--shell-red)}.boundary-note{max-width:42rem;color:var(--shell-muted);font-size:.86rem}.three-runtime-stage{position:relative;display:grid;min-height:360px;overflow:hidden;place-items:center;border:1px solid rgba(244,247,232,.22);border-radius:8px;background:linear-gradient(90deg,rgba(217,244,92,.1) 1px,transparent 1px),linear-gradient(0deg,rgba(255,189,74,.08) 1px,transparent 1px),#10140f;background-size:36px 36px}.patch-notes-three-canvas{display:block;width:100%;height:100%}.sprite-driver-transition{position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,#a8f4ff00 0 18px,#a8f4ff6b 19px,#a8f4ff00 22px),repeating-linear-gradient(0deg,#dc70c400 0 26px,#dc70c447 27px,#dc70c400 31px),radial-gradient(circle at 50% 52%,rgba(168,244,255,.36),transparent 42%);mix-blend-mode:screen;animation:sprite-driver-transition .82s ease-out both}.sprite-driver-transition[data-sprite-driver-transition=disabled]{background:repeating-linear-gradient(90deg,#f4f16a00 0 20px,#f4f16a57 21px,#f4f16a00 24px),repeating-linear-gradient(0deg,#ffa04700 0 28px,#ffa04733 29px,#ffa04700 33px),radial-gradient(circle at 50% 50%,rgba(220,112,196,.34),transparent 44%)}@keyframes sprite-driver-transition{0%{opacity:0;transform:scale(.985)}28%{opacity:.88;transform:scale(1.01)}to{opacity:0;transform:scale(1.025)}}.playfield-room-label{position:absolute;top:14px;left:16px;z-index:2;margin:0;color:var(--shell-green);font-size:.82rem}.game-hud{position:absolute;inset:0;z-index:3;pointer-events:none}.game-hud-room,.game-hud-health,.game-fps-overlay,.game-hud-info-button,.game-hud-fullscreen-button,.game-controls-panel,.game-hud-callout,.game-hud-prompt{border:1px solid rgba(244,247,232,.28);border-radius:6px;background:#070907b8;box-shadow:0 8px 22px #00000047}.game-hud-room{position:absolute;top:12px;left:14px;display:grid;max-width:min(360px,calc(100% - 160px));gap:4px;padding:9px 11px;color:var(--shell-ink)}.game-hud-room-title{font-size:.88rem;font-weight:700}.game-hud-objective{color:#f4f7e8c7;font-size:.72rem;line-height:1.3}.game-hud-route-hint{color:var(--shell-cyan);font-size:.72rem;line-height:1.3}.game-hud-patch-unlock{border-color:#a8f4ff8f;color:var(--shell-green);background:#070907d1;font-size:.94rem;font-weight:700;line-height:1.3}.game-hud-callout{position:absolute;right:116px;bottom:16px;left:116px;padding:11px 16px;text-align:center}.game-hud-health{position:absolute;top:12px;right:14px;padding:8px 10px;color:var(--shell-green);font-size:.78rem}.game-fps-overlay{position:absolute;top:50px;right:14px;padding:7px 9px;color:var(--shell-cyan);font-size:.74rem}.game-hud-info-button,.game-hud-fullscreen-button{position:absolute;bottom:14px;display:grid;min-width:88px;height:38px;padding:0 12px;place-items:center;color:var(--shell-bg);background:var(--shell-green);cursor:pointer;font-size:.72rem;font-weight:700;pointer-events:auto}.game-hud-info-button{left:14px}.game-hud-fullscreen-button{right:14px}.game-hud-info-button:hover,.game-hud-fullscreen-button:hover{background:var(--shell-cyan)}.game-hud[data-hud-scale=player] .game-hud-info-button,.game-hud[data-hud-scale=player] .game-hud-fullscreen-button{min-width:128px;height:46px;padding:0 16px;font-size:.84rem}.game-hud[data-hud-scale=player] .game-hud-callout{right:146px;bottom:22px;left:146px;padding:14px 18px;font-size:1.06rem}.game-controls-panel{position:absolute;left:14px;bottom:60px;display:grid;width:min(260px,calc(100% - 28px));gap:10px;padding:12px;color:var(--shell-ink);background:#070907e6;font-size:.76rem;pointer-events:auto}.game-hud[data-hud-scale=player] .game-controls-panel{bottom:72px;width:min(320px,calc(100% - 28px));padding:14px;font-size:.86rem}.game-controls-title{margin:0;color:var(--shell-cyan);font-size:.76rem}.game-controls-list{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 10px;margin:0}.game-controls-list dt{color:var(--shell-green)}.game-controls-list dd{margin:0;color:var(--shell-ink)}.game-hud-prompt{position:absolute;top:56px;right:14px;max-width:min(320px,calc(100% - 28px));border-color:var(--shell-amber);padding:9px 12px;color:var(--shell-amber);background:#070907db;font-size:.82rem}.playfield-object{position:absolute;display:grid;place-items:center;border-radius:6px;color:var(--shell-bg);font-size:.7rem;font-weight:700;transform:translate(-50%,-50%)}.playfield-exit{border:1px solid rgba(244,247,232,.7);color:var(--shell-ink);background:#f4f7e838}.playfield-switch{border:1px solid var(--shell-cyan);background:var(--shell-cyan)}.playfield-barrier{border:1px solid var(--shell-red);color:var(--shell-ink);background:#ff5b578c}.playfield-platform{border:1px solid var(--shell-cyan);background:#74dfc4c7}.playfield-platform-fire{border-color:var(--shell-red);color:var(--shell-ink);background:#ff5b57ad}.playfield-platform-shock{border-color:var(--shell-green);background:#d9f45cc7}.playfield-platform-disabled{opacity:.45}.playfield-platform-hazard{box-shadow:0 0 0 2px #ffbd4a7a}.three-runtime-stage:before{position:absolute;right:24px;bottom:24px;width:34%;height:22px;border:1px solid rgba(217,244,92,.38);border-radius:6px;background:#d9f45c1a;content:""}.daemon-glyph{position:relative;display:grid;width:56px;height:72px;place-items:center;border:2px solid var(--shell-cyan);border-radius:8px;color:var(--shell-bg);background:var(--shell-cyan);box-shadow:16px 14px #74dfc42e;font-weight:700}.daemon-glyph-playable{position:absolute;z-index:3;width:34px;height:44px;transform:translate(-50%,-50%);box-shadow:10px 9px #74dfc42e}.playfield-note{position:absolute;left:18px;bottom:14px;max-width:34rem;margin:0;color:var(--shell-muted);font-size:.86rem}.local-level-input{max-width:100%;color:var(--shell-muted)}[data-shell-view=playing] .machine-panel{width:min(100%,1180px)}[data-shell-view=playing][data-patch-notes-presentation=player]{padding:8px;place-items:stretch}[data-shell-view=playing][data-patch-notes-presentation=player] .machine-panel{width:100%;min-height:calc(100vh - 16px)}[data-shell-view=playing][data-patch-notes-presentation=player] .shell-content-play{min-height:calc(100vh - 20px);padding:8px}[data-shell-view=playing][data-patch-notes-presentation=player] .three-runtime-stage{min-height:calc(100vh - 34px)}.boot-scene[data-fullscreen-active=true]{position:fixed;inset:0;z-index:1000;padding:0;place-items:stretch;background:var(--shell-bg)}.boot-scene[data-fullscreen-active=true] .machine-panel{width:100%;min-height:100vh;border:0;border-radius:0}.boot-scene[data-fullscreen-active=true] .shell-content-play{min-height:100vh;padding:0}.boot-scene[data-fullscreen-active=true] .three-runtime-stage{min-height:100vh;border:0;border-radius:0}.three-runtime-stage:fullscreen{width:100vw;height:100vh;min-height:100vh;border:0;border-radius:0}@media(max-width:760px){.boot-scene{padding:16px}.machine-panel{min-height:calc(100vh - 32px);grid-template-columns:1fr}.status-rail{flex-direction:row;border-right:0;border-bottom:1px solid var(--shell-line);padding:12px}.status-marker{min-height:44px;writing-mode:horizontal-tb}.shell-content{padding:32px 22px}.shell-title{font-size:3.6rem}.screen-title{font-size:1.9rem}.shell-actions{flex-direction:column}.three-runtime-stage{min-height:300px}.level-summary,.channel-state-panel{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto}}
