@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes success-pulse{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 10px #22c55e00}to{box-shadow:0 0 #22c55e00}}@keyframes error-shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes confetti{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(-100px)rotate(720deg)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.animate-fade-in-up{animation:.4s ease-out forwards fadeInUp}.animate-fade-in-down{animation:.4s ease-out forwards fadeInDown}.animate-slide-in-right{animation:.3s ease-out forwards slideInRight}.animate-slide-in-left{animation:.3s ease-out forwards slideInLeft}.animate-scale-in{animation:.2s ease-out forwards scaleIn}.animate-pop-in{animation:.3s cubic-bezier(.34,1.56,.64,1) forwards popIn}.animate-bounce-subtle{animation:2s ease-in-out infinite bounce}.animate-pulse-subtle{animation:2s ease-in-out infinite pulse}.animate-shimmer{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite shimmer}.animate-success{animation:.6s ease-out success-pulse}.animate-error{animation:.5s ease-out error-shake}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.hover-lift{transition:transform .2s,box-shadow .2s}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 10px 40px -10px #0000001a}.hover-scale{transition:transform .15s}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow .3s}.hover-glow:hover{box-shadow:0 0 20px #6366f126}.button-press{transition:transform .1s,box-shadow .1s}.button-press:active{transform:scale(.98)}.focus-ring-premium:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #6366f180}.glass{-webkit-backdrop-filter:blur(10px);background:#fffc}.glass-dark{-webkit-backdrop-filter:blur(10px);background:#0f172acc}
