/* ÄLZZTHESCANNER - Animations */
@keyframes fadeInUp { from { opacity:0;transform:translateY(16px); } to { opacity:1;transform:translateY(0); } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes slideInRight { from { opacity:0;transform:translateX(20px); } to { opacity:1;transform:translateX(0); } }
@keyframes scaleIn { from { opacity:0;transform:scale(.95); } to { opacity:1;transform:scale(1); } }
@keyframes shimmer { to { background-position:-200% 0; } }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:.4} }
@keyframes bounceIn { 0%{transform:scale(.3);opacity:0} 50%{transform:scale(1.08)} 70%{transform:scale(.95)} 100%{transform:scale(1);opacity:1} }

.animate-fade-in { animation: fadeInUp .4s ease both; }
.animate-fade { animation: fadeIn .3s ease both; }
.animate-scale { animation: scaleIn .3s ease both; }
.animate-slide { animation: slideInRight .3s ease both; }
.spin { animation: spin 1s linear infinite; }
.pulse { animation: pulse 2s ease-in-out infinite; }

.delay-1 { animation-delay:.05s; }
.delay-2 { animation-delay:.1s; }
.delay-3 { animation-delay:.15s; }
.delay-4 { animation-delay:.2s; }
.delay-5 { animation-delay:.25s; }
