* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #0a0a1a;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  height: 100dvh; /* dynamic viewport height - fixes iOS Safari address bar */
  width: 100vw;
  /* Safe areas for notch/status bar */
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  position: relative;
}

canvas {
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  display: block;
}

/* Prevent text selection on mobile */
canvas, .overlay-container {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  touch-action: none;
}

/* Prevent iOS zoom on double tap */
body {
  touch-action: manipulation;
}
