[hidden]{display:none!important}
.arcade-app{flex:1;min-height:0;display:flex;flex-direction:column;background:#121528;color:#dfedf2;--arcade-yellow:#ecf34b;--arcade-gold:#c4a543;padding:10px;overflow:auto}
.arcade-title{flex-shrink:0;height:34px;background:linear-gradient(90deg,#203660,#41482b);font-size:17px;color:#fff}
.arcade-title>div{display:flex;align-items:center;gap:14px}.arcade-title span{font-size:11px;color:#e6e8b5}
.arcade-title button,.score-header button{font:inherit;cursor:pointer;border:2px solid;border-color:#fff #454456 #454456 #fff;background:#bfc2cd;color:#192038;line-height:1;width:24px;height:24px}
.arcade-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;padding:16px;background:radial-gradient(ellipse at 0 100%,#373820,transparent 70%)}
.game-column{display:flex;flex-direction:column;min-height:0;min-width:0;border:2px solid #566081;box-shadow:4px 4px #050910;background:#080b19}
.game-hud{display:flex;justify-content:space-between;align-items:center;padding:9px 16px;border-bottom:2px solid #39476b;font-size:12px;color:#8a9ab9;gap:12px}
.game-hud b{font-family:'VT323',monospace;font-size:31px;font-weight:400;color:var(--arcade-yellow);margin-left:8px;font-variant-numeric:tabular-nums}
.arcade-mini{border:1px solid #56617f;background:#1b233c;color:#dbe2ff;cursor:pointer;padding:5px 8px;font-size:13px}.arcade-mini:disabled{opacity:.4}
.game-stage{position:relative;flex:1;min-height:260px;overflow:hidden;background:#090c1c}
#game-canvas{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;image-rendering:pixelated;outline-offset:-4px}
.game-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;text-align:center;background:linear-gradient(#060a19d9,#0c163bbf);z-index:2}
.disk-label{font-size:11px;color:#dfdf9b;letter-spacing:2px}
.game-overlay h2{font-family:'VT323',monospace;font-size:clamp(56px,6.4vw,98px);font-weight:400;line-height:.76;letter-spacing:2px;margin:24px 0 12px;color:#edf7ff;text-shadow:4px 4px #82732c,7px 7px #151e42;transform:skewY(-3deg)}
.game-overlay h2 em{color:var(--arcade-yellow);font-style:normal}.game-overlay p{font-size:15px;color:#c4d0e7;margin:14px 0}
#game-form{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:400px}#game-form label{width:100%;font-size:11px;letter-spacing:2px;color:#8d9fbe}
#player-name{min-width:0;width:170px;max-width:100%;font:inherit;font-size:16px;padding:9px 12px;color:#f4f3c0;background:#080f20;border:2px solid;border-color:#030511 #5e6e92 #5e6e92 #030511;outline-offset:2px}
.arcade-app .win-button{background:var(--arcade-yellow);color:#242716;border-color:#ffffb1 #7a792b #7a792b #ffffb1;box-shadow:3px 3px #0006;font-size:14px;padding:8px 15px}
.arcade-app .win-button:hover{background:#f7ff87;color:#222613}.arcade-app .win-button:disabled{opacity:.5;cursor:wait}
#game-feedback{min-height:19px;max-width:400px;font-size:13px;color:#f1d883;margin:10px 0 0}
.game-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 15px;border-top:2px solid #39476b;flex-shrink:0}
.game-controls button{width:48px;height:38px;border:2px solid;border-color:#7184a9 #050919 #050919 #7184a9;background:#24304e;color:var(--arcade-yellow);font:inherit;font-size:22px;cursor:pointer;touch-action:manipulation}
.game-controls p{font-size:12px;margin:0;color:#a0abc0;text-align:center}.game-controls b{color:#e1eaff}.game-controls small{display:block;font-size:10px;color:#7987a5;margin-top:2px}
.score-board{display:flex;flex-direction:column;min-height:0;background:#161b31;border:2px solid;border-color:#505b7f #080c1c #080c1c #505b7f;padding:16px;overflow:auto;box-shadow:4px 4px #070912}
.score-header{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--arcade-yellow);letter-spacing:1px}.score-header button{background:#293552;border-color:#5a6e96 #0d1223 #0d1223 #5a6e96;color:#c2d4ef}
.score-board h3{font-family:'VT323',monospace;font-size:41px;font-weight:400;line-height:.88;margin:24px 0 12px}.score-board h3 em{color:var(--arcade-yellow);font-style:normal}
.score-caption{font-size:12px;color:#8f9fbd;line-height:1.5;margin:0 0 20px}.score-table-head{display:flex;justify-content:space-between;color:#7f91b2;font-size:10px;border-bottom:2px solid #3e4a69;padding-bottom:8px;letter-spacing:1px}
#leaderboard{list-style:none;padding:0;margin:0}#leaderboard li{display:flex;align-items:center;gap:9px;font-size:13px;padding:10px 0;border-bottom:1px solid #29324c}#leaderboard li b{font-size:12px;color:#697d9d;width:18px}#leaderboard li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#leaderboard li strong{margin-left:auto;font-weight:400;color:var(--arcade-yellow);font-variant-numeric:tabular-nums}#leaderboard li:first-child{color:#eff584}#leaderboard li:first-child b{color:#eff584}#leaderboard li.mine{background:#767a252b}#leaderboard-status{font-size:13px;color:#9caec7;line-height:1.5}
.arcade-sticker{margin:auto auto 5px;padding:22px 0 10px;transform:rotate(-5deg);font-family:'VT323',monospace;font-size:27px;line-height:1;color:#607094;letter-spacing:1px;text-align:center}.arcade-sticker span{display:block;font:10px 'Pixelify Sans',sans-serif;letter-spacing:2px;margin-top:10px}
.arcade-status{flex-shrink:0;padding:5px 8px;display:flex;justify-content:space-between;border:1px solid #424b66;font-size:10px;color:#8fa3c4;background:#171e32;letter-spacing:1px}
#arcade-tab[aria-pressed=true]{border-color:#343c47 #fff #fff #343c47;box-shadow:inset 1px 1px #777;background:#c1c7ca;color:#20304a}
#sound-toggle{margin-left:auto}#sound-toggle[aria-pressed=true]{opacity:.7}.task-clock{margin-left:0}.power-button{cursor:pointer}.power-button:active{transform:translateY(1px)}
.power-screen{position:absolute;inset:0;z-index:40;background:#030604;border-radius:var(--glass-radius-x) / var(--glass-radius-y);color:#afc4b4;padding:clamp(20px,4vw,60px);overflow:hidden;box-shadow:inset 0 0 55px #000;pointer-events:auto}
.computer[data-power=off] .crt-display,.computer[data-power=booting] .crt-display{visibility:hidden}
.computer[data-power=off] .crt-shimmer,.computer[data-power=off] .crt-tracking,.computer[data-power=booting] .crt-shimmer,.computer[data-power=booting] .crt-tracking{display:none}
.computer[data-power=off] .power-led{background:#414239;box-shadow:none}.computer[data-power=booting] .power-led{background:#e7b849;box-shadow:0 0 5px #f6cd69}
.power-screen.is-off{display:grid;place-items:center}.off-label{text-align:center;opacity:.5;font-size:12px;letter-spacing:3px}.off-label b{display:block;font-size:34px;margin-bottom:8px}.boot-brand{font-size:clamp(28px,4vw,50px);letter-spacing:4px;color:#c3e7bd;display:flex;align-items:center;gap:18px}.boot-brand img{width:42px;image-rendering:pixelated}.boot-sub{font-size:13px;color:#6e8a76;margin:10px 0 35px}.boot-log{font-family:'VT323',monospace;font-size:clamp(17px,2vw,23px);line-height:1.4;white-space:pre-wrap}.boot-log::after{content:'█';color:#c8e7c3}.boot-progress{margin-top:25px;height:18px;border:1px solid #58755f;padding:3px;max-width:460px}.boot-progress>div{height:100%;background:repeating-linear-gradient(90deg,#91b896 0 10px,transparent 10px 13px);width:0}.boot-footer{position:absolute;bottom:24px;font-size:12px;color:#587861}
@media(max-width:900px){.arcade-body{grid-template-columns:minmax(0,1fr) 230px;gap:10px;padding:10px}.score-board{padding:12px}.score-board h3{font-size:34px}.taskbar>.task-item{display:none}}
@media(max-width:760px){.arcade-app{padding:4px}.arcade-title{font-size:14px;height:29px}.arcade-title span{display:none}.arcade-body{display:block;overflow:auto;padding:6px}.game-column{min-height:440px;height:calc(100svh - 185px);max-height:650px}.game-stage{min-height:255px}.game-hud{padding:5px 8px;gap:5px}.game-hud b{font-size:25px;margin-left:4px}.game-hud>span{font-size:10px}.game-overlay{padding:10px}.game-overlay h2{font-size:65px}.disk-label{font-size:8px;letter-spacing:1px}.game-overlay p{font-size:13px}#game-form{gap:8px}#player-name{width:135px}.arcade-app .win-button{padding:8px;font-size:12px}.game-controls{padding:6px 8px}.game-controls p{font-size:10px}.game-controls small{font-size:9px}.game-controls p>span{display:none}.score-board{margin-top:12px;min-height:260px}.score-board h3{font-size:34px}.arcade-sticker{display:none}.score-caption{margin-bottom:10px}.arcade-status{font-size:8px;letter-spacing:0}.taskbar .win-button{padding-inline:6px}.taskbar{gap:5px}#sound-toggle span{display:none}#sound-toggle{font-size:17px;min-width:31px}.boot-sub{font-size:10px;margin-bottom:22px}.boot-log{font-size:17px}.boot-footer{font-size:9px;bottom:16px}}
.power-screen.is-off::before{content:'';position:absolute;left:50%;top:50%;height:2px;width:100%;background:#c5f5d1;box-shadow:0 0 9px #7eedad;animation:crt-power-down .3s ease-out forwards}
@keyframes crt-power-down{0%{width:100%;opacity:.6}75%{width:3%;opacity:.35}100%{width:0;opacity:0}}
@media(prefers-reduced-motion:reduce){.power-screen.is-off::before{animation:none;display:none}}
#mobile-scores{display:none;font:inherit;color:#ecf34b;border:0;background:none;padding:0;cursor:pointer}
@media(max-width:760px){.arcade-status>span:first-child{display:none}#mobile-scores{display:block}}

/* Recessed hardware controls, with a bright tactile switch against the cabinet. */
.monitor-controls{gap:16px;padding:5px 8px 6px 12px;border:1px solid;border-color:#655d49 #b6ab8b #c4b898 #6f6650;border-radius:4px;background:linear-gradient(135deg,#71695170,#91866d60);box-shadow:inset 1px 2px 3px #403b2d45,0 1px #d4c8a633}
.vent-slots{width:64px;height:16px;background:repeating-linear-gradient(90deg,#4c493a 0 2px,#6b634e 2px 4px,#a19473 4px 5px,transparent 5px 8px);border:0;opacity:.95;filter:drop-shadow(0 1px #d5c9a44d)}
.power-led{width:8px;height:8px;border:1px solid #b2ed90;background:#75d65c;box-shadow:0 0 0 2px #4c503d,0 1px 0 3px #b6aa8766,0 0 8px #7deb6666}
.power-button{width:34px;height:29px;padding:0;background:linear-gradient(135deg,#f4edd4,#d6cbaa);color:#303829;border:2px solid;border-color:#fff9e3 #8a7b5a #817351 #f9f1d8;border-radius:3px;font-size:18px;text-shadow:0 1px #fff6d9;box-shadow:2px 3px 0 #4c4536,0 0 0 1px #655d49,inset 1px 1px #fff9e4;transition:background .12s,box-shadow .12s}
.power-button:hover{background:linear-gradient(135deg,#fff9e6,#e7dab4);box-shadow:2px 3px 0 #4c4536,0 0 0 1px #655d49,inset 1px 1px #fffdf1}
.power-button:active{transform:translate(1px,2px);box-shadow:0 1px 0 #4c4536,inset 1px 1px 2px #9b8a68;border-color:#b6a685 #f4e8c6 #f4e8c6 #b6a685}
.power-button:focus-visible{outline:2px solid #f7e7b8;outline-offset:4px}
.computer[data-power=off] .power-led{background:#354331;border-color:#64745a;box-shadow:0 0 0 2px #4c503d,0 1px 0 3px #b6aa8766}
.computer[data-power=booting] .power-led{background:#e7b849;border-color:#ffdd90;box-shadow:0 0 0 2px #4c503d,0 1px 0 3px #b6aa8766,0 0 8px #f6cd6966}
@media(max-width:760px){.monitor-controls{gap:11px;padding:3px 6px 4px;border-radius:3px}.power-button{width:25px;height:23px;font-size:14px;box-shadow:1px 2px 0 #4c4536,inset 1px 1px #fff9e4}.power-led{width:6px;height:6px}}

/* Yellow phosphor highlights with the same tactile Windows controls. */
.arcade-app .win-button:active{border-color:#7a792b #ffffb1 #ffffb1 #7a792b;box-shadow:inset 2px 2px #92952d;transform:translate(1px,1px)}
.arcade-app :is(button,input,canvas):focus-visible{outline:2px dotted var(--arcade-yellow);outline-offset:3px}
.arcade-app .win-button:focus-visible{outline-color:#303414;outline-offset:-6px}
.game-controls button:hover,.score-header button:hover,.arcade-mini:not(:disabled):hover{background:#444a29;color:#f7ff87}
.game-controls button:active,.score-header button:active{border-color:#050919 #929b5d #929b5d #050919;transform:translate(1px,1px)}
#arcade-tab[aria-pressed=true]{background:#e6ea93;color:#30351b;border-color:#70743a #ffffbc #ffffbc #70743a;box-shadow:inset 1px 1px #a3a754}
