:root{--bg: #04060f;--fg: #8ad7ff;--accent: #ff4d6d;--dim: #2a3550;--grid: #0c1226}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--fg);font-family:Courier New,ui-monospace,monospace;-webkit-font-smoothing:none}#app{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px}.hud{width:800px;max-width:100%;display:flex;align-items:baseline;justify-content:space-between}.hud h1{margin:0;font-size:22px;letter-spacing:6px;color:var(--fg);text-shadow:0 0 12px rgba(138,215,255,.6)}.stats{display:flex;gap:18px;font-size:14px;letter-spacing:2px}.stats b{color:#fff}.stage{position:relative;width:800px;max-width:100%}canvas{display:block;width:100%;height:auto;background:radial-gradient(circle at center,#070b1c,#04060f 70%);border:1px solid var(--dim);box-shadow:0 0 40px #3c78c826 inset}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#04060fd1;backdrop-filter:blur(2px)}.overlay.hidden{display:none}.panel{text-align:center;max-width:460px;padding:24px}.panel h2{margin:0 0 12px;font-size:28px;letter-spacing:4px;color:var(--accent);text-shadow:0 0 16px rgba(255,77,109,.5)}.panel p{line-height:1.5;font-size:14px;color:#b9d6ef}.panel .keys b{color:#fff;background:var(--grid);border:1px solid var(--dim);padding:1px 6px;border-radius:3px}.diff{display:block;margin:16px 0;font-size:13px;letter-spacing:1px}.diff select{background:var(--grid);color:var(--fg);border:1px solid var(--dim);padding:4px 8px;font-family:inherit}button#start{margin-top:8px;font-family:inherit;font-size:16px;letter-spacing:3px;color:var(--bg);background:var(--fg);border:none;padding:10px 28px;cursor:pointer;border-radius:4px;box-shadow:0 0 18px #8ad7ff80}button#start:hover{background:#fff}
