:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--cabinet-red:#d3322b;--cabinet-yellow:#ffd045;--cabinet-blue:#233f9f;--ink:#f7f2d0}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--ink);background:linear-gradient(90deg,#ffffff0a 1px,#0000 1px) 0 0/28px 28px,linear-gradient(0deg,#ffffff09 1px,#0000 1px) 0 0/28px 28px,#15151a;font-family:Courier New,monospace;overflow-x:hidden}.arcade{place-items:center;min-height:100vh;padding:24px;display:grid}.cabinet{background:linear-gradient(135deg, var(--cabinet-red), #7b101e 58%, #310916);border:8px solid #090609;border-radius:8px;width:min(94vw,560px);padding:16px;box-shadow:0 26px 70px #0000007a,inset 0 0 0 4px #ffffff1f}.marquee{color:#1a0f02;background:repeating-linear-gradient(90deg, #ffef7d 0 12px, #ffce3a 12px 24px), var(--cabinet-yellow);letter-spacing:0;text-shadow:1px 1px #fff8b2;border:4px solid #1c1014;justify-content:space-between;align-items:center;gap:16px;min-height:42px;margin-bottom:12px;padding:8px 12px;font-weight:900;display:flex}.screen-wrap{background:#070609;border:10px solid #111;border-radius:6px;place-items:center;padding:10px;display:grid;position:relative;overflow:hidden}.screen-wrap:after{content:"";pointer-events:none;mix-blend-mode:screen;background:repeating-linear-gradient(0deg,#ffffff0e 0 1px,#0000 1px 4px),radial-gradient(circle at 50% 42%,#0000 44%,#0000003d 85%);position:absolute;inset:10px}canvas{aspect-ratio:224/256;width:min(100%,448px);height:auto;image-rendering:pixelated;image-rendering:crisp-edges;background:#000;outline:none;display:block}.overlay{pointer-events:none;color:#fffbd2;text-align:center;text-shadow:2px 0 #de2f6b,-2px 0 #1fc4ff,0 2px #070609;place-items:center;font-size:clamp(18px,5vw,28px);font-weight:900;display:grid;position:absolute;inset:10px}.overlay:empty{display:none}.controls{justify-content:space-between;gap:12px;margin-top:14px;display:flex}button{color:#17111a;cursor:pointer;background:#f4f0cf;border:4px solid #140d10;border-radius:6px;min-height:42px;font:800 16px/1 Courier New,monospace;box-shadow:inset -3px -3px #00000038}button:active{transform:translateY(1px)}@media (width<=520px){.arcade{padding:10px}.cabinet{border-width:5px;padding:10px}.marquee{font-size:14px}}
