/* ==========================================================================
   ARITHMANCY INFOTECH - ANIMATIONS & DYNAMIC EFFECTS
   ========================================================================== */

/* 1. Subtle Float Animation */
@keyframes floatSlow {
  0%, 100% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-10px) rotate(0.5deg);
  }
}

.animate-float {
  animation: floatSlow 6s ease-in-out infinite;
}

/* 2. Gradient Shift for Highlights */
@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.animate-gradient {
  background-size: 200% 200%;
  animation: gradientShift 8s ease infinite;
}

/* 3. Pulse Glow */
@keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.2);
    border-color: rgba(56, 189, 248, 0.3);
  }
  50% {
    box-shadow: 0 0 35px rgba(0, 240, 255, 0.5), 0 0 15px rgba(139, 92, 246, 0.3);
    border-color: rgba(0, 240, 255, 0.7);
  }
}

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

/* 4. Stream Line Active Pulse */
@keyframes streamFlow {
  0% {
    stroke-dashoffset: 100;
  }
  100% {
    stroke-dashoffset: 0;
  }
}

.stream-flow {
  stroke-dasharray: 8, 8;
  animation: streamFlow 2s linear infinite;
}

/* 5. Fade In & Slide Up for Revealed Elements */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-up {
  animation: fadeInUp 0.7s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* 6. Modal Backdrop & Content Transitions */
@keyframes modalBackdropFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

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

.modal-active {
  animation: modalBackdropFadeIn 0.3s ease forwards;
}

.modal-content-active {
  animation: modalContentZoomIn 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* 7. Rotating Tech Glow Ring */
@keyframes ringRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.animate-spin-slow {
  animation: ringRotate 25s linear infinite;
}

/* 8. Shimmer Highlight */
@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}

.shimmer-bar {
  position: relative;
  overflow: hidden;
}

.shimmer-bar::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.15) 50%,
    transparent 100%
  );
  animation: shimmer 2.5s infinite;
}
