* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: 'Space Grotesk', sans-serif;
  background-color: #0A0E27;
  min-height: 100vh;
  overflow-x: hidden;
}

.app-container {
  min-height: 100vh;
  background: linear-gradient(135deg, #0A0E27 0%, #0D1333 50%, #0A0E27 100%);
}

.screen-container {
  min-height: 100vh;
  width: 100%;
}

/* Animations */
.fade-in {
  animation: fadeIn 0.4s ease-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Logo glow effect */
.logo-glow {
  filter: drop-shadow(0 0 20px rgba(0, 217, 255, 0.5)) drop-shadow(0 0 40px rgba(57, 255, 20, 0.3));
}

/* Gradient text */
.gradient-text {
  background: linear-gradient(90deg, #00D9FF 0%, #39FF14 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Science box */
.science-box {
  background: #1A1F3A;
  border: 1px solid rgba(0, 217, 255, 0.2);
}

/* CTA Button */
.cta-button {
  background: linear-gradient(135deg, #00D9FF 0%, #8B5CF6 50%, #39FF14 100%);
  box-shadow: 0 4px 20px rgba(0, 217, 255, 0.4);
  transition: all 0.3s ease;
}

.cta-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 30px rgba(0, 217, 255, 0.6);
}

.cta-button:active {
  transform: translateY(0);
}

/* Wait cards */
.wait-card {
  background: #1A1F3A;
  border: 1px solid rgba(0, 217, 255, 0.2);
  cursor: pointer;
}

.wait-card:hover {
  border-color: #00D9FF;
  box-shadow: 0 0 20px rgba(0, 217, 255, 0.3);
}

/* Exercise cards */
.exercise-card {
  background: #1A1F3A;
  border: 1px solid rgba(0, 217, 255, 0.2);
  cursor: pointer;
}

.exercise-card:hover {
  border-color: #39FF14;
  box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
}

/* Workout card */
.workout-card {
  background: linear-gradient(180deg, #1A1F3A 0%, #151A32 100%);
  border: 1px solid rgba(0, 217, 255, 0.3);
  cursor: grab;
  touch-action: pan-y;
}

.workout-card:active {
  cursor: grabbing;
}

/* Motivation text */
.motivation-text {
  color: #00D9FF;
  text-shadow: 0 0 20px rgba(0, 217, 255, 0.5);
}

/* Tap button */
.tap-button {
  background: linear-gradient(90deg, rgba(0, 217, 255, 0.3) 0%, rgba(57, 255, 20, 0.3) 100%);
  border: 1px solid rgba(0, 217, 255, 0.5);
  transition: all 0.3s ease;
}

.tap-button:hover {
  background: linear-gradient(90deg, rgba(0, 217, 255, 0.5) 0%, rgba(57, 255, 20, 0.5) 100%);
}

/* Stats card */
.stats-card {
  background: #1A1F3A;
  border: 1px solid rgba(0, 217, 255, 0.2);
}

/* Cheat button */
.cheat-button {
  background: transparent;
  border: 2px solid #39FF14;
  color: #39FF14;
  transition: all 0.3s ease;
}

.cheat-button:hover {
  background: rgba(57, 255, 20, 0.2);
}

/* Bottom nav */
.bottom-nav {
  background: linear-gradient(180deg, transparent 0%, #0A0E27 20%, #0A0E27 100%);
  border-top: 1px solid rgba(0, 217, 255, 0.1);
}

.nav-button {
  transition: all 0.3s ease;
}

.nav-button:hover {
  opacity: 1 !important;
}

/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  background: #0A0E27;
}

::-webkit-scrollbar-thumb {
  background: #1A1F3A;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: #00D9FF;
}

/* Mobile optimizations */
@media (max-width: 640px) {
  .motivation-text {
    font-size: 2.5rem;
  }
  
  .workout-card {
    margin: 0 10px;
  }
}

/* Desktop hover states */
@media (hover: hover) {
  .wait-card:hover,
  .exercise-card:hover {
    transform: scale(1.02);
  }
}

/* Prevent text selection during swipe */
.workout-card * {
  user-select: none;
  -webkit-user-select: none;
}