.wmp-map-wrap { margin: 1.5rem 0; }

.wmp-map {
	width: 100%;
	border-radius: 8px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	background: #edf4f4; /* matches the theme's placeholder tone while tiles load */
}

.wmp-map-note {
	margin: 0.4rem 0 0;
	font-size: 0.79rem;
	opacity: 0.75;
}

.wmp-pop-loc { font-size: 0.85em; }
.wmp-pop-fac { font-size: 0.8em; opacity: 0.8; }

.leaflet-popup-content { margin: 10px 12px; line-height: 1.45; }
.leaflet-popup-content a { font-weight: 600; }

@media (max-width: 680px) {
	.wmp-map { border-radius: 6px; }
}

/* ---- directions ---- */
.wmp-directions { margin: 0.9rem 0; }

.wmp-directions-link {
	display: inline-block;
	padding: 0.45rem 0.9rem;
	border: 1px solid currentColor;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 600;
}

.wmp-directions-loc {
	display: inline-block;
	margin-left: 0.6rem;
	font-size: 0.85rem;
	opacity: 0.75;
}

/* ---- directory ---- */
.wmp-directory { margin: 1.5rem 0; }

.wmp-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 1rem 0 0.6rem;
}

.wmp-filter {
	padding: 0.3rem 0.7rem;
	border: 1px solid rgba(0, 0, 0, 0.18);
	border-radius: 999px;
	background: transparent;
	font-size: 0.83rem;
	cursor: pointer;
}

.wmp-filter.is-on {
	background: currentColor;
	border-color: currentColor;
}

.wmp-filter.is-on { color: inherit; }
.wmp-filter.is-on span { color: #fff; }

.wmp-count {
	margin: 0.2rem 0 0.8rem;
	font-size: 0.83rem;
	opacity: 0.75;
}

.wmp-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.1rem;
}

.wmp-item {
	padding: 0.65rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	display: grid;
	gap: 0.15rem;
}

.wmp-item[hidden] { display: none; }

.wmp-item-title { font-weight: 600; text-decoration: none; }
.wmp-item-suburb { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.6; }
.wmp-item-loc { font-size: 0.88rem; }
.wmp-item-fac { font-size: 0.8rem; opacity: 0.7; }

@media (prefers-color-scheme: dark) {
	.wmp-filter { border-color: rgba(255, 255, 255, 0.25); }
	.wmp-item { border-bottom-color: rgba(255, 255, 255, 0.12); }
}
