@keyframes progress{0%{width:0%}to{width:100%}}.animate-progress{animation:progress 2s ease-in-out infinite}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in{animation:slideIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.animate-scale-in{animation:scaleIn .4s ease-out}@keyframes shake{0%,to{transform:translate(0) rotate(0)}10%,30%,50%,70%,90%{transform:translate(-5px) rotate(-2deg)}20%,40%,60%,80%{transform:translate(5px) rotate(2deg)}}.animate-shake{animation:shake .6s ease-in-out}@keyframes customPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes customBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
