html, body {
  margin: 0;
  height: 100%;
  /* a held touch is a charge, never a browser gesture: no zoom, no text
     loupe, no long-press callout */
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

body {
  height: 100dvh;
  background: #0e0e17;
  background-image: radial-gradient(ellipse at 50% 30%, #1a1a2c 0%, #0e0e17 70%);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
}

main {
  display: flex;
  align-items: center;
  justify-content: center;
}

#game {
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  cursor: pointer;
  touch-action: none;
}

/* the frame is a desktop nicety — on small screens the game IS the screen */
@media (min-width: 600px) {
  #game {
    border: 3px solid #2b2b40;
    box-shadow: 0 0 0 3px #101018, 0 12px 48px rgba(0, 0, 0, 0.6);
  }
}
