/* ============================================================
   NERDIFITRONIX V2 · animations.css
   ============================================================ */

[data-parallax] { will-change: transform; }

/* Glow pulse — green */
@keyframes glowGreen { 0%,100%{box-shadow:0 0 16px rgba(0,255,136,0.15)} 50%{box-shadow:0 0 40px rgba(0,255,136,0.45)} }
.glow-green { animation: glowGreen 3s ease-in-out infinite; }

/* Glow pulse — cyan */
@keyframes glowCyan { 0%,100%{box-shadow:0 0 16px rgba(0,207,255,0.1)} 50%{box-shadow:0 0 40px rgba(0,207,255,0.35)} }
.glow-cyan { animation: glowCyan 3.5s ease-in-out infinite; }

/* Text flicker — terminal feel */
@keyframes flicker {
  0%,19%,21%,23%,25%,54%,56%,100% { opacity: 1; }
  20%,24%,55% { opacity: 0.4; }
}
.flicker { animation: flicker 8s linear infinite; }

/* Scan line sweep */
@keyframes scanLine {
  0%   { transform: translateY(-100%); opacity: 0.07; }
  100% { transform: translateY(200vh); opacity: 0.03; }
}
.scan-effect { position: relative; overflow: hidden; }
.scan-effect::after {
  content: '';
  position: absolute; left: 0; right: 0; height: 60px;
  background: linear-gradient(transparent, rgba(0,255,136,0.04), transparent);
  animation: scanLine 5s ease-in-out infinite;
  pointer-events: none;
}

/* Float */
@keyframes floatY { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
.float-anim { animation: floatY 5s ease-in-out infinite; }

/* Text shimmer — green */
@keyframes shimmerGreen { 0%{background-position:-200% center} 100%{background-position:200% center} }
.text-shimmer {
  background: linear-gradient(90deg, #00cc6a 0%, #e8f4ff 40%, #00ff88 60%, #00cc6a 100%);
  background-size: 200% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  animation: shimmerGreen 4s linear infinite;
}

/* Typing cursor blink already in main.css */

@media (max-width:768px) { .hide-mobile{display:none!important} }
@media (min-width:769px) { .hide-desktop{display:none!important} }
