/* Reset & Base Styling */
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  -webkit-user-select: none;
}

body {
  font-family: 'Cairo', system-ui, sans-serif;
  touch-action: none;
  overscroll-behavior: none;
}

/* Touch Control buttons styling */
.touch-btn {
  transition: transform 0.08s ease, background-color 0.08s ease;
}
.touch-btn:active {
  transform: scale(0.92);
}

.touch-action-btn:active {
  transform: scale(0.90);
}

/* Glow Utilities */
.neon-glow-cyan {
  filter: drop-shadow(0 0 12px rgba(0, 229, 255, 0.7));
}

.neon-glow-orange {
  filter: drop-shadow(0 0 12px rgba(255, 87, 34, 0.7));
}

/* RTL Safety for Physical Controls: Containers using dir="ltr" maintain exact left/right motor controls */
[dir="ltr"] {
  text-align: left;
}

/* Animations */
@keyframes pulseGlow {
  0%, 100% { opacity: 0.8; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.04); }
}

.animate-pulse-glow {
  animation: pulseGlow 1.8s infinite ease-in-out;
}

/* Scrollbar hide */
::-webkit-scrollbar {
  display: none;
}