@font-face{font-family:Determination;src:url('game-assets/determination.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html,body{margin:0;background:#000;color:#fff;width:100%;min-height:100%;color-scheme:dark;overflow-x:hidden}body{font-family:Determination,'Courier New',monospace}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;background:#000;color:#ccc;border:0}a{color:#ffff00}button:hover{color:#ffff00}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #ffff00;outline-offset:3px}#game{min-height:100svh;min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column}#screen{position:relative;flex-shrink:0;width:640px;height:480px;image-rendering:pixelated}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;outline:none}#buttons{position:absolute;inset:0;pointer-events:none}#buttons button,#buttons a{position:absolute;pointer-events:auto;display:block;opacity:0;min-height:8%;background:transparent;color:transparent;border:0;cursor:pointer;padding:0;text-align:left;font-size:1px}#buttons button:focus-visible,#buttons a:focus-visible{opacity:1;background:transparent;outline:2px solid #ffff00;color:transparent;outline-offset:1px}#loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000;font-size:24px}[hidden]{display:none!important}#help{position:fixed;bottom:4px;display:flex;gap:8px 22px;align-items:center;justify-content:center;flex-wrap:wrap;padding:8px 12px;color:#777;font-size:13px;z-index:2;background:#000;transition:opacity .4s}#help button{padding:4px;color:#999}body.playing #help{opacity:0;pointer-events:none}body.playing #help:hover,#help:focus-within,body.show-help #help{opacity:1;pointer-events:auto}#touch{display:none;user-select:none;touch-action:none;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:600px;padding:16px 24px}.dpad{display:grid;grid-template-columns:repeat(3,46px);grid-template-rows:repeat(2,46px);gap:4px}.dpad button{font-family:system-ui;font-size:24px;border:2px solid #333;color:#aaa}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.actions{display:flex;gap:10px;align-items:center}.actions button{font-size:24px;border:2px solid #333;min-width:44px;min-height:44px;padding:0}.actions button:last-child{color:#ffff00;border-color:#777;width:56px;height:56px}.dpad button:active,.actions button:active{border-color:#fff;color:#fff}#lang{position:fixed;left:12px;top:10px;z-index:6;display:grid;grid-template-columns:76px repeat(2,56px);align-items:stretch;gap:0;padding:0;background:#000;border:2px solid #fff;font-family:Determination,'Courier New',monospace;font-size:16px;line-height:20px;opacity:1}#lang>span{display:flex;align-items:center;justify-content:center;min-width:0;padding:0;color:#fff;font-size:14px}#lang button{position:relative;display:grid;place-items:center;width:56px;min-width:0;min-height:40px;padding:0 2px 0 0;background:#000;color:#ddd;border:0;border-left:2px solid #fff;font-size:16px;line-height:20px}#lang .lang-code{display:block;transform:translateX(0);transition:transform .1s steps(2,end)}#lang button[aria-pressed=true] .lang-code{transform:translateX(7px)}#lang button::before{content:'';position:absolute;left:8px;top:50%;width:14px;height:14px;transform:translateY(-50%);background:#f00;opacity:0;clip-path:polygon(0 2px,2px 2px,2px 0,6px 0,6px 2px,8px 2px,8px 0,12px 0,12px 2px,14px 2px,14px 8px,12px 8px,12px 10px,10px 10px,10px 12px,8px 12px,8px 14px,6px 14px,6px 12px,4px 12px,4px 10px,2px 10px,2px 8px,0 8px)}#lang button[aria-pressed=true]{color:#ffff00}#lang button[aria-pressed=true]::before{opacity:1}body.playing #lang{opacity:1}#lang button:hover{color:#ffff00}#lang button:focus-visible{outline:1px solid #fff;outline-offset:-4px}#text-version{position:fixed;right:10px;top:8px;font:12px/1.6 system-ui,sans-serif;color:#777;z-index:6;max-width:min(600px,90vw)}#text-version summary{cursor:pointer;list-style:none;text-align:right;font-size:11px}body.playing #text-version:not([open]){opacity:0}#text-version:focus-within,#text-version:hover,body.show-help #text-version{opacity:1!important}#text-version[open]{background:#000;border:2px solid #fff;color:#fff;padding:20px;max-height:90svh;overflow:auto}#text-version h1{font-size:25px}#text-version li{margin:12px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(pointer:coarse),(max-width:700px){#lang{top:auto;bottom:3px;left:8px;grid-template-columns:64px repeat(2,56px)}#lang>span{font-size:12px}body.playing #lang{opacity:1}#lang button{min-height:40px}#touch{display:flex}#game{justify-content:center}#help{position:relative;bottom:auto;font-size:11px;padding:4px 12px;gap:4px 12px}#help span{display:none}#text-version{top:auto;bottom:3px}body.playing #help{opacity:1;pointer-events:auto}.actions{gap:6px}#touch{padding:16px 18px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}noscript{display:block;padding:20px}
@media(max-width:360px){#lang{top:8px;bottom:auto}}

#shop-music{display:flex;align-items:center;justify-content:center;gap:6px;width:min(640px,calc(100vw - 24px));height:20px;margin-bottom:2px;color:#8e879c;font-size:12px;line-height:16px}#shop-music-link{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aaa1b8;text-decoration:none}#shop-music-link:hover{text-decoration:underline;color:#e6cf99}#shop-music-artist{white-space:nowrap}#shop-music-next{flex-shrink:0;width:28px;height:20px;padding:0;font-size:20px;color:#d2c6df}#shop-music-next:hover{color:#e6cf99}
