@keyframes logo-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes loading-bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-logo-pulse{animation:logo-pulse 2s ease-in-out infinite}.animate-loading-bounce{animation:loading-bounce 1.4s ease-in-out infinite}.animate-fade-in-up{animation:fadeInUp .5s ease-out forwards}.animate-fade-in-scale{animation:fadeInScale .7s ease-out forwards}.loading-screen{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.loading-screen .logo-container img{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));will-change:transform,opacity;animation:logo-pulse 2s ease-in-out infinite}.loading-screen .loading-indicator,.loading-screen .logo-container,.loading-screen .loading-text{will-change:opacity,transform}.loading-screen .animate-bounce{animation:loading-bounce 1.4s ease-in-out infinite}.page-transition{transition:opacity .3s ease-in-out}.page-transition.loading{opacity:.7}.transition-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-smooth-fast{transition:all .15s cubic-bezier(.4,0,.2,1)}
