* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html,
body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  touch-action: none;
}
body {
  background: radial-gradient(circle at center, #102a18 0%, #060b11 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  overflow: hidden;
  font-family: "Poppins", sans-serif;
  padding: env(safe-area-inset-top) env(safe-area-inset-right)
    env(safe-area-inset-bottom) env(safe-area-inset-left);
  position: relative;
}

/* Stadium net grid pattern */
body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: 
    linear-gradient(rgba(255, 255, 255, 0.01) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.01) 1px, transparent 1px);
  background-size: 50px 50px;
  background-position: center;
  pointer-events: none;
  z-index: 0;
}

/* Stadium light flares */
body::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: 
    radial-gradient(circle at 15% 15%, rgba(0, 255, 102, 0.04) 0%, transparent 50%),
    radial-gradient(circle at 85% 15%, rgba(0, 255, 255, 0.04) 0%, transparent 50%);
  pointer-events: none;
  z-index: 0;
}

canvas {
  display: block;
  max-height: 95vh;
  max-width: 95vw;
  box-shadow: 
    0 30px 70px rgba(0, 0, 0, 0.85), 
    0 0 35px rgba(0, 255, 102, 0.12);
  border-radius: 16px;
  border: 1.5px solid rgba(255, 255, 255, 0.08);
  z-index: 1;
}
