/* Custom CSS for AstroMania Hugo Theme */

/* Keyframe Animations */
@keyframes float {
  0%,
  100% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-20px) rotate(5deg);
  }
}

@keyframes parallax-stars {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100px);
  }
}

@keyframes marquee {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes pulse-glow {
  0%,
  100% {
    box-shadow: 0 0 20px rgba(139, 69, 255, 0.3);
  }
  50% {
    box-shadow: 0 0 40px rgba(139, 69, 255, 0.6);
  }
}

@keyframes tilt {
  0%,
  100% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(1deg);
  }
  75% {
    transform: rotate(-1deg);
  }
}

/* Space Theme Backgrounds */
.space-bg {
  background: linear-gradient(135deg, #1a0b2e 0%, #16213e 50%, #0f3460 100%);
  position: relative;
  overflow: hidden;
}

.space-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(2px 2px at 20px 30px, #fff, transparent),
    radial-gradient(2px 2px at 40px 70px, rgba(255, 255, 255, 0.8), transparent),
    radial-gradient(1px 1px at 90px 40px, #fff, transparent),
    radial-gradient(1px 1px at 130px 80px, rgba(255, 255, 255, 0.6), transparent);
  background-repeat: repeat;
  background-size: 200px 100px;
  animation: parallax-stars 20s linear infinite;
  pointer-events: none;
}

/* Floating Spaceman */
.floating-spaceman {
  animation: float 6s ease-in-out infinite;
}

/* Marquee Animation */
.marquee {
  overflow: hidden;
  white-space: nowrap;
}

.marquee-content {
  display: inline-block;
  animation: marquee 30s linear infinite;
}

/* Glow Effects */
.glow-violet {
  animation: pulse-glow 2s ease-in-out infinite;
}

.tilt-hover:hover {
  animation: tilt 0.5s ease-in-out;
}

/* Custom Prose Styling */
.prose-custom {
  line-height: 1.6;
  color: #e2e8f0;
}

.prose-custom h1 {
  color: #f8fafc;
  font-weight: 700;
}

.prose-custom h2 {
  color: #f1f5f9;
  font-weight: 600;
}

.prose-custom p {
  margin-bottom: 1rem;
}

/* Smooth Scroll */
html {
  scroll-behavior: smooth;
}

/* Focus States for Accessibility */
.focus-visible:focus {
  outline: 2px solid #8b5cf6;
  outline-offset: 2px;
}

/* Custom Button Styles */
.btn-primary {
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  transition: all 0.3s ease;
}

.btn-primary:hover {
  background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
  transform: translateY(-2px);
}

.btn-secondary {
  background: transparent;
  border: 2px solid #8b5cf6;
  color: #8b5cf6;
  transition: all 0.3s ease;
}

.btn-secondary:hover {
  background: #8b5cf6;
  color: white;
}

/* Island Bottom Menu */
.bottom-island {
  background: rgba(30, 41, 59, 0.95);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(139, 92, 246, 0.3);
}

/* Game Cards */
.game-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.game-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 40px rgba(139, 92, 246, 0.3);
}

/* Responsive Design Helpers */
@media (max-width: 1023px) {
  .mobile-menu {
    transform: translateX(-100%);
    transition: transform 0.3s ease;
  }

  .mobile-menu.open {
    transform: translateX(0);
  }
}

/* Bonus Calculator Styling */
.calculator-island {
  background: rgba(30, 41, 59, 0.8);
  border: 1px solid rgba(139, 92, 246, 0.4);
  backdrop-filter: blur(5px);
}

/* Payment Method Icons */
.payment-icon {
  filter: brightness(0.8) contrast(1.2);
  transition: filter 0.3s ease;
}

.payment-icon:hover {
  filter: brightness(1) contrast(1);
}
