:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}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}}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/eth-dashboard/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/eth-dashboard/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/eth-dashboard/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/eth-dashboard/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/eth-dashboard/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/eth-dashboard/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/eth-dashboard/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/eth-dashboard/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #eef2ff;--color-bg: #f3f4f6;--color-bg-subtle: #f9fafb;--color-surface: #ffffff;--color-border: #e5e7eb;--color-border-light: #d1d5db;--color-text: #374151;--color-text-dark: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-error: #ef4444;--color-error-light: #fee2e2;--color-success: #16a34a;--color-success-light: #dcfce7;--color-accent: #0d9488;--color-accent-light: #ccfbf1;--color-badge-bg: #dee2e6;--card-radius: 12px;--radius: 8px;--radius-sm: 6px;--radius-xs: 4px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 2px 4px rgba(0, 0, 0, .1);--shadow-focus: 0 0 0 2px rgba(99, 102, 241, .1);--transition-fast: .15s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:var(--color-bg)}#root{width:100%;height:100vh}.app-container{display:flex;min-height:100vh}.main-content{flex:1;margin-left:215px;background-color:var(--color-bg);transition:margin-left .3s ease}.main-content.sidebar-collapsed{margin-left:60px}.js-plotly-plot .plotly .modebar,.js-plotly-plot .modebar,.modebar,.modebar-container{background:transparent!important;background-color:transparent!important;padding:4px!important;left:10px!important;top:-8px!important;right:auto!important}.js-plotly-plot .plotly .modebar-group,.modebar-group{background:transparent!important;background-color:transparent!important}.js-plotly-plot .plotly .modebar-btn{background-color:transparent!important;border:none!important;border-radius:4px!important;margin:2px!important}.js-plotly-plot .plotly .modebar-btn:hover{background-color:#fff3!important}.js-plotly-plot .plotly .modebar-btn svg{fill:#000!important;opacity:.3!important}.js-plotly-plot .plotly .modebar-btn:hover svg{opacity:1!important}.js-plotly-plot .plotly .modebar-btn svg path{fill:#000!important}.sidebar{width:215px;min-width:215px;height:100vh;background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:20px 0;position:fixed;left:0;top:0;transition:width .3s ease,min-width .3s ease;z-index:100;overflow:hidden}.sidebar.collapsed{width:60px;min-width:60px}.sidebar-content{flex:1 1 auto;overflow-y:auto;overflow-x:hidden}.sidebar-toggle{flex-shrink:0;padding:16px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:color .2s ease;width:100%}.sidebar-toggle:hover{color:var(--color-text)}.sidebar-section{padding:0 16px;margin-bottom:20px;transition:padding .3s ease}.sidebar.collapsed .sidebar-section{padding:0 8px}.sidebar-section-title{font-size:11px;font-weight:600;color:var(--color-text-muted);letter-spacing:.5px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .2s ease,margin-bottom .3s ease;background:none;border:none;padding:4px 0;width:100%;cursor:pointer;-webkit-user-select:none;user-select:none}.sidebar-section-title:hover{color:var(--color-text-secondary)}.sidebar-section-chevron{font-size:10px;color:var(--color-text-muted);transition:color .2s ease}.sidebar-section-title:hover .sidebar-section-chevron{color:var(--color-text-secondary)}.sidebar.collapsed .sidebar-section-title{opacity:0;margin-bottom:0;height:0;pointer-events:none}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:all .3s ease;width:100%;text-align:left}.sidebar.collapsed .sidebar-item{justify-content:center;padding:10px;gap:0}.sidebar-item:hover{background-color:var(--color-bg)}.sidebar-item.active{background-color:var(--color-primary-light);border-left:3px solid var(--color-primary);margin-left:-3px}.sidebar.collapsed .sidebar-item.active{border-left:none;margin-left:0;border-bottom:3px solid var(--color-primary)}.sidebar-item.active .sidebar-label{color:var(--color-primary-dark);font-weight:500}.sidebar-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0}.sidebar-label{font-size:14px;color:var(--color-text);white-space:nowrap;overflow:hidden;opacity:1;transition:opacity .2s ease}.sidebar.collapsed .sidebar-label{opacity:0;width:0;pointer-events:none}.sidebar-item.export-success{background-color:var(--color-success-light)}.sidebar-item.export-success .sidebar-icon,.sidebar-item.export-success .sidebar-label{color:var(--color-success)}.sidebar-item:disabled{opacity:.5;cursor:not-allowed}.sidebar-item.logout-item .sidebar-icon,.sidebar-item.logout-item .sidebar-label{color:var(--color-text-secondary)}.sidebar-item.logout-item:hover{background-color:var(--color-bg)}.sidebar-item.admin-item .sidebar-icon,.sidebar-item.admin-item .sidebar-label{color:var(--color-primary)}.sidebar-item.admin-item:hover{background-color:var(--color-primary-light)}.sidebar-item.crosslink-item .sidebar-icon,.sidebar-item.crosslink-item .sidebar-label{color:var(--color-primary-dark)}.sidebar-item.crosslink-item:hover{background-color:var(--color-primary-light)}.dataset-selector-wrapper{position:relative;margin-bottom:4px}.sidebar-item.dataset-item .sidebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel{position:fixed;top:80px;width:300px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--shadow-soft);z-index:200;display:flex;flex-direction:column;overflow:hidden}.dataset-panel-header{padding:10px 14px;font-size:11px;font-weight:600;color:var(--color-text-muted);letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.dataset-panel-slots{padding:8px 10px;border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:6px;overflow:visible;position:relative}.dataset-panel-slot-empty{font-size:12px;color:var(--color-text-muted);text-align:center;padding:4px 0}.dataset-panel-slot{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--radius);background:var(--color-bg);position:relative}.dataset-slot-color{width:18px;height:18px;border-radius:4px;border:2px solid rgba(0,0,0,.15);cursor:pointer;flex-shrink:0;transition:transform var(--transition-fast)}.dataset-slot-color:hover{transform:scale(1.15)}.dataset-slot-label{flex:1;font-size:12px;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-slot-remove{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:10px;padding:2px 4px;border-radius:3px;transition:background-color var(--transition-fast),color var(--transition-fast)}.dataset-slot-remove:hover{background:var(--color-error);color:#fff}.dataset-color-picker{position:absolute;top:calc(100% + 6px);left:0;display:grid;grid-template-columns:repeat(3,28px);column-gap:18px;row-gap:10px;width:fit-content;padding:20px 28px 20px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:0 4px 20px #00000026;z-index:300}.dataset-color-swatch{width:28px;height:28px;border-radius:6px;border:2px solid rgba(0,0,0,.1);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast)}.dataset-color-swatch:hover{transform:scale(1.15)}.dataset-color-swatch.active{border-color:#374151;box-shadow:0 0 0 2px var(--color-surface),0 0 0 3px #374151}.dataset-panel-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:4px}.dataset-panel-empty{padding:16px 14px;font-size:13px;color:var(--color-text-muted);text-align:center}.dataset-group{margin-bottom:2px}.dataset-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-size:12px;font-weight:600;color:var(--color-text)}.dataset-group-header:hover{background-color:var(--color-bg)}.dataset-group-chevron{font-size:9px;color:var(--color-text-muted);width:10px;text-align:center;flex-shrink:0}.dataset-group-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel-badge{font-size:10px;padding:1px 6px;border-radius:9999px;background-color:var(--color-bg);color:var(--color-text-muted);flex-shrink:0}.dataset-sub-list{padding-left:20px}.dataset-sub-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-size:12px;color:var(--color-text)}.dataset-sub-item:hover{background-color:var(--color-bg)}.dataset-sub-item.assigned{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-weight:500}.dataset-sub-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:#fff;font-size:10px;font-weight:700;flex-shrink:0}.dataset-sub-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dataset-panel-error{margin:8px 10px 0;padding:8px 10px;border:1px solid rgba(239,68,68,.4);border-radius:var(--radius, 6px);background:#ef444412;color:var(--color-error, #ef4444);font-size:12px;line-height:1.45}.plot-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:16px;padding:16px;height:calc(100vh - 60px)}.plot-grid-2x2{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.plot-grid-two-plots{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;grid-template-areas:"map top" "map bottom"}.plot-grid-line-tab{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;grid-template-areas:"map   lines" "top   bottom"}.line-mode-filter-wrapper{display:flex;flex-direction:column}.line-mode-filter-wrapper .mode-filter-container{flex:1;min-height:0}.mode-filter-container{display:flex;flex-direction:column;gap:8px;background:var(--color-bg-subtle);padding:12px;border-radius:var(--radius);border:1px solid var(--color-border)}.mode-filter-label{font-size:13px;font-weight:500;color:var(--color-text);margin-left:4px}.mode-filter-select{flex:1;width:100%;min-height:140px;padding:8px;font-size:14px;border-radius:var(--radius);border:1px solid var(--color-border);background:#fff;color:var(--color-text);transition:border-color .2s ease}.mode-filter-select:hover{border-color:var(--color-text-muted);cursor:pointer}.mode-filter-select option{padding:6px;font-size:14px}.mode-filter-select::-webkit-scrollbar{width:6px}.mode-filter-select::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:3px}.mode-filter-select::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.line-mode-filter-hint{margin:0;font-size:11px;color:var(--color-text-secondary)}.lines-at-stop-wrapper{display:flex;flex-direction:column}.lines-at-stop-meta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 10px;font-size:12px;color:var(--color-text-secondary)}.lines-at-stop-badges{flex:1;min-height:0;overflow-y:auto;padding:10px;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius)}.badge-container{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}.mode-badge{background-color:var(--color-badge-bg);color:var(--color-text);border-radius:12px;padding:5px 12px;font-size:13px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-block;transition:background-color var(--transition-fast),color var(--transition-fast)}.mode-badge:hover{background-color:silver}.mode-badge.active{background-color:var(--color-primary);color:#fff}.persistent-map{grid-row:1 / 2;grid-column:1 / 2}.persistent-map-two-plots{grid-area:map}.plot-card{background-color:var(--color-surface);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);padding:12px;display:flex;flex-direction:column;overflow:hidden;position:relative}.plot-expand-btn{position:absolute;bottom:12px;right:12px;width:32px;height:32px;border-radius:50%;background-color:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease;z-index:10;box-shadow:var(--shadow-md)}.plot-expand-btn:hover{background-color:var(--color-bg);color:var(--color-text);transform:scale(1.05)}.plot-wrapper{display:flex;flex-direction:column;height:100%;width:100%}.plot-title{font-size:13px;font-weight:600;color:var(--color-text);margin:0 0 4px;padding:0;line-height:1.2}.plot-loading{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:14px}.plot-loader-wrapper{display:flex;flex-direction:column;align-items:center;gap:12px}.plot-loader-text{color:var(--color-text-muted);font-size:13px;font-weight:500;letter-spacing:.02em}.plot-loader{position:relative;width:48px;height:48px}.plot-loader-ring{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:var(--color-primary);animation:plot-spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.plot-loader-ring:nth-child(2){inset:6px;border-top-color:var(--color-primary-dark);animation-delay:-.15s}.plot-loader-ring:nth-child(3){inset:12px;border-top-color:var(--color-text-muted);animation-delay:-.3s}@keyframes plot-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.canton-map-container{width:100%;height:100%;display:flex;flex-direction:column}.canton-map{flex:1;border-radius:var(--radius);min-height:200px}.plot-placeholder{flex:1;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-subtle);border:2px dashed var(--color-border);border-radius:var(--radius);color:var(--color-text-muted);font-size:16px;font-weight:500}.plot-loading-overlay{position:absolute;inset:0;background:#ffffffa6;display:flex;align-items:center;justify-content:center;z-index:5;border-radius:var(--card-radius);pointer-events:none}.speed-summary-wrapper{display:flex;flex-direction:column;height:100%}.speed-summary-slots{display:flex;flex-direction:column;gap:10px;flex:1;overflow-y:auto;margin-top:6px}.speed-summary-slot{display:flex;flex-direction:column;gap:6px}.speed-summary-slot-header{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--color-text);border-left:3px solid var(--color-primary);padding-left:6px}.speed-summary-slot-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.speed-summary-row{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border-radius:var(--radius);background:var(--color-bg);max-width:99%;align-self:center;width:100%}.speed-summary-row-highlight{background:#6366f114;outline:1px solid var(--color-primary)}.speed-summary-row-label{font-size:10px;font-weight:600;color:var(--color-text);text-transform:capitalize;letter-spacing:.3px}.speed-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:4px}.speed-summary-row .speed-stat{background:var(--color-surface);padding:4px 6px}.speed-stat{background:var(--color-bg);border-radius:var(--radius);padding:6px 8px;text-align:center}.speed-stat-value{font-size:14px;font-weight:600;color:var(--color-text);line-height:1.2}.speed-stat-unit{font-size:9px;font-weight:400;color:var(--color-text-secondary);margin-left:2px}.speed-stat-label{font-size:9px;color:var(--color-text-secondary);margin-top:2px;text-transform:uppercase;letter-spacing:.3px}@media(max-width:1400px){.plot-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}}@media(max-width:900px){.plot-grid{grid-template-columns:1fr;grid-template-rows:auto}.plot-card{min-height:350px}}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mapboxgl-canvas{position:absolute;left:0;top:0}.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab;-moz-user-select:none;-webkit-user-select:none;-ms-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:-webkit-grabbing;cursor:-moz-grabbing;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-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{position:absolute;pointer-events:none;z-index:2}.mapboxgl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{right:0;bottom:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px;float:left}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0;float:right}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{margin:0 0 10px 10px;float:left}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{margin:0 10px 10px 0;float:right}.mapboxgl-ctrl-group{border-radius:4px;background:#fff}.mapboxgl-ctrl-group:not(:empty){-moz-box-shadow:0 0 2px rgba(0,0,0,.1);-webkit-box-shadow:0 0 2px rgba(0,0,0,.1);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{width:29px;height:29px;display:block;padding:0;outline:none;border:0;box-sizing:border-box;background-color:transparent;cursor:pointer}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{display:block;width:100%;height:100%;background-repeat:no-repeat;background-position:50%}@media(-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl button::-moz-focus-inner{border:0;padding:0}.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 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-group button:focus:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:focus:only-child{border-radius:inherit}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath 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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath 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 width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath 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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{-webkit-animation:mapboxgl-spin 2s linear infinite;-moz-animation:mapboxgl-spin 2s infinite linear;-o-animation:mapboxgl-spin 2s infinite linear;-ms-animation:mapboxgl-spin 2s infinite linear;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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-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 width='29' height='29' 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 005.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 009 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 003.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0011 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 110 7 3.5 3.5 0 110-7z'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath d='M14 5l1 1-9 9-1-1 9-9z' fill='red'/%3E%3C/svg%3E")}}@-webkit-keyframes mapboxgl-spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@-moz-keyframes mapboxgl-spin{0%{-moz-transform:rotate(0deg)}to{-moz-transform:rotate(1turn)}}@-o-keyframes mapboxgl-spin{0%{-o-transform:rotate(0deg)}to{-o-transform:rotate(1turn)}}@-ms-keyframes mapboxgl-spin{0%{-ms-transform:rotate(0deg)}to{-ms-transform:rotate(1turn)}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{width:88px;height:23px;margin:0 0 -4px -4px;display:block;background-repeat:no-repeat;cursor:pointer;overflow:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%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 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='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 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='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")}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media(-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%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 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='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 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='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 width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%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 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='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 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='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{padding:0 5px;background-color:#ffffff80;margin:0}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;padding:2px 24px 2px 0;margin:10px;position:relative;background-color:#fff;border-radius:12px}.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-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 8px 2px 28px;border-radius:12px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{display:none;cursor:pointer;position:absolute;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-2 0'/%3E%3C/svg%3E");background-color:#ffffff80;width:24px;height:24px;box-sizing:border-box;border-radius:12px;outline:none;top:0;right:0;border:0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner,.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button{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-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;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 width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-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 width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1012 0 6 6 0 10-12 0m5-3a1 1 0 102 0 1 1 0 10-2 0m0 3a1 1 0 112 0v3a1 1 0 11-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;font-size:10px;border:2px solid #333;border-top:#333;padding:0 5px;color:#333;box-sizing:border-box}.mapboxgl-popup{position:absolute;top:0;left:0;display:-webkit-flex;display:flex;will-change:transform;pointer-events:none}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{-webkit-flex-direction:column;flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{-webkit-flex-direction:column-reverse;flex-direction:column-reverse}.mapboxgl-popup-anchor-left{-webkit-flex-direction:row;flex-direction:row}.mapboxgl-popup-anchor-right{-webkit-flex-direction:row-reverse;flex-direction:row-reverse}.mapboxgl-popup-tip{width:0;height:0;border:10px solid transparent;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{-webkit-align-self:center;align-self:center;border-top:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{-webkit-align-self:flex-start;align-self:flex-start;border-top:none;border-left:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{-webkit-align-self:flex-end;align-self:flex-end;border-top:none;border-right:none;border-bottom-color:#fff}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{-webkit-align-self:center;align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{-webkit-align-self:flex-start;align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{-webkit-align-self:flex-end;align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{-webkit-align-self:center;align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{-webkit-align-self:center;align-self:center;border-right:none;border-left-color:#fff}.mapboxgl-popup-close-button{position:absolute;right:0;top:0;border:0;border-radius:0 3px 0 0;cursor:pointer;background-color:transparent}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{position:relative;background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto}.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{position:absolute;top:0;left:0;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;width:15px;height:15px;border-radius:50%}.mapboxgl-user-location-dot:before{content:"";position:absolute;-webkit-animation:mapboxgl-user-location-dot-pulse 2s infinite;-moz-animation:mapboxgl-user-location-dot-pulse 2s infinite;-ms-animation:mapboxgl-user-location-dot-pulse 2s infinite;animation:mapboxgl-user-location-dot-pulse 2s infinite}.mapboxgl-user-location-dot:after{border-radius:50%;border:2px solid #fff;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px;box-sizing:border-box;box-shadow:0 0 3px #00000059}@-webkit-keyframes mapboxgl-user-location-dot-pulse{0%{-webkit-transform:scale(1);opacity:1}70%{-webkit-transform:scale(3);opacity:0}to{-webkit-transform:scale(1);opacity:0}}@-ms-keyframes mapboxgl-user-location-dot-pulse{0%{-ms-transform:scale(1);opacity:1}70%{-ms-transform:scale(3);opacity:0}to{-ms-transform:scale(1);opacity:0}}@keyframes mapboxgl-user-location-dot-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:0}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;width:1px;height:1px;border-radius:100%}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{position:absolute;top:0;left:0;width:0;height:0;background:#fff;border:2px dotted #202020;opacity:.5}@media print{.mapbox-improve-map{display:none}}.plot-expanded-overlay{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.plot-expanded-content{background-color:var(--color-surface);border-radius:var(--card-radius);width:95vw;height:90vh;max-width:1600px;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;position:relative}.plot-expanded-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s ease;z-index:10;box-shadow:var(--shadow-md)}.plot-expanded-close:hover{background-color:var(--color-bg);color:var(--color-text)}.plot-expanded-body{flex:1;padding:20px;overflow:auto;display:flex;flex-direction:column}.plot-expanded-body .plot-wrapper{height:100%;display:flex;flex-direction:column}.plot-expanded-body .plot-title{font-size:16px;margin-bottom:16px}.ai-fab{position:fixed;right:14px;bottom:22px;z-index:1200;width:54px;height:54px;border-radius:50%;border:none;cursor:pointer;color:#fff;font-size:24px;background:linear-gradient(135deg,#6366f1,#7c3aed);box-shadow:0 8px 24px #6366f173;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.ai-fab:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 12px 30px #6366f18c}.ai-panel{position:fixed;right:60px;bottom:40px;z-index:1200;width:400px;max-width:calc(100vw - 44px);height:560px;max-height:calc(100vh - 44px);display:flex;flex-direction:column;background:#fffffff5;-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);border:1px solid rgba(255,255,255,.7);border-radius:18px;box-shadow:0 24px 70px #1e1b4b47;overflow:hidden;animation:aiPanelIn .22s cubic-bezier(.2,.8,.2,1);font-family:Inter,-apple-system,sans-serif}@keyframes aiPanelIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff}.ai-header-title{display:flex;align-items:center;gap:10px}.ai-header-icon{font-size:20px}.ai-header-sub{font-size:11px;opacity:.85}.ai-header-actions{display:flex;align-items:center;gap:8px}.ai-close,.ai-clear-btn{background:#ffffff2e;border:none;color:#fff;border-radius:8px;padding:5px 10px;cursor:pointer;font-size:12px}.ai-close:hover,.ai-clear-btn:hover{background:#ffffff4d}.ai-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.ai-hello{color:#64748b;font-size:13px}.ai-hello p{margin:4px 0 10px}.ai-hello button{display:block;width:100%;text-align:left;margin-bottom:6px;padding:9px 12px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:10px;cursor:pointer;font-size:12.5px;color:#334155}.ai-hello button:hover{border-color:#6366f1;background:#eef2ff}.ai-msg{max-width:88%;padding:9px 13px;border-radius:14px;font-size:13.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.ai-msg.user{align-self:flex-end;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;border-bottom-right-radius:4px}.ai-msg.ai{align-self:flex-start;background:#f1f5f9;color:#1e293b;border-bottom-left-radius:4px;max-width:95%}.ai-msg.ai.error{background:#fef2f2;color:#991b1b}.ai-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.ai-msg .ai-chips{margin:0 0 6px}.ai-chip{font-size:10.5px;background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-family:ui-monospace,Menlo,monospace}.ai-chip.fail{background:#fef2f2;color:#991b1b;border-color:#fecaca}.ai-chart{margin-top:8px;background:#fff;border-radius:10px;padding:4px;position:relative}.ai-chart-id{position:absolute;top:6px;right:8px;z-index:2;font:600 9.5px ui-monospace,Menlo,monospace;color:#94a3b8;background:#f1f5f9;border-radius:6px;padding:1px 6px}.ai-table-wrap{margin-top:8px;max-height:220px;overflow:auto;border-radius:10px;background:#fff}.ai-table{border-collapse:collapse;width:100%;font-size:11px}.ai-table th{position:sticky;top:0;background:#eef2ff;color:#4338ca;padding:5px 8px;text-align:left;white-space:nowrap}.ai-table td{padding:4px 8px;border-top:1px solid #f1f5f9;white-space:nowrap}.ai-table-more{padding:6px 8px;color:#94a3b8;font-size:11px}.ai-map-note{margin-top:8px;font-size:12px;color:#4338ca;background:#eef2ff;border-radius:8px;padding:6px 10px}.ai-typing{display:flex;gap:4px;padding:4px 2px}.ai-typing span{width:7px;height:7px;border-radius:50%;background:#a5b4fc;animation:aiBounce 1.2s infinite}.ai-typing span:nth-child(2){animation-delay:.15s}.ai-typing span:nth-child(3){animation-delay:.3s}@keyframes aiBounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.ai-input-row{display:flex;gap:8px;padding:12px;border-top:1px solid #e2e8f0;background:#fff}.ai-input-row textarea{flex:1;resize:none;border:1px solid #e2e8f0;border-radius:10px;padding:9px 12px;font:13.5px Inter,sans-serif;outline:none;max-height:90px}.ai-input-row textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.ai-send{width:40px;border:none;border-radius:10px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;cursor:pointer;font-size:15px;transition:filter .15s ease}.ai-send:hover:not(:disabled){filter:brightness(1.08)}.ai-send:disabled{opacity:.45;cursor:default}.ai-fab-stack{position:fixed;right:60px;bottom:40px;z-index:1200;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.ai-fab-stack .ai-fab{position:static}.ai-layer-pill{border:none;cursor:pointer;background:#fff;color:#6d28d9;font:600 12px Inter,sans-serif;border-radius:999px;padding:6px 12px;box-shadow:0 4px 14px #1e1b4b38}.ai-layer-pill:hover{background:#eef2ff}.ai-inline-clear{margin-left:8px;border:none;background:none;color:#6d28d9;font-size:11px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.ai-tiles-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;margin:12px 16px}.ai-tile{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px 10px;box-shadow:0 2px 10px #1e1b4b0f}.ai-tile-head{display:flex;align-items:center;gap:8px;margin-bottom:2px}.ai-tile-index{font:700 10px ui-monospace,Menlo,monospace;color:#6d28d9;background:#ede9fe;border-radius:6px;padding:1px 6px}.ai-tile-title{flex:1;font-size:12.5px;font-weight:600;color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-tile-close{border:none;background:#f1f5f9;color:#64748b;border-radius:6px;padding:2px 7px;cursor:pointer;font-size:11px}.ai-tile-close:hover{background:#fee2e2;color:#b91c1c}.ai-chip.pending{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.ai-chip-spin{display:inline-block;width:9px;height:9px;border-radius:50%;border:2px solid #a5b4fc;border-top-color:#4338ca;animation:aiSpin .7s linear infinite;vertical-align:-1px}@keyframes aiSpin{to{transform:rotate(360deg)}}.ai-send.ai-stop{background:#dc2626}.ai-send.ai-stop:hover{filter:brightness(1.1)}.ai-stopped-note{font-size:11px;color:#9ca3af;margin-top:4px}.ai-chip{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.controls-bar{display:flex;align-items:center;gap:32px;padding:12px 24px;background-color:var(--color-surface);border-bottom:1px solid var(--color-border)}.control-group{display:flex;align-items:center;gap:10px}.control-label{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.control-select{padding:6px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:13px;color:var(--color-text);background-color:var(--color-surface);cursor:pointer;min-width:160px}.control-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.toggle-group{display:flex;background-color:var(--color-bg);border-radius:var(--radius-sm);padding:2px}.toggle-btn{padding:6px 12px;border:none;background:transparent;font-size:13px;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-xs);transition:all var(--transition-fast);white-space:nowrap}.toggle-btn:hover{color:var(--color-text)}.toggle-btn.active{background-color:var(--color-surface);color:var(--color-primary-dark);font-weight:500;box-shadow:0 1px 2px #0000000d}.mode-toggle{flex-wrap:wrap}.transit-stop-search-inline{position:relative;display:flex;flex-direction:row;align-items:center;gap:.5rem}.transit-stop-search-inline .control-label{white-space:nowrap;margin-bottom:0}.search-wrapper{position:relative;width:300px}.transit-stop-input-inline{width:100%;padding:6px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);outline:none;font-size:13px;font-family:Inter,sans-serif;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast)}.transit-stop-input-inline:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.transit-stop-input-inline:disabled{background:var(--color-bg);cursor:not-allowed;opacity:.6}.transit-stop-dropdown{list-style:none;margin:4px 0 0;padding:4px 0;background:var(--color-surface);border-radius:var(--radius-sm);width:100%;max-height:300px;overflow-y:auto;position:absolute;top:100%;left:0;z-index:1000;box-shadow:0 4px 12px #00000026;border:1px solid var(--color-border)}.transit-stop-dropdown li{padding:10px 12px;cursor:pointer;transition:all var(--transition-fast);border-bottom:1px solid var(--color-bg)}.transit-stop-dropdown li:last-child{border-bottom:none}.transit-stop-dropdown li:hover,.transit-stop-dropdown li.selected{background:var(--color-primary-light)}.stop-name{font-size:13px;font-weight:600;color:var(--color-text-dark);margin-bottom:2px}.stop-modes{font-size:11px;color:var(--color-text-secondary);font-style:italic}.transit-stop-dropdown::-webkit-scrollbar{width:6px}.transit-stop-dropdown::-webkit-scrollbar-track{background:var(--color-bg);border-radius:3px}.transit-stop-dropdown::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:3px}.transit-stop-dropdown::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.line-filter-wrapper{position:relative;width:250px}.transit-line-select{width:100%;padding:6px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);outline:none;font-size:13px;font-family:Inter,sans-serif;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-fast);cursor:pointer}.transit-line-select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.transit-line-select:disabled{background:var(--color-bg);cursor:not-allowed;opacity:.6}.polygon-uploader-inline{display:flex;flex-direction:row;align-items:center;gap:6px;background-color:var(--color-bg);padding:2px 6px 2px 10px;border-radius:var(--radius-sm)}.polygon-uploader-summary{font-size:13px;color:var(--color-text-secondary);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5}.polygon-uploader-prop{padding:4px 8px;font-size:12px;border:1px solid var(--color-border-light);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-text);outline:none;cursor:pointer;max-width:140px}.polygon-uploader-prop:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.polygon-uploader-inline .toggle-btn{background-color:var(--color-surface);color:var(--color-text);border-radius:var(--radius-xs);box-shadow:0 1px 2px #0000000d;padding:4px 10px;font-size:12px;font-weight:500}.polygon-uploader-inline .toggle-btn:hover{color:var(--color-primary-dark)}.demo-badge{position:fixed;top:12px;right:12px;z-index:30;padding:4px 10px;border:1px solid var(--color-primary);border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font:600 12px/1.4 inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-sm)}.demo-badge:hover{background:var(--color-surface)}.demo-box{position:fixed;top:12px;right:12px;z-index:30;width:210px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-md);transition:right .3s ease}body:has(.right-sidebar.collapsed) .demo-box{right:60px}body:has(.right-sidebar.open) .demo-box{right:332px}body:has(.right-sidebar.expanded) .demo-box{right:612px}body:has(.right-sidebar.feature-table-open) .demo-box{right:912px}.demo-hover{position:fixed;top:12px;right:12px;z-index:30}.demo-hover .demo-hover-badge{position:static}.demo-box.demo-hover-panel{position:absolute;top:calc(100% + 6px);right:0;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.demo-box.demo-hover-panel:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.demo-hover:hover .demo-hover-panel,.demo-hover:focus-within .demo-hover-panel{opacity:1;visibility:visible;transform:translateY(0)}.demo-box-note{margin:0;color:var(--color-text);font-size:12px;line-height:1.45}.demo-box-title{margin:10px 0 4px;padding-top:10px;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.demo-box-list{margin:0;padding:0 0 0 14px;color:var(--color-text);font-size:12px;line-height:1.6}.demo-box-list li::marker{color:var(--color-text-muted)}.demo-box-about{margin-top:8px;padding:0;border:none;background:transparent;color:var(--color-primary-dark);font-size:12px;font-weight:600;cursor:pointer}.demo-box-about:hover{text-decoration:underline}.demo-banner{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:40;width:min(640px,calc(100vw - 32px));padding:16px 44px 16px 18px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md),0 8px 24px #0000001f}.demo-banner-text{margin:0;font-size:13px;line-height:1.5}.demo-banner-text+.demo-banner-text{margin-top:8px}.demo-banner-close{position:absolute;top:2px;right:6px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);font-size:20px;line-height:1;cursor:pointer;transition:color .15s ease}.demo-banner-close:hover{color:var(--color-primary)}.full-version-tag{padding:1px 6px;border:1px solid var(--color-border-light);border-radius:var(--radius-xs);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:10px;line-height:1.6;white-space:nowrap;cursor:pointer}.full-version-tag:hover{color:var(--color-primary-dark);border-color:var(--color-primary)}.left-sidebar-item.full-version-item{cursor:default;opacity:.75}.left-sidebar-item.full-version-item .left-sidebar-label{color:var(--color-text-muted)}.full-version-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.full-version-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 6px;cursor:default}.full-version-list{list-style:none;margin:2px 0 0;padding:0 4px}.full-version-list button{display:flex;align-items:center;gap:8px;width:100%;padding:4px 8px;border:none;border-radius:var(--radius-xs);background:transparent;color:var(--color-text-muted);font-size:12px;text-align:left;cursor:pointer}.full-version-list button:hover{background:var(--color-bg);color:var(--color-text-secondary)}.full-version-icon{width:12px}@media(max-width:600px){.demo-banner{bottom:12px}}
