/* Animations CSS File */

/* Blink animation for eye icon */
@keyframes blink {
  0%, 100% { opacity: 1; }
  45% { opacity: 1; }
  50% { opacity: 0; }
  55% { opacity: 1; }
}

/* Pulse animation for buttons */
@keyframes pulse {
  0% { opacity: 1; box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
  70% { opacity: 0.7; box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); }
  100% { opacity: 1; box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

.pulse-animation {
  animation: pulse 2s infinite;
}

/* Fast minting animation for NFT card */
@keyframes fastMint {
  0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(20, 241, 149, 0); }
  10% { transform: scale(1.02); box-shadow: 0 0 0 5px rgba(20, 241, 149, 0.3); }
  20% { transform: scale(1); box-shadow: 0 0 0 10px rgba(20, 241, 149, 0); }
  100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(20, 241, 149, 0); }
}

.fast-mint-animation {
  animation: fastMint 8s infinite;
}

/* Blink animation for "Blink and it mints" text */
.blink-animation {
  position: relative;
}

.blink-animation::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--dark-color);
  animation: textBlink 8s infinite;
  z-index: -1;
}

@keyframes textBlink {
  0%, 100% { opacity: 0; }
  49.9% { opacity: 0; }
  50% { opacity: 1; }
  50.1% { opacity: 0; }
  54% { opacity: 0; }
}

/* Floating animation for NFT cards */
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
  100% { transform: translateY(0px); }
}

.drop-card {
  animation: float 6s ease-in-out infinite;
}

.drop-card:nth-child(2) {
  animation-delay: 1s;
}

.drop-card:nth-child(3) {
  animation-delay: 2s;
}

/* Gradient animation */
@keyframes gradientAnimation {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.token-section::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -50%;
  width: 100%;
  height: 100%;
  background: linear-gradient(45deg, rgba(153, 69, 255, 0.1), rgba(20, 241, 149, 0.1), rgba(153, 69, 255, 0.1));
  background-size: 200% 200%;
  animation: gradientAnimation 15s ease infinite;
  transform: rotate(30deg);
  z-index: 0;
}

/* Button hover animation */
.btn {
  position: relative;
  overflow: hidden;
}

.btn::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: width 0.5s, height 0.5s, opacity 0.5s;
}

.btn:active::after {
  width: 300px;
  height: 300px;
  opacity: 1;
  transition: 0s;
}

/* Fade in animation for sections */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

.section-header, .feature-card, .testimonial-card, .drop-card {
  opacity: 0;
  animation: fadeIn 0.8s forwards;
}

.feature-card:nth-child(2) { animation-delay: 0.1s; }
.feature-card:nth-child(3) { animation-delay: 0.2s; }
.feature-card:nth-child(4) { animation-delay: 0.3s; }
.feature-card:nth-child(5) { animation-delay: 0.4s; }
.feature-card:nth-child(6) { animation-delay: 0.5s; }

/* Timeline dot pulse animation */
@keyframes dotPulse {
  0% { box-shadow: 0 0 0 0 rgba(20, 241, 149, 0.7); }
  70% { box-shadow: 0 0 0 10px rgba(20, 241, 149, 0); }
  100% { box-shadow: 0 0 0 0 rgba(20, 241, 149, 0); }
}

.timeline-dot {
  animation: dotPulse 2s infinite;
}

.timeline-item:nth-child(2) .timeline-dot { animation-delay: 0.4s; }
.timeline-item:nth-child(3) .timeline-dot { animation-delay: 0.8s; }
.timeline-item:nth-child(4) .timeline-dot { animation-delay: 1.2s; }
.timeline-item:nth-child(5) .timeline-dot { animation-delay: 1.6s; }