body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#333;min-height:100vh}#root{width:100%;min-height:100vh;margin:0;padding:0}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl-separator{background-color:#e0e0e0;height:1px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{color:#333;font-size:18px;font-weight:700;height:44px;width:44px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:hover{background-color:#f5f5f5}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#4a5568;color:#fff}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#2d3748}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#333;min-height:100vh}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fff;padding:20px}.login-card{box-shadow:#00000014 0 4px 20px;width:100%;max-width:400px;background:#fff;border-radius:16px;border-width:1px;border-style:solid;border-color:#f0f0f0;border-image:initial;padding:40px;text-align:center}.logo-section{margin-bottom:30px}.logo{display:flex;align-items:center;justify-content:center;margin-bottom:20px}.logo-image{height:60px;width:auto;max-width:100%}.login-title{font-size:18px;color:#333;margin-bottom:30px;font-weight:500}.login-form{display:flex;flex-direction:column;gap:20px}.input-group{display:flex;flex-direction:column}.login-input{padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;transition:border-color .3s ease;background:#fff}.login-input:focus{outline:none;border-color:#4caf50}.login-input::placeholder{color:#999}.error-message{color:#e74c3c;font-size:14px;margin-top:-10px;text-align:left}.login-button{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease;margin-top:10px}.login-button:hover:not(:disabled){background:#45a049}.login-button:disabled{background:#ccc;cursor:not-allowed}.dashboard{display:flex;height:calc(100vh - 64px);background:#f8f9fa;position:relative;z-index:1}.main-content{flex:1;display:flex;flex-direction:column;height:100vh}.top-header{background:#fff;border-bottom:1px solid #e1e5e9;box-shadow:0 1px 3px #0000001a;z-index:100}.header-content{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;height:64px}.header-left{display:flex;align-items:center}.header-logo{height:32px;width:auto}.header-center{flex:1;max-width:600px;margin:0 24px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6b7280;font-size:16px}.search-input{width:100%;padding:12px 16px 12px 40px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;background:#f9fafb;color:#374151;transition:all .3s ease}.search-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:#9ca3af}.header-actions{display:flex;align-items:center;gap:12px}.help-text{font-size:14px;color:#6b7280;font-weight:500}.database-btn{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease}.database-btn:hover{background:#bbf7d0}.menu-btn{width:32px;height:32px;border-radius:50%;background:#3b82f6;color:#fff;border:none;font-weight:600;cursor:pointer;transition:all .3s ease}.menu-btn:hover{background:#2563eb}.dropdown-container{position:relative;display:inline-block}.dropdown-toggle{position:relative}.user-profile-header{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border-radius:24px;background:#f8fafc;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s ease}.user-profile-header:hover{background:#f1f5f9;border-color:#cbd5e1}.user-profile-header .menu-btn{width:36px;height:36px;border-radius:50%;background:#3b82f6;color:#fff;border:none;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center}.user-profile-header .menu-btn:hover{background:#2563eb;transform:scale(1.05)}.user-info-header{display:flex;flex-direction:column;justify-content:center;min-width:0}.user-profile-header .user-email{font-size:13px;font-weight:500;color:#1f2937;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;line-height:1.4}.dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:200px;z-index:1000;margin-top:4px;overflow:hidden}.dropdown-item{padding:12px 16px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f3f4f6}.dropdown-item:hover{background-color:#f9fafb;color:#1f2937}.dropdown-divider{height:1px;background-color:#e5e7eb;margin:4px 0}.user-dropdown-container{position:relative;display:inline-block}.user-info{cursor:pointer;padding:8px 12px;border-radius:6px;transition:background-color .2s ease}.user-info:hover{background-color:#f9fafb}.user-dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:120px;z-index:1000;margin-top:4px}.mobile-menu-btn{display:none;background:none;border:none;font-size:24px;color:#374151;cursor:pointer;padding:8px;margin-right:12px}.mobile-menu-overlay{position:fixed;inset:0;background:#00000080;z-index:9999;display:none}.mobile-menu-container{position:fixed;top:0;left:-100%;width:280px;height:100vh;background:#fff;z-index:10000;transition:left .3s ease;display:none;box-shadow:2px 0 8px #00000026}.mobile-menu-container.active{left:0}.mobile-menu-container{z-index:10001!important}.mobile-menu-overlay{z-index:10000!important}.mobile-menu{height:100%;display:flex;flex-direction:column}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e1e5e9}.mobile-menu-logo{height:32px;width:auto}.mobile-menu-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px}.mobile-menu-content{flex:1;overflow-y:auto;padding:16px}.mobile-menu-content .pipeline-card{margin-bottom:16px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e5e7eb}.mobile-menu-content .filters-section{margin-bottom:20px}.mobile-menu-content .filters-section h3{font-size:14px;font-weight:600;color:#374151;margin-bottom:12px}.mobile-menu-content .filter-group{margin-bottom:12px}.mobile-menu-content .filter-group label{font-size:12px;font-weight:500;color:#6b7280;display:block;margin-bottom:4px}.mobile-menu-content .filter-dropdown{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.mobile-menu-content .layers-section{margin-bottom:20px}.mobile-menu-content .layers-list{display:flex;flex-direction:column;gap:8px}.mobile-menu-content .layer-item{display:flex;align-items:center;padding:8px 12px;background:#f8f9fa;border-radius:6px;border:1px solid #e5e7eb}.mobile-menu-content .layer-dot{width:8px;height:8px;border-radius:50%;margin-right:8px}.mobile-menu-content .layer-icon{font-size:16px;margin-right:8px}.mobile-menu-content .layer-name{flex:1;font-size:14px;color:#374151}.mobile-menu-content .toggle{width:36px;height:20px;background:#d1d5db;border-radius:10px;position:relative;cursor:pointer;transition:background-color .2s}.mobile-menu-content .toggle.active{background:#3b82f6}.mobile-menu-content .toggle-slider{width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .2s}.mobile-menu-content .toggle.active .toggle-slider{transform:translate(16px)}.mobile-menu-content .radius-card{margin-bottom:16px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e5e7eb}.mobile-menu-content .radius-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.mobile-menu-content .radius-icon{font-size:16px;margin-right:8px}.mobile-menu-content .radius-text{flex:1;font-size:14px;font-weight:500;color:#374151}.mobile-menu-content .radius-subtitle{font-size:12px;color:#6b7280;margin-bottom:12px}.mobile-menu-content .radius-controls{margin-top:12px}.mobile-menu-content .radius-slider-container{margin-bottom:12px}.mobile-menu-content .radius-slider-label{font-size:12px;color:#374151;margin-bottom:8px;display:block}.mobile-menu-content .radius-slider{width:100%;height:4px;border-radius:2px;background:#d1d5db;outline:none;-webkit-appearance:none}.mobile-menu-content .radius-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#3b82f6;cursor:pointer}.mobile-menu-content .radius-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#3b82f6;cursor:pointer;border:none}.mobile-menu-content .radius-slider-labels{display:flex;justify-content:space-between;font-size:10px;color:#6b7280;margin-top:4px}.mobile-menu-content .radius-instructions{font-size:11px;color:#6b7280;text-align:center;padding:8px;background:#f3f4f6;border-radius:4px}.loading-text{text-align:center;color:#6b7280;font-size:14px;padding:20px;font-style:italic}.error-text{text-align:center;color:#dc2626;font-size:14px;padding:20px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin:10px 0}.loading-indicator{margin-left:8px;font-size:12px;animation:pulse 1.5s ease-in-out infinite}.error-indicator{margin-left:8px;font-size:12px;color:#dc2626}.toggle.loading{opacity:.6;cursor:not-allowed}.toggle.loading .toggle-slider{background:#f3f4f6}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 987px){.mobile-menu-btn,.mobile-menu-overlay,.mobile-menu-container{display:block}.sidebar{display:none}.dashboard{flex-direction:column}.map-container{height:calc(100vh - 64px)}.header-center{display:none}.header-actions{gap:8px}.help-text{display:none}.user-profile{flex-direction:column;align-items:flex-end}.user-info{text-align:right}.user-email{font-size:12px}.user-status{font-size:10px}}@media (min-width: 988px){.mobile-menu-btn,.mobile-menu-overlay,.mobile-menu-container{display:none!important}.sidebar{display:flex!important}.dashboard{flex-direction:row!important}.map-container{height:100%!important}.header-center{display:flex!important}.help-text{display:block!important}.user-profile{flex-direction:row!important;align-items:center!important}.user-info{text-align:left!important}.user-email{font-size:14px!important}.user-status{font-size:12px!important}}@media (max-width: 480px){.header-content{padding:8px 16px}.header-logo{height:24px}.mobile-menu-btn{display:block;font-size:20px;padding:4px;margin-right:8px}.database-btn{padding:4px 8px;font-size:10px}.menu-btn{width:28px;height:28px;font-size:12px}}.dashboard-header{background:#fff;padding:16px 24px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;align-items:center;z-index:1000}.header-left{display:flex;align-items:center;gap:12px}.header-left .logo{display:flex;align-items:center;gap:8px;margin-bottom:0}.header-left .logo-image{height:32px;width:auto}.app-title{font-size:18px;font-weight:600;color:#333}.header-center{flex:1;max-width:500px;margin:0 40px}.search-container{position:relative;width:100%}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#666;font-size:16px}.search-input{width:100%;padding:12px 16px 12px 40px;border:1px solid #e1e5e9;border-radius:8px;font-size:14px;background:#f8f9fa;transition:all .3s ease}.search-input:focus{outline:none;border-color:#007bff;background:#fff;box-shadow:0 0 0 3px #007bff1a}.header-right{display:flex;align-items:center;gap:16px}.supabase-status{display:flex;align-items:center}.status-indicator{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.status-indicator.loading{background:#fff3cd;color:#856404}.status-indicator.loading .status-dot{background:#ffc107}.status-indicator.connected{background:#d4edda;color:#155724}.status-indicator.connected .status-dot{background:#28a745;animation:none}.status-indicator.error{background:#f8d7da;color:#721c24}.status-indicator.error .status-dot{background:#dc3545;animation:none}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.help-text{color:#666;font-size:14px;cursor:pointer}.user-menu-container{position:relative}.user-avatar{width:32px;height:32px;border-radius:50%;background:#007bff;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;cursor:pointer;transition:background-color .3s ease}.user-avatar:hover{background:#0056b3}.user-dropdown{position:absolute;top:100%;right:0;background:#fff;border:1px solid #e1e5e9;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:180px;margin-top:8px;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background-color .3s ease;border-bottom:1px solid #f8f9fa}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#f8f9fa}.dropdown-icon{font-size:16px;width:20px;text-align:center}.dropdown-item span:last-child{font-size:14px;color:#333;font-weight:500}.dashboard-main{display:flex;flex:1;height:calc(100vh - 80px);min-height:600px}.sidebar{width:320px;background:#fff;border-right:1px solid #e1e5e9;display:flex;flex-direction:column;box-shadow:2px 0 8px #0000000d;height:100%;overflow-y:auto}.sidebar-tabs{display:flex;border-bottom:1px solid #e1e5e9;background:#f8f9fa}.tab{flex:1;padding:12px 16px;text-align:center;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;transition:all .3s ease}.tab.active{color:#1f2937;border-bottom-color:#3b82f6;background:#fff}.tab:hover{color:#1f2937;background:#f1f5f9}.pipeline-card{background:#fff;border:1px solid #e1e5e9;border-radius:8px;margin:16px;padding:16px;box-shadow:0 1px 3px #0000001a}.pipeline-header{display:flex;align-items:center;gap:12px}.pipeline-title{flex:1;font-weight:600;color:#1f2937}.filters-section{padding:0 16px 16px;border-bottom:1px solid #e1e5e9}.filters-section h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 12px}.filter-group{margin-bottom:12px}.filter-group label{display:block;font-size:12px;font-weight:500;color:#6b7280;margin-bottom:4px}.filter-dropdown{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#374151}.filter-dropdown:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.radius-card{background:#fff;border:1px solid #e1e5e9;border-radius:8px;margin-bottom:16px;padding:16px;box-shadow:0 1px 3px #0000001a}.radius-header{display:flex;align-items:center;gap:12px;cursor:pointer}.radius-icon{font-size:20px}.radius-text{flex:1;font-weight:600;color:#1f2937}.radius-subtitle{font-size:12px;color:#6b7280;margin:8px 0 0}.heatmap-card{margin-bottom:20px;background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.heatmap-header{display:flex;align-items:center;gap:12px;cursor:pointer}.heatmap-icon-dot{width:8px;height:8px;border-radius:50%;background:#3b82f6;flex-shrink:0}.heatmap-icon-graph{font-size:18px;line-height:1}.heatmap-text{flex:1;font-weight:600;color:#1f2937;font-size:14px}.heatmap-content{margin-top:16px}.heatmap-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:12px;padding-left:0}.heatmap-gradient-container{position:relative;margin-top:0}.heatmap-gradient{width:100%;height:24px;border-radius:12px;background:linear-gradient(to right,#e53935 0% 16.66%,#ffc107 16.66% 33.33%,#fb8c00 33.33% 50%,#7e57c2 50% 66.66%,#4285f4 66.66% 83.33%,#9e9e9e 83.33% 100%);margin-bottom:12px;position:relative;cursor:pointer;display:flex;overflow:hidden}.heatmap-range{flex:1;height:100%;cursor:pointer;transition:all .2s ease;position:relative}.heatmap-range:hover{opacity:.8;transform:scaleY(1.1)}.heatmap-range.active{box-shadow:inset 0 0 0 2px #fff;opacity:1;transform:scaleY(1.15);z-index:1}.heatmap-labels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;margin-top:8px;position:relative;padding-bottom:25px;width:100%}.count-heatmap-labels{grid-template-columns:repeat(3,minmax(0,1fr))!important}.heatmap-label-price{font-size:8px;color:#4b5563;font-weight:500;text-align:center;cursor:pointer;transition:all .2s ease;padding:1px;border-radius:3px;white-space:nowrap;line-height:1.1;overflow:hidden;text-overflow:ellipsis;min-width:0}.heatmap-label-price:hover{background-color:#f3f4f6;color:#1f2937}.heatmap-label-price.active{color:#16a34a;font-weight:700;background-color:#dcfce7}.heatmap-label-price:first-child{text-align:left}.heatmap-label-price:last-child{text-align:right}.heatmap-no-data{position:absolute;left:0;top:20px;font-size:11px;color:#9ca3af;font-style:italic;margin-left:2px}.heatmap-stats{position:absolute;left:0;top:45px;font-size:11px;margin-left:2px}.heatmap-stat-text{color:#16a34a;font-weight:600}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#f1f5f9}.sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sidebar-tabs{display:flex;border-bottom:1px solid #e1e5e9}.tab{flex:1;padding:16px;border:none;background:none;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .3s ease;border-bottom:2px solid transparent}.tab.active{color:#007bff;border-bottom-color:#007bff;background:#f8f9ff}.sidebar-content{flex:1;padding:24px;overflow-y:auto}.sidebar-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#333;margin-bottom:24px}.title-dot{width:8px;height:8px;border-radius:50%;background:#007bff}.pipeline-section{margin-bottom:24px;padding:16px;background:#f8f9ff;border-radius:8px;border:1px solid #e1e5ff}.pipeline-item{display:flex;align-items:center;gap:12px}.pipeline-icon{font-size:20px}.pipeline-text{flex:1;font-weight:500;color:#333}.toggle{width:44px;height:24px;background:#d1d5db;border-radius:12px;position:relative;cursor:pointer;transition:background-color .3s ease}.toggle.active{background:#3b82f6}.toggle-slider{width:18px;height:18px;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.toggle.active .toggle-slider{transform:translate(20px)}.filters-section{margin-bottom:24px}.filters-title{font-size:14px;font-weight:600;color:#333;margin-bottom:16px}.filter-group{margin-bottom:16px}.filter-group label{display:block;font-size:12px;font-weight:500;color:#666;margin-bottom:6px}.filter-select{width:100%;padding:8px 12px;border:1px solid #e1e5e9;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.filter-select:focus{outline:none;border-color:#007bff}.layers-list{display:flex;flex-direction:column;gap:8px}.layer-item{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:0;transition:background-color .3s ease;cursor:pointer;border-bottom:1px solid #f3f4f6}.layer-item:hover{background:#f8f9fa}.layer-item:last-child{border-bottom:none}.layer-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.layer-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.layer-name{flex:1;font-size:14px;font-weight:500;color:#1f2937}.radius-toggle-section{margin-top:24px;padding:16px;background:#f8f9ff;border-radius:8px;border:1px solid #e1e5ff}.radius-controls{margin-top:16px;padding-top:16px;border-top:1px solid #e1e5ff}.radius-slider-container{margin-bottom:12px}.radius-slider-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.radius-slider{width:100%;height:6px;border-radius:3px;background:#e5e7eb;outline:none;-webkit-appearance:none;appearance:none}.radius-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;box-shadow:0 2px 4px #0003}.radius-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;border:none;box-shadow:0 2px 4px #0003}.radius-slider-labels{display:flex;justify-content:space-between;font-size:12px;color:#6b7280;margin-top:4px}.radius-instructions{font-size:12px;color:#6b7280;text-align:center;font-style:italic}.radius-toggle-item{display:flex;align-items:center;gap:12px;cursor:pointer;margin-bottom:8px}.radius-icon{font-size:18px}.radius-text{flex:1;font-weight:500;color:#333;font-size:14px}.radius-subtitle{font-size:12px;color:#666;margin:0}.analysis-data{margin-top:16px;display:flex;flex-direction:column;gap:16px}.data-card{background:#fff;border-radius:8px;padding:16px;border:1px solid #e9ecef;display:flex;align-items:center;gap:12px}.data-icon{font-size:20px;width:24px;text-align:center}.data-content{flex:1}.data-label{font-size:12px;color:#666;margin-bottom:4px}.data-value{font-size:18px;font-weight:700;color:#333}.data-change{font-size:12px;font-weight:600}.data-change.positive{color:#28a745}.sales-by-type{background:#fff;border-radius:8px;padding:16px;border:1px solid #e9ecef}.section-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#333;margin:0 0 16px}.title-icon{font-size:16px}.sales-item{display:flex;align-items:center;gap:12px;margin-bottom:12px}.sales-item:last-child{margin-bottom:0}.sales-label{font-size:12px;color:#666;min-width:80px}.sales-bar{flex:1;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.sales-fill{height:100%;background:#007bff;border-radius:4px;transition:width .3s ease}.sales-count{font-size:12px;color:#333;font-weight:500;min-width:60px;text-align:right}.avg-rents{background:#fff;border-radius:8px;padding:16px;border:1px solid #e9ecef}.rent-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f8f9fa}.rent-item:last-child{border-bottom:none}.rent-label{font-size:12px;color:#666}.rent-value{font-size:14px;color:#28a745;font-weight:600}.active-builders{background:#fff;border-radius:8px;padding:16px;border:1px solid #e9ecef}.builder-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #f8f9fa}.builder-item:last-child{border-bottom:none}.builder-number{width:24px;height:24px;background:#fd7e14;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.builder-name{flex:1;font-size:12px;color:#333}.builder-count{font-size:12px;color:#666;font-weight:500}.map-container{flex:1;position:relative;background:#f8f9fa;height:100%}.mapbox-container{width:100%;height:100%;position:relative;min-height:500px;z-index:1}.mapbox-map{width:100%;height:100%;border-radius:0;position:relative;overflow:hidden;min-height:500px}.custom-pin-marker{width:30px!important;height:40px!important;cursor:pointer!important;position:relative!important;transition:transform .2s ease!important}.pin-container{width:100%;height:100%;position:relative;display:flex;flex-direction:column;align-items:center}.pin-body{width:28px;height:28px;background:#000;border-radius:50% 50% 50% 0;transform:rotate(-45deg);position:relative;box-shadow:0 2px 8px #0006;transition:all .2s ease}.pin-circle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);width:18px;height:18px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000004d;border:1px solid rgba(0,0,0,.1)}.pin-number{color:#000;font-weight:700;font-size:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1}.custom-pin-marker:hover{transform:scale(1.1)}.custom-pin-marker:hover .pin-body{box-shadow:0 4px 12px #00000080}.mapboxgl-popup-content{border-radius:8px;box-shadow:0 4px 12px #00000026;padding:0}.mapboxgl-popup-tip{border-top-color:#fff}.streets-map{width:100%;height:100%;position:relative;background:#f5f5f5,linear-gradient(90deg,rgba(0,0,0,.02) 1px,transparent 1px),linear-gradient(rgba(0,0,0,.02) 1px,transparent 1px);background-size:20px 20px;min-height:500px;display:block}.streets-pattern{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(15deg,transparent 48%,#ffffff 49%,#ffffff 51%,transparent 52%),linear-gradient(-15deg,transparent 48%,#ffffff 49%,#ffffff 51%,transparent 52%),linear-gradient(90deg,transparent 48%,#ffffff 49%,#ffffff 51%,transparent 52%),linear-gradient(45deg,transparent 48%,#ffffff 49%,#ffffff 51%,transparent 52%),linear-gradient(-45deg,transparent 48%,#ffffff 49%,#ffffff 51%,transparent 52%),linear-gradient(30deg,transparent 49%,#f0f0f0 49.5%,#f0f0f0 50.5%,transparent 51%),linear-gradient(-30deg,transparent 49%,#f0f0f0 49.5%,#f0f0f0 50.5%,transparent 51%),linear-gradient(60deg,transparent 49%,#f0f0f0 49.5%,#f0f0f0 50.5%,transparent 51%),linear-gradient(-60deg,transparent 49%,#f0f0f0 49.5%,#f0f0f0 50.5%,transparent 51%),linear-gradient(90deg,transparent 0%,rgba(200,200,200,.3) 20%,rgba(200,200,200,.3) 30%,transparent 40%),linear-gradient(0deg,transparent 0%,rgba(200,200,200,.3) 20%,rgba(200,200,200,.3) 30%,transparent 40%),linear-gradient(90deg,transparent 60%,rgba(200,200,200,.3) 70%,rgba(200,200,200,.3) 80%,transparent 90%),linear-gradient(0deg,transparent 60%,rgba(200,200,200,.3) 70%,rgba(200,200,200,.3) 80%,transparent 90%);background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%;pointer-events:none}.street-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.street-label{position:absolute;background:#ffffffe6;color:#333;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:600;white-space:nowrap;text-shadow:1px 1px 2px rgba(255,255,255,.8);border:1px solid rgba(0,0,0,.1);box-shadow:0 1px 3px #0003}.satellite-map{width:100%;height:100%;position:relative;background:linear-gradient(135deg,#0d2e0d,#1a4d1a,#2d5a2d,#3d6b3d,#4a7c4a,#5d8f5d,#6ba06b,#7bb07b,#8bc08b,#9bcc9b,#a8d4a8),radial-gradient(ellipse 400px 150px at 15% 25%,rgba(0,100,180,.6) 0%,rgba(0,100,180,.3) 30%,transparent 60%),radial-gradient(ellipse 300px 100px at 85% 75%,rgba(0,100,180,.5) 0%,rgba(0,100,180,.2) 40%,transparent 70%),radial-gradient(ellipse 200px 80px at 60% 20%,rgba(0,100,180,.4) 0%,rgba(0,100,180,.1) 50%,transparent 80%),radial-gradient(ellipse 150px 60px at 25% 60%,rgba(0,120,200,.3) 0%,transparent 60%),radial-gradient(ellipse 100px 40px at 70% 40%,rgba(0,120,200,.2) 0%,transparent 70%),radial-gradient(circle 120px at 30% 40%,rgba(200,200,200,.4) 0%,rgba(180,180,180,.2) 50%,transparent 80%),radial-gradient(circle 150px at 70% 60%,rgba(200,200,200,.35) 0%,rgba(180,180,180,.15) 60%,transparent 85%),radial-gradient(circle 80px at 50% 80%,rgba(200,200,200,.3) 0%,rgba(180,180,180,.1) 70%,transparent 90%),linear-gradient(15deg,transparent 47%,rgba(255,255,255,.6) 48%,rgba(255,255,255,.6) 52%,transparent 53%),linear-gradient(-15deg,transparent 47%,rgba(255,255,255,.5) 48%,rgba(255,255,255,.5) 52%,transparent 53%),linear-gradient(90deg,transparent 47%,rgba(255,255,255,.4) 48%,rgba(255,255,255,.4) 52%,transparent 53%),linear-gradient(45deg,transparent 48%,rgba(255,255,255,.3) 49%,rgba(255,255,255,.3) 51%,transparent 52%),linear-gradient(-45deg,transparent 48%,rgba(255,255,255,.25) 49%,rgba(255,255,255,.25) 51%,transparent 52%),radial-gradient(circle 3px at 20% 20%,rgba(255,255,255,.15) 0%,transparent 50%),radial-gradient(circle 2px at 60% 40%,rgba(255,255,255,.12) 0%,transparent 60%),radial-gradient(circle 1px at 80% 80%,rgba(255,255,255,.1) 0%,transparent 70%),radial-gradient(circle 2px at 40% 70%,rgba(255,255,255,.08) 0%,transparent 65%),radial-gradient(ellipse 50px 20px at 25% 30%,rgba(100,150,100,.3) 0%,transparent 80%),radial-gradient(ellipse 40px 15px at 70% 50%,rgba(100,150,100,.25) 0%,transparent 75%),radial-gradient(ellipse 60px 25px at 50% 20%,rgba(100,150,100,.2) 0%,transparent 85%);background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,25px 25px,20px 20px,30px 30px,15px 15px,40px 40px,35px 35px,45px 45px}.satellite-pattern{position:absolute;top:0;left:0;width:100%;height:100%;background-image:repeating-linear-gradient(0deg,transparent,transparent .5px,rgba(255,255,255,.03) .5px,rgba(255,255,255,.03) 1px,transparent 1px,transparent 1.5px,rgba(0,0,0,.01) 1.5px,rgba(0,0,0,.01) 2px),repeating-linear-gradient(90deg,transparent,transparent .5px,rgba(255,255,255,.03) .5px,rgba(255,255,255,.03) 1px,transparent 1px,transparent 1.5px,rgba(0,0,0,.01) 1.5px,rgba(0,0,0,.01) 2px),repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.01) 2px,rgba(255,255,255,.01) 3px),repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(0,0,0,.005) 3px,rgba(0,0,0,.005) 4px);pointer-events:none}.map-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#333;z-index:1000}.map-loading .loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.mapbox-marker{width:32px;height:32px;border-radius:50%;background:#dc3545;border:3px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0000004d;transition:transform .3s ease}.mapbox-marker:hover{transform:scale(1.1)}.marker-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.marker-number{color:#fff;font-weight:600;font-size:14px}.property-markers{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.property-marker{position:absolute;width:32px;height:32px;background:#dc3545;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;box-shadow:0 2px 8px #0000004d;pointer-events:all;cursor:pointer;transition:transform .3s ease;border:3px solid white}.radius-circle{position:absolute;border:3px solid #007bff;border-radius:50%;background:#007bff1a;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:all .3s ease;z-index:2}.radius-label{color:#007bff;font-weight:600;font-size:14px;background:#fff;padding:4px 8px;border-radius:4px;box-shadow:0 2px 4px #0000001a;position:absolute;top:-30px;left:50%;transform:translate(-50%);white-space:nowrap}.city-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:4}.water-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.map-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.map-background{width:100%;height:100%;background:linear-gradient(135deg,#1a4d1a,#2d5a2d,#3d6b3d,#4a7c4a,#5d8f5d,#6ba06b,#7bb07b 90%,#8bc08b),radial-gradient(ellipse 200px 80px at 20% 30%,rgba(0,120,200,.4) 0%,transparent 50%),radial-gradient(ellipse 150px 60px at 80% 70%,rgba(0,120,200,.3) 0%,transparent 50%),radial-gradient(ellipse 100px 40px at 60% 20%,rgba(0,120,200,.2) 0%,transparent 50%),radial-gradient(circle 60px at 30% 40%,rgba(180,180,180,.3) 0%,transparent 70%),radial-gradient(circle 80px at 70% 60%,rgba(180,180,180,.25) 0%,transparent 70%),radial-gradient(circle 40px at 50% 80%,rgba(180,180,180,.2) 0%,transparent 70%),linear-gradient(15deg,transparent 48%,rgba(255,255,255,.4) 49%,rgba(255,255,255,.4) 51%,transparent 52%),linear-gradient(-15deg,transparent 48%,rgba(255,255,255,.3) 49%,rgba(255,255,255,.3) 51%,transparent 52%),linear-gradient(90deg,transparent 48%,rgba(255,255,255,.2) 49%,rgba(255,255,255,.2) 51%,transparent 52%),radial-gradient(circle 2px at 25% 25%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle 1px at 75% 75%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle 1.5px at 50% 50%,rgba(255,255,255,.06) 0%,transparent 50%);background-size:100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,30px 30px,20px 20px,25px 25px;position:relative;min-height:500px;display:flex;align-items:center;justify-content:center}.map-title{text-align:center;color:#333;z-index:1;background:#ffffffe6;padding:20px;border-radius:12px;box-shadow:0 4px 12px #0000001a}.map-title h2{font-size:24px;margin:0 0 8px;color:#333}.map-title p{font-size:16px;margin:0;color:#666}.radius-circle{position:absolute;border:3px solid #007bff;border-radius:50%;background:#007bff1a;z-index:2;pointer-events:none}.radius-label{position:absolute;top:-25px;left:50%;transform:translate(-50%);background:#007bff;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}.center-marker{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3}.marker-pin{width:20px;height:20px;background:#007bff;border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #0000004d}.property-markers{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:4}.property-marker{position:absolute;width:28px;height:28px;background:#dc3545;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;box-shadow:0 2px 8px #0000004d;pointer-events:all;cursor:pointer;transition:transform .3s ease;border:2px solid white}.property-marker:hover{transform:scale(1.15)}.marker-1{top:25%;left:20%}.marker-2{top:35%;right:25%}.marker-3{top:65%;left:25%}.marker-4{top:75%;right:35%}.marker-5{top:85%;left:45%}.city-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.city-label{position:absolute;background:#000c;color:#fff;padding:3px 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap;text-shadow:1px 1px 3px rgba(0,0,0,.9);border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 4px #0000004d}.highway-lines{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.highway{position:absolute;background:#fff6;border-radius:2px}.highway.i75{width:6px;height:250px;background:linear-gradient(15deg,#fffc,#fff9,#fff6);box-shadow:0 1px 2px #0000004d}.highway.i95{width:6px;height:220px;background:linear-gradient(-10deg,#fffc,#fff9,#fff6);box-shadow:0 1px 2px #0000004d}.highway.local{width:3px;height:120px;background:linear-gradient(45deg,#ffffff80,#ffffff4d);box-shadow:0 1px 1px #0003}.water-labels{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.water-label{position:absolute;background:#0078c8cc;color:#fff;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:500;white-space:nowrap;text-shadow:1px 1px 2px rgba(0,0,0,.8);border:1px solid rgba(255,255,255,.3)}.airport-markers{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.airport-marker{position:absolute;font-size:16px;color:#333;text-shadow:1px 1px 2px rgba(255,255,255,.8);background:#ffffffe6;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000004d}.radius-analysis-panel{position:absolute;bottom:20px;right:20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:16px;max-width:300px;z-index:10}.radius-header{margin-bottom:12px}.radius-title{display:flex;align-items:center;gap:8px;font-weight:600;color:#333;font-size:14px}.radius-icon{font-size:16px}.radius-content p{font-size:12px;color:#666;margin:0 0 8px;line-height:1.4}.center-coords{font-size:11px;color:#999;font-family:monospace}.map-controls{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:12px;z-index:10}.zoom-btn{width:40px;height:40px;background:#fff;border:1px solid #e1e5e9;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;color:#333;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.zoom-btn:hover{background:#f8f9fa;transform:translateY(-1px)}.deal-details-panel{position:fixed;top:0;right:0;width:400px;height:100vh;background:#fff;box-shadow:-4px 0 20px #00000026;z-index:1000;transform:translate(0);transition:transform .3s ease}.deal-details-content{height:100%;display:flex;flex-direction:column}.deal-header{background:#1e3a8a;color:#fff;padding:24px;display:flex;justify-content:space-between;align-items:flex-start}.close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .3s ease}.close-btn:hover{background:#ffffff1a}.deal-content{flex:1;padding:24px;overflow-y:auto;background:#fff}.status-card{background:#fff3cd;border-color:#ffeaa7}@media (max-width: 768px){.deal-details-panel{width:100%;height:100vh}.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:60px}}.deal-details-modal-overlay{position:fixed;inset:0;background:#0006;z-index:1000;pointer-events:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.deal-details-modal{position:fixed;top:0;right:0;width:480px;height:100vh;background:#fff;box-shadow:-8px 0 32px #0000001f;z-index:1001;overflow:hidden;display:flex;flex-direction:column;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1);border-left:1px solid #e5e7eb}.deal-details-header{background:#16a14a;color:#fff;padding:28px 24px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.15);flex-shrink:0;position:relative}.deal-details-header:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}.deal-title-section{flex:1}.deal-title{font-size:26px;font-weight:700;margin:0 0 6px;letter-spacing:-.5px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.deal-subtitle{font-size:16px;margin:0;opacity:.95;font-weight:500;letter-spacing:.2px}.deal-actions{display:flex;gap:6px;align-items:center}.deal-action-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:18px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;width:36px;height:36px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.deal-action-btn:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-1px)}.close-btn:hover{background:#ef444433;border-color:#ef44444d}.deal-details-content{flex:1;padding:24px;overflow-y:auto;background:#fff;scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.deal-details-content::-webkit-scrollbar{width:6px}.deal-details-content::-webkit-scrollbar-track{background:#f7fafc}.deal-details-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.deal-details-content::-webkit-scrollbar-thumb:hover{background:#a0aec0}.info-card{background:#fff;border-radius:16px;padding:20px;margin-bottom:16px;display:flex;align-items:center;gap:16px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000a;transition:all .2s ease}.info-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.address-card{background:#f8f9fa}.metric-card{background:#f8f9fa;flex:1;min-height:80px;flex-direction:column;align-items:flex-start;text-align:left}.status-card{background:#fef3c7;border:2px solid #f59e0b;border-radius:16px;padding:20px;margin-bottom:16px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #f59e0b1a;transition:all .2s ease}.status-card:hover{box-shadow:0 4px 12px #f59e0b26;transform:translateY(-1px)}.card-icon{font-size:20px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.card-icon.purple{color:#6f42c1}.card-icon.green{color:#28a745}.card-icon.orange{color:#f59e0b;font-size:24px}.card-icon.blue{color:#007bff}.card-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.card-value{font-size:14px;color:#333;font-weight:500}.metric-value{font-size:18px;font-weight:700;color:#333}.status-value{font-size:18px;font-weight:700;color:#f59e0b;letter-spacing:.3px}.metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.property-details{margin-top:28px;padding-top:24px;border-top:1px solid #e5e7eb}.section-title{font-size:20px;font-weight:700;color:#111827;margin:0 0 20px;letter-spacing:-.3px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.detail-row:hover{background-color:#f9fafb;margin:0 -20px;padding:16px 20px;border-radius:8px}.detail-row:last-child{border-bottom:none}.detail-label{font-size:14px;color:#6b7280;font-weight:500;letter-spacing:.1px}.detail-value{font-size:14px;color:#111827;font-weight:600;text-align:right;letter-spacing:.1px}.deal-details-modal{animation:slideInFromRight .3s ease-out}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width: 768px){.deal-details-modal{width:100%;max-width:100%}.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:60px}}@media (max-width: 480px){.deal-details-modal{width:100%}.deal-details-header,.deal-details-content{padding:20px}}.loading-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;color:#333}.loading-spinner{width:40px;height:40px;border:4px solid #333;border-top:4px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 600px){.login-container{padding:10px}.login-card{padding:30px 20px;margin:10px;max-width:calc(100% - 20px)}.logo-image{height:50px}.login-title{font-size:16px;margin-bottom:25px}.login-input{padding:10px 14px;font-size:14px}.login-button{padding:10px 20px;font-size:14px}}@media (max-width: 480px){.login-card{padding:25px 15px;margin:5px;max-width:calc(100% - 10px)}.logo-image{height:45px}.login-title{font-size:15px;margin-bottom:20px}}@media (max-width: 768px){.dashboard-header{padding:15px 20px;flex-direction:column;gap:15px}.dashboard-content{padding:20px}.dashboard-cards{grid-template-columns:1fr}}.deal-details-header{background:#16a14a!important;padding:24px!important;border-radius:12px 12px 0 0}.deal-title{font-size:20px!important;font-weight:700!important;margin:0 0 4px!important;color:#fff!important}.deal-subtitle{font-size:16px!important;font-weight:400!important;margin:0!important;color:#fff!important}.deal-actions{position:absolute!important;top:24px!important;right:24px!important}.deal-action-btn{width:32px!important;height:32px!important;border-radius:50%!important;background:#ffffff1a!important;border:none!important;font-size:18px!important;padding:0!important;color:#fff!important}.info-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;display:flex;align-items:flex-start;gap:12px;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.subdivision-card{border-radius:12px;border:1px solid #e5e7eb;background:#fff;padding:20px}.subdivision-card .card-content{gap:6px}.subdivision-card .card-label{color:#6b7280;font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;margin-bottom:2px}.subdivision-card .card-value{color:#1f2937;font-size:15px;font-weight:600;line-height:1.3}.info-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.card-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.card-icon.subdivision-icon{background:#dcfce7;color:#16a34a;border:1px solid #bbf7d0;width:36px;height:36px;font-size:18px}.card-icon.developer-icon{background:#dbeafe;color:#2563eb}.card-icon.product-icon{background:#dcfce7;color:#16a34a}.card-icon.city-icon{background:#fecaca;color:#dc2626}.card-icon.status-icon{background:#dcfce7;color:#16a34a}.card-icon.price-icon{background:#16a34a;color:#fff;font-weight:700;font-size:18px}.card-icon.lot-icon{background:#2563eb;color:#fff}.card-icon.units-icon{background:#e9d5ff;color:#7c3aed}.card-content{flex:1;display:flex;flex-direction:column;gap:4px}.card-label{color:#6b7280;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.card-value{color:#1f2937;font-size:14px;font-weight:500;line-height:1.4}.two-column-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price-range-card{background:#e8f5e9!important;border:none!important}.price-range-card .card-icon{background:#16a34a!important;color:#fff!important}.price-range-card .card-label{color:#1f2937!important;font-weight:700!important}.price-range-values{display:flex;justify-content:space-between;margin-top:8px}.price-min,.price-max{display:flex;flex-direction:column;gap:2px}.price-label,.lot-label{color:#6b7280;font-size:11px;font-weight:500}.price-value,.lot-value{color:#16a34a;font-size:16px;font-weight:700}.lot-width-card{background:#e3f2fd!important;border:none!important}.lot-width-card .card-icon{background:#2563eb!important;color:#fff!important}.lot-width-card .card-label{color:#1f2937!important;font-weight:700!important}.lot-width-values{display:flex;justify-content:space-between;margin-top:8px}.lot-min,.lot-max{display:flex;flex-direction:column;gap:2px}.lot-value{color:#2563eb;font-size:16px;font-weight:700}.units-value{font-size:20px;font-weight:700;color:#1f2937}.acreage-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px}.acreage-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.acreage-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:16px;color:#6b7280}.acreage-label{color:#6b7280;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.acreage-value{color:#1f2937;font-size:24px;font-weight:700;line-height:1.2}.summary-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.summary-title{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.summary-content{display:flex;flex-direction:column;gap:12px}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.summary-label{color:#6b7280;font-size:14px;font-weight:500}.summary-value{color:#1f2937;font-size:14px;font-weight:500;text-align:right}.school-header,.subdivision-header,.masterplan-header,.publix-header,.hospital-header{background:#16a14a!important;color:#fff!important}.school-name-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.school-name-icon{background:#e0f2fe!important;color:#3b82f6!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.school-type-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.school-type-icon{background:#ede9fe!important;color:#8b5cf6!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.school-type-value{color:#8b5cf6!important;font-weight:700!important;font-size:16px!important}.school-address-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.school-address-icon{background:#fee2e2!important;color:#ef4444!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.subdivision-name-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.subdivision-name-icon{background:#e0f2fe!important;color:#3b82f6!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.developer-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.developer-icon{background:#ede9fe!important;color:#8b5cf6!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.product-type-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.product-type-icon{background:#dcfce7!important;color:#16a34a!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.status-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.status-icon{background:#dcfce7!important;color:#16a34a!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.city-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.city-icon{background:#fee2e2!important;color:#ef4444!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.county-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.county-icon{background:#e0f2fe!important;color:#3b82f6!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.timeline-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.timeline-icon{background:#fef3c7!important;color:#f59e0b!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.units-progress{display:flex;flex-direction:column;gap:8px;margin-top:8px}.units-sold{display:flex;justify-content:space-between;align-items:center}.units-sold-text{color:#6b7280;font-size:12px;font-weight:500}.units-sold-value{color:#1f2937;font-size:16px;font-weight:700}.units-progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.units-progress-fill{height:100%;background:#3b82f6;border-radius:4px;transition:width .3s ease}.units-total{display:flex;justify-content:space-between;align-items:center}.units-total-value{color:#1f2937;font-size:14px;font-weight:600}.units-percentage{color:#6b7280;font-size:12px;font-weight:500}.timeline-values{display:flex;justify-content:space-between;margin-top:8px}.timeline-opened,.timeline-sold-out{display:flex;flex-direction:column;gap:4px}.timeline-label{color:#6b7280;font-size:11px;font-weight:500}.timeline-value{color:#1f2937;font-size:14px;font-weight:600}.publix-address-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.publix-address-icon{background:#fee2e2!important;color:#ef4444!important;width:40px!important;height:40px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.hospital-name-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.hospital-name-icon{background:#fce7f3!important;color:#ec4899!important;width:40px!important;height:40px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.hospital-address-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#fff!important;box-shadow:none!important}.hospital-address-icon{background:#e0f2fe!important;color:#3b82f6!important;width:40px!important;height:40px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;margin-right:12px!important}.hospital-rating-card{border:1px solid #E0E0E0!important;border-radius:8px!important;padding:16px!important;margin-bottom:12px!important;background:#e6f7ed!important;box-shadow:none!important}.hospital-rating-icon{background:#16a34a!important;color:#fff!important;width:40px!important;height:40px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;font-weight:700!important;margin-right:12px!important}.hospital-rating-value{color:#16a34a!important;font-weight:700!important;font-size:16px!important}.auth-wrapper{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#fff;padding:20px}.auth-container{width:100%;max-width:400px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;padding:40px;text-align:center}.auth-header{margin-bottom:32px;text-align:center}.auth-logo{width:160px;height:auto;margin-bottom:24px}.auth-header h2{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 8px}.auth-header p{font-size:16px;color:#6b7280;margin:0}.auth-form{text-align:left}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:6px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#3b82f6}.form-group input:disabled{background-color:#f9fafb;cursor:not-allowed}.auth-button{width:100%;background:#3b82f6;color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease;margin-top:8px}.auth-button:hover:not(:disabled){background:#2563eb}.auth-button:disabled{background:#9ca3af;cursor:not-allowed}.auth-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;border:1px solid #fecaca;margin-bottom:20px;font-size:14px}.auth-success{background:#f0fdf4;color:#16a34a;padding:12px 16px;border-radius:8px;border:1px solid #bbf7d0;margin-bottom:20px;font-size:14px}.auth-footer{margin-top:24px;text-align:center}.auth-footer p{color:#6b7280;font-size:14px;margin:0}.auth-link{background:none;border:none;color:#3b82f6;font-weight:600;cursor:pointer;text-decoration:underline;font-size:14px}.auth-link:hover:not(:disabled){color:#2563eb}.auth-link:disabled{color:#9ca3af;cursor:not-allowed}.user-profile{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.user-avatar{width:32px;height:32px;border-radius:50%;background:#3b82f6;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px}.user-info{display:flex;flex-direction:column}.user-email{font-size:14px;font-weight:500;color:#1f2937;margin:0}.user-status{font-size:12px;color:#10b981;margin:0}.logout-button{background:#ef4444;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .3s ease}.logout-button:hover{background:#dc2626}@media (max-width: 991px){.sidebar{display:none}}.modal-overlay{position:fixed;inset:0;background:#0006;z-index:1000;pointer-events:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.grid-sales-modal{position:fixed;top:0;right:0;width:480px;height:100vh;background:#fff;box-shadow:-8px 0 32px #0000001f;z-index:1001;overflow-y:auto;display:flex;flex-direction:column;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1);border-left:1px solid #e5e7eb}.modal-header{background:#1e3a5f;color:#fff;padding:28px 24px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.15);flex-shrink:0;position:relative}.modal-header h2{margin:0;font-size:24px;font-weight:600}.modal-close{background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close:hover{opacity:.8}.modal-body{padding:24px;background:#fff;flex:1;overflow-y:auto}.grid-stat-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:8px;margin-bottom:24px}.price-card{background:#f0fdf4;border:1px solid #86efac}.stat-icon{width:48px;height:48px;background:#22c55e;color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.stat-content{flex:1}.stat-value{font-size:32px;font-weight:700;color:#22c55e;line-height:1.2;margin-bottom:4px}.stat-change{display:inline-block;padding:4px 8px;border-radius:4px;font-size:14px;font-weight:600;margin-bottom:4px}.stat-change.positive{background:#dcfce7;color:#16a34a}.stat-change.negative{background:#fee2e2;color:#dc2626}.stat-label{font-size:12px;color:#6b7280}.grid-section{margin-bottom:24px}.section-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.section-icon{font-size:20px}.section-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.sales-list{display:flex;flex-direction:column;gap:8px}.sales-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f3f4f6;border-radius:6px}.sales-item.total{background:#e5e7eb;font-weight:600}.sales-label{font-size:14px;color:#374151}.sales-count{font-size:16px;font-weight:600;color:#3b82f6}.sales-count.total{color:#1f2937}.value-cards{display:flex;flex-direction:column;gap:12px}.value-card{background:#faf5ff;border:1px solid #e9d5ff;border-radius:8px;padding:16px}.value-card-header{font-size:12px;font-weight:700;color:#7c3aed;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.value-card-content{display:flex;flex-direction:column;gap:8px}.value-total{font-size:28px;font-weight:700;color:#7c3aed;line-height:1.2}.value-details{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#6b7280}.value-average,.value-count{font-weight:500}.loading-spinner{text-align:center;padding:40px;color:#6b7280}
