:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;color:#e8e8e8;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--secondary-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--accent-gradient: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1)}#root{width:100%;height:100vh;margin:0;padding:0}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;width:100%;height:100vh;overflow:hidden;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);background-attachment:fixed}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.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-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.3335 11.6666C3.3335 12.5871 4.07969 13.3333 5.00016 13.3333C5.92064 13.3333 6.66683 12.5871 6.66683 11.6666L6.66683 6.66659L11.6668 6.66659C12.5873 6.66659 13.3335 5.92039 13.3335 4.99992C13.3335 4.07944 12.5873 3.33325 11.6668 3.33325H3.3335V11.6666Z' fill='currentColor'/%3E%3Cpath d='M26.6668 11.6666C26.6668 12.5871 25.9206 13.3333 25.0002 13.3333C24.0797 13.3333 23.3335 12.5871 23.3335 11.6666L23.3335 6.66659L18.3335 6.66659C17.413 6.66659 16.6668 5.92039 16.6668 4.99992C16.6668 4.07944 17.413 3.33325 18.3335 3.33325H26.6668L26.6668 11.6666Z' fill='currentColor'/%3E%3Cpath d='M13.3335 24.9999C13.3335 25.9204 12.5873 26.6666 11.6668 26.6666H3.3335V18.3333C3.3335 17.4128 4.07969 16.6666 5.00016 16.6666C5.92064 16.6666 6.66683 17.4128 6.66683 18.3333V23.3333H11.6668C12.5873 23.3333 13.3335 24.0794 13.3335 24.9999Z' fill='currentColor'/%3E%3Cpath d='M18.3335 26.6666C17.413 26.6666 16.6668 25.9204 16.6668 24.9999C16.6668 24.0794 17.413 23.3333 18.3335 23.3333H23.3335V18.3333C23.3335 17.4128 24.0797 16.6666 25.0002 16.6666C25.9206 16.6666 26.6668 17.4128 26.6668 18.3333V26.6666H18.3335Z' 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 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: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}.app{position:relative;width:100vw;height:100vh;overflow:hidden;background:#0a0e27;padding-top:58px}.top-bar{position:fixed;top:0;left:0;right:0;height:58px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#040a21f2,#060f34e6);border-bottom:1px solid rgba(100,255,218,.2);z-index:9000}.top-bar-left{display:flex;align-items:center;gap:16px}.top-bar-right{margin-left:auto;display:flex;align-items:center;gap:12px;padding-right:16px;min-width:fit-content;flex-shrink:0}.brand{font-weight:800;letter-spacing:.6px;color:#64ffda;text-shadow:0 2px 8px rgba(100,255,218,.4)}.top-bar-tabs{display:flex;gap:6px}.tab{padding:8px 12px;border-radius:10px;color:#ffffffbf;background:#ffffff0a;font-size:12px;cursor:pointer;text-decoration:none;display:inline-block}.tab:hover{background:#ffffff14}.tab.active{background:linear-gradient(135deg,#64ffda,#00bcd4);color:#041021;font-weight:700;box-shadow:0 10px 24px #00bcd459}.map-legend{position:absolute;top:78px;right:20px;background:#fffffff2;padding:10px 12px;border-radius:6px;box-shadow:0 2px 8px #00000026;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;z-index:1000;min-width:180px;max-width:220px}.info-button{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#64ffda,#00bcd4);color:#041021;border:none;padding:10px 14px;border-radius:12px;font-weight:700;font-size:13px;line-height:1;letter-spacing:.3px;box-shadow:0 8px 24px #00bcd459;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;white-space:nowrap;min-width:fit-content;opacity:1!important;visibility:visible!important;position:relative;z-index:9001}.info-button .info-dot{width:18px;height:18px;border-radius:50%;background:#041021;color:#64ffda;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0}.info-button:hover{transform:translateY(-1px);box-shadow:0 12px 32px #00bcd473}.info-overlay{position:fixed;inset:0;background:#040a21b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:12000;display:flex;align-items:center;justify-content:center;padding:24px}.info-panel{width:min(1100px,92vw);max-height:90vh;overflow-y:auto;background:radial-gradient(circle at 20% 20%,#64ffda1f,#0a0e27f5);border:1px solid rgba(100,255,218,.3);border-radius:20px;padding:24px;box-shadow:0 24px 70px #000000a6;color:#e8f7ff}.info-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.info-kicker{text-transform:uppercase;font-size:11px;letter-spacing:1px;color:#64ffda;font-weight:700;margin-bottom:4px}.info-header h2{margin:0;font-size:24px;color:#fff}.info-subtitle{margin:6px 0 0;color:#e8f7ffcc;font-size:14px}.info-close{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:10px;width:36px;height:36px;cursor:pointer;font-size:16px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.video-card{grid-column:span 1}.screenshot-card{grid-column:1 / -1}.screenshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.screenshot-item{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;border-radius:12px;overflow:hidden;background:#0000004d;border:1px solid rgba(255,255,255,.1)}.screenshot-item:hover{transform:translateY(-2px);box-shadow:0 12px 28px #64ffda4d;border-color:#64ffda66}.screenshot-image{width:100%;height:180px;background-size:cover;background-position:center;border-bottom:1px solid rgba(255,255,255,.1)}.screenshot-title{padding:10px;font-size:12px;font-weight:600;color:#64ffda;text-align:center;background:#0006}@media(max-width:1200px){.info-card.wide,.screenshot-card{grid-column:span 2}}@media(max-width:900px){.screenshot-grid{grid-template-columns:repeat(2,1fr)}.screenshot-card{grid-column:span 1}}@media(max-width:600px){.info-grid,.screenshot-grid{grid-template-columns:1fr}.info-card.wide,.screenshot-card,.video-card{grid-column:span 1}}.info-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px;box-shadow:0 10px 28px #0000004d;display:flex;flex-direction:column}.info-card.wide{grid-column:span 2}.info-card h3{margin:0 0 10px;font-size:16px;color:#64ffda}.info-card p{margin:0;font-size:13px;line-height:1.5;color:#e8f7ffd1}.info-list{padding-left:18px;margin:0;color:#e8f7ffd1;font-size:13px;display:flex;flex-direction:column;gap:8px;line-height:1.4}.media-badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#64ffda26;color:#64ffda;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.media-badge.alt{background:#90caf92e;color:#90caf9}.media-body{color:#e8f7ffd1;margin-top:8px}.media-title{font-weight:700;margin-bottom:6px;font-size:14px;color:#fff}.info-card.media{display:flex;flex-direction:column;gap:8px}.media-player{width:100%;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0000004d;flex-shrink:0}.media-player video{width:100%;display:block}.media-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.media-image{width:100%;height:160px;border-radius:12px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 20px #00000059}.legend-title{font-size:11px;font-weight:600;color:#333;margin-bottom:8px;border-bottom:1px solid #e0e0e0;padding-bottom:4px}.legend-section{margin-bottom:8px}.legend-section:last-child{margin-bottom:0}.legend-subtitle{font-size:10px;font-weight:600;color:#666;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.legend-item{display:flex;align-items:center;margin-bottom:4px;font-size:10px;color:#555}.legend-item:last-child{margin-bottom:0}.legend-color{width:10px;height:10px;border-radius:50%;margin-right:6px;flex-shrink:0}.legend-line{width:16px;height:3px;border-radius:2px;margin-right:6px;flex-shrink:0}.map-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.minimal-chat{position:fixed;bottom:20px;right:20px;z-index:2000;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-trigger{width:56px;height:56px;background:linear-gradient(135deg,#64ffda,#06b6d4);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#0a0e27;cursor:pointer;box-shadow:0 4px 20px #64ffda66,0 0 40px #64ffda33;animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 4px 20px #64ffda66,0 0 40px #64ffda33}50%{box-shadow:0 4px 30px #64ffda99,0 0 60px #64ffda66}}.chat-trigger:hover{transform:scale(1.1)}.chat-expanded{width:380px;height:500px;background:#0a0e27f2;border:1px solid rgba(100,255,218,.3);border-radius:16px;display:flex;flex-direction:column;box-shadow:0 8px 40px #0009,0 0 0 1px #64ffda1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{padding:16px;background:#64ffda1a;border-bottom:1px solid rgba(100,255,218,.2);color:#64ffda;font-weight:600;font-size:14px;letter-spacing:.5px;text-transform:uppercase}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0003}.chat-messages::-webkit-scrollbar-thumb{background:#64ffda4d;border-radius:3px}.chat-welcome{color:#ffffff80;font-size:13px;text-align:center;padding:40px 20px;line-height:1.6}.chat-message{padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.5;max-width:85%;word-wrap:break-word}.chat-message.user{align-self:flex-end;background:linear-gradient(135deg,#64ffda33,#06b6d433);border:1px solid rgba(100,255,218,.3);color:#fff;margin-left:auto}.chat-message.assistant{align-self:flex-start;background:#1e1e3299;border:1px solid rgba(255,255,255,.1);color:#ccd6f6;white-space:pre-wrap;font-family:Courier New,monospace}.chat-message.loading{padding:16px}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:6px;height:6px;background:#64ffda;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.chat-input-container{padding:12px;border-top:1px solid rgba(100,255,218,.2);display:flex;gap:8px}.chat-input{flex:1;background:#1e1e3299;border:1px solid rgba(100,255,218,.2);border-radius:8px;padding:10px 12px;color:#fff;font-size:13px;outline:none;transition:all .2s ease}.chat-input::placeholder{color:#fff6}.chat-input:focus{border-color:#64ffda;box-shadow:0 0 0 2px #64ffda1a}.chat-upload-btn{background:#64ffda26;border:1px solid #64ffda;border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#64ffda;cursor:pointer;transition:all .2s ease;flex-shrink:0}.chat-upload-btn svg{color:#64ffda;fill:#64ffda}.chat-upload-btn:hover{background:#64ffda40;transform:scale(1.05);box-shadow:0 4px 15px #64ffda4d}.chat-upload-btn:active{transform:scale(.95)}.chat-send-btn{background:linear-gradient(135deg,#64ffda,#06b6d4);border:2px solid #64ffda;border-radius:8px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:#0a0e27;cursor:pointer;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 8px #64ffda4d}.chat-send-btn svg{color:#0a0e27;fill:#0a0e27}.chat-send-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:0 4px 16px #64ffda80}.chat-send-btn:active:not(:disabled){transform:scale(.95)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chart-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out;pointer-events:all}.chart-container{width:90%;max-width:900px;height:600px;background:linear-gradient(135deg,#0a0e27fa,#141932fa);border:1px solid rgba(100,255,218,.3);border-radius:16px;padding:24px;position:relative;box-shadow:0 20px 60px #000c,0 0 0 1px #64ffda33;animation:slideUp .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chart-close{position:absolute;top:16px;right:16px;width:42px;height:42px;background:#ff6b6b4d;border:2px solid #ff6b6b;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ff6b6b;transition:all .2s ease;z-index:10;box-shadow:0 2px 10px #ff6b6b66}.chart-close svg{color:#ff6b6b;fill:#ff6b6b}.chart-close:hover{background:#ff6b6b80;transform:scale(1.15);box-shadow:0 4px 16px #ff6b6b99}.chart-content{width:100%;height:100%;padding-top:20px}.viz-panel-trigger{position:fixed;top:80px;left:20px;z-index:2000;width:56px;height:56px;background:linear-gradient(135deg,#64ffda,#06b6d4);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#0a0e27;cursor:pointer;box-shadow:0 4px 20px #64ffda66;transition:all .3s ease}.viz-panel-trigger:hover{transform:scale(1.1);box-shadow:0 6px 30px #64ffda99}.viz-count{position:absolute;top:-6px;right:-6px;background:#ff6b6b;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid #0a0e27}.viz-panel{position:fixed;top:60px;left:0;width:320px;height:calc(100vh - 60px);background:#0a0e27f2;border-right:1px solid rgba(100,255,218,.3);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:2500;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 20px #00000080}.viz-panel.open{transform:translate(0)}.viz-panel-header{padding:20px;background:#64ffda1a;border-bottom:1px solid rgba(100,255,218,.2);display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;color:#64ffda;text-transform:uppercase;letter-spacing:.5px}.viz-panel-actions{display:flex;gap:8px}.viz-clear-btn{background:#64ffda26;border:2px solid rgba(100,255,218,.4);color:#64ffda;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:16px;font-weight:700;box-shadow:0 2px 6px #64ffda33;flex-shrink:0}.viz-clear-btn:hover{background:#64ffda40;transform:scale(1.08);box-shadow:0 4px 12px #64ffda66}.viz-close-btn{background:#ff6b6b40;border:2px solid #ff6b6b;color:#ff6b6b;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:16px;font-weight:700;box-shadow:0 2px 6px #ff6b6b4d;flex-shrink:0}.viz-close-btn svg{color:#ff6b6b;fill:#ff6b6b}.viz-close-btn:hover{background:#ff6b6b66;transform:scale(1.08);box-shadow:0 4px 12px #ff6b6b80}.viz-panel-content{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.viz-panel-content::-webkit-scrollbar{width:6px}.viz-panel-content::-webkit-scrollbar-track{background:#0003}.viz-panel-content::-webkit-scrollbar-thumb{background:#64ffda4d;border-radius:3px}.viz-empty{text-align:center;padding:60px 20px;color:#fff6;font-size:13px}.viz-item{background:#1e1e3299;border:1px solid rgba(100,255,218,.2);border-radius:12px;overflow:hidden;transition:all .3s ease}.viz-item:hover{border-color:#64ffda66;box-shadow:0 4px 20px #64ffda1a}.viz-item-header{padding:12px 14px;background:#64ffda0d;border-bottom:1px solid rgba(100,255,218,.1);display:flex;justify-content:space-between;align-items:center}.viz-item-title{color:#64ffda;font-size:12px;font-weight:600}.viz-item-controls{display:flex;align-items:center;gap:6px}.viz-item-edit{background:#64ffda33;border:1px solid rgba(100,255,218,.5);color:#64ffda;padding:4px 10px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:11px;font-weight:600;letter-spacing:.4px}.viz-item-edit:hover{background:#64ffda4d;box-shadow:0 2px 10px #64ffda4d}.viz-item-edit:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.viz-item-remove{background:none;border:none;color:#ff6b6bcc;cursor:pointer;font-size:16px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.viz-item-remove svg{color:#ff6b6bcc;fill:#ff6b6bcc}.viz-item-remove:hover{background:#ff6b6b33;color:#ff6b6b}.viz-item-remove:hover svg{fill:#ff6b6b}.viz-item-preview{height:200px;padding:12px;cursor:pointer;transition:all .3s ease}.viz-item-preview.expanded{height:300px}.viz-item-footer{padding:8px 14px;background:#0003;color:#ffffff80;font-size:10px;text-align:right}.viz-fullscreen-overlay{position:fixed;inset:60px 0 0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:4000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out;padding:20px}.viz-fullscreen-content{width:85%;max-width:900px;height:calc(100vh - 140px);max-height:600px;background:linear-gradient(135deg,#0a0e27fa,#141932fa);border:1px solid rgba(100,255,218,.3);border-radius:16px;padding:20px;position:relative;box-shadow:0 20px 60px #000c;animation:slideUp .4s cubic-bezier(.34,1.56,.64,1)}.viz-fullscreen-close{position:absolute;top:16px;right:16px;width:36px;height:36px;background:#ff6b6b33;border:1px solid rgba(255,107,107,.4);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ff6b6b;transition:all .2s ease;z-index:10}.viz-fullscreen-close svg{color:#ff6b6b;fill:#ff6b6b}.viz-fullscreen-close:hover{background:#ff6b6b4d;transform:scale(1.1)}.viz-fullscreen-chart{width:100%;height:100%;padding-top:20px}.viz-fullscreen-edit{position:absolute;top:16px;left:16px;background:#64ffda2e;border:1px solid rgba(100,255,218,.45);color:#64ffda;padding:6px 14px;border-radius:10px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.viz-fullscreen-edit:hover{background:#64ffda4d;box-shadow:0 4px 12px #64ffda40}.viz-edit-overlay{position:fixed;inset:0;background:#050814d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:120000;display:flex;align-items:center;justify-content:center;padding:20px}.viz-edit-content{width:520px;max-width:90vw;background:#0a0e27f5;border:1px solid rgba(100,255,218,.3);border-radius:16px;padding:20px;box-shadow:0 20px 60px #000000b3;display:flex;flex-direction:column;gap:16px;position:relative;z-index:120001}.viz-edit-header{display:flex;justify-content:space-between;align-items:center}.viz-edit-title{color:#64ffda;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.viz-edit-subtitle{color:#fff9;font-size:12px;margin-top:2px}.viz-edit-close{background:#ff6b6b26;border:1px solid rgba(255,107,107,.5);color:#ff6b6b;width:32px;height:32px;border-radius:8px;cursor:pointer;transition:all .2s ease}.viz-edit-close:hover{background:#ff6b6b4d}.viz-edit-params{background:#64ffda0d;border:1px solid rgba(100,255,218,.15);border-radius:10px;padding:12px;font-size:12px;color:#fffc}.viz-edit-description{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;font-size:12px;color:#ffffffbf}.viz-edit-params-title{color:#64ffda;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.viz-edit-params ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.viz-edit-params ul li{border:1px solid rgba(100,255,218,.15);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:6px;background:#0003}.viz-edit-param-main{display:flex;align-items:center;justify-content:space-between;gap:8px}.viz-edit-param-name{font-weight:600;color:#e0fff6;font-size:12px}.viz-edit-param-value{font-size:12px;color:#64ffda;padding:2px 8px;border-radius:6px;background:#64ffda1a;border:1px solid rgba(100,255,218,.2)}.viz-edit-param-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;color:#ffffffa6}.viz-edit-param-meta span{display:inline-flex;align-items:center;gap:4px}.viz-edit-param-meta code{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;background:#ffffff14;padding:0 4px;border-radius:4px;color:#64ffda;font-size:11px}.viz-edit-chat{background:#141832cc;border:1px solid rgba(100,255,218,.15);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:12px}.viz-edit-messages{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.viz-edit-message{padding:8px 10px;border-radius:8px;font-size:13px;line-height:1.4}.viz-edit-message.user{background:#64ffda1f;border:1px solid rgba(100,255,218,.3);color:#e0fff6;align-self:flex-end}.viz-edit-message.assistant{background:#6495ed1a;border:1px solid rgba(100,149,237,.2);color:#d6dcff;align-self:flex-start}.viz-edit-input{display:flex;flex-direction:column;gap:8px}.viz-edit-input textarea{width:100%;min-height:80px;border-radius:10px;border:1px solid rgba(100,255,218,.3);background:#050814cc;color:#fff;padding:10px;resize:vertical;font-family:inherit}.viz-edit-input button{align-self:flex-end;background:linear-gradient(135deg,#64ffda,#00bcd4);border:none;color:#0a0e27;font-weight:600;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease}.viz-edit-input button:disabled{opacity:.6;cursor:not-allowed}.viz-edit-content{background:linear-gradient(135deg,#0a0e27fa,#141932fa);border:1px solid rgba(100,255,218,.3);border-radius:12px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #000000b3;overflow:hidden}.viz-edit-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid rgba(100,255,218,.2)}.viz-edit-title{font-size:20px;font-weight:600;color:#64ffda;margin:0}.viz-edit-subtitle{font-size:13px;color:#fff9;padding:0 24px 16px;border-bottom:1px solid rgba(100,255,218,.1)}.viz-edit-close{background:none;border:none;color:#fff9;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.viz-edit-close:hover{color:#64ffda}.viz-edit-params-container{padding:16px 24px;overflow-y:auto;flex:1}.viz-edit-section{margin-bottom:16px}.viz-edit-section:last-child{margin-bottom:0}.viz-edit-section-title{font-size:12px;font-weight:600;color:#64ffda;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.viz-edit-params-list{display:flex;flex-direction:column;gap:4px}.viz-edit-param-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#64ffda0d;border-radius:6px;font-size:13px}.viz-edit-param-label{color:#fffc;font-weight:500}.viz-edit-param-value{color:#64ffda;font-weight:600;font-family:Monaco,Courier New,monospace}.viz-edit-param-input{width:120px;background:#ffffff0a;border:1px solid rgba(100,255,218,.35);border-radius:8px;color:#e8f7ff;padding:8px 10px;font-size:13px}.viz-edit-param-input:focus{outline:none;border-color:#64ffda;box-shadow:0 0 0 2px #64ffda26;background:#ffffff12}.viz-edit-filters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-bottom:8px}.viz-edit-filter-chip{display:flex;flex-direction:column;padding:8px 10px;background:#64ffda14;border:1px solid rgba(100,255,218,.2);border-radius:6px;font-size:11px}.viz-edit-filter-name{color:#fff;font-weight:500;margin-bottom:3px}.viz-edit-filter-type{color:#64ffdab3;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.viz-edit-filter-options{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.viz-edit-filter-option{background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:#e5f7ff;padding:6px 8px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s ease}.viz-edit-filter-option.selected{background:#64ffda33;border-color:#64ffda99;color:#64ffda;box-shadow:0 2px 8px #64ffda40}.viz-edit-filter-option:hover{border-color:#64ffda66;transform:translateY(-1px)}.viz-edit-filter-examples{font-size:11px;color:#ffffff80;font-style:italic;margin-top:4px}.viz-edit-section-note{font-size:12px;color:#ffffffa6;margin-bottom:10px}.viz-edit-chat{display:flex;flex-direction:column;flex:1;min-height:220px;border:1px solid rgba(100,255,218,.25);border-radius:12px;background:radial-gradient(circle at 10% 10%,#64ffda14,#0a0e27e6);margin:12px 24px 0;overflow:hidden}.viz-edit-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 0}.viz-edit-messages{flex:1;overflow-y:auto;padding:12px 16px 0;display:flex;flex-direction:column;gap:12px;max-height:220px}.viz-edit-message{padding:10px 14px;border-radius:8px;font-size:13px;line-height:1.5;max-width:85%}.viz-edit-message.user{background:#64ffda26;color:#fff;align-self:flex-end;margin-left:auto}.viz-edit-message.assistant{background:#ffffff0d;color:#ffffffe6;align-self:flex-start}.viz-edit-input-container{display:flex;gap:10px;padding:14px 16px 16px;border-top:1px solid rgba(100,255,218,.15);background:#0a0e2799}.viz-edit-input{flex:1;padding:10px 12px;background:#ffffff0f;border:1px solid rgba(100,255,218,.25);border-radius:10px;color:#fff;font-size:13px;font-family:inherit;resize:none;min-height:80px;max-height:140px}.viz-edit-input:focus{outline:none;border-color:#64ffda;background:#ffffff14}.viz-edit-input::placeholder{color:#fff6}.viz-edit-input:disabled{opacity:.5;cursor:not-allowed}.viz-edit-send{padding:10px 20px;background:#64ffda;color:#0a0e27;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.viz-edit-send:hover:not(:disabled){background:#7ffff0;transform:translateY(-1px);box-shadow:0 4px 12px #64ffda4d}.viz-edit-send:disabled{opacity:.5;cursor:not-allowed}.viz-edit-send.secondary{background:#64ffda1f;color:#64ffda;border:1px solid rgba(100,255,218,.4)}.viz-edit-reset{padding:10px 14px;background:#ffffff14;color:#e8f7ff;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.viz-edit-reset:hover:not(:disabled){background:#ffffff1f;transform:translateY(-1px)}.viz-edit-chat-toggle{display:flex;align-items:center;gap:10px;padding:12px 24px 0}.viz-edit-direct-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.viz-edit-apply-message{color:#fffc;font-size:12px}.viz-edit-hint{font-size:12px;color:#ffffff80}.viz-edit-params-container::-webkit-scrollbar,.viz-edit-messages::-webkit-scrollbar{width:6px}.viz-edit-params-container::-webkit-scrollbar-track,.viz-edit-messages::-webkit-scrollbar-track{background:#ffffff08;border-radius:3px}.viz-edit-params-container::-webkit-scrollbar-thumb,.viz-edit-messages::-webkit-scrollbar-thumb{background:#64ffda33;border-radius:3px}.viz-edit-params-container::-webkit-scrollbar-thumb:hover,.viz-edit-messages::-webkit-scrollbar-thumb:hover{background:#64ffda4d}.viz-edit-description{padding:16px;margin:16px 0;background:#64ffda0d;border-left:3px solid #64ffda;border-radius:4px;color:#ccd6f6;font-size:14px;line-height:1.6;white-space:pre-line}.viz-edit-description strong{color:#64ffda;font-weight:600}.viz-panel.fullscreen{width:100vw!important;height:100vh!important;top:0!important;left:0!important;z-index:9999!important;border:none!important;transform:translate(0)!important}.viz-panel.fullscreen .viz-panel-header{position:sticky!important;top:0!important;z-index:10000!important;background:linear-gradient(135deg,#0a0e27fa,#141937fa)!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;box-shadow:0 4px 30px #64ffda33!important;padding:16px 28px!important;min-height:60px!important;border-bottom:1px solid rgba(100,255,218,.4)!important;display:flex!important;align-items:center!important;margin-top:35px!important}.viz-panel.fullscreen .viz-panel-header span{font-size:16px!important;font-weight:700!important;letter-spacing:1.2px!important;text-shadow:0 2px 10px rgba(100,255,218,.3)!important}.viz-panel.fullscreen .viz-clear-btn{width:36px!important;height:36px!important;font-size:16px!important;background:#64ffda1a!important;border:2px solid rgba(100,255,218,.4)!important;color:#64ffda!important;box-shadow:0 2px 10px #64ffda33!important}.viz-panel.fullscreen .viz-clear-btn:hover{background:#64ffda33!important;border-color:#64ffda!important;transform:scale(1.08)!important;box-shadow:0 4px 20px #64ffda66!important}.viz-panel.fullscreen .viz-close-btn{width:38px!important;height:38px!important;font-size:20px!important;background:#ff6b6b26!important;border:2px solid rgba(255,107,107,.5)!important;box-shadow:0 2px 10px #ff6b6b4d!important}.viz-panel.fullscreen .viz-close-btn:hover{background:#ff6b6b4d!important;border-color:#ff6b6b!important;transform:scale(1.08)!important;box-shadow:0 4px 20px #ff6b6b80!important}.viz-panel.fullscreen .viz-panel-content{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))!important;gap:20px!important;padding:20px!important;height:calc(100vh - 111px)!important;overflow-y:auto!important}.viz-panel.fullscreen .viz-item{height:auto!important;max-height:500px!important}.viz-fullscreen-btn{background:#64ffda26;border:2px solid rgba(100,255,218,.4);color:#64ffda;width:36px;height:36px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:16px;font-weight:700;box-shadow:0 2px 6px #64ffda33;flex-shrink:0}.viz-fullscreen-btn:hover{background:#64ffda40;transform:scale(1.08);box-shadow:0 4px 12px #64ffda66}.viz-item-preview{position:relative;cursor:pointer}.viz-item-expand-icon{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#64ffda33;border:1px solid rgba(100,255,218,.4);border-radius:6px;display:flex;align-items:center;justify-content:center;color:#64ffda;font-size:14px;opacity:0;transition:all .2s ease;pointer-events:none}.viz-item-preview:hover .viz-item-expand-icon{opacity:1}.viz-item-preview:hover{transform:scale(1.01);box-shadow:0 4px 16px #64ffda33}.viz-chart-modal-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:99999;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out;padding:40px}.viz-chart-modal{width:90%;max-width:1000px;height:80vh;max-height:700px;background:linear-gradient(135deg,#0a0e27fa,#141932fa);border:1px solid rgba(100,255,218,.3);border-radius:16px;display:flex;flex-direction:column;box-shadow:0 20px 60px #000c,0 0 40px #64ffda1a;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1)}.viz-chart-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#64ffda14;border-bottom:1px solid rgba(100,255,218,.2);border-radius:16px 16px 0 0}.viz-chart-modal-title{margin:0;font-size:16px;font-weight:600;color:#64ffda;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viz-chart-modal-actions{display:flex;gap:10px}.viz-chart-modal-edit{background:#64ffda26;border:1px solid rgba(100,255,218,.4);color:#64ffda;padding:8px 16px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.viz-chart-modal-edit:hover{background:#64ffda40;transform:scale(1.05)}.viz-chart-modal-close{width:36px;height:36px;background:#ff6b6b33;border:1px solid rgba(255,107,107,.5);border-radius:8px;color:#ff6b6b;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.viz-chart-modal-close:hover{background:#ff6b6b59;transform:scale(1.1)}.viz-chart-modal-content{flex:1;padding:20px;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
