:root{color-scheme:dark;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#101c2a;color:#e7e9dd}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 32%,#24384c 0,transparent 65%)}main{width:min(820px,100%);padding:26px 30px 20px}header{display:flex;align-items:center;gap:24px;margin-bottom:18px}.wordmark{color:inherit;text-decoration:none;letter-spacing:.18em;font-weight:900;font-size:27px;display:flex;align-items:center;gap:14px}.wordmark span{font-size:10px;font-weight:400;letter-spacing:.12em;border-left:1px solid #536273;padding-left:14px;color:#aebdcb}.edition{margin-left:auto;display:grid;gap:5px;font-size:9px;letter-spacing:.13em;text-align:right;color:#aebdcb}.edition i{color:#d6a075;font-style:normal}button{font:inherit;color:inherit;cursor:pointer;background:transparent;border:1px solid #627183;border-radius:3px}button:hover{background:#ffffff12}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #ecc29d;outline-offset:4px}#fullscreen{border:0;font-size:25px;padding:6px}.console{width:100%;aspect-ratio:256/240;background:#080e16;position:relative;border:1px solid #617286;border-radius:5px;overflow:hidden;box-shadow:0 20px 60px #040a1270,0 0 0 7px #0c1520}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;object-fit:contain}.curtain{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:linear-gradient(#0c1828ee,#17293be8);padding:22px}.curtain[hidden]{display:none}.eyebrow{color:#becbd4;font-size:10px;letter-spacing:.17em;margin:0 0 26px}h1{font-family:Impact,'Arial Black',sans-serif;font-weight:900;font-size:clamp(28px,5.4vw,48px);letter-spacing:.07em;line-height:.94;margin:0;text-shadow:3px 4px #07121e}h1 strong{display:inline-block;color:#dca877;font-size:2.1em;letter-spacing:.015em;margin:.06em 0}#status{font-size:11px;color:#b4c2ce;max-width:370px;margin:24px 0 15px;line-height:1.7}#start,#restart{padding:16px 24px;background:#d9a379;border-color:#efc5a5;color:#172337;font-weight:bold;letter-spacing:.1em;min-width:215px;font-size:12px}#start span,#restart span{margin-left:18px}#start:disabled{opacity:.45;cursor:default}.scope{font-size:10px;line-height:1.8;color:#a5b6c6;margin:19px 0 0}.boundary h2{font-size:24px;max-width:350px;line-height:1.4}.boundary p:not(.eyebrow){font-size:12px;max-width:390px;line-height:1.8;margin-bottom:28px}footer{display:flex;align-items:center;justify-content:space-between;margin-top:23px;font-size:10px;color:#aebdcb;gap:12px}footer p{line-height:2.5;margin:0}footer b{margin:0 7px;color:#63758a}kbd{font:inherit;display:inline-block;min-width:17px;text-align:center;padding:0 4px;border:1px solid #42566b;line-height:20px;border-radius:2px;margin-right:3px;color:#e4e8df}#sound{font-size:9px;white-space:nowrap;padding:10px}.note{font-size:9px;line-height:1.8;color:#8397ac;margin-top:22px}.touch{display:none;justify-content:space-between;margin-top:18px;touch-action:none}.touch>div{display:flex;gap:8px}.touch button{height:50px;min-width:44px;padding:6px;font-size:11px;touch-action:none;user-select:none;-webkit-user-select:none}.touch button[data-key=KeyZ]{background:#d9a379;color:#172337;border-color:#efc5a5}.console:fullscreen{border:0;border-radius:0;background:#080e16;width:100%;height:100%;aspect-ratio:auto}.console:fullscreen canvas{object-fit:contain}.console:fullscreen .curtain{background:#101c2af0}@media(pointer:coarse){.touch{display:flex}}@media(max-width:600px){main{padding:18px 14px}.wordmark{font-size:22px;gap:9px}.wordmark span{font-size:8px;padding-left:9px}.edition{font-size:7px;letter-spacing:.05em}header{gap:8px;margin-bottom:15px}#fullscreen{font-size:22px}.curtain{padding:14px}.eyebrow{font-size:8px;margin-bottom:16px}h1{font-size:28px}#status{margin-top:15px;font-size:10px}.scope{font-size:8px;margin-top:14px}#start,#restart{font-size:10px;padding:12px 18px;min-width:190px}footer{align-items:flex-start;font-size:8px;gap:6px}footer b{margin:0 3px}.note{font-size:8px}kbd{font-size:8px;min-width:13px;padding:0 2px}.touch{gap:6px}.touch>div{gap:5px}.touch button{min-width:39px;font-size:9px}}
