:root{color-scheme:dark;font-family:ヒラギノ角ゴシック,MS Gothic,ui-monospace,monospace;background:#000;color:#fff;--control-face:#24242a;--control-edge:#777;--action-red:#a7192a}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;background:#080808}.shop-back{position:fixed;z-index:20;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));padding:8px 10px;color:#aaa;background:#000c;border:1px solid #555;border-radius:4px;font-size:12px;line-height:1;text-decoration:none;letter-spacing:.08em}.shop-back:is(:hover,:focus-visible){color:#fff;border-color:#fff;outline:none}.title-back{padding:7px 12px;color:#aaa;border:1px solid #555;border-radius:4px;font-size:12px;line-height:1;text-decoration:none;letter-spacing:.08em}.title-back:is(:hover,:focus-visible){color:#fff;border-color:#fff;outline:none}main{width:min(94vw,768px);display:grid;justify-items:center;gap:12px;padding:20px 0}.title-screen{width:min(94vw,640px);min-height:360px;display:grid;place-content:center;justify-items:center;gap:18px;padding:28px 18px;color:#fff;background:#000;border:4px double #fff;border-radius:8px;text-align:center;box-shadow:0 12px 32px #000}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.title-logo{display:block;width:min(100%,600px);height:auto;image-rendering:pixelated}#start-game{margin-top:6px;padding:12px 22px;color:#fff;background:#000;border:0;font:inherit;font-size:16px;letter-spacing:.14em;cursor:pointer;animation:title-prompt 1s steps(1,end) infinite}#start-game:before{content:"▶";display:inline-block;width:1.8em;color:#fff}#start-game:is(:hover,:focus-visible){color:#000;background:#fff;outline:none}#start-game:is(:hover,:focus-visible):before{color:#000}@keyframes title-prompt{0%,49%{opacity:1}50%,to{opacity:.28}}body:not(.game-started) .console,body:not(.game-started) .mobile-controls,body:not(.game-started) #return-title,body:not(.game-started) .shop-back{display:none}body.game-started .title-screen{display:none}.console{width:min(100%,768px);padding:8px;background:#000;border:4px double #fff;border-radius:8px;box-shadow:0 0 0 2px #000,0 12px 32px #000}#game{width:100%;aspect-ratio:256/240;background:#000;overflow:hidden;image-rendering:pixelated}#game canvas{width:100%!important;height:100%!important;display:block;image-rendering:pixelated}.status{display:flex;justify-content:space-between;gap:10px;padding:8px 4px 1px;color:#fff;font-size:12px;letter-spacing:.08em}.mobile-controls{display:none}#return-title{padding:7px 14px;color:#aaa;background:#000;border:2px solid #666;border-radius:4px;font:inherit;font-size:11px;cursor:pointer}#return-title:is(:hover,:focus-visible){color:#fff;border-color:#fff;outline:none}@media(max-width:700px),(hover:none)and (pointer:coarse){.shop-back{top:max(6px,env(safe-area-inset-top));left:max(6px,env(safe-area-inset-left));padding:7px 8px;font-size:11px}body{place-items:start center}main{width:100%;padding:8px 8px 18px;gap:10px}.console{padding:5px}.status{font-size:10px}.mobile-controls{width:min(100%,520px);display:flex;align-items:center;justify-content:space-between;padding:4px 10px 2px;user-select:none;-webkit-user-select:none}.mobile-controls button{color:#fff;background:var(--control-face);border:2px solid var(--control-edge);box-shadow:inset 0 -3px #080808,0 2px #000;font:700 18px/1 inherit;touch-action:none;-webkit-tap-highlight-color:transparent}.mobile-controls button:active,.mobile-controls button.is-pressed{transform:translateY(2px);box-shadow:inset 0 -1px #080808;filter:brightness(1.25)}.dpad{display:grid;grid-template:repeat(3,42px)/repeat(3,42px);gap:2px}.dpad button{border-radius:5px}.dpad [data-dir=up]{grid-row:1;grid-column:2}.dpad [data-dir=left]{grid-row:2;grid-column:1}.dpad [data-dir=down]{grid-row:3;grid-column:2}.dpad [data-dir=right]{grid-row:2;grid-column:3}.action-buttons{display:flex;align-items:center;gap:13px;padding:10px 6px 0;transform:rotate(-12deg)}.action-buttons button{width:54px;height:54px;border-radius:50%;background:var(--action-red);border-color:#e26672;font-size:21px}.button-b{margin-top:20px}#return-title{margin-top:-3px}}
