html, body {
  margin: 0; height: 100%; background: #000; overflow: hidden;
}
#wrap {
  position: fixed; inset: 0; display: flex; align-items: center; justify-content: center;
}
#game {
  display: block;
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  background: #000;
}
/* CRT filter: toggled with F (body.crt) */
#crt {
  position: absolute; pointer-events: none; display: none;
}
body.crt #crt {
  display: block;
  /* sized to the canvas by matching its box via the flex centering */
  inset: 0;
  background:
    repeating-linear-gradient(to bottom, rgba(0,0,0,0) 0, rgba(0,0,0,0) 2px, rgba(0,0,0,0.28) 3px),
    radial-gradient(ellipse at center, rgba(0,0,0,0) 60%, rgba(0,0,0,0.55) 100%);
  mix-blend-mode: multiply;
}
body.crt #game {
  filter: saturate(1.15) contrast(1.08) drop-shadow(0 0 6px rgba(255, 122, 26, 0.25));
}
