.page-content{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-msg{animation:chatFade .3s ease-out forwards}@keyframes chatFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.typing-dot{animation:typing 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.modal-content{animation:modalFadeIn .2s ease-out forwards}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-backdrop{animation:backdropFadeIn .2s ease-out forwards}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.welcome-bubble{animation:bubblePop .4s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes bubblePop{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.hover-lift{transition:transform var(--transition-fast)}.hover-lift:hover{transform:translateY(-4px)}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.05)}.hover-rotate{transition:transform var(--transition-slow)}.hover-rotate:hover{transform:rotate(0)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-bounce{animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.slide-in-right{animation:slideInRight .3s ease-out forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.slide-in-up{animation:slideInUp .3s ease-out forwards}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stagger-item{opacity:0;animation:fadeIn .5s ease-out forwards}.stagger-item:nth-child(1){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}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
