*{box-sizing:border-box}html,body{margin:0;height:100%;background:#000;overflow:hidden;font-family:"Courier New",monospace;color:#fff;touch-action:none;user-select:none}
#c{position:fixed;inset:0;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}
#hud{position:fixed;top:8px;left:8px;right:8px;display:flex;gap:8px;align-items:center;font-weight:bold;text-shadow:2px 2px #000}
#chips{background:#2a0a18;border:3px solid #ffd700;padding:4px 10px;color:#ffd700;font-size:20px}
#room{flex:1;text-align:center;font-size:16px;color:#ff6ad5}
button{font-family:inherit;font-weight:bold;background:#3b0b2a;color:#ffd700;border:3px solid #ffd700;padding:6px 10px;cursor:pointer}
button:active{background:#ffd700;color:#000}
#prompt{position:fixed;bottom:22%;left:50%;transform:translateX(-50%);background:#000c;border:2px solid #0ff;padding:6px 12px;display:none;color:#0ff}
#toast{position:fixed;top:60px;left:50%;transform:translateX(-50%);background:#000d;border:2px solid #ffd700;padding:8px 14px;display:none;color:#ffd700;text-align:center}
.panel{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);background:#1a0612;border:4px solid #ffd700;box-shadow:0 0 0 4px #ff2a8a;padding:16px;max-width:94vw;max-height:90vh;overflow:auto;text-align:center}
.hidden{display:none}.title{font-size:22px;color:#ffd700;margin-bottom:10px}.title small{font-size:11px;color:#aaa;display:block}
#reels{display:flex;gap:8px;justify-content:center;background:#000;padding:10px;border:3px solid #a00}
.reel{width:84px;height:84px;background:#fff8e0;border:3px solid #333;display:flex;align-items:center;justify-content:center}
.reel img{width:64px;height:64px;image-rendering:pixelated}
#slotMsg{margin:10px 0;min-height:1.2em;color:#0ff}.row{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.pay{font-size:11px;color:#aaa;margin-top:8px}
#credText{text-align:left;white-space:pre-wrap;font-size:11px;color:#ddd;max-width:720px}
#touch{display:none}.touch #touch{display:block}
#dpad{position:fixed;left:14px;bottom:14px;display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px)}
#dpad button{font-size:22px;opacity:.75}#dpad [data-k=up]{grid-column:2;grid-row:1}#dpad [data-k=left]{grid-column:1;grid-row:2}#dpad [data-k=right]{grid-column:3;grid-row:2}#dpad [data-k=down]{grid-column:2;grid-row:3}
#actBtn{position:fixed;right:20px;bottom:40px;width:76px;height:76px;border-radius:50%;font-size:28px;opacity:.85}
#loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#000;color:#ffd700;font-size:22px}
