html, body {
  margin: 0;
  padding: 0;
  overflow: hidden;               /* no scrolling — the canvas is the whole page */
  overscroll-behavior: none;      /* kill pull-to-refresh / scroll-bounce on mobile */
  background-color: black;
  color: white;
  touch-action: none;             /* we handle all touch gestures ourselves */
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

/* The canvas is sized to the visible viewport in JS. Pin it to the top of the
   page (normal flow) and center it horizontally, so it fills the screen with no
   black bars above/below. The body shrink-wraps the canvas, so the page height
   equals the canvas height exactly. */
canvas {
  display: block;
  margin: 0 auto;                 /* center horizontally (desktop) */
  touch-action: none;
}
