.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}html{scroll-behavior:smooth}*:focus{outline:none}*:focus-visible{outline:2px solid #1E5BFF;outline-offset:2px}*{-webkit-tap-highlight-color:rgba(30,91,255,.1)}button{-webkit-user-select:none;user-select:none}.safe-area-top{padding-top:env(safe-area-inset-top)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom)}input,textarea,select{font-size:16px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.animate-slideUp{animation:slideUp .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.animate-slideDown{animation:slideDown .3s ease-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce{animation:bounce 1s infinite}.message-bubble-sent{border-radius:18px 18px 4px}.message-bubble-received{border-radius:18px 18px 18px 4px}.reaction-emoji{transition:transform .15s ease-out}.reaction-emoji:hover{transform:scale(1.3)}.post-card{transition:transform .2s ease-out,box-shadow .2s ease-out}.post-card:active{transform:scale(.98)}
