.transit-settings[data-v-3a8ee272]:not([open]){display:none}.transit-settings[data-v-3a8ee272]{border:0;padding:0;border-radius:12px;background:var(--tools-surface,#fff);color:var(--tools-text,#111827);box-shadow:0 10px 40px rgba(0,0,0,.22);width:min(520px,92vw);max-height:86vh;display:flex;flex-direction:column}.transit-settings[data-v-3a8ee272]::backdrop{background:rgba(15,23,42,.45)}.ts-head[data-v-3a8ee272]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--tools-border,#e5e5e5)}.ts-head h2[data-v-3a8ee272]{margin:0;font-size:16px;font-weight:600}.ts-close[data-v-3a8ee272]{border:0;background:transparent;font-size:22px;line-height:1;color:var(--tools-muted,#6b7280);cursor:pointer;padding:0 4px}.ts-close[data-v-3a8ee272]:hover{color:var(--tools-text,#111827)}.ts-body[data-v-3a8ee272]{padding:16px 18px;overflow-y:auto}.ts-group+.ts-group[data-v-3a8ee272]{margin-top:18px}.ts-group h3[data-v-3a8ee272]{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--tools-muted,#6b7280)}.ts-group-hint[data-v-3a8ee272]{margin:0 0 10px;font-size:12px;color:var(--tools-muted,#6b7280);line-height:1.5}.ts-modes[data-v-3a8ee272]{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.ts-mode[data-v-3a8ee272]{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--tools-border,#e5e5e5);border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ts-mode[data-v-3a8ee272]:hover{background:rgba(37,99,235,.06)}.ts-mode input[type=checkbox][data-v-3a8ee272]{width:18px;height:18px;accent-color:var(--tools-accent,#2563eb);cursor:pointer}.ts-mode-icon[data-v-3a8ee272]{font-size:18px}.ts-mode-label[data-v-3a8ee272]{font-size:14px}.ts-notes[data-v-3a8ee272]{margin:0;padding-left:18px;font-size:13px;color:var(--tools-muted,#6b7280);line-height:1.6}.ts-foot[data-v-3a8ee272]{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--tools-border,#e5e5e5)}.ts-btn[data-v-3a8ee272]{border:1px solid var(--tools-border,#e5e5e5);background:var(--tools-surface,#fff);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;color:var(--tools-text,#111827)}.ts-btn[data-v-3a8ee272]:hover{background:rgba(37,99,235,.06)}.ts-btn-primary[data-v-3a8ee272]{border-color:var(--tools-accent,#2563eb);background:var(--tools-accent,#2563eb);color:#fff}.ts-btn-primary[data-v-3a8ee272]:hover{background:var(--tools-accent-hover,#1d4ed8)}@media (max-width:640px){.transit-settings[data-v-3a8ee272]{width:92vw;max-height:80vh}}.route-panel[data-v-4cf03b92]{position:absolute;z-index:2;bottom:12px;right:12px;width:min(300px,80vw);max-height:min(70vh,560px);display:flex;flex-direction:column;overflow:hidden;background:var(--tools-surface,#fff);border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.2);font-size:13px;color:var(--tools-text,#111827)}.rp-head[data-v-4cf03b92]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--tools-border,#e5e5e5)}.rp-head strong[data-v-4cf03b92]{font-size:13px}.rp-close[data-v-4cf03b92]{border:0;background:transparent;font-size:18px;line-height:1;color:var(--tools-muted,#6b7280);cursor:pointer;padding:0 4px}.rp-close[data-v-4cf03b92]:hover{color:var(--tools-text,#111827)}.rp-body[data-v-4cf03b92]{padding:12px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.rp-empty-modes[data-v-4cf03b92]{font-size:12px;color:var(--tools-muted,#6b7280);padding:8px;background:rgba(0,0,0,.04);border-radius:6px}.rp-modes[data-v-4cf03b92]{display:flex;gap:4px;padding:3px;background:rgba(0,0,0,.04);border-radius:6px}.rp-mode[data-v-4cf03b92]{flex:1;border:0;background:transparent;padding:6px 4px;border-radius:4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--tools-text,#111827)}.rp-mode.active[data-v-4cf03b92]{background:var(--tools-surface,#fff);box-shadow:0 1px 2px rgba(0,0,0,.12);color:var(--tools-accent,#2563eb)}.rp-mode-icon[data-v-4cf03b92]{font-size:16px}.rp-mode-label[data-v-4cf03b92]{font-size:11px}.rp-od[data-v-4cf03b92]{position:relative;display:flex;flex-direction:column;gap:8px;padding:10px 36px 10px 12px;border:1px solid var(--tools-border,#e5e5e5);border-radius:6px}.od-row[data-v-4cf03b92]{display:flex;align-items:center;gap:8px}.od-dot[data-v-4cf03b92]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.od-origin[data-v-4cf03b92]{background:#10b981}.od-dest[data-v-4cf03b92]{background:#ef4444}.od-info[data-v-4cf03b92]{flex:1;min-width:0}.od-label[data-v-4cf03b92]{font-size:11px;color:var(--tools-muted,#6b7280)}.od-value[data-v-4cf03b92]{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od-clear[data-v-4cf03b92]{border:0;background:transparent;font-size:14px;line-height:1;color:var(--tools-muted,#6b7280);cursor:pointer;padding:0 4px}.od-clear[data-v-4cf03b92]:hover{color:#d93025}.od-swap[data-v-4cf03b92]{position:absolute;top:50%;right:8px;transform:translateY(-50%);background:var(--tools-surface,#fff);border:1px solid var(--tools-border,#e5e5e5);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--tools-accent,#2563eb);cursor:pointer}.od-swap[data-v-4cf03b92]:hover{background:rgba(37,99,235,.08)}.rp-hint[data-v-4cf03b92]{margin:0;font-size:12px;color:var(--tools-muted,#6b7280)}.rp-query[data-v-4cf03b92]{border:0;background:var(--tools-accent,#2563eb);color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;cursor:pointer}.rp-query[data-v-4cf03b92]:disabled{background:var(--tools-muted,#9ca3af);cursor:not-allowed}.rp-error[data-v-4cf03b92]{margin:0;font-size:12px;color:#d93025}.rp-result[data-v-4cf03b92]{border-top:1px solid var(--tools-border,#e5e5e5);padding-top:10px}.rp-routes[data-v-4cf03b92]{display:flex;flex-direction:column;gap:4px}.rp-route[data-v-4cf03b92]{border:1px solid var(--tools-border,#e5e5e5);background:var(--tools-surface,#fff);padding:8px 10px;border-radius:6px;cursor:pointer;text-align:left}.rp-route.active[data-v-4cf03b92]{border-color:var(--tools-accent,#2563eb);background:rgba(37,99,235,.06)}.rp-route-title[data-v-4cf03b92]{font-size:12px;font-weight:600;line-height:1.5;word-break:break-all}.rp-route-stats[data-v-4cf03b92]{font-size:11px;color:var(--tools-muted,#6b7280);margin-top:2px}.rp-detail[data-v-4cf03b92]{margin-top:8px}.rp-detail-head[data-v-4cf03b92]{font-size:12px;font-weight:600;margin-bottom:6px}.rp-steps[data-v-4cf03b92]{margin:0;padding-left:18px;font-size:12px;line-height:1.7;color:var(--tools-text,#374151)}.rp-steps li[data-v-4cf03b92]{margin-bottom:2px}.step-meta[data-v-4cf03b92]{margin-left:6px;color:var(--tools-muted,#6b7280)}.rp-detail-empty[data-v-4cf03b92]{margin:0;font-size:12px;color:var(--tools-muted,#6b7280)}.route-panel-enter-active[data-v-4cf03b92],.route-panel-leave-active[data-v-4cf03b92]{transition:opacity .18s ease,transform .18s ease}.route-panel-enter-from[data-v-4cf03b92],.route-panel-leave-to[data-v-4cf03b92]{opacity:0;transform:translateY(8px)}@media (max-width:640px){.route-panel[data-v-4cf03b92]{bottom:8px;right:8px;left:8px;width:auto;max-height:50vh}}:host,:root{--ol-background-color:#fff;--ol-accent-background-color:#f5f5f5;--ol-subtle-background-color:hsla(0,0%,50%,.25);--ol-partial-background-color:hsla(0,0%,100%,.75);--ol-foreground-color:#333;--ol-subtle-foreground-color:#666;--ol-brand-color:#0af}.ol-box{box-sizing:border-box;border-radius:2px;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color)}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);border-top:none;color:var(--ol-foreground-color);font-size:10px;text-align:center;margin:1px;will-change:contents,width;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{width:1px;height:15px;background-color:var(--ol-foreground-color);float:right;z-index:10}.ol-scale-step-text{bottom:-5px;font-size:10px;z-index:11}.ol-scale-step-text,.ol-scale-text{position:absolute;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-text{font-size:12px;text-align:center;bottom:25px}.ol-scale-singlebar{position:relative;height:10px;z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color)}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-unselectable,.ol-viewport{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ol-grabbing{cursor:grabbing}.ol-grab{cursor:move;cursor:grab}.ol-control{position:absolute;background-color:var(--ol-subtle-background-color);border-radius:4px}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{display:block;margin:1px;padding:0;color:var(--ol-subtle-foreground-color);font-weight:700;text-decoration:none;font-size:inherit;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:var(--ol-background-color);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:focus,.ol-control button:hover{text-decoration:none;outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em);display:flex;flex-flow:row-reverse;align-items:center}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{margin:0;padding:1px .5em;color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);font-size:12px}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);height:150px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:0;left:0;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}.tianditu-map[data-v-0a35f8d6]{position:relative;overflow:hidden;padding:0}.map[data-v-0a35f8d6]{width:100%;height:min(72vh,720px);min-height:420px}.map-error[data-v-0a35f8d6]{box-sizing:border-box;min-height:180px;padding:24px 16px;color:var(--tools-muted,#6b7280);font-size:14px;line-height:1.6}.map-error a[data-v-0a35f8d6]{color:var(--tools-accent,#2563eb)}.toolbar[data-v-0a35f8d6]{position:absolute;z-index:2;top:10px;left:12px;right:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;pointer-events:none}.modes[data-v-0a35f8d6],.search[data-v-0a35f8d6]{pointer-events:auto;display:flex;overflow:hidden;background:var(--tools-surface,#fff);border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.18)}.modes button[data-v-0a35f8d6],.search button[data-v-0a35f8d6]{border:0;background:var(--tools-surface,#fff);padding:8px 12px;color:var(--tools-text,#111827);cursor:pointer;font-size:16px}.modes button[data-v-0a35f8d6]:disabled,.search button[data-v-0a35f8d6]:disabled,.search input[data-v-0a35f8d6]:disabled{cursor:not-allowed;opacity:.6}.modes button.active[data-v-0a35f8d6]{background:var(--tools-accent,#2563eb);color:#fff}.search input[data-v-0a35f8d6]{border:0;width:min(220px,42vw);padding:8px 12px;background:transparent;color:var(--tools-text,#111827);font-size:16px;outline:none}.search button[data-v-0a35f8d6]{border-left:1px solid var(--tools-border,#e5e5e5);color:var(--tools-accent,#2563eb)}.hint[data-v-0a35f8d6]{margin:0;padding:6px 10px;max-width:100%;background:hsla(0,0%,100%,.92);border-radius:8px;font-size:13px;color:#333}.tianditu-map[data-v-0a35f8d6] .popup{display:flex;gap:8px;align-items:flex-start;max-width:260px;padding:8px 10px;background:#fff;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.3);font-size:13px;line-height:1.4;color:#111}.tianditu-map[data-v-0a35f8d6] .popup-text{flex:1;overflow-wrap:anywhere}.tianditu-map[data-v-0a35f8d6] .popup-close{flex-shrink:0;border:0;padding:0;background:transparent;font-size:14px;line-height:1.2;color:#666;cursor:pointer}.tianditu-map[data-v-0a35f8d6] .popup-close:hover{color:#d93025}.back-btn[data-v-0a35f8d6]{pointer-events:auto;border:0;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.18);background:var(--tools-surface,#fff);padding:8px 12px;font-size:16px;color:var(--tools-accent,#2563eb);cursor:pointer}.back-btn[data-v-0a35f8d6]:disabled{cursor:not-allowed;opacity:.6}.tianditu-map[data-v-0a35f8d6] .ol-zoom{top:auto;left:8px;right:auto;bottom:8px}.places-panel[data-v-0a35f8d6]{position:absolute;z-index:2;top:64px;right:12px;width:min(240px,62vw);max-height:min(56vh,460px);display:flex;flex-direction:column;overflow:hidden;background:var(--tools-surface,#fff);border-radius:10px;box-shadow:0 1px 4px rgba(0,0,0,.18);font-size:13px}@media (max-width:640px){.toolbar[data-v-0a35f8d6]{top:8px;left:8px;right:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100% - 16px)}.toolbar .back-btn[data-v-0a35f8d6],.toolbar .modes[data-v-0a35f8d6],.toolbar .search[data-v-0a35f8d6]{border-radius:6px;width:auto}.toolbar .back-btn[data-v-0a35f8d6]{align-self:center}.back-btn[data-v-0a35f8d6],.modes button[data-v-0a35f8d6],.search button[data-v-0a35f8d6]{padding:5px 8px;font-size:16px}.search input[data-v-0a35f8d6]{width:110px;min-width:0;padding:5px 8px;font-size:16px}.hint[data-v-0a35f8d6]{padding:4px 8px;font-size:11px;line-height:1.3;max-width:100%}.places-panel[data-v-0a35f8d6]{top:auto;bottom:8px;right:8px;left:auto;width:180px;max-width:56vw;max-height:32vh;font-size:12px;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.22)}.places-head[data-v-0a35f8d6]{padding:8px 10px}.places-head strong[data-v-0a35f8d6]{font-size:12px}.place-fly[data-v-0a35f8d6]{padding:6px 8px}.place-coord[data-v-0a35f8d6]{font-size:11px}.map[data-v-0a35f8d6]{min-height:320px}}.places-head[data-v-0a35f8d6]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--tools-border,#e5e5e5)}.places-head strong[data-v-0a35f8d6]{font-size:13px;color:var(--tools-text,#111827)}.places-clear[data-v-0a35f8d6]{border:0;padding:0;background:transparent;font-size:12px;color:var(--tools-accent,#2563eb);cursor:pointer}.places-list[data-v-0a35f8d6]{margin:0;padding:0;list-style:none;overflow-y:auto}.places-list li[data-v-0a35f8d6]{display:flex;align-items:stretch;border-bottom:1px solid var(--tools-border,#f0f0f0)}.places-list li[data-v-0a35f8d6]:last-child{border-bottom:0}.place-fly[data-v-0a35f8d6]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;border:0;padding:8px 10px;background:transparent;text-align:left;cursor:pointer}.place-name[data-v-0a35f8d6]{color:var(--tools-text,#111827);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.place-coord[data-v-0a35f8d6]{color:var(--tools-muted,#6b7280);font-size:12px}.place-del[data-v-0a35f8d6]{border:0;border-left:1px solid var(--tools-border,#f0f0f0);padding:0 10px;background:transparent;font-size:16px;color:#999;cursor:pointer}.place-del[data-v-0a35f8d6]:hover{color:#d93025}.place-set-actions[data-v-0a35f8d6]{display:flex;border-left:1px solid var(--tools-border,#f0f0f0)}.place-set[data-v-0a35f8d6]{border:0;padding:0 10px;background:transparent;font-size:13px;color:var(--tools-accent,#2563eb);cursor:pointer}.place-set[data-v-0a35f8d6]:hover{background:rgba(37,99,235,.08)}.place-set+.place-set[data-v-0a35f8d6]{border-left:1px solid var(--tools-border,#f0f0f0)}