.station-map{--station-map-ink: #17251b;--station-map-muted: #5f7064;--station-map-card: #fffdf8;--station-map-border: rgba(35, 51, 40, .18);--station-map-primary: #1f8a50;position:relative;width:100%;min-height:320px;border:1px solid var(--station-map-border);border-radius:18px;background:#e7eee6;overflow:hidden;color:var(--station-map-ink);isolation:isolate}.station-map .sr-only,.station-map__sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.station-map[data-map-theme=night]{--station-map-card: #101813;--station-map-ink: #f0f7ef;--station-map-muted: #b9c8bd;--station-map-border: rgba(220, 240, 225, .18);background:#111815}.station-map__viewport{width:100%;min-height:var(--station-map-height, 420px);height:100%;z-index:1}.station-map .maplibregl-map{font-family:inherit;background:#e7eee6}.station-map[data-map-theme=night] .maplibregl-map{background:#111815}.station-map .maplibregl-canvas{outline:none}.station-map .maplibregl-ctrl-top-right{top:10px;right:10px}.station-map .maplibregl-ctrl-bottom-right{right:10px;bottom:10px}.station-map .maplibregl-ctrl-group,.station-map .maplibregl-ctrl-attrib{border:1px solid var(--station-map-border);border-radius:12px;box-shadow:0 10px 24px #1018121f;background:color-mix(in srgb,var(--station-map-card) 90%,transparent);color:var(--station-map-ink);backdrop-filter:blur(10px) saturate(1.08)}.station-map .maplibregl-ctrl-attrib{max-width:min(52vw,360px);font-size:10px;line-height:1.25}.station-map .maplibregl-ctrl-attrib.maplibregl-compact{min-height:28px;min-width:28px}.station-map .maplibregl-ctrl-attrib a{color:var(--station-map-primary);font-weight:700}.station-map[data-map-theme=night] .maplibregl-ctrl button span{filter:invert(1) hue-rotate(120deg)}.station-map__toolbar{position:absolute;z-index:5;top:12px;left:12px;right:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;pointer-events:none}.station-map__toolbar>*{pointer-events:auto}.station-map__button,.station-map__radius{min-height:44px;border:1px solid var(--station-map-border);border-radius:999px;background:color-mix(in srgb,var(--station-map-card) 94%,transparent);color:var(--station-map-ink);box-shadow:0 10px 24px #1018121f;font-weight:700;font-size:14px;backdrop-filter:blur(8px)}.station-map__button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 13px;cursor:pointer}.station-map__button--icon{width:44px;padding:0;font-size:17px;line-height:1}.station-map__button:hover{border-color:#1f8a5073;color:var(--station-map-primary)}.station-map__button:focus-visible,.station-map__radius input:focus-visible,.station-map .maplibregl-ctrl button:focus-visible{outline:3px solid rgba(31,138,80,.35);outline-offset:2px}.station-map__radius{display:inline-flex;align-items:center;gap:8px;padding:0 12px;margin-left:auto}.station-map__radius input{accent-color:var(--station-map-primary);max-width:108px}.station-map__status{position:absolute;z-index:4;left:12px;bottom:12px;max-width:min(420px,calc(100% - 24px));border-radius:999px;background:color-mix(in srgb,var(--station-map-card) 92%,transparent);color:var(--station-map-muted);font-size:12px;font-weight:700;padding:8px 12px;box-shadow:0 10px 24px #1018121a;backdrop-filter:blur(8px)}.station-map__fallback{padding:18px;font-size:13px;color:var(--station-map-muted);background:linear-gradient(135deg,#1f8a5014,#0b72850f);min-height:inherit}.station-map[data-station-map-ready=true] .station-map__fallback{display:none}.station-map .maplibregl-ctrl-group button{width:44px;height:44px}.station-map.is-loading .station-map__fallback:after{content:"";display:inline-block;width:.8em;height:.8em;margin-left:.45em;border:2px solid rgba(31,138,80,.25);border-top-color:var(--station-map-primary);border-radius:999px;animation:station-map-spin .8s linear infinite}@keyframes station-map-spin{to{transform:rotate(360deg)}}@media (max-width: 640px){.station-map{border-radius:14px}.station-map__viewport{min-height:var(--station-map-mobile-height, 380px)}.station-map__toolbar{top:10px;left:10px;right:10px;gap:6px}.station-map__button{min-height:44px;padding:0 11px}.station-map__button--icon{width:44px;padding:0}.station-map .maplibregl-ctrl-group button{width:44px;height:44px}.station-map__radius{order:5;width:100%;justify-content:space-between;border-radius:14px}.station-map__radius input{flex:1;max-width:none}.station-map__status{bottom:auto;top:112px;border-radius:14px}}@media (prefers-reduced-motion: reduce){.station-map__button{transition:none!important}.station-map.is-loading .station-map__fallback:after{animation:none!important}}.city-nav{max-width:1200px;margin:0 auto;padding:32px 20px 12px;color:#15231b}@media (min-width: 640px){.city-nav{padding-left:32px;padding-right:32px}}.city-nav__head{max-width:48rem;margin-bottom:14px}.city-nav__title{margin:0;font-family:inherit;font-weight:700;font-size:clamp(22px,4vw,30px);letter-spacing:-.025em;line-height:1.08}.city-nav__lede{margin:8px 0 0;font-size:15px;font-weight:500;color:#3c5142;line-height:1.5}.city-nav--inline{padding-top:0;padding-left:0;padding-right:0;max-width:none}.city-nav__bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:0 0 12px;padding:12px;background:#fff;border:2px solid #15231b;border-radius:16px}.city-nav__bar:not(.is-ready){visibility:hidden}.city-nav__field{display:flex;flex-direction:column;min-width:0}.city-nav__field--place{flex:2 1 240px}.city-nav__field--vehicle{flex:1 1 200px}.city-nav__field select{min-height:46px;min-width:0;width:100%;border:1px solid #e4dcc9;border-radius:12px;background:#fbf6ec;padding:0 12px;font:inherit;font-size:16px;font-weight:600;color:#15231b}.city-nav__field select:focus-visible{outline:3px solid rgba(31,138,80,.35);outline-offset:1px;border-color:#137a52}.city-nav__submit{min-height:46px;padding:0 18px;border:0;border-radius:12px;background:#137a52;color:#fff;font:inherit;font-weight:700;font-size:14px;cursor:pointer;white-space:nowrap}.city-nav__submit:hover{background:#0c4a33}.city-nav__submit:focus-visible{outline:3px solid rgba(31,138,80,.35);outline-offset:2px}@media (max-width: 640px){.city-nav__submit{flex:1 1 100%}}.city-nav__fit{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin:-2px 0 12px;font-size:13px;font-weight:600;color:#3c5142}.city-nav__fit[hidden]{display:none}.city-nav__legend{display:inline-flex;align-items:center;gap:6px}.city-nav__legend i{width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #c9c2b3}.city-nav__legend .is-direct{background:#176b4d}.city-nav__legend .is-adapter{background:#9a5b12}.city-nav__legend .is-none{background:#9c2f25}.city-nav__fit-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer}.city-nav__fit-toggle input{width:20px;height:20px;accent-color:#137a52}[data-map-highlight=true]{outline:3px solid #137a52;outline-offset:3px;border-radius:16px;transition:outline-color .3s}.city-nav-popup__meta{margin-top:2px;font-size:12.5px;font-weight:600;color:#3c5142}.city-nav-popup__fit{margin:8px 0 4px;font-size:12.5px;font-weight:700;color:#137a52}.city-nav-popup .city-nav-popup__link{margin-top:8px;width:100%;border:0;font-family:inherit;text-align:left;cursor:pointer}.city-nav-popup__link--quiet{background:#fff!important;color:#137a52!important;border:1px solid #e4dcc9!important}.city-nav-popup__link--quiet:hover{border-color:#137a52!important}.city-nav__search-label{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6e7c70;margin-bottom:6px}.city-nav__bar input[type=search]{flex:1;min-width:0;min-height:46px;border:1px solid #e4dcc9;border-radius:12px;background:#fff;padding:0 14px;font:inherit;font-size:16px;color:#15231b}.city-nav__bar input[type=search]:focus-visible{outline:3px solid rgba(31,138,80,.35);outline-offset:1px;border-color:#137a52}.city-nav-map .station-map__status{right:auto}@media (max-width: 640px){.city-nav-map .station-map__status{top:auto;bottom:10px;max-width:calc(100% - 64px)}}.city-nav-popup-wrap .maplibregl-popup-content{border-radius:14px;padding:14px 32px 14px 14px;box-shadow:0 14px 32px #10181233;font-family:inherit;color:#15231b}.city-nav-popup-wrap .maplibregl-popup-close-button{width:32px;height:32px;font-size:20px;color:#5f7064}.city-nav-popup__title{font-weight:700;font-size:16px;letter-spacing:-.01em}.city-nav-popup__stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 12px}.city-nav-popup__stats dt{font-size:11px;font-weight:700;color:#6e7c70}.city-nav-popup__stats dd{margin:2px 0 0;font-size:18px;font-weight:700}.city-nav-popup__link{display:block;min-height:44px;padding:12px;border-radius:10px;background:#137a52;color:#fff!important;font-weight:700;font-size:13.5px;text-decoration:none;line-height:1.3}.city-nav-popup__link:hover{background:#0c4a33}.city-nav__subhead{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6e7c70}.city-nav__nearby{margin-top:14px;padding:16px;background:#fff;border:1px solid #efe7d6;border-radius:16px}.city-nav__nearby-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}@media (min-width: 640px){.city-nav__nearby-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.city-nav__nearby-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.city-nav-nearby__link{display:flex;flex-direction:column;gap:2px;min-height:44px;padding:10px 12px;border:1px solid #e4dcc9;border-radius:12px;color:#15231b;text-decoration:none}.city-nav-nearby__link:hover{border-color:#137a52}.city-nav-nearby__link strong{font-size:14.5px;font-weight:700;color:#137a52}.city-nav-nearby__link span{font-size:12.5px;font-weight:600;color:#3c5142}.city-nav__states{margin-top:18px}.city-nav__states ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}@media (min-width: 640px){.city-nav__states ul{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.city-nav__states ul{grid-template-columns:repeat(5,minmax(0,1fr))}}.city-nav__states a{display:flex;align-items:baseline;justify-content:space-between;gap:6px;min-height:40px;padding:9px 11px;border-radius:10px;background:#fff;border:1px solid #efe7d6;color:#15231b;text-decoration:none;font-size:13.5px;font-weight:700}.city-nav__states a:hover{border-color:#137a52;color:#137a52}.city-nav__states small{font-size:11px;font-weight:600;color:#7c8a7e;white-space:nowrap}.city-nav__split{display:block}.city-nav__split--card{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.city-nav__split--card .city-nav__nearby{order:2;margin-top:0}.city-nav__split--card .city-nav__nearby[hidden]{display:none}@media (min-width: 1024px){.city-nav__split--card:has(.city-nav__nearby:not([hidden])){grid-template-columns:clamp(300px,28vw,360px) minmax(0,1fr);align-items:stretch}.city-nav__split--card .city-nav__nearby{order:0;display:flex;flex-direction:column;max-height:var(--station-map-height, 460px);overflow-y:auto;box-shadow:0 10px 28px #10181214}.city-nav__split--card .city-nav__nearby-list{grid-template-columns:minmax(0,1fr)}}
