/* Touch Action and Safe Viewport */
html, body {
  touch-action: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
  overscroll-behavior: none;
}

/* Custom scrollbars hidden */
::-webkit-scrollbar {
  display: none;
}

/* Speedometer Smooth Transitions */
#speed-circle {
  transition: stroke-dashoffset 0.08s ease-out;
}

/* Touch Control Feedback */
.touch-control {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  touch-action: none;
}

.touch-control:active {
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.4);
}

/* Pulse animation for alerts */
@keyframes pop-bounce {
  0% { transform: translate(-50%, -50%) scale(0.4) rotate(-8deg); opacity: 0; }
  50% { transform: translate(-50%, -50%) scale(1.15) rotate(3deg); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1) rotate(-4deg); opacity: 1; }
}

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

/* HUD Button Glassmorphism */
.hud-btn {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Canvas styling */
#game-container canvas {
  width: 100% !important;
  height: 100% !important;
  display: block;
}