*{box-sizing:border-box;margin:0;padding:0}:root{--font-display: "Silkscreen", "Courier New", monospace;--font-body: "Space Grotesk", system-ui, -apple-system, sans-serif;--cream: #f2e9dc;--line: rgba(242, 233, 220, .14);--about-bg: rgba(10, 9, 8, .6);--about-border: rgba(255, 82, 34, .55);--about-fg: #f2e9dc;--about-muted: #a89c8c;--about-accent: #ff5222}html,body,#root{height:100%}body{font-family:var(--font-body);background:#000;color:var(--cream);overflow:hidden}.screen{width:calc(100vw - 16px);height:calc(100dvh - 16px);margin:8px;border-radius:18px;overflow:hidden;display:grid;grid-template:"top top" auto "stage about" 1fr "select about" auto "foot foot" auto / 1fr clamp(270px,26vw,350px);background:var(--bg);color:var(--fg);transition:background-color .45s ease;padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.screen>*{min-width:0}.crt-scanlines{position:fixed;top:8px;right:8px;bottom:8px;left:8px;border-radius:18px;pointer-events:none;z-index:40;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,rgba(0,0,0,.07) 2px,rgba(0,0,0,.07) 3px);animation:crt-breathe 9s ease-in-out infinite}.crt-vignette{position:fixed;top:8px;right:8px;bottom:8px;left:8px;border-radius:18px;pointer-events:none;z-index:41;background:radial-gradient(ellipse 88% 84% at 50% 48%,transparent 58%,rgba(0,0,0,.42) 100%)}@keyframes crt-breathe{0%,to{opacity:.9}50%{opacity:.65}}.screen--static .crt-scanlines{animation:none}@media (prefers-reduced-motion: reduce){.crt-scanlines{animation:none}}.topbar{grid-area:top;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 26px 10px}.topbar__brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:.18em;color:var(--fg);white-space:nowrap}.topbar__brand-icon{display:inline-flex;font-size:18px;color:var(--accent)}.topbar__meta{display:flex;align-items:center;gap:14px;font-family:var(--font-display);font-size:11px;letter-spacing:.14em;white-space:nowrap}.topbar__status{color:var(--accent)}.topbar__dots{display:inline-flex;gap:7px}.topbar__dot{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--accent)}.topbar__dot.is-on{background:var(--accent)}.stage{grid-area:stage;position:relative;min-height:0;min-width:0}.game-canvas-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.game-canvas{display:block}.stage__prompt{position:absolute;left:0;right:0;bottom:6%;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.stage__press{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.3em;color:var(--fg);animation:blink 1.6s steps(2) infinite}.stage__press span{color:var(--accent)}.screen--static .stage__press{animation:none}.stage__objective{font-family:var(--font-display);font-size:9px;letter-spacing:.2em;color:var(--fg);opacity:.4}.stage__exit{position:absolute;top:10px;right:14px;font-family:var(--font-display);font-size:10px;letter-spacing:.14em;color:var(--fg);opacity:.5;background:none;border:1px solid var(--line);border-radius:4px;padding:6px 10px;cursor:pointer}.stage__exit:hover,.stage__exit:focus-visible{opacity:1;border-color:var(--accent);color:var(--accent);outline:none}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:color-mix(in srgb,var(--bg) 84%,transparent);z-index:10}.overlay__title{font-family:var(--font-display);font-size:clamp(14px,2vw,22px);font-weight:700;letter-spacing:.22em;color:var(--fg)}.overlay--complete .overlay__title{color:var(--accent);text-shadow:0 0 24px var(--accent-dim)}.overlay__stars{font-size:clamp(18px,2.4vw,26px);letter-spacing:.4em;color:var(--accent);opacity:0;transform:scale(.8);transition:opacity .25s ease,transform .25s ease}.overlay__message{font-family:var(--font-display);font-size:11px;letter-spacing:.2em;color:var(--fg);opacity:0;transition:opacity .25s ease}.overlay__stars.is-on{opacity:1;transform:scale(1)}.overlay__message.is-on{opacity:.75}.overlay__dismiss{margin-top:8px;font-family:var(--font-display);font-size:10px;letter-spacing:.18em;color:var(--fg);opacity:.55;background:none;border:none;cursor:pointer;animation:blink 1.4s steps(2) infinite}.overlay__dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:4px;opacity:1}@keyframes blink{50%{opacity:.2}}.screen--static .overlay__dismiss{animation:none}.loading-bar{width:min(260px,50%);height:12px;border:1px solid var(--line);padding:2px}.loading-bar__fill{height:100%;width:0%;background:var(--accent);animation:load-fill .6s steps(14,end) forwards}.screen--static .loading-bar__fill{animation-duration:.2s}@keyframes load-fill{to{width:100%}}.about-panel{grid-area:about;display:flex;min-height:0;padding:10px 22px 10px 0;transition:opacity .3s ease}.about-panel--dim{opacity:.55}.about-panel__card{margin:auto 0;width:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;gap:11px;border:1px solid var(--about-border);border-radius:10px;background:var(--about-bg);color:var(--about-fg);padding:clamp(14px,2.2vh,24px) clamp(16px,1.6vw,24px)}.about-panel__heading{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.24em;color:var(--about-accent);margin-bottom:2px}.about-panel__heading-icon{display:inline-flex;font-size:15px}.about-panel__intro{font-size:clamp(14px,1.2vw,16px);font-weight:700;line-height:1.4}.about-panel__line{font-size:clamp(12px,.95vw,13.5px);line-height:1.5;color:var(--about-muted)}.about-panel__line strong{color:var(--about-fg)}.about-panel__line a{color:var(--about-fg);text-decoration:underline;text-decoration-color:#f2e9dc59;text-underline-offset:3px}.about-panel__line a:hover,.about-panel__line a:focus-visible{color:var(--about-accent);text-decoration-color:var(--about-accent)}.about-panel__line a:focus-visible{outline:2px solid var(--about-accent);outline-offset:2px}.about-panel__divider{margin-top:4px;border-top:1px dashed rgba(255,82,34,.4)}.about-panel__links{display:flex;flex-wrap:wrap;gap:8px 16px}.about-panel__links a{font-family:var(--font-display);font-size:10px;letter-spacing:.14em;color:var(--about-fg);text-decoration:none;border-bottom:1px solid rgba(242,233,220,.3);padding:3px 0}.about-panel__links a:hover,.about-panel__links a:focus-visible{color:var(--about-accent);border-color:var(--about-accent);outline:none}.about-panel__links a:focus-visible{outline:2px solid var(--about-accent);outline-offset:3px}.about-panel__mountain{margin-top:2px;color:var(--about-accent);opacity:.85;line-height:0}.selectrow{grid-area:select;padding:6px 26px 4px}.game-select{transition:opacity .3s ease}.game-select--dim{opacity:.45}.game-select__heading{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.22em;color:var(--accent);margin-bottom:10px}.game-select__list{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px 26px}.game-select__item{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--fg);opacity:.5;background:none;border:1px solid transparent;border-radius:7px;padding:9px 14px;cursor:pointer;white-space:nowrap}.game-select__item:hover{opacity:.85}.game-select__item.is-selected{color:var(--accent);opacity:1;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}.game-select__item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.game-select__icon{display:inline-flex;font-size:15px;line-height:0}.game-select__item.is-locked{opacity:.3;cursor:default}.game-select__item.is-locked:hover{opacity:.3}.game-select__soon{font-size:8px;letter-spacing:.14em;border:1px solid var(--line);border-radius:3px;padding:2px 5px;opacity:.9}.game-select__cursor{animation:blink 1.1s steps(2) infinite}.screen--static .game-select__cursor{animation:none}.bottombar{grid-area:foot;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 26px 16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));font-family:var(--font-display);font-size:10px;letter-spacing:.16em;color:var(--fg)}.bottombar__hint{display:flex;align-items:center;gap:10px;opacity:.6}.bottombar__dpad{display:inline-flex;font-size:15px;line-height:0}.bottombar__action{opacity:.75}.bottombar__key{font-family:inherit;font-size:10px;border:1px solid var(--line);border-radius:4px;padding:3px 7px;margin-right:4px}.bottombar__place{display:flex;align-items:center;opacity:.55;white-space:nowrap}.bottombar__loc{display:inline-flex;align-items:center;gap:7px}.bottombar__place-icon{display:inline-flex;font-size:13px;line-height:0;color:var(--accent)}.bottombar__copyright{margin-left:14px;padding-left:14px;border-left:1px solid var(--line)}.game-canvas-wrap{touch-action:none}@media (pointer: coarse){.bottombar__action{display:none}}@media (max-width: 920px){.screen{width:calc(100vw - 8px);height:calc(100dvh - 8px);margin:4px;border-radius:12px;grid-template:"top" auto "stage" minmax(140px,1fr) "select" auto "about" auto "foot" auto / 1fr}.crt-scanlines,.crt-vignette{top:4px;right:4px;bottom:4px;left:4px;border-radius:12px}.topbar{padding:12px 16px 6px;gap:10px}.topbar__brand{font-size:12px}.topbar__meta{font-size:9px;gap:9px}.selectrow{padding:4px 16px}.game-select__heading{margin-bottom:6px}.game-select__list{gap:4px 10px}.game-select__item{font-size:9px;padding:7px 10px;gap:7px}.about-panel{padding:6px 12px;overflow-y:auto}.about-panel__card{gap:7px;padding:12px 14px}.about-panel__intro{font-size:13.5px}.about-panel__line{font-size:12px;line-height:1.45}.about-panel__mountain{display:none}.bottombar{padding:6px 16px 10px;padding-bottom:calc(10px + env(safe-area-inset-bottom));font-size:8px;gap:10px}.bottombar__loc{display:none}.bottombar__copyright{margin-left:0;padding-left:0;border-left:none}.stage__press{font-size:12px}}@media (max-height: 540px) and (max-width: 920px){.about-panel__line,.stage__objective{display:none}}
