@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounceSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes glowPulse{0%,to{box-shadow:0 0 5px #ef44444d}50%{box-shadow:0 0 20px #ef444480}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeInUp .5s ease-out forwards}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards}.animate-fadeInLeft{animation:fadeInLeft .5s ease-out forwards}.animate-fadeInRight{animation:fadeInRight .5s ease-out forwards}.animate-scaleIn{animation:scaleIn .4s ease-out forwards}.animate-slideDown{animation:slideDown .3s ease-out forwards}.animate-bounceSoft{animation:bounceSoft 2s ease-in-out infinite}.animate-glowPulse{animation:glowPulse 2s ease-in-out infinite}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-delay-600{animation-delay:.6s}.animate-delay-700{animation-delay:.7s}.animate-delay-800{animation-delay:.8s}.animate-on-load{opacity:0}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #00000026}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:0 0 20px #ef44444d}.card-enter{opacity:0;transform:translateY(20px);animation:fadeInUp .5s ease-out forwards}.stagger-children>*{opacity:0;animation:fadeInUp .4s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}.tab-content{animation:fadeInUp .3s ease-out}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.btn-ripple:active:after{width:200px;height:200px}.progress-animate{animation:progressGrow 1s ease-out forwards}@keyframes progressGrow{0%{width:0%}}.number-animate{animation:countUp .6s ease-out forwards}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.modal-overlay{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.tooltip{animation:tooltipFade .2s ease-out}@keyframes tooltipFade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.icon-spin-hover{transition:transform .3s ease}.icon-spin-hover:hover{transform:rotate(180deg)}.refresh-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.badge-bounce{animation:badgeBounce .5s ease-out}@keyframes badgeBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#9ca3af}button,a,input,select,textarea{transition:all .2s ease}.focus-ring:focus{outline:none;box-shadow:0 0 0 3px #ef44444d}.gradient-text-animate{background:linear-gradient(90deg,#ef4444,#f97316,#ef4444);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientMove 3s linear infinite}@keyframes gradientMove{0%{background-position:0% center}to{background-position:200% center}}.heartbeat{animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}.bg-pattern-animate{background-image:radial-gradient(circle at 1px 1px,rgba(239,68,68,.1) 1px,transparent 0);background-size:20px 20px;animation:patternMove 20s linear infinite}@keyframes patternMove{0%{background-position:0 0}to{background-position:20px 20px}}
