.visitor-locator-routes-host { position: absolute; inset: 0; z-index: 1000; pointer-events: none; }
.visitor-locator-routes { position: absolute; left: 10px; bottom: 104px; width: max-content; max-width: calc(100% - 76px); color: #263a47; font: 12px/1.5 "Microsoft YaHei", sans-serif; text-align: left; pointer-events: auto; }
.visitor-locator-routes button { font: inherit; cursor: pointer; }
.visitor-locator-routes button:focus-visible { outline: 2px solid #1687e6; outline-offset: 2px; }
.visitor-locator-routes__toggle { display: block; padding: 8px 11px; border: 1px solid #d9e5ec; border-radius: 8px; background: #ffffffef; color: #245c87; box-shadow: 0 2px 10px #153b5222; font-weight: 600 !important; }
.visitor-locator-routes__panel { width: 280px; max-width: 100%; box-sizing: border-box; margin-top: 6px; padding: 10px; border: 1px solid #d9e5ec; border-radius: 10px; background: #fffffff5; box-shadow: 0 3px 14px #153b5228; }
.visitor-locator-routes__heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 7px; font-weight: 600; }
.visitor-locator-routes__heading button, .visitor-locator-routes__detail button { flex: none; padding: 4px 7px; border: 1px solid #cfe0ee; border-radius: 5px; background: #f4faff; color: #1672b8; }
.visitor-locator-routes__list { max-height: 160px; overflow: auto; overscroll-behavior: contain; }
.visitor-locator-routes__item { display: flex; align-items: center; gap: 7px; width: 100%; box-sizing: border-box; padding: 8px 6px; margin: 3px 0; border: 1px solid transparent; border-radius: 5px; background: transparent; color: inherit; text-align: left; }
.visitor-locator-routes__item.is-selected { border-color: #bddbf4; background: #edf7ff; }
.visitor-locator-routes__item i { flex: none; width: 18px; height: 4px; border-radius: 3px; }
.visitor-locator-routes__item span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.visitor-locator-routes__item small { flex: none; color: #6a8293; font-size: 11px; }
.visitor-locator-routes__detail { margin-top: 7px; }
.visitor-locator-routes__detail p { max-height: 76px; overflow: auto; margin: 0 0 6px; white-space: pre-wrap; overflow-wrap: anywhere; }
.visitor-locator-routes__note { margin: 8px 0 0; color: #758895; font-size: 11px; }
.visitor-locator-routes__error { margin: 5px 0 0; color: #a86a15; font-size: 11px; }

/* Locator workspace only: keep the basemap controls, remove the technical caption. */
.locator-workspace .locator-map > .map-caption{display:none!important}
.locator-workspace .locator-map > .basemap-switch{top:14px!important}
