.psba-map-wrap { position: relative; }
.psba-map { width: 100%; border-radius: 12px; overflow: hidden; background: #e8eee9; z-index: 0; }
.psba-map-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.psba-map-filter {
	display: inline-flex; align-items: center; gap: 6px; cursor: pointer;
	padding: 6px 12px; border-radius: 999px; font-size: 14px; line-height: 1.2;
	border: 2px solid var(--cor); background: #fff; color: #1d2320; user-select: none;
}
.psba-map-filter input { accent-color: var(--cor); margin: 0; }
.psba-map-filter:has(input:checked) { background: var(--cor); color: #fff; }
.psba-map-erro { position: absolute; left: 12px; bottom: 12px; z-index: 500; margin: 0; padding: 6px 10px; background: #fff; border-radius: 6px; font-size: 14px; }

.psba-pin span {
	display: block; width: 100%; height: 100%;
	background: var(--cor); border: 3px solid #fff;
	border-radius: 50% 50% 50% 0; transform: rotate(-45deg);
	box-shadow: 0 2px 6px rgba(0, 0, 0, .35);
}
.psba-pin--principal span { border-width: 4px; }

.psba-popup { display: block; color: #1d2320 !important; text-decoration: none; font-size: 14px; line-height: 1.35; }
.psba-popup img { display: block; width: 100%; height: 120px; object-fit: cover; border-radius: 6px; margin-bottom: 8px; }
.psba-popup strong { display: block; font-size: 16px; margin: 2px 0 4px; }
.psba-popup__cat { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--cor); }
.psba-popup__txt { display: block; color: #595b5b; }
.psba-popup__mais { display: block; margin-top: 6px; font-weight: 600; color: #004129; }
.leaflet-popup-content { margin: 12px; }

/* Agrupamento de pontos (cluster) com as cores do portal */
.marker-cluster { background: rgba(0, 65, 41, .25); border-radius: 50%; }
.marker-cluster div {
	width: 30px; height: 30px; margin: 5px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	background: #004129; color: #fff; font: 700 13px/1 system-ui, sans-serif;
}
.marker-cluster-medium div { background: #00415c; }
.marker-cluster-large div { background: #ee721c; }
.psba-map[style*="--cluster"] .marker-cluster div { background: var(--cluster); }
.psba-map[style*="--cluster"] .marker-cluster { background: color-mix(in srgb, var(--cluster) 30%, transparent); }
