/* Thank You Page Specific Styles */

/* Success Celebration Animations */
@keyframes celebration-bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}

@keyframes confetti-fall {
  0% {
    transform: translateY(-100vh) rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: translateY(100vh) rotate(720deg);
    opacity: 0;
  }
}

@keyframes success-glow {
  0%,
  100% {
    box-shadow: 0 0 20px rgba(24, 172, 122, 0.3);
  }
  50% {
    box-shadow: 0 0 40px rgba(24, 172, 122, 0.6);
  }
}

/* Success Icon Animation */
.animate-bounce {
  animation: celebration-bounce 2s ease-in-out infinite;
}

/* Success Glow Effect */
.bg-accent {
  animation: success-glow 3s ease-in-out infinite;
}

/* Confetti Animation */
.animate-ping {
  animation: confetti-fall 3s linear infinite;
}

/* Card Entrance Animation */
.bg-background {
  animation: slideInFromBottom 0.8s ease-out;
}

@keyframes slideInFromBottom {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Success Steps Animation */
.grid > div {
  animation: slideInFromBottom 0.6s ease-out;
  animation-fill-mode: both;
}

.grid > div:nth-child(1) {
  animation-delay: 0.1s;
}
.grid > div:nth-child(2) {
  animation-delay: 0.3s;
}
.grid > div:nth-child(3) {
  animation-delay: 0.5s;
}
.grid > div:nth-child(4) {
  animation-delay: 0.7s;
}

/* Hover Effects */
.hover\:scale-105:hover {
  transform: scale(1.05);
}

.hover\:-translate-y-2:hover {
  transform: translateY(-8px);
}

/* Success Button Theme */
.bg-accent {
  position: relative;
  overflow: hidden;
}

.bg-accent::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.3),
    transparent
  );
  transition: left 0.5s;
}

.bg-accent:hover::before {
  left: 100%;
}

/* Celebration Pattern */
.fixed .animate-ping {
  animation: confetti-fall 4s linear infinite;
}

.fixed .animate-bounce {
  animation: celebration-bounce 2s ease-in-out infinite;
}

.fixed .animate-pulse {
  animation: success-glow 2s ease-in-out infinite;
}

/* Responsive Design */
@media (max-width: 768px) {
  .text-5xl {
    font-size: 2.5rem;
  }

  .grid-cols-1.md\\:grid-cols-4 {
    grid-template-columns: 1fr;
  }

  .grid-cols-1.md\\:grid-cols-3 {
    grid-template-columns: 1fr;
  }
}

/* Dark Mode Support */
@media (prefers-color-scheme: dark) {
  .bg-background {
    background-color: #1a1a1a;
  }

  .bg-background {
    background-color: #2d2d2d;
    color: #ffffff;
  }

  .text-text {
    color: #a0a0a0;
  }
}
