/* 
   Email Blaster Extractor Unified Stylesheet
   Follows Modular Feature Architecture (Node.js AI Rules)
*/

/* --- 1. Keyframes & Custom Animations --- */

/* Flowing color gradient for headlines */
@keyframes gradientFlow {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.animate-gradientFlow {
  background-size: 200% 200%;
  animation: gradientFlow 5s ease infinite;
}

/* Pulsing stars helper */
@keyframes pulse-star {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.15); opacity: 0.85; }
  100% { transform: scale(1); opacity: 1; }
}

.animate-pulse-star {
  animation: pulse-star 3s ease-in-out infinite;
}

/* Video scanner line keyframe */
@keyframes videoScanner {
  0% { top: 0%; opacity: 0; }
  5% { opacity: 0.8; }
  95% { opacity: 0.8; }
  100% { top: 100%; opacity: 0; }
}

.animate-videoScanner {
  animation: videoScanner 3s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

/* Sourcing circuit board dashed path line speed */
@keyframes dash {
  to { stroke-dashoffset: -100; }
}

.animate-dash {
  animation: dash 3s linear infinite;
}

/* Drifting 3D ambient glows */
@keyframes floatSlow {
  0% {
    transform: translate(0, 0) scale(1);
  }

  50% {
    transform: translate(15px, -15px) scale(1.05);
  }

  100% {
    transform: translate(0, 0) scale(1);
  }
}

@keyframes floatFast {
  0% {
    transform: translate(0, 0) scale(1);
  }

  50% {
    transform: translate(-20px, 20px) scale(0.95);
  }

  100% {
    transform: translate(0, 0) scale(1);
  }
}

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

.animate-floatFast {
  animation: floatFast 10s ease-in-out infinite;
}


/* --- 2. Color Helper Utilities (SaaS Brand Overrides) --- */

.text-pink-450 {
  color: #f472b6;
}

.text-pink-655 {
  color: #db2777;
}

.text-slate-350 {
  color: #94a3b8;
}

.text-slate-455 {
  color: #94a3b8;
}

.text-slate-550 {
  color: #64748b;
}

.text-slate-655 {
  color: #475569;
}
