.subway-location{margin:18px 0 24px;padding:20px;background:#eef5ff;border:1px solid #c1d7f7;border-radius:12px}
.subway-location-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.subway-location .subway-locate{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;height:auto;padding:12px 18px;background:#1454b8;color:#fff;border:1px solid #1454b8;border-radius:9px;font:inherit;font-weight:750;line-height:1.45;white-space:normal;text-align:left;cursor:pointer}
.subway-locate svg{width:23px;height:23px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.subway-location .subway-locate:hover:not(:disabled){background:#103f8b;border-color:#103f8b}
.subway-location .subway-locate:disabled{cursor:wait;opacity:.65}
.subway-location .subway-manual{min-height:44px;border:0;background:transparent;color:#14478d;font:inherit;font-size:.9375rem;font-weight:650;text-decoration:underline;text-underline-offset:3px;padding:9px 3px;cursor:pointer}
.subway-location button:focus-visible{outline:3px solid #173f76;outline-offset:4px}
.subway-location-hint{max-width:850px;margin:12px 0 0;font-size:.875rem;line-height:1.7;color:#354e6c;overflow-wrap:anywhere}
.subway-location-hint a{color:#14478d;text-underline-offset:2px}
.subway-location-status{margin:0;font-size:.9375rem;line-height:1.65;color:#253f60;overflow-wrap:anywhere}
.subway-location-status:not(:empty){margin-top:12px;padding-top:12px;border-top:1px solid #c9daf1}
.subway-station-distance{margin:3px 0 10px;color:#174d93;font-size:1rem;font-weight:750;line-height:1.5}
.subway-station-distance span{display:block;color:#526077;font-size:.8125rem;font-weight:450}
@media(max-width:540px){.subway-location{padding:16px 13px}.subway-location-actions{align-items:stretch;flex-direction:column;gap:5px}.subway-location .subway-locate{width:100%;padding:12px 13px;justify-content:flex-start}.subway-location .subway-manual{text-align:left}.subway-location-hint{font-size:.875rem}}
