/* assets/css/animations.css — Keyframes Animasi Pulse, Bounce, Floating & Scanner Laser */
@keyframes pulse-emerald {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.65), 0 10px 20px -5px rgba(16, 185, 129, 0.45);
  }
  50% {
    transform: scale(1.035);
    box-shadow: 0 0 0 14px rgba(16, 185, 129, 0), 0 14px 26px -5px rgba(6, 182, 212, 0.55);
  }
}

@keyframes pulse-amber {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.65), 0 10px 20px -5px rgba(234, 88, 12, 0.45);
  }
  50% {
    transform: scale(1.035);
    box-shadow: 0 0 0 14px rgba(245, 158, 11, 0), 0 14px 26px -5px rgba(234, 88, 12, 0.55);
  }
}

@keyframes pulse-danger {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.8), 0 8px 20px -4px rgba(244, 63, 94, 0.5);
  }
  50% {
    transform: scale(1.03);
    box-shadow: 0 0 0 16px rgba(239, 68, 68, 0), 0 12px 24px -4px rgba(244, 63, 94, 0.65);
  }
}

@keyframes bounce-vivid {
  0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
  40% { transform: translateY(-9px) scale(1.03); }
  60% { transform: translateY(-4px); }
}

@keyframes bounce-soft {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

@keyframes laser-scan {
  0% { top: 6%; opacity: 0.9; }
  50% { top: 88%; opacity: 1; }
  100% { top: 6%; opacity: 0.9; }
}

.anim-pulse-emerald { animation: pulse-emerald 2.2s infinite ease-in-out; }
.anim-pulse-amber   { animation: pulse-amber 2.2s infinite ease-in-out; }
.anim-pulse-danger  { animation: pulse-danger 1.6s infinite ease-in-out; }
.anim-bounce-menu:hover { animation: bounce-vivid 0.9s ease infinite; }
.anim-bounce-continuous { animation: bounce-soft 2.2s ease-in-out infinite; }

.laser-line {
  position: absolute;
  left: 6%;
  right: 6%;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, #10B981, #06B6D4, #F59E0B, transparent);
  box-shadow: 0 0 16px #10B981, 0 0 30px #06B6D4;
  animation: laser-scan 2.4s ease-in-out infinite;
  pointer-events: none;
}
