/**
 * THE ORIGIN - Animations CSS
 */

/* Continuous Train/Railway Ticker */
@keyframes tickerMove {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

.ticker-track {
  display: flex;
  width: max-content;
  animation: tickerMove 28s linear infinite;
}

.ticker-track:hover {
  animation-play-state: paused;
}

/* Subtle Card Lift */
.hover-lift {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.hover-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 30px -10px rgba(15, 23, 42, 0.15);
}

/* Pulse Badge */
@keyframes pulseDot {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(220, 38, 38, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(220, 38, 38, 0); }
}

.pulse-badge {
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #ef4444;
  border-radius: 50%;
  animation: pulseDot 2s infinite;
}

/* Fade in for loaded items */
.fade-in {
  animation: fadeIn 0.4s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
