.ptp-city-map {min-width:0;color:#172536;font-size:14px;line-height:1.5}
.ptp-city-map [hidden] {display:none!important}
.ptp-city-map__total {margin:0 0 8px;font-size:17px}
.ptp-city-map__legend {display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.ptp-city-map__key {border-radius:5px;padding:4px 7px;background:#edf2f7}
.ptp-city-map__key--point {background:#e2f4e9;color:#176744}
.ptp-city-map__key--mobile {background:#e6f0ff;color:#175ba0}
.ptp-city-map__canvas {height:440px;width:100%;border-radius:16px;z-index:0}
.ptp-city-map__hint {font-size:12px;margin:12px 0;color:#52647a}
.ptp-city-map__marker {border:0;background:transparent}
.ptp-city-map__marker span {display:block;padding:7px 4px;border:2px solid #fff;border-radius:18px;background:#176c4e;color:#fff;text-align:center;font:600 13px/18px sans-serif;box-shadow:0 2px 8px #0004;white-space:nowrap}
.ptp-city-map__marker--coverage span {background:#1761a8;border-style:dashed}
.ptp-city-map__marker--point span {box-sizing:border-box;width:34px;height:34px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);font-size:14px;line-height:16px}
.ptp-city-map__cluster {border:3px solid #fff;border-radius:50%;background:#176c4e;color:#fff;box-shadow:0 2px 8px #0004;text-align:center;font:bold 15px/36px sans-serif}
.ptp-city-map__cluster--coverage {background:#1761a8;border-style:dashed}
.ptp-city-map__coverage-note {font-size:12px;margin:0 0 12px;color:#52647a}
.ptp-archive-map-sticky .ptp-city-map__canvas {height:400px}
.ptp-archive-map-sticky {min-width:0}
.ptp-city-map__directory {border-top:1px solid #dce5ed;padding-top:12px}
.ptp-city-map__directory summary {cursor:pointer;font-weight:600;color:#175ba0}
.ptp-city-map__directory ul,.ptp-city-map__popup ul {list-style:none;padding:0;margin:12px 0 0}
.ptp-city-map__directory li,.ptp-city-map__popup li {padding:8px 0;border-bottom:1px solid #e4eaf0}
.ptp-city-map__directory a,.ptp-city-map__popup a {font-weight:600;overflow-wrap:anywhere}
.ptp-city-map__directory small,.ptp-city-map__popup small {display:block;color:#52647a;font-size:12px}
.ptp-city-map__popup p {font-size:12px!important;margin:8px 0!important}
.ptp-city-map__show {border:1px solid #c9d8e9;border-radius:5px;background:white;color:#175ba0;padding:5px 9px;font-size:12px;margin-top:6px;cursor:pointer}
.ptp-city-map__show:focus-visible,.ptp-city-map__marker:focus-visible {outline:3px solid #ecac36;outline-offset:3px}
@media(max-width:600px) {.ptp-city-map__canvas {height:380px}}
