/* Map-only styles, loaded with local Leaflet only where a map is rendered. */
.zeec-map-shell { width: 100%; margin: 18px 0 0; }
.zeec-map {
	position: relative;
	z-index: 0;
	width: 100%;
	height: clamp(360px, 55vw, 610px);
	min-height: 360px;
	overflow: hidden;
	border: 1px solid var(--zeec-border, #d8dce3);
	border-radius: var(--zeec-radius, 12px);
	background: var(--zeec-surface-2, #eef1f4);
}
.zeec-map-shell--single .zeec-map { height: clamp(340px, 48vw, 540px); }
.zeec-map:focus-visible { outline: 3px solid #ffd400; outline-offset: 3px; }
.zeec-map-loading { position: absolute; inset: 0; display: grid; place-items: center; padding: 20px; color: var(--zeec-muted, #68707c); font-size: .84rem; text-align: center; }
.zeec-map-empty { margin: 8px 0 0; color: var(--zeec-muted, #68707c); font-size: .78rem; }
.zeec-map-fallback { padding: 14px; border: 1px solid var(--zeec-border, #d8dce3); background: var(--zeec-surface, #fff); }
.zeec-map-fallback ul { margin: 8px 0 0 1.2em; padding: 0; }
.zeec-map-marker-wrap { border: 0; background: transparent; }
.zeec-map-marker {
	display: block;
	position: relative;
	width: 24px;
	height: 24px;
	border: 4px solid #fff;
	border-radius: 50% 50% 50% 0;
	background: var(--zeec-marker-color, #f24822);
	box-shadow: 0 3px 10px rgba(0, 0, 0, .36);
	transform: rotate(-45deg);
}
.zeec-map-marker::after { content: ""; position: absolute; inset: 5px; border-radius: 50%; background: #fff; }
.zeec .leaflet-control-zoom a { display: grid; width: 34px; height: 34px; place-items: center; color: #15171a; font: 700 20px/1 Arial, sans-serif; text-decoration: none; }
.zeec .leaflet-control-zoom a:focus-visible { outline: 3px solid #ffd400; outline-offset: 1px; }
.zeec .leaflet-control-attribution { max-width: calc(100% - 12px); overflow-wrap: anywhere; font-size: 10px; }
.zeec .leaflet-popup-content-wrapper { overflow: hidden; padding: 0; border-radius: 9px; color: #17191d; }
.zeec .leaflet-popup-content { width: 250px !important; margin: 0; }
.zeec-map-popup { background: #fff; color: #17191d; }
.zeec-map-popup > img { width: 100%; height: 112px; object-fit: cover; }
.zeec-map-popup > div { display: grid; gap: 4px; padding: 11px; }
.zeec-map-popup time { color: #6a717a; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.zeec-map-popup strong { font-size: 15px; line-height: 1.08; }
.zeec-map-popup span { color: #5b626b; font-size: 12px; }
.zeec-map-popup a { margin-top: 4px; color: #8a3300; font-size: 11px; font-weight: 900; text-decoration: underline; text-transform: uppercase; }
@media (max-width: 500px) {
	.zeec-map { height: 390px; min-height: 390px; border-radius: 8px; }
	.zeec .leaflet-control-attribution { font-size: 9px; }
}

