.chat-scrollbar::-webkit-scrollbar{width:6px}.chat-scrollbar::-webkit-scrollbar-track{background:#1a1a1a}.chat-scrollbar::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.chat-scrollbar::-webkit-scrollbar-thumb:hover{background:#444}.chat-scrollbar{scrollbar-width:thin;scrollbar-color:#333 #1a1a1a}.drag-handle{transition:all .2s ease}.drag-handle:hover{transform:scale(1.1)}.map-container{transition:height .2s ease-out}.professional-button{position:relative;overflow:hidden;transition:all .3s ease}.professional-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:hsla(0,0%,100%,.1);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.professional-button:hover:before{width:300px;height:300px}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-animate{animation:messageSlide .3s ease-out}@keyframes floatMascot{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mascot-float{animation:floatMascot 3s ease-in-out infinite}.professional-input:focus{box-shadow:0 0 0 2px hsla(39,68%,69%,.2)}.chat-bubble{max-width:80%;border-radius:1rem;border-width:1px;padding:.75rem 1rem;--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);animation:messageSlide .3s ease-out}.chat-bubble-brand{background:linear-gradient(135deg,#1aafaf,#0b8080);color:#fff;border:1.5px solid #1aafaf}@media (prefers-color-scheme:dark){.professional-chat{background:#0a0a0a}}@media (max-width:768px){html{overflow-x:hidden}body,html{background-color:#000!important;overflow-y:auto}body{-webkit-overflow-scrolling:touch;min-height:100vh;min-height:100dvh;position:relative}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.mobile-app-container{height:100vh;height:100dvh;display:flex;flex-direction:column}.mapboxgl-ctrl-group{transform:scale(.8);transform-origin:top left}.mapboxgl-ctrl button,.mapboxgl-ctrl-geolocate{width:29px!important;height:29px!important}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{width:20px!important;height:20px!important}.mapboxgl-ctrl-top-left{top:10px;left:10px}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:0 0 8px}#map-section{border-bottom:2px solid rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.1)}#map-section:after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:40px;height:4px;background-color:rgba(0,0,0,.2);border-radius:2px}.chat-messages-container{-webkit-overflow-scrolling:touch}.chat-messages-container .prose,.chat-messages-container p{font-size:16px!important;line-height:1.6}.chat-messages-container{min-height:calc(80vh - 120px)}.chat-messages-container:has(input:focus){padding-top:20px}@supports (height:100dvh){.chat-messages-container{max-height:calc(100dvh - 20vh - 50px - 60px)}}.mobile-input-container{padding-bottom:env(safe-area-inset-bottom)}input[type=search],input[type=text],textarea{font-size:16px!important}[role=button],a,button{min-height:44px;min-width:44px;position:relative}button:active{transform:scale(.97);transition:transform .1s ease}body{overflow-x:hidden}.mobile-chat-container{height:100vh;height:100dvh}.mobile-card{background:hsla(0,0%,100%,.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:16px;box-shadow:0 4px 30px rgba(0,0,0,.1)}.mobile-list-item{padding:16px;border-bottom:1px solid hsla(0,0%,100%,.1);transition:background-color .2s ease}.mobile-list-item:active{background-color:hsla(0,0%,100%,.05)}}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.bottom-sheet-enter{animation:slide-up .3s cubic-bezier(.32,.72,0,1)}.fade-enter{animation:fade-in .2s ease-out}.mobile-transition{transition:all .3s cubic-bezier(.32,.72,0,1)}@keyframes spring-bounce{0%{transform:scale(1)}40%{transform:scale(.9)}60%{transform:scale(1.05)}80%{transform:scale(.98)}to{transform:scale(1)}}.spring-animation{animation:spring-bounce .4s cubic-bezier(.68,-.55,.265,1.55)}@media (min-width:481px) and (max-width:768px){.mobile-footer-nav{height:80px}.mobile-footer-nav button{font-size:.875rem}}.glass-morphism{background:hsla(0,0%,100%,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2)}.smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.map-container{position:relative;width:100%;height:100%;overflow:hidden}.floating-controls{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.drag-handle{width:48px;height:4px;background-color:rgba(0,0,0,.2);border-radius:2px;margin:12px auto}.pb-safe{padding-bottom:env(safe-area-inset-bottom)}@media (min-width:1024px){.sidebar-transition{transition:width .3s cubic-bezier(.4,0,.2,1)}}.mobile-tab-bar{box-shadow:0 -2px 10px rgba(0,0,0,.1)}.event-card{transition:all .2s ease}.event-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message{animation:messageSlideIn .3s ease-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:3px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.3)}.dark .custom-scrollbar::-webkit-scrollbar-thumb{background-color:hsla(0,0%,100%,.2)}.dark .custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:hsla(0,0%,100%,.3)}.scroll-optimized{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scroll-snap-type:y proximity;scroll-padding-top:80px}.scroll-contained{overscroll-behavior:contain}main{overflow-x:hidden;width:100%}.scroll-optimized,.smooth-scroll,[data-scroll-container]{-webkit-overflow-scrolling:touch;will-change:scroll-position}@media (max-width:768px){.scroll-optimized{contain:layout style paint}.no-bounce{position:fixed;width:100%;height:100%;overflow:hidden}.no-bounce-inner{position:absolute;top:0;left:0;right:0;bottom:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.touch-optimized{touch-action:pan-y;-ms-touch-action:pan-y}body,html{max-width:100%;overflow-x:hidden}.fixed-during-scroll{transform:translateZ(0);-webkit-transform:translateZ(0)}.scroll-list{contain:layout style paint;will-change:scroll-position}.modal-open{position:fixed;width:100%;overflow:hidden}.has-scroll-indicator{position:relative}.has-scroll-indicator:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.1));pointer-events:none;opacity:0;transition:opacity .3s}.has-scroll-indicator.can-scroll:after{opacity:1}}@supports (scroll-snap-type:y mandatory){.snap-scroll{scroll-snap-type:y mandatory;scroll-padding-top:80px}.snap-scroll>section,.snap-section{scroll-snap-align:start;scroll-snap-stop:always}}.gpu-accelerated{transform:translateZ(0);-webkit-transform:translateZ(0);will-change:transform}.scroll-performance{contain:layout;isolation:isolate}