@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap);:root{--panel-bg:#242424;--accent-blue:#667eea;--text-muted:grey;--border-color:#444;--hover:#3a3a3a;--focus:#667eea}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.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:translateX(-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:translateX(-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' 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' 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' 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")}}.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 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 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 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 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' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8h-8z'/%3E%3Cpath d='m10.5 16 4 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 cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M3.333 11.667a1.667 1.667 0 1 0 3.334 0v-5h5a1.667 1.667 0 1 0 0-3.334H3.333v8.334ZM26.667 11.667a1.667 1.667 0 1 1-3.334 0v-5h-5a1.667 1.667 0 1 1 0-3.334h8.334v8.334ZM13.334 25c0 .92-.747 1.667-1.667 1.667H3.333v-8.334a1.667 1.667 0 1 1 3.334 0v5h5c.92 0 1.667.746 1.667 1.667ZM18.334 26.667a1.667 1.667 0 1 1 0-3.334h5v-5a1.667 1.667 0 1 1 3.333 0v8.334h-8.334Z' fill='currentColor'/%3E%3C/svg%3E");background-size:26px 26px}.mapboxgl-ctrl button.mapboxgl-ctrl-buildings-toggle.mapboxgl-ctrl-level-button-selected .mapboxgl-ctrl-icon{filter:invert(1) brightness(1)}.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 cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%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 cx='10' cy='10' r='2'/%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 cx='10' cy='10' r='2'/%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%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%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 cx='10' cy='10' r='2'/%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 cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%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 cx='10' cy='10' r='2'/%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 cx='10' cy='10' r='2'/%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%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%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'%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 cx='10' cy='10' r='2'/%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 cx='10' cy='10' r='2'/%3E%3Cpath d='m14 5 1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}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='a' 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 0 1 3.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='b' 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 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.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 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .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 0 1-.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='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg opacity='.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg opacity='.9' fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%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='a' 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 0 1 3.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='b' 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 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.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 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .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 0 1-.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='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%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='a' 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 0 1 3.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='b' 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 0 0-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 0 0 4.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 0 1-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 0 1 .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 0 1-.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='c'%3E%3Crect width='100%25' height='100%25' fill='%23fff'/%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%3E%3C/mask%3E%3Cg stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23c)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23b' mask='url(%23c)'/%3E%3C/g%3E%3Cuse xlink:href='%23a'/%3E%3Cuse xlink:href='%23b'/%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:50px;width:50px}.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}.map-view{background:#1a1a1a;position:relative}.map-container,.map-view{height:100%;width:100%}.map-loading{align-items:center;color:#b0b0b0;display:flex;flex-direction:column;gap:1rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.spinner{animation:spin 1s linear infinite;border:4px solid #2d2d2d;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}.mapboxgl-ctrl-group{background:#2d2d2d!important;border:1px solid #444!important}.mapboxgl-ctrl-group button{background:#2d2d2d!important;color:#fff!important}.mapboxgl-ctrl-group button:hover{background:#3a3a3a!important}.plan-viewer{background:var(--panel-bg);display:flex;flex-direction:column;height:100%}.plan-viewer-summary{height:100%}.plan-viewer-details{min-height:auto}.plan-viewer.loading{align-items:center;justify-content:center}.plan-loading{padding:2rem;text-align:center}.spinner-large{animation:spin 1s linear infinite;border:4px solid #2d2d2d;border-radius:50%;border-top-color:#667eea;height:60px;margin:0 auto 1.5rem;width:60px}.plan-loading h3{color:var(--text-primary);margin:0 0 .5rem}.plan-loading p{color:var(--text-secondary);font-size:.875rem;margin:0}.plan-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #764ba2;flex-shrink:0;padding:1.5rem 2rem}.plan-header-compact{padding:1rem 1.5rem}.plan-header-compact .plan-title{font-size:1.25rem}.plan-meta-compact{gap:1rem}.plan-meta-compact .meta-label{font-size:.7rem}.plan-meta-compact .meta-value{font-size:.8rem}.plan-title-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.plan-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.plan-badges{display:flex;gap:.5rem}.badge{border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.badge.disaster-type{background:#fff3;color:#fff}.badge.severity{background:var(--danger-red);color:#fff}.badge.scenario-badge.historical{animation:badgeAppear .5s ease-out;background:linear-gradient(135deg,#667eea4d,#764ba24d);border:1px solid #667eea;color:#a8b3ff}@keyframes badgeAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.plan-meta{display:flex;flex-wrap:wrap;gap:2rem}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{color:#ffffffb3;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.meta-value{color:#fff;font-size:.875rem;font-weight:500}.meta-value.disaster-id{font-family:Roboto Mono,monospace;font-size:.8rem}.meta-value.confidence-score{color:var(--safe-green);font-weight:700}.scenario-context{align-items:flex-start;animation:slideIn .5s ease-out;background:linear-gradient(135deg,#667eea26,#764ba21a);border-left:3px solid #667eea;border-radius:4px;display:flex;gap:.75rem;margin-top:1rem;padding:.75rem 1rem}.context-icon{flex-shrink:0;font-size:1.25rem}.context-text{color:#ffffffe6;font-size:.8rem;line-height:1.5}.context-text strong{color:#a8b3ff;font-weight:600}.plan-content{flex:1 1;overflow-y:auto;padding:0}.plan-content-grid{grid-gap:1.5rem;background:var(--panel-bg);display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);padding:2rem}.plan-section{background:var(--card-bg);border-bottom:1px solid var(--border);border-radius:8px;padding:2rem}.plan-section:last-child{border-bottom:none}.plan-content-grid .plan-section{border-bottom:none;margin:0}.plan-content-grid>div:last-child,.plan-content-grid>div:nth-child(2),.plan-content-grid>section:first-child{grid-column:1/-1}.plan-content-grid>div:nth-child(3),.plan-content-grid>div:nth-child(4){grid-column:span 1}.plan-section h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0 0 1rem}.plan-section.placeholder{background:#ffffff05}.plan-section.placeholder pre{background:#1a1a1a;border-radius:4px;color:var(--text-secondary);font-size:.75rem;overflow-x:auto;padding:1rem}.plan-content{scroll-behavior:smooth}.plan-content::-webkit-scrollbar{width:8px}.plan-content::-webkit-scrollbar-track{background:var(--panel-bg)}.plan-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.plan-content::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width:1400px){.plan-content-grid{grid-template-columns:1fr}.plan-content-grid>div:last-child,.plan-content-grid>div:nth-child(2),.plan-content-grid>div:nth-child(3),.plan-content-grid>div:nth-child(4),.plan-content-grid>section:first-child{grid-column:1}}@media (max-width:768px){.plan-content-grid{gap:1rem;padding:1rem}.plan-section{padding:1.5rem}.plan-header-compact{padding:1rem}.plan-meta-compact{flex-wrap:wrap;gap:.75rem}}.executive-summary{animation:slideIn .5s ease-out;background:linear-gradient(180deg,#ff44440d,#0000)}.executive-summary.historical{background:linear-gradient(90deg,#667eea14,#ff44440d,#0000);border-left:4px solid #667eea}.critical-recommendations-section.historical{background:linear-gradient(90deg,#667eea0d,#0000);border-left:4px solid #667eea}.executive-summary-compact{background:#0000!important;padding:1.5rem!important}.executive-summary-compact.historical{border-left:3px solid #667eea;padding-left:1.25rem!important}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.historical-indicator{align-items:center;background:#667eea1a;border:1px solid #667eea4d;border-radius:6px;display:flex;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.indicator-icon{flex-shrink:0;font-size:1.25rem}.indicator-text{color:#a8b3ff;font-size:.8125rem;font-weight:600;letter-spacing:.02em}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.copy-button{background:#667eea33;border:1px solid #667eea;border-radius:4px;color:#667eea;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s ease}.copy-button:hover{background:#667eea4d}.copy-button.copied{background:#4caf5033;border-color:var(--safe-green);color:var(--safe-green)}.critical-alert{animation:pulse 2s ease-in-out infinite;background:#ff44441a;border:2px solid var(--danger-red);border-radius:8px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.executive-summary-compact .critical-alert{margin-bottom:1rem;padding:1rem}.executive-summary-compact .alert-icon{font-size:1.5rem}.executive-summary-compact .alert-title{font-size:.875rem;margin-bottom:.25rem}.executive-summary-compact .alert-text{font-size:.875rem;line-height:1.5}.alert-icon{flex-shrink:0;font-size:2rem}.alert-content{flex:1 1}.alert-title{color:var(--danger-red);font-size:1rem;font-weight:700;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.alert-text{color:var(--text-primary);font-size:1rem;line-height:1.6;margin:0}.executive-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.executive-stats-compact{gap:.75rem;grid-template-columns:1fr;margin-bottom:0}.executive-stats-compact .stat-card{padding:1rem}.executive-stats-compact .stat-icon,.executive-stats-compact .stat-value{font-size:1.5rem}.executive-stats-compact .stat-label{font-size:.75rem}.executive-stats-compact .stat-detail{display:none}.stat-card{background:var(--card-bg);border-left:4px solid;border-radius:8px;display:flex;gap:1rem;padding:1.25rem;transition:transform .2s ease}.stat-card:hover{transform:translateY(-2px)}.stat-card.critical{background:linear-gradient(135deg,#ff44441a,var(--card-bg));border-left-color:var(--danger-red)}.stat-card.warning{background:linear-gradient(135deg,#ff95001a,var(--card-bg));border-left-color:var(--warning-orange)}.stat-card.info{background:linear-gradient(135deg,#2196f31a,var(--card-bg));border-left-color:var(--info-blue)}.stat-icon{flex-shrink:0;font-size:2rem}.stat-content{display:flex;flex-direction:column;gap:.25rem}.stat-value{font-size:1.75rem;line-height:1}.stat-label{font-size:.875rem;font-weight:600}.stat-detail{color:var(--text-secondary);font-size:.75rem}.recommendations{background:#667eea0d;border:1px solid #667eea33;border-radius:8px;padding:1.5rem}.recommendations-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.recommendations-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.recommendation-item{align-items:center;background:var(--card-bg);border-left:3px solid;border-radius:4px;display:flex;gap:.75rem;padding:.75rem}.recommendation-item.priority-critical{border-left-color:var(--danger-red)}.recommendation-item.priority-high{border-left-color:var(--warning-orange)}.recommendation-item.priority-moderate{border-left-color:var(--info-blue)}.priority-badge{border-radius:3px;flex-shrink:0;font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.priority-critical .priority-badge{background:var(--danger-red);color:#fff}.priority-high .priority-badge{background:var(--warning-orange);color:#fff}.priority-moderate .priority-badge{background:var(--info-blue);color:#fff}.critical-recommendations-section{background:var(--card-bg);border-radius:8px;padding:2rem}.recommendations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.recommendation-card{background:var(--panel-bg);border-left:4px solid;border-radius:8px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .3s ease}.recommendation-card:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.recommendation-card.priority-critical{background:linear-gradient(135deg,#ff44440d,var(--panel-bg));border-left-color:var(--danger-red)}.recommendation-card.priority-high{background:linear-gradient(135deg,#ff95000d,var(--panel-bg));border-left-color:var(--warning-orange)}.recommendation-card.priority-moderate{background:linear-gradient(135deg,#2196f30d,var(--panel-bg));border-left-color:var(--info-blue)}.recommendation-header{align-items:center;display:flex;gap:.75rem}.recommendation-title{color:var(--text-primary);flex:1 1;font-size:1.125rem;font-weight:600}.recommendation-description{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.recommendation-card .priority-badge{font-size:.75rem;padding:.375rem .75rem}@media (max-width:1400px){.recommendations-grid{grid-template-columns:1fr}}@media (max-width:1200px){.executive-stats{grid-template-columns:1fr}.recommendations-grid{gap:1rem}.recommendation-card{padding:1.25rem}}@media (max-width:768px){.critical-recommendations-section{padding:1.5rem}}.timeline-section{background:#0003}.no-data{color:var(--text-secondary);font-style:italic}.spread-rate-banner{align-items:center;background:linear-gradient(135deg,#f443,#ff95001a);border-left:4px solid var(--danger-red);border-radius:8px;display:flex;gap:1rem;margin-bottom:2rem;padding:1rem 1.5rem}.spread-icon{font-size:2rem}.spread-content{display:flex;flex-direction:column;gap:.25rem}.spread-label{color:var(--text-secondary);font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}.spread-value{color:var(--danger-red);font-size:1.75rem;font-weight:700}.timeline{margin:2rem 0;padding:1rem 0;position:relative}.timeline-event{animation:slideInLeft .5s ease-out forwards;display:flex;gap:1.5rem;margin-bottom:2rem;opacity:0}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.timeline-marker{flex-shrink:0}.marker-time,.timeline-marker{align-items:center;display:flex;flex-direction:column}.marker-time{background:var(--card-bg);border:3px solid;border-radius:50%;box-shadow:0 4px 12px #0000004d;height:80px;justify-content:center;width:80px}.timeline-event.critical .marker-time{background:linear-gradient(135deg,#f443,var(--card-bg));border-color:var(--danger-red)}.timeline-event.warning .marker-time{background:linear-gradient(135deg,#ff950033,var(--card-bg));border-color:var(--warning-orange)}.timeline-event.info .marker-time{background:linear-gradient(135deg,#2196f333,var(--card-bg));border-color:var(--info-blue)}.time-value{color:var(--text-primary);font-size:2rem;font-weight:700;line-height:1}.time-unit{color:var(--text-secondary);font-size:.75rem;text-transform:uppercase}.marker-line{background:linear-gradient(to bottom,var(--border),#0000);height:40px;width:2px}.timeline-event:last-child .marker-line{display:none}.timeline-content{background:var(--card-bg);border-left:3px solid;border-radius:8px;flex:1 1;padding:1rem 1.5rem}.timeline-event.critical .timeline-content{border-left-color:var(--danger-red)}.timeline-event.warning .timeline-content{border-left-color:var(--warning-orange)}.timeline-event.info .timeline-content{border-left-color:var(--info-blue)}.event-location{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .75rem}.event-meta{display:flex;flex-wrap:wrap;gap:.5rem}.confidence-badge{border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.confidence-badge.confidence-high{background:#4caf5033;color:var(--safe-green)}.confidence-badge.confidence-medium{background:#ff950033;color:var(--warning-orange)}.confidence-badge.confidence-low{background:#667eea33;color:var(--info-blue)}.urgent-badge{background:#f443;border:1px solid var(--danger-red);border-radius:4px;color:var(--danger-red);font-size:.75rem;font-weight:600;padding:.25rem .75rem}.prediction-factors{background:#0003;border-radius:8px;margin-top:2rem;padding:1.5rem}.factors-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.factors-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.factor-card{align-items:center;background:var(--card-bg);border-radius:6px;display:flex;gap:.75rem;padding:1rem;transition:transform .2s ease}.factor-card:hover{transform:translateY(-2px)}.factor-icon{font-size:1.5rem}.factor-content{display:flex;flex-direction:column;gap:.25rem}.factor-label{color:var(--text-secondary);font-size:.75rem}.factor-value{color:var(--text-primary);font-size:1.125rem;font-weight:600}.timeline-note{align-items:flex-start;background:#667eea1a;border-left:3px solid var(--info-blue);border-radius:4px;display:flex;gap:.75rem;margin-top:2rem;padding:1rem}.note-icon{flex-shrink:0;font-size:1.25rem}.timeline-note p{color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0}@media (max-width:1200px){.factors-grid{grid-template-columns:repeat(2,1fr)}.timeline-event{flex-direction:column;gap:1rem}.marker-line{background:linear-gradient(to right,var(--border),#0000);height:2px;width:40px}}.resource-section{background:#0000001a}.resource-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:2rem}.resource-card{background:var(--card-bg);border-left:4px solid;border-radius:8px;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s ease}.resource-card:hover{transform:translateY(-2px)}.resource-card.sufficient{border-left-color:var(--safe-green)}.resource-card.marginal{border-left-color:var(--warning-orange)}.resource-card.insufficient{border-left-color:var(--danger-red)}.resource-icon{font-size:2.5rem}.resource-content{flex:1 1}.resource-type{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .5rem}.resource-numbers{align-items:baseline;display:flex;gap:.5rem;margin-bottom:.5rem}.required-count{color:var(--text-primary);font-size:2rem;font-weight:700}.separator{color:var(--text-muted);font-size:1.5rem}.available-count{color:var(--text-secondary);font-size:2rem;font-weight:700}.resource-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;justify-content:space-between}.status-badge{border-radius:3px;font-weight:600;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.status-badge.sufficient{background:#4caf5033;color:var(--safe-green)}.status-badge.marginal{background:#ff950033;color:var(--warning-orange)}.status-badge.insufficient{background:#f443;color:var(--danger-red)}.resource-gaps-alert{background:#ff44441a;border:2px solid var(--danger-red);border-radius:8px;display:flex;gap:1rem;margin-bottom:2rem;padding:1.5rem}.gaps-icon{flex-shrink:0;font-size:2rem}.gaps-content h4{color:var(--danger-red);font-size:1rem;font-weight:600;margin:0 0 .75rem}.gaps-list{color:var(--text-primary);margin:0 0 1rem;padding-left:1.5rem}.gaps-list li{line-height:1.6;margin-bottom:.5rem}.gaps-recommendation{background:#ff95001a;border-left:3px solid var(--warning-orange);border-radius:4px;color:var(--text-primary);font-size:.875rem;margin:0;padding:.75rem}.deployment-section{margin-top:2rem}.deployment-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.deployment-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.deployment-card{background:var(--card-bg);border-left:3px solid;border-radius:6px;padding:1rem}.deployment-card.fire-station{border-left-color:#ff6b6b}.deployment-card.hospital{border-left-color:#4caf50}.deployment-card.police{border-left-color:#2196f3}.deployment-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.deployment-icon{font-size:1.5rem}.deployment-name{color:var(--text-primary);font-weight:600}.deployment-details{display:flex;flex-direction:column;font-size:.875rem;gap:.25rem}.deployment-resources{color:var(--text-primary)}.deployment-coords{color:var(--text-muted);font-family:Roboto Mono,monospace;font-size:.75rem}.mutual-aid-section{background:#667eea1a;border-radius:8px;margin-top:2rem;padding:1.5rem}.mutual-aid-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.mutual-aid-list{display:flex;flex-direction:column;gap:.75rem}.mutual-aid-item{align-items:center;background:var(--card-bg);border-radius:4px;display:flex;justify-content:space-between;padding:.75rem 1rem}.municipality-name{color:var(--text-primary);font-weight:600}.requested-resources{color:var(--text-secondary);font-size:.875rem}@media (max-width:1200px){.deployment-grid,.resource-summary{grid-template-columns:1fr}}.templates-section{background:linear-gradient(180deg,#667eea0d,#0000)}.templates-description{color:var(--text-secondary);line-height:1.6;margin:0 0 2rem}.ready-badge{background:#4caf5033;border:1px solid var(--safe-green);border-radius:4px;color:var(--safe-green);font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:.5rem 1rem}.communication-section{background:linear-gradient(180deg,#667eea0d,#0000)}.section-description{color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin-bottom:1.5rem}.templates-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr;margin-bottom:2rem}.template-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:1.5rem;transition:transform .2s ease,border-color .2s ease}.template-card:hover{border-color:#667eea;transform:translateY(-2px)}.template-card.punjabi .template-content{font-family:Noto Sans Gurmukhi,Segoe UI,sans-serif;font-size:1.1rem;line-height:1.8}.template-card.hindi .template-content{font-family:Noto Sans Devanagari,Segoe UI,sans-serif;font-size:1.1rem;line-height:1.8}.template-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.language-info{align-items:center;display:flex;gap:.75rem}.language-flag{font-size:1.75rem}.language-name{color:var(--text-primary);font-size:1rem;font-weight:600}.language-description{color:var(--text-muted);font-size:.75rem;margin:0}.template-copy-btn{background:#667eea33;border:1px solid #667eea;border-radius:4px;color:#667eea;cursor:pointer;flex-shrink:0;font-size:1rem;padding:.5rem .75rem;transition:all .2s ease}.template-copy-btn:hover{background:#667eea4d;transform:scale(1.05)}.template-copy-btn.copied{background:#4caf5033;border-color:var(--safe-green);color:var(--safe-green)}.template-content{flex:1 1;padding:1.25rem}.template-text-wrapper{background:#0003;border-radius:4px;max-height:200px;min-height:120px;overflow-y:auto;padding:.5rem}.template-text{word-wrap:break-word;color:var(--text-primary);font-size:.9rem;line-height:1.8;margin:0}.template-text[lang=hi],.template-text[lang=pa]{font-size:1rem;line-height:2}.template-footer{background:#0000001a;border-top:1px solid var(--border);padding:1rem 1.25rem}.template-stats{align-items:center;display:flex;font-size:.75rem;justify-content:space-between}.char-count{color:var(--text-secondary)}.count-number{color:var(--text-primary);font-weight:700}.sms-status{border-radius:3px;font-weight:600;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.sms-status.optimal{background:#4caf5033;color:var(--safe-green)}.sms-status.acceptable{background:#ff950033;color:var(--warning-orange)}.sms-status.warning{background:#f443;color:var(--danger-red)}.deployment-instructions{background:#0003;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.instructions-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.channels-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.channel-item{align-items:center;background:var(--card-bg);border-radius:6px;display:flex;flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.channel-icon{font-size:1.5rem}.channel-name{color:var(--text-primary);font-size:.875rem;font-weight:500}.channel-status{border-radius:3px;font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.channel-status.ready{background:#4caf5033;color:var(--safe-green)}.demographics-note{align-items:flex-start;background:#667eea1a;border-left:3px solid var(--info-blue);border-radius:4px;display:flex;gap:.75rem;padding:1rem}.demographics-note .note-icon{flex-shrink:0;font-size:1.25rem}.demographics-note p{color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0}@media (max-width:1400px){.templates-grid{grid-template-columns:1fr}.channels-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.channels-grid{grid-template-columns:1fr}.template-header{align-items:flex-start;flex-direction:column;gap:.75rem}}.population-section{background:linear-gradient(180deg,#2196f30d,#0000)}.impact-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.affected-area-card,.total-affected-card,.vulnerable-card{align-items:center;background:var(--card-bg);border-left:4px solid;border-radius:8px;display:flex;gap:1rem;padding:1.5rem}.total-affected-card{background:linear-gradient(135deg,#2196f31a,var(--card-bg));border-left-color:var(--info-blue)}.affected-area-card{background:linear-gradient(135deg,#ff95001a,var(--card-bg));border-left-color:var(--warning-orange)}.vulnerable-card{background:linear-gradient(135deg,#ff44441a,var(--card-bg));border-left-color:var(--danger-red)}.area-icon,.total-icon,.vulnerable-icon{flex-shrink:0;font-size:2.5rem}.area-content,.total-content,.vulnerable-content{display:flex;flex-direction:column;gap:.25rem}.area-value,.total-value,.vulnerable-value{color:var(--text-primary);font-size:2rem;font-weight:700;line-height:1}.area-label,.total-label,.vulnerable-label{color:var(--text-secondary);font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}.vulnerable-percentage{color:var(--danger-red);font-size:.75rem;font-weight:600}.affected-neighborhoods,.critical-facilities,.language-demographics,.response-priorities,.vulnerable-breakdown{border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.subsection-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.subsection-description{color:var(--text-secondary);font-size:.875rem;line-height:1.6;margin:0 0 1.5rem}.vulnerable-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.vulnerable-item{background:var(--card-bg);border-left:4px solid;border-radius:8px;padding:1.5rem;transition:transform .2s ease}.vulnerable-item:hover{transform:translateY(-2px)}.vulnerable-item.elderly{border-left-color:#9c27b0}.vulnerable-item.children{border-left-color:#ff9800}.vulnerable-item.disabled{border-left-color:#2196f3}.vulnerable-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.vulnerable-item-icon{font-size:2rem}.vulnerable-item-count{color:var(--text-primary);font-size:1.75rem;font-weight:700}.vulnerable-item-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .5rem}.vulnerable-item-note{color:var(--text-secondary);font-size:.8rem;line-height:1.5;margin:0}.language-bars{gap:1rem}.language-bar-item,.language-bars{display:flex;flex-direction:column}.language-bar-item{gap:.5rem}.language-bar-header{align-items:center;display:flex;justify-content:space-between}.language-bar-name{color:var(--text-primary);font-weight:600;text-transform:capitalize}.language-bar-stats{color:var(--text-secondary);font-size:.875rem}.language-bar-track{background:#0000004d;border-radius:12px;height:24px;overflow:hidden}.language-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:12px;height:100%;transition:width .8s ease-out}.facilities-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.facility-card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;display:flex;gap:1rem;padding:1.25rem;transition:transform .2s ease,border-color .2s ease}.facility-card:hover{border-color:var(--warning-orange);transform:translateY(-2px)}.facility-icon{flex-shrink:0;font-size:2rem}.facility-content{display:flex;flex-direction:column;gap:.25rem}.facility-name{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.facility-type{color:var(--warning-orange);font-size:.75rem;font-weight:600;letter-spacing:.05em;margin:0}.facility-population{color:var(--text-primary);font-size:.875rem;margin:.25rem 0 0}.facility-coords{color:var(--text-muted);font-family:Roboto Mono,monospace;font-size:.75rem;margin:.25rem 0 0}.neighborhoods-list{display:flex;flex-wrap:wrap;gap:.75rem}.neighborhood-badge{background:#667eea33;border:1px solid #667eea;border-radius:6px;color:#667eea;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.priorities-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.priorities-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.priority-item{align-items:center;background:var(--card-bg);border-left:3px solid var(--info-blue);border-radius:6px;display:flex;gap:1rem;padding:1rem}.priority-number{align-items:center;background:var(--info-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:32px;justify-content:center;width:32px}.priority-text{color:var(--text-primary);line-height:1.6}@media (max-width:1400px){.facilities-grid,.impact-summary,.vulnerable-grid{grid-template-columns:1fr}}.disaster-trigger{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.trigger-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:1rem;position:relative}.mode-selector{background:#667eea1a;border:1px solid #667eea4d;border-radius:6px;display:flex;gap:1rem;padding:.5rem}.mode-selector label{align-items:center;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.25rem .5rem;transition:all .2s ease}.mode-selector label:hover{background:#667eea33;color:var(--text-primary)}.mode-selector input[type=radio]{accent-color:#667eea}.mode-selector input[type=radio]:checked+span{color:#667eea;font-weight:500}.trigger-header h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.info-button{align-items:center;background:#667eea33;border:1px solid #667eea;border-radius:50%;color:#667eea;cursor:pointer;display:flex;font-size:1rem;height:28px;justify-content:center;transition:all .2s ease;width:28px}.info-button:hover{background:#667eea4d;transform:scale(1.1)}.scenario-tooltip{animation:tooltipAppear .2s ease-out;background:#2d2d2d;border:1px solid #667eea;border-radius:8px;box-shadow:0 8px 24px #0009;margin-top:.5rem;padding:1rem;position:absolute;right:0;top:100%;width:350px;z-index:1000}@keyframes tooltipAppear{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.scenario-tooltip h4{color:#667eea;font-size:1rem;margin:0 0 .5rem}.scenario-tooltip p{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 .75rem}.scenario-tooltip p:last-child{margin-bottom:0}.tooltip-highlight{background:#667eea1a;border-left:3px solid #667eea;border-radius:4px;color:var(--text-primary)!important;font-weight:500;padding:.5rem}.trigger-error{align-items:center;background:#ff44441a;border:1px solid var(--danger-red);border-radius:4px;color:var(--danger-red);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem .75rem}.error-icon{font-size:1rem}.trigger-controls{display:flex;flex-direction:column;gap:1rem}.trigger-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;gap:1rem;overflow:hidden;padding:1.25rem 1.5rem;position:relative;transition:all .3s ease}.trigger-button:hover:not(:disabled){box-shadow:0 8px 24px #667eea66;transform:translateY(-2px)}.trigger-button:disabled{cursor:not-allowed;opacity:.6}.trigger-button.july-2020{background:linear-gradient(135deg,#f44336,#ff9800)}.trigger-button.july-2020.real-apis-mode{background:linear-gradient(135deg,#f44336,#9c27b0);border:2px solid #ffeb3b}.trigger-button.july-2020:hover:not(:disabled){box-shadow:0 8px 24px #f4433666}.trigger-button.july-2020.real-apis-mode:hover:not(:disabled){box-shadow:0 8px 24px #f4433699}.trigger-button.march-2022{background:linear-gradient(135deg,#e91e63,#9c27b0)}.trigger-button.march-2022.real-apis-mode{background:linear-gradient(135deg,#e91e63,#673ab7);border:2px solid #ffeb3b}.trigger-button.march-2022:hover:not(:disabled){box-shadow:0 8px 24px #e91e6366}.trigger-button.march-2022.real-apis-mode:hover:not(:disabled){box-shadow:0 8px 24px #e91e6399}.button-icon{flex-shrink:0;font-size:2rem}.button-content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:.25rem}.button-title{font-size:1.125rem;font-weight:700}.button-subtitle{font-size:.875rem;font-weight:400;opacity:.9}.button-spinner{animation:spin 2s linear infinite;font-size:1.5rem}.advanced-options{margin-top:.5rem}.advanced-options summary{color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.5rem;-webkit-user-select:none;user-select:none}.advanced-options summary:hover{color:var(--text-primary)}.generic-trigger{background:#0003;border-radius:6px;display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem;padding:1rem}.generic-trigger select{background:var(--card-bg);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.875rem;padding:.5rem}.trigger-button.generic{background:linear-gradient(135deg,#607d8b,#455a64);font-size:.875rem;padding:.75rem 1rem}.trigger-button.generic.real-apis-mode{background:linear-gradient(135deg,#00bcd4,#009688);border:2px solid #ffeb3b}.trigger-disclaimer{align-items:center;background:#ffeb3b1a;border:1px solid #ffeb3b;border-radius:4px;display:flex;gap:.5rem;margin-top:1rem;padding:.75rem 1rem}.disclaimer-icon{font-size:1.25rem}.disclaimer-text{color:var(--text-secondary);font-size:.875rem;font-weight:500}.coordinate-analysis{margin-top:1rem}.toggle-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:space-between;padding:.75rem 1rem;transition:all .3s ease;width:100%}.toggle-button:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.toggle-button:disabled{cursor:not-allowed;opacity:.6}.toggle-button.active{background:linear-gradient(135deg,#764ba2,#667eea)}.toggle-button .button-icon{font-size:1.2rem;margin-right:.5rem}.toggle-button .button-text{flex:1 1;text-align:left}.toggle-button .toggle-icon{font-size:.8rem;margin-left:.5rem}.coordinate-form{animation:slideDown .3s ease;background:linear-gradient(135deg,#f5f7fa,#e8ecf1);border:2px solid #667eea;border-radius:12px;margin-top:1rem;padding:1.5rem}.form-header{margin-bottom:1.5rem;text-align:center}.form-header h4{color:#2d3748;font-size:1.2rem;margin:0 0 .5rem}.form-description{color:#64748b;font-size:.9rem;line-height:1.4;margin:0}.form-error{align-items:center;background:#fee;border:1px solid #fcc;border-radius:6px;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.form-error .error-icon{font-size:1.2rem}.form-error .error-text{color:#c33;flex:1 1;font-size:.9rem}.form-section{margin-bottom:1.25rem}.form-label{color:#2d3748;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.label-hint{color:#94a3b8;font-size:.85rem;font-weight:400;margin-left:.5rem}.preset-buttons{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.preset-button{background:#fff;border:2px solid #cbd5e1;border-radius:6px;color:#475569;cursor:pointer;font-size:.85rem;font-weight:500;padding:.6rem;transition:all .2s ease}.preset-button:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-1px)}.preset-button:disabled{cursor:not-allowed;opacity:.5}.form-input,.form-select{background:#fff;border:2px solid #cbd5e1;border-radius:6px;color:#2d3748;font-size:.95rem;padding:.75rem;transition:all .2s ease;width:100%}.form-input:focus,.form-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input:disabled,.form-select:disabled{background:#f1f5f9;cursor:not-allowed}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-actions{margin-top:1.5rem}.submit-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;box-shadow:0 2px 8px #10b9814d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .3s ease;width:100%}.submit-button:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.submit-button .spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.form-footer{align-items:center;background:#667eea1a;border-radius:6px;display:flex;gap:.5rem;margin-top:1rem;padding:.75rem}.footer-icon{flex-shrink:0;font-size:1rem}.footer-text{color:#475569;font-size:.85rem;line-height:1.4}@media (max-width:768px){.form-row,.preset-buttons{grid-template-columns:1fr}.coordinate-form{padding:1rem}}.progress-bar-wrapper{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-bottom:2px solid #667eea4d;padding:1.5rem 2rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.progress-bar-container{margin:0 auto;max-width:1200px}.progress-bar-track{background:#0000004d;box-shadow:inset 0 2px 8px #0000004d;height:32px;margin-bottom:1rem;width:100%}.progress-bar-fill,.progress-bar-track{border-radius:16px;overflow:hidden;position:relative}.progress-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.progress-bar-glow{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-bar-fill.starting{background:linear-gradient(90deg,#667eea,#764ba2)}.progress-bar-fill.processing{background:linear-gradient(90deg,#667eea,#2196f3)}.progress-bar-fill.analyzing{background:linear-gradient(90deg,#2196f3,#00bcd4)}.progress-bar-fill.finalizing{background:linear-gradient(90deg,#00bcd4,#4caf50)}.progress-markers{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.marker{color:#ffffff80;font-size:.7rem;font-weight:600;position:absolute;top:50%;transform:translate(-50%,-50%)}.progress-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.progress-left{align-items:baseline;display:flex;gap:1rem}.progress-percentage{font-feature-settings:"tnum";color:var(--text-primary);font-size:2rem;font-variant-numeric:tabular-nums;font-weight:700}.progress-message{color:var(--text-secondary);font-size:1rem}.progress-timer{color:var(--text-secondary);font-size:.875rem;font-weight:500}.progress-phases{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.phase-indicator{align-items:center;background:#0003;border:2px solid #0000;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;opacity:.5;padding:1rem;transition:all .3s ease}.phase-indicator.active{background:#667eea1a;border-color:#667eea80;opacity:1}.phase-indicator.complete{background:#4caf501a;border-color:var(--safe-green)}.phase-indicator.complete .phase-icon{animation:bounce .5s ease}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.phase-icon{font-size:2rem;transition:transform .3s ease}.phase-label{color:var(--text-primary);font-size:.875rem;font-weight:500;text-align:center}.phase-indicator.active .phase-icon{animation:pulse 2s ease-in-out infinite}.api-status-container{border-top:1px solid #ffffff1a;margin-top:1.5rem;padding-top:1.5rem}.api-status-container h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.api-status-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.api-status-item{align-items:center;background:#0003;border:1px solid #ffffff1a;border-radius:6px;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem}.api-status-item.fetching{background:#667eea1a;border-color:#667eea80}.api-status-item.success{background:#4caf501a;border-color:var(--safe-green)}.api-status-item.fallback{background:#ffeb3b1a;border-color:var(--warning-yellow)}.api-status-icon{flex-shrink:0;font-size:1rem}.api-status-name{color:var(--text-primary);flex:1 1;font-weight:500}.api-status-error{color:var(--warning-yellow);font-size:.75rem;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.api-status-grid{grid-template-columns:1fr}.api-status-item{font-size:.8rem}}@media (max-width:1200px){.progress-phases{grid-template-columns:repeat(2,1fr)}.progress-info{align-items:flex-start;flex-direction:column;gap:.5rem}}.dashboard{background:var(--dark-bg);display:flex;flex-direction:column;min-height:calc(100vh - 80px)}.control-bar{grid-gap:2rem;align-items:start;background:var(--card-bg);border-bottom:1px solid var(--border);display:grid;gap:2rem;grid-template-columns:auto 1fr auto;min-height:60px;padding:1rem 2rem}.control-section{align-items:center;display:flex;gap:1rem}.control-section-wide{display:flex;flex-direction:column;gap:0;min-width:400px}.control-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0}.location-badge{background:#667eea33;border:1px solid #667eea;border-radius:4px;color:#667eea;font-size:.875rem;padding:.25rem .75rem}.status-indicator{align-items:center;border-radius:4px;display:flex;gap:.5rem;padding:.5rem 1rem}.status-indicator.connected{background:#4caf501a}.status-indicator.disconnected{background:#ff44441a}.status-dot{animation:pulse 2s ease-in-out infinite;border-radius:50%;height:8px;width:8px}.status-dot.ready{background:var(--safe-green)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-size:.875rem;font-weight:500}.status-indicator.connected .status-text{color:var(--safe-green)}.socket-id{font-family:monospace}.websocket-ready-badge{background:#4caf501a;font-size:.875rem;margin-top:1rem;padding:.5rem 1rem}.error-banner{align-items:center;background:#f443;border-bottom:2px solid var(--danger-red);display:flex;gap:1rem;padding:1rem 2rem}.error-icon{font-size:1.5rem}.error-message{color:var(--danger-red);flex:1 1;font-weight:500}.error-dismiss{background:#0000;border:1px solid var(--danger-red);border-radius:4px;color:var(--danger-red);cursor:pointer;padding:.5rem 1rem;transition:all .2s ease}.error-dismiss:hover{color:#fff}.error-dismiss:hover,.status-indicator.disconnected .status-dot{background:var(--danger-red)}.status-indicator.disconnected .status-text{color:var(--danger-red)}.main-content{grid-gap:0;border-top:1px solid var(--border);display:grid;flex:1 1;gap:0;grid-template-columns:1.5fr 1fr;grid-template-rows:auto auto;min-height:600px}.map-panel{background:var(--card-bg);border-right:1px solid var(--border);grid-column:1;min-height:650px;overflow:hidden}.map-panel,.plan-panel{border-bottom:1px solid var(--border);grid-row:1;max-height:750px;position:relative}.plan-panel{background:var(--panel-bg);grid-column:2;overflow-y:auto;padding:0}.plan-panel-bottom{background:var(--dark-bg);grid-column:1/-1;grid-row:2;overflow-y:auto;padding:0}.plan-panel .empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:600px;padding:2rem;text-align:center}.empty-state-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h2{color:var(--text-primary);font-size:1.5rem;margin:0 0 .5rem}.empty-state p{color:var(--text-secondary);line-height:1.6;margin:0 0 2rem;max-width:400px}.empty-state-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin-top:2rem}.stat-item{display:flex;flex-direction:column;gap:.5rem}.stat-value{color:var(--text-primary);font-size:2rem;font-weight:700}.stat-label{color:var(--text-secondary);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.websocket-ready-badge{background:#4caf5033;border:1px solid var(--safe-green);border-radius:4px;color:var(--safe-green);font-weight:500;margin-top:2rem;padding:.75rem 1.5rem}.socket-id{color:var(--text-muted);font-family:Roboto Mono,monospace;font-size:.75rem}.plan-panel-bottom{border-top:1px solid var(--border)}@media (max-width:1400px){.main-content{grid-template-columns:1fr 1fr}}@media (max-width:1200px){.main-content{grid-template-columns:1fr;grid-template-rows:auto auto auto}.map-panel{grid-row:1;max-height:500px}.map-panel,.plan-panel{border-bottom:1px solid var(--border);border-right:none;grid-column:1}.plan-panel{grid-row:2;max-height:400px}.plan-panel-bottom{grid-column:1;grid-row:3}}@media (max-width:768px){.control-bar{flex-direction:column;gap:1rem;padding:1rem}.plan-content-grid{grid-template-columns:1fr!important}.plan-content-grid>div:first-child,.plan-content-grid>div:last-child{grid-column:1!important}}.cached-mode-banner{align-items:center;background:#667eea26;border-bottom:2px solid #667eea;display:flex;gap:.75rem;justify-content:center;padding:.75rem 2rem}.cached-mode-banner .banner-icon{font-size:1.25rem}.cached-mode-banner .banner-text{color:#667eea;font-size:.875rem;font-weight:500}:root{--danger-red:#f44;--warning-orange:#ff9500;--safe-green:#4caf50;--info-blue:#2196f3;--dark-bg:#1a1a1a;--card-bg:#2d2d2d;--text-primary:#fff;--text-secondary:#b0b0b0;--border:#444}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a1a1a;background:var(--dark-bg);color:#fff;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #0000004d;padding:1.5rem 2rem}.app-header h1{color:#fff;font-size:2rem;font-weight:700;margin:0}.subtitle{color:#fff;font-size:1rem;margin:.5rem 0;opacity:.9}.disclaimer{background:#ff03;border:2px solid #ffeb3b;border-radius:4px;color:#1a1a1a;display:inline-block;font-weight:600;margin-top:1rem;padding:.75rem 1rem}@media (max-width:768px){.app-header{padding:1rem}.app-header h1{font-size:1.5rem}.subtitle{font-size:.9rem}.disclaimer{font-size:.85rem;padding:.5rem .75rem}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#1a1a1a;background:var(--dark-bg)}::-webkit-scrollbar-thumb{background:#444;background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}
/*# sourceMappingURL=main.a6875b8e.css.map*/