:root{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;color:#c6cac3;background:#101110;font-synthesis:none;color-scheme:dark;--muted: #747a72;--line: #2d302b;--green: #d6edc8}*{box-sizing:border-box}body{margin:0;min-width:300px}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #b7dca2;outline-offset:4px}button:disabled{cursor:default;opacity:.32}button,a{touch-action:manipulation}a,button{color:inherit}.arcade{width:min(100% - 64px,1000px,calc((100svh - 372px) * 1.333334));min-width:min(640px,calc(100% - 64px));margin:0 auto;padding:30px 0 20px}.masthead{display:flex;align-items:center;justify-content:space-between;margin:0 0 24px;gap:16px}.brand{display:flex;gap:12px;align-items:center;font-weight:700;letter-spacing:2px;text-decoration:none;font-size:15px;color:#e8ece4}.brand-year{color:#7c8377;font-size:12px;font-weight:400;letter-spacing:1px}.brand-mark{display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:2px}.brand-mark i{background:#5f5;grid-column:2}.brand-mark i:nth-child(2){background:#f5f;grid-column:1}.brand-mark i:nth-child(3){background:#5ff}.edition{display:flex;align-items:center;gap:7px;font-size:9px;color:#858b80;letter-spacing:1px;white-space:nowrap}.status-dot{width:5px;height:5px;border-radius:50%;background:#a5bd94;margin-right:2px}.edition-separator{color:#474d42;margin:0 3px}.machine{border:1px solid #383c34;background:#171916;box-shadow:0 14px 40px #0003}.screen-topline{display:flex;align-items:center;justify-content:space-between;height:31px;padding:0 14px;font-size:9px;letter-spacing:1.5px;color:#8e9488;border-bottom:1px solid #292d25}.screen-spec{color:#7d8477;letter-spacing:1px}.screen-spec span{color:#b7beb0;margin-left:8px}.screen-wrap{position:relative;background:#000;line-height:0}#game{display:block;width:100%;height:auto;aspect-ratio:4 / 3;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none}#game:focus{outline:none}#game:focus-visible{outline:1px solid #799a65;outline-offset:2px}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;display:none;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,#0003 2px,#0003 3px)}.crt .scanlines{display:block}.toolbar{min-height:65px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid #2e3229}.primary-actions,.secondary-actions{display:flex;gap:6px;align-items:center}.button{min-height:36px;border:1px solid transparent;border-radius:2px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:transparent;padding:0 13px;font-size:11px;font-weight:500;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.button:hover:not(:disabled){background:#262c22;color:#fff}.button-primary{background:var(--green);color:#1c2617;border-color:var(--green)}.button-primary:hover:not(:disabled){background:#e6ffda;border-color:#e6ffda;color:#172212}.button-primary svg{width:15px;height:15px;fill:currentColor;stroke:none}.button-primary kbd{border:0;background:#b4cda44d;color:#3c5332;margin-left:10px}.button-icon{width:36px;padding:0;color:#929c88}.button svg{width:18px;height:18px}.secondary-actions svg{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}#pause svg{fill:currentColor}.button-subtle{color:#a5ad9c;padding-inline:9px}.slider-knobs{stroke-width:3}.sound-muted{display:none}#sound[aria-pressed=false] .sound-muted{display:block}#sound[aria-pressed=false] .sound-waves{display:none}#sound[aria-pressed=false]{color:#727b69}.help-button{font-size:17px;font-family:Georgia,serif;font-weight:600}.toolbar-divider{height:18px;width:1px;background:#373d31;margin:0 6px}.touch-controls{display:none}.session-line{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:17px 0;font-size:10px;line-height:1.6}.session-line p{margin:0;color:#8e9587}.session-prompt{font-size:9px;letter-spacing:.7px;color:#becdb4;white-space:nowrap}.blink-cursor{animation:blink 1.15s step-end infinite;font-size:11px}@keyframes blink{50%{opacity:0}}.keyboard-help{border-top:1px solid var(--line);padding:17px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#828b79}.keyboard-help>div{display:flex;align-items:center;gap:8px}.key-pair{display:inline-flex;gap:3px}kbd{display:inline-flex;min-width:21px;height:20px;align-items:center;justify-content:center;padding:0 4px;color:#adb5a5;background:#1a1e17;border:1px solid #373e30;border-radius:3px;font-family:inherit;font-size:10px;font-weight:400;line-height:1}.space-key{font-size:8px;letter-spacing:.5px;padding:0 7px}.keyboard-help button,.footer button{border:0;padding:4px 0;background:none;font-size:10px;color:#a6b29c}.keyboard-help button:hover,.footer button:hover{color:#d6edc8}.keyboard-help button span,.footer button span{padding-left:4px;color:#6d7e60}.footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:13px;font-size:9px;color:#727a6b;border-top:1px solid var(--line)}.footer p{margin:0;line-height:1.8}.footer p>span:first-child{color:#a3aa9c}.footer .footer-dot{margin:0 8px}.footer button{font-size:9px;white-space:nowrap}.footer a{color:#b7caa9;text-decoration:none;white-space:nowrap}.footer a:hover{color:#e0f4d2}.ranking-line{display:flex;align-items:center;gap:12px;padding:0 0 15px;font-size:9px;line-height:1.6;color:#899980}#ranking-status{color:#cebc83}#ranking-status[data-online=true]{color:#a3c48c}.ranking-line button{border:0;padding:4px;background:none;color:#afc39f;font:inherit;white-space:nowrap}.replay-hint{margin-left:auto;color:#75866b;text-align:right}.record-hitareas{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.record-hit{position:absolute;pointer-events:auto;left:68.4375%;width:29.6875%;height:2.70834%;border:0;border-radius:0;padding:0;background:transparent}.record-hit:hover,.record-hit:focus-visible{background:#fff2;outline:1px solid #c5e5b178;outline-offset:0}.replay-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:7px 14px;border-top:1px solid #426134;background:#202c18;color:#c9e7b4;font-size:10px}.replay-controls[hidden]{display:none}.replay-buttons{display:flex;align-items:center;gap:8px}.replay-buttons button,.replay-buttons select{border:1px solid #506342;padding:4px 7px;background:#14200c;color:#d4eac4;font:inherit;border-radius:2px}.replay-buttons label{display:flex;align-items:center;gap:6px;font-size:9px}.machine.watching .touch-controls{display:none}.machine.watching:fullscreen .screen-wrap,.machine.watching.expanded .screen-wrap,.machine.watching:fullscreen .toolbar,.machine.watching.expanded .toolbar{width:min(100vw,calc((100dvh - 108px) * 4 / 3))}.machine:fullscreen .replay-controls,.machine.expanded .replay-controls{width:min(100vw,calc((100dvh - 108px) * 4 / 3))}.modal{width:min(580px,calc(100% - 32px));max-height:calc(100svh - 48px);margin:auto;padding:28px 32px 30px;background:#191c17;color:#bcc5b5;border:1px solid #48543e;border-radius:5px;box-shadow:0 24px 100px #0009;font-size:12px;line-height:1.8;overscroll-behavior:contain}.modal::backdrop{background:#080b08bf;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-small{max-width:430px}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{font-size:9px;letter-spacing:1.6px;color:#8eab7d}.close-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:none;border:1px solid #394331;color:#b3c1a8;border-radius:3px;font-size:22px;line-height:1}.close-button:hover{background:#30382a}.modal h1{font-family:system-ui,-apple-system,sans-serif;font-size:27px;line-height:1.3;font-weight:550;letter-spacing:-.7px;margin:22px 0 14px;color:#e7efdf}.modal h2{font-size:12px;font-weight:500;color:#d8e4cf;margin:24px 0 12px}.modal p{margin:12px 0}.modal-intro{color:#cad7bf;font-size:13px}.modal-action{width:100%;margin-top:24px;min-height:43px;justify-content:space-between;font-size:12px}.rule-illustrations{display:flex;justify-content:space-around;margin:25px 0;padding:20px 0 14px;background:#10130e;border:1px solid #303b27}.rule-illustrations>div{display:flex;flex-direction:column;align-items:center;gap:13px;color:#9ba890;font-size:10px}.mini-grid{width:50px;height:50px;display:grid;grid-template:repeat(3,16px) / repeat(3,16px);gap:1px}.mini-grid i{width:16px;height:16px;background:#5f5}.horizontal i{grid-row:2}.vertical i{background:#5ff;grid-column:2}.diagonal i{background:#f5f}.diagonal i:nth-child(2){grid-row:2;grid-column:2}.diagonal i:nth-child(3){grid-row:3;grid-column:3}.controls-table>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:9px 0;border-bottom:1px solid #2d3527;font-size:11px}.controls-table>div>span:last-child{white-space:nowrap}.score-details{margin-top:20px;border:1px solid #35412b;padding:12px 15px;font-size:11px}.score-details summary{cursor:pointer;color:#c6d6bb}.score-table{width:100%;text-align:right;border-collapse:collapse;font-size:10px}.score-table th{color:#a0b88e;font-weight:500}.score-table th,.score-table td{padding:7px 3px;border-bottom:1px solid #303c27}.score-table th:first-child,.score-table td:first-child{text-align:left}.field-label{display:block;margin:22px 0 9px;color:#bdceb0;font-size:11px}.text-input{width:100%;padding:11px 12px;background:#10150d;border:1px solid #424e36;border-radius:3px;color:#deebd3;outline:none;font-size:13px}.text-input:focus{border-color:#b2d194}.modal .field-hint{font-size:10px;color:#86947b;margin:7px 0 23px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid #303b28;cursor:pointer}.toggle-row strong{display:block;font-size:11px;font-weight:500;color:#d3dfc9}.toggle-row small{display:block;font-size:10px;line-height:1.7;color:#8c9c80;padding-top:4px}.toggle-row input{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:32px;height:18px;background:#3b4335;border:1px solid #536047;border-radius:10px;position:relative;cursor:pointer}.toggle-row input:after{content:"";position:absolute;top:3px;left:3px;width:10px;height:10px;background:#aebca3;border-radius:50%;transition:transform .15s}.toggle-row input:checked{background:#92b179;border-color:#a4c38b}.toggle-row input:checked:after{background:#202d17;transform:translate(14px)}.modal .settings-note{color:#819272;font-size:10px;margin:15px 0 0}.about-facts{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 0;margin:23px 0;border-block:1px solid #37442d}.about-facts>div{display:flex;flex-direction:column;align-items:center;gap:7px}.about-facts strong{font-weight:400;font-size:22px;color:#c4e4ab}.about-facts span{font-size:9px;color:#94a484}.source-list{padding:0;margin:0;list-style:none}.source-list a{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #35412d;text-decoration:none;color:#c9dfb8;font-size:11px}.source-list a:hover{color:#f1ffe7}.source-list a span{text-align:right;color:#8da17d;font-size:10px}.modal .credits-note{font-size:9px;color:#7e9270;margin:25px 0 0}.record-eyebrow{color:#c9eea7}.record-score{color:#d6ed6e;font-size:46px;letter-spacing:-2px;line-height:1.4;margin:24px 0}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{text-align:center;padding:24px;color:#e2eccf}.machine:fullscreen,.machine.expanded{background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;border:0;width:100%;height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.machine.expanded{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10}.machine:fullscreen .screen-topline,.machine.expanded .screen-topline{display:none}.machine:fullscreen .screen-wrap,.machine.expanded .screen-wrap{width:min(100vw,calc((100dvh - 64px) * 4 / 3))}.machine:fullscreen .toolbar,.machine.expanded .toolbar{width:min(100vw,calc((100dvh - 64px) * 4 / 3));min-height:64px;background:#11150f}@media(max-width:760px){.arcade{width:calc(100% - 36px);min-width:0;padding-top:24px}.edition{font-size:8px;letter-spacing:.5px}.keyboard-help{gap:8px}.keyboard-help>div{gap:6px;font-size:9px}}@media(max-width:580px),(pointer:coarse){.touch-controls{display:grid;grid-template-columns:1fr 1fr 1.35fr 1fr 1fr;gap:7px;padding:0 12px 12px}.touch-controls button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:53px;border:1px solid #3c4832;border-radius:3px;background:#21271c;color:#b8cba8;font-size:24px;font-family:system-ui,sans-serif;touch-action:none;-webkit-user-select:none;user-select:none}.touch-controls button:active,.touch-controls button.pressed{color:#e6ffcf;background:#3b4d2c}.touch-controls button span{font-family:Consolas,monospace;font-size:7px;letter-spacing:1px}.touch-controls .touch-drop{background:#2b3523;border-color:#536242}.machine:fullscreen .touch-controls,.machine.expanded .touch-controls{width:min(100vw,calc((100dvh - 129px) * 4 / 3));background:#11150f}.machine:fullscreen .screen-wrap,.machine.expanded .screen-wrap,.machine:fullscreen .toolbar,.machine.expanded .toolbar{width:min(100vw,calc((100dvh - 129px) * 4 / 3))}}@media(max-width:580px){.ranking-line{flex-wrap:wrap;gap:4px 10px}.replay-hint{width:100%;margin:0;text-align:left;font-size:8px}.replay-controls{flex-wrap:wrap;padding:8px 10px;font-size:9px}.footer{flex-wrap:wrap}.footer a{font-size:8px}.arcade{width:calc(100% - 24px);padding:21px 0 22px}.masthead{margin-bottom:18px}.brand{font-size:13px;letter-spacing:1.6px;gap:9px}.brand-year{font-size:10px}.edition{font-size:0;gap:0}.edition .edition-separator{display:none}.edition:after{content:"WEB EDITION";font-size:8px;letter-spacing:1px;margin-left:5px}.toolbar{min-height:62px;padding:12px;gap:4px}.primary-actions,.secondary-actions{gap:2px}.button{font-size:10px}.button-primary{padding-inline:10px;gap:6px}.button-primary kbd{margin-left:2px}.button-label,.toolbar-divider{display:none}.button-icon,.button-subtle{width:32px;padding:0}.session-line{padding:15px 0;flex-wrap:wrap;gap:4px}.session-prompt{font-size:8px}.keyboard-help{padding:14px 0;flex-wrap:wrap;justify-content:flex-start;gap:15px}.keyboard-help>div:nth-child(4){display:none}.keyboard-help>button{margin-left:auto;font-size:9px}.footer{align-items:flex-start;font-size:8px;gap:8px}.footer p{max-width:220px}.footer .footer-dot{margin-inline:4px}.footer button{font-size:8px}.modal{padding:20px;max-height:calc(100svh - 24px);width:calc(100% - 24px)}.modal h1{font-size:24px}.controls-table>div{font-size:10px;gap:8px}.source-list a{flex-direction:column;gap:1px}.source-list a span{text-align:left}}@media(max-width:360px){.button-primary kbd{display:none}.keyboard-help>div:nth-child(3){display:none}.brand-year{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
