:root {
  --hud-fg: #f4efe6;
  --hud-bg: rgba(10, 12, 16, 0.55);
  --accent: #f2c724;
}
html, body { margin: 0; height: 100%; overflow: hidden; background: #151a1f; font-family: system-ui, -apple-system, Segoe UI, sans-serif; color: var(--hud-fg); }
canvas#game { display: block; width: 100vw; height: 100vh; touch-action: none; }
.overlay { position: fixed; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; background: rgba(8, 10, 14, 0.84); text-align: center; padding: 24px; z-index: 20; }
.overlay.hidden { display: none; }
.overlay h1 { font-size: 64px; margin: 0 0 8px; letter-spacing: 0.04em; color: var(--accent); }
.overlay p { max-width: 620px; line-height: 1.55; opacity: 0.92; }
.overlay button { font-size: 20px; padding: 12px 34px; border: 0; border-radius: 8px; background: var(--accent); color: #1a1a1a; cursor: pointer; margin-top: 16px; }
.overlay button:hover { filter: brightness(1.08); }
kbd { background: #2a2f36; border-radius: 4px; padding: 1px 6px; font-family: inherit; }