html{margin:0;padding:0;-webkit-text-size-adjust:100%}body{margin:0;padding:0;overflow-x:hidden;width:100%;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh;overflow-x:hidden}.table-container,.overflow-x-auto,.scroll-x-container{max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.leaflet-container{max-width:100%;height:100%;z-index:1}button,a,[role=button],input[type=button],input[type=submit]{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}button:active:not(:disabled),[role=button]:active{opacity:.92}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:rgba(156,163,175,.4);border-radius:9999px;transition:background-color .2s}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:rgba(156,163,175,.6)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.4) transparent}@keyframes bounceHorizontal{0%,to{transform:translate(0)}50%{transform:translate(-4px)}}.animate-bounce-horizontal{animation:bounceHorizontal 1.5s infinite ease-in-out}@keyframes pulseSubtle{0%,to{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}50%{box-shadow:0 10px 15px -3px rgba(6,182,212,.25),0 4px 6px -2px rgba(6,182,212,.15)}}.animate-pulse-subtle{animation:pulseSubtle 2.5s infinite ease-in-out}
