@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}@keyframes ripple{0%{transform:scale(1);opacity:.4}to{transform:scale(1.5);opacity:0}}@keyframes pulse-ring{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(59,130,246,.4)}70%{transform:scale(1);box-shadow:0 0 0 12px rgba(59,130,246,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(59,130,246,0)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px rgba(59,130,246,.3)}50%{box-shadow:0 0 30px rgba(59,130,246,.5)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.animate-fadeIn{animation:fadeIn .25s cubic-bezier(.4,0,.2,1) forwards}.animate-slideUp{animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}.animate-float{animation:float 3s ease-in-out infinite}.animate-ripple{animation:ripple 1.8s cubic-bezier(0,0,.2,1) infinite}.animate-pulse-ring{animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite}.animate-glow-pulse{animation:glow-pulse 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite}.animate-bounce-subtle{animation:bounce-subtle 2s ease-in-out infinite}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.chat-scrollbar::-webkit-scrollbar{width:6px}.chat-scrollbar::-webkit-scrollbar-track{background:transparent}.chat-scrollbar::-webkit-scrollbar-thumb{background:rgba(59,130,246,.2);border-radius:6px}.chat-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(59,130,246,.3)}@supports (padding-bottom:env(safe-area-inset-bottom)){.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}}.touch-none{-webkit-tap-highlight-color:transparent}.glass{background:rgba(15,20,25,.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.glass-dark{background:rgba(10,14,20,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.focus-ring:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}