/* Custom TV broadcast & FIFA aesthetics */
@keyframes goalPop {
  0% { transform: scale(0.6) translateY(20px); opacity: 0; }
  60% { transform: scale(1.08) translateY(-4px); opacity: 1; }
  100% { transform: scale(1) translateY(0); opacity: 1; }
}

.animate-goal-pop {
  animation: goalPop 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

/* Glassmorphism surfaces */
.broadcast-glass {
  background: rgba(15, 23, 42, 0.85);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

/* Joystick visual interaction */
#joystick-base {
  background: radial-gradient(circle, rgba(30, 41, 59, 0.65) 0%, rgba(15, 23, 42, 0.9) 100%);
}

#joystick-stick {
  touch-action: none;
}

/* Smooth button tap feedback */
button:active {
  transform: scale(0.92);
}

/* Pitch Radar overlay */
#radar-canvas {
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
}

/* Mobile viewport lock */
html, body {
  width: 100%;
  height: 100%;
  overscroll-behavior: none;
  -webkit-touch-callout: none;
  user-select: none;
}