/**
 * ═══════════════════════════════════════════════════════════════
 * STYLES : animations.css
 * RÔLE   : Keyframes réutilisables — 60fps (transform/opacity)
 * SCOPE  : global · DÉPS : tokens.css
 * @project Caroteck · @signature TECHNOTECK ♥ POWER — Pour Caro Annie
 * ═══════════════════════════════════════════════════════════════
 */
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.05); } }
@keyframes pop { 0% { transform: scale(0.9); } 60% { transform: scale(1.03); } 100% { transform: scale(1); } }
.anim-fade { animation: fadeIn var(--transition-base) both; }
.anim-slide { animation: slideUp var(--transition-base) both; }
.anim-pop { animation: pop var(--transition-spring) both; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; }
}
