:root{--vh:1vh;--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom);--safe-left:env(safe-area-inset-left);--safe-right:env(safe-area-inset-right);--keyboard-height:0px}html{-webkit-overflow-scrolling:touch}body,html{overscroll-behavior:none}#__next,.app-container{position:relative;width:100%;height:100vh;height:100dvh}@supports (-webkit-touch-callout:none){.mobile-chat-container{height:100vh;position:relative;display:flex;flex-direction:column}}.h-screen-safe{height:100vh;height:100dvh;height:calc(var(--vh, 1vh) * 100)}@supports (-webkit-touch-callout:none){.h-screen-safe{height:-webkit-fill-available}}.chat-container{position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden}.messages-container{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overscroll-behavior-y:contain;-webkit-transform:translateZ(0);transform:translateZ(0);scroll-snap-type:y proximity}.messages-container::-webkit-scrollbar{width:3px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:1.5px;transition:background .2s ease}.messages-container:hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}@media (max-width:768px){.messages-container::-webkit-scrollbar{display:none}.messages-container{-ms-overflow-style:none;scrollbar-width:none}}.input-container{flex-shrink:0;position:relative;background:white;border-top:1px solid rgba(0,0,0,.1);padding-bottom:env(safe-area-inset-bottom)}@media (max-width:768px){input[type=email],input[type=password],input[type=text],textarea{font-size:16px!important}}.layout-transition{transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1)}.skeleton-loader{background:linear-gradient(90deg,rgba(0,0,0,.05) 25%,rgba(0,0,0,.1) 50%,rgba(0,0,0,.05) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@container (min-width: 768px){.container-responsive{padding:2rem}}@container (max-width: 767px){.container-responsive{padding:1rem}}