@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:0.8}}@keyframes float{0%,100%{transform:translateY(0px)}50%{transform:translateY(-10px)}}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}@keyframes slideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes glow{0%,100%{box-shadow:0 0 20px var(--primary-glow)}50%{box-shadow:0 0 40px var(--primary-glow),0 0 60px var(--primary-glow)}}@keyframes ripple{0%{transform:scale(0);opacity:1}100%{transform:scale(4);opacity:0}}@keyframes skeleton-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn 0.6s ease-out}.animate-fade-in-up{animation:fadeInUp 0.8s ease-out}.animate-fade-in-down{animation:fadeInDown 0.8s ease-out}.animate-fade-in-left{animation:fadeInLeft 0.8s ease-out}.animate-fade-in-right{animation:fadeInRight 0.8s ease-out}.animate-scale-in{animation:scaleIn 0.5s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-rotate{animation:rotate 2s linear infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.stagger-1{animation-delay:0.1s}.stagger-2{animation-delay:0.2s}.stagger-3{animation-delay:0.3s}.stagger-4{animation-delay:0.4s}.stagger-5{animation-delay:0.5s}.stagger-6{animation-delay:0.6s}.hover-lift{transition:transform 0.3s cubic-bezier(0.4,0,0.2,1)}.hover-lift:hover{transform:translateY(-8px)}.hover-glow{transition:box-shadow 0.3s ease}.hover-glow:hover{box-shadow:0 0 30px var(--primary-glow)}.hover-scale{transition:transform 0.3s ease}.hover-scale:hover{transform:scale(1.05)}.transition-all{transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}.transition-fast{transition:all 0.15s ease}.transition-slow{transition:all 0.5s ease}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}}