@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.animate-fade-in{animation:.6s ease-out fadeIn}.animate-slide-up{animation:.6s ease-out slideInUp}.animate-slide-down{animation:.6s ease-out slideInDown}.animate-slide-left{animation:.6s ease-out slideInLeft}.animate-slide-right{animation:.6s ease-out slideInRight}.animate-scale-in{animation:.5s ease-out scaleIn}.animate-bounce{animation:2s infinite bounce}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-float{animation:3s ease-in-out infinite float}.animate-wiggle{animation:1s ease-in-out wiggle}.stagger-item{opacity:0;animation:.6s ease-out forwards slideInUp}.stagger-item:first-child{animation-delay:.1s}.stagger-item:nth-child(2){animation-delay:.2s}.stagger-item:nth-child(3){animation-delay:.3s}.stagger-item:nth-child(4){animation-delay:.4s}.stagger-item:nth-child(5){animation-delay:.5s}.stagger-item:nth-child(6){animation-delay:.6s}.hover-lift{transition:transform .3s,box-shadow .3s}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.hover-grow{transition:transform .3s}.hover-grow:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow .3s}.hover-glow:hover{box-shadow:0 0 20px #dc262680}.shimmer{background:linear-gradient(90deg,#f0f0f0 0%,#e0e0e0 50%,#f0f0f0 100%) 0 0/1000px 100%;animation:2s infinite shimmer}.transition-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-bounce{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.glass-effect{-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.gradient-text{background:linear-gradient(135deg,#dc2626 0%,#ef4444 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.card-shine{position:relative;overflow:hidden}.card-shine:before{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.card-shine:hover:before{left:100%}.button-ripple{position:relative;overflow:hidden}.button-ripple:after{content:"";background:#ffffff80;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.button-ripple:active:after{width:300px;height:300px}.scroll-reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(50px)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:1s linear infinite spin}@keyframes slideInNotification{0%{opacity:0;transform:translate(400px)}to{opacity:1;transform:translate(0)}}.notification-slide{animation:.4s ease-out slideInNotification}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}.parallax{will-change:transform;transform:translateZ(0)}
