@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 shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes buttonPress{0%{transform:scale(1)}50%{transform:scale(.98)}to{transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .4s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .4s ease-out forwards}.animate-shake{animation:shake .5s ease-in-out}.animate-button-press{animation:buttonPress .2s ease-out}.animate-slide-in{animation:slideIn .4s ease-out forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.transition-transform-opacity{transition-property:transform,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.button-lift{transition:transform .2s ease,box-shadow .2s ease}.button-lift:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.button-lift:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px rgba(0,0,0,.1)}.input-focus{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.input-focus:focus{transform:scale(1.01);box-shadow:0 0 0 3px rgba(0,0,0,.05)}.carousel-fade-enter{animation:fadeIn .5s ease-out forwards}.carousel-fade-exit{animation:fadeIn .3s ease-out reverse forwards}@keyframes spin-smooth{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin-smooth{animation:spin-smooth 1s linear infinite}@keyframes pulse-glow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes orbit{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes orbit-reverse{0%{transform:rotate(1turn)}to{transform:rotate(0deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes ring-pulse{0%{transform:scale(.8);opacity:1}to{transform:scale(1.8);opacity:0}}@keyframes dot-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@keyframes text-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-orbit{animation:orbit 8s linear infinite}.animate-orbit-reverse{animation:orbit-reverse 12s linear infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.4) 50%,transparent);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}.animate-ring-pulse{animation:ring-pulse 2s ease-out infinite}.animate-dot-bounce{animation:dot-bounce 1.4s ease-in-out infinite}.animate-text-reveal{animation:text-reveal .6s ease-out forwards}