#catalog-map,.public-results-map{margin:18px 0 24px;border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--sheet)}
.catalog-map-toolbar{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap}
.catalog-map-toolbar p{flex:1 1 220px;color:var(--moss);margin:0}
.catalog-map-canvas{height:440px;max-height:65dvh;border-radius:12px;isolation:isolate;background:var(--pale)}
.location-map-canvas{height:300px;max-height:55dvh;border-radius:12px;isolation:isolate;background:var(--pale)}
.public-location-picker{min-width:0;grid-column:1/-1;margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:16px}
.public-location-picker legend{padding:0 6px;font-weight:600}
.public-location-picker .actions{flex-wrap:wrap}
.listing-map-marker{background:transparent;border:1px solid var(--pine);color:var(--pine);border-radius:99px;white-space:nowrap;padding:9px 12px;font:600 14px Onest,sans-serif;box-shadow:none;text-shadow:0 1px 2px #fff;min-width:44px;min-height:44px;display:grid;place-items:center}
.map-offers{max-height:230px;overflow:auto;max-width:180px}
.map-offers p{margin:0 0 4px;color:var(--moss);font-size:12px}
.map-offers button{display:block;min-height:44px;width:100%;padding:6px 36px 6px 4px;border:0;border-radius:8px;text-align:left;background:transparent;color:var(--ink);margin:0;font:500 14px/1.4 Onest,sans-serif;overflow-wrap:anywhere}
.map-offer-price{display:block;font-weight:600}
.map-offers button+button{margin-top:4px}
.listing-map-popup .leaflet-popup-content-wrapper{border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.listing-map-popup .leaflet-popup-tip{background:transparent;box-shadow:none}
.listing-map-popup .map-offers,.listing-map-popup .leaflet-popup-close-button{text-shadow:0 1px 2px #fff,0 0 3px #ffffffb3}
.listing-map-popup .leaflet-popup-content{margin:8px 6px 8px 10px}
.leaflet-container .listing-map-popup a.leaflet-popup-close-button{top:0;right:0;width:44px;height:44px;min-width:44px;min-height:44px;font-size:20px}
.catalog-map-mode.home-rail #grid{display:grid;grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-columns:auto;overflow:visible}
.catalog-map-mode>.home-rail-controls{display:none}
.catalog-map-mode .card-invite{display:none}
.leaflet-container .leaflet-control-zoom.leaflet-bar{border:0;box-shadow:none;background:transparent;display:grid;gap:2px}
.leaflet-container .leaflet-control-zoom a{position:relative;isolation:isolate;width:44px;height:44px;min-width:44px;min-height:44px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--pine);font-size:20px;line-height:1;text-shadow:0 1px 2px #fff}
.leaflet-container .leaflet-control-zoom a.leaflet-disabled{color:var(--moss)}
@media(hover:hover) and (pointer:fine){.leaflet-container .leaflet-control-zoom a{width:32px;height:32px;min-width:32px;min-height:32px}}
.leaflet-container a.leaflet-popup-close-button{width:44px;height:44px;display:grid;place-items:center;font-size:23px;color:var(--pine)}
.leaflet-popup-content{margin-right:42px}
.leaflet-container a:focus-visible,.listing-map-marker:focus-visible{outline:2px solid var(--pine);outline-offset:3px}
@media(max-width:800px){.catalog-map-mode.home-rail #grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){#catalog-map,.public-results-map{padding:10px}.catalog-map-mode.home-rail #grid{grid-template-columns:minmax(0,1fr)}.catalog-map-toolbar p{flex-basis:100%}.catalog-map-toolbar button{flex:1 1 130px}.catalog-map-canvas{height:390px}}

.public-results-map[hidden]{display:none}
.city-options .city-option-child{padding-left:28px;font-weight:400}

.location-error{font-size:14px;color:var(--pine)}

.leaflet-container .leaflet-control-attribution.leaflet-control{background:transparent;text-shadow:0 1px 2px #fff}
