/*
 * Mitglieder-Karte – Basis-Styles
 *
 * Pfad: wp-content/plugins/fanclub-core/modules/map/assets/map.css
 *
 * Animationen werden dynamisch per JS injiziert (abhängig von Backend-Einstellungen).
 *
 * @package FanclubCore
 */

/* ── Wrapper ──────────────────────────────────────────────────────────────── */

.fc-karte-wrap {
	width: 100%;
	overflow: hidden;
	line-height: 0; /* Leaflet braucht das */
}

/* ── Leaflet-Overrides ────────────────────────────────────────────────────── */

#fc-mitglieder-karte {
	width: 100%;
	background: #0f0f14; /* Fallback während Tiles laden */
}

#fc-mitglieder-karte .leaflet-control-attribution {
	background: rgba(6, 6, 10, 0.75) !important;
	color: #3a3a4a !important;
	font-size: 9px !important;
	backdrop-filter: blur(4px);
}

#fc-mitglieder-karte .leaflet-control-attribution a {
	color: #595960 !important;
}

#fc-mitglieder-karte .leaflet-control-zoom {
	border: 1px solid #2a2a3a !important;
	box-shadow: none !important;
}

#fc-mitglieder-karte .leaflet-control-zoom a {
	background: rgba(10, 10, 16, 0.9) !important;
	color: var(--fc-accent, #FFD900) !important;
	border-color: #2a2a3a !important;
	backdrop-filter: blur(4px);
	font-weight: 700;
}

#fc-mitglieder-karte .leaflet-control-zoom a:hover {
	background: #1a1a24 !important;
}

/* ── Marker-Struktur ──────────────────────────────────────────────────────── */

.fc-map-marker {
	position: relative;
	pointer-events: none;
}

/* Core-Dot – Größe und Farbe kommen aus JS-injiziertem CSS */
.fc-map-dot-core {
	position: absolute;
	top: 50%;
	left: 50%;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	pointer-events: auto;
	cursor: default;
}

/* Wellen-Ring – Animationsdauer, Farbe und Scale kommen aus JS-injiziertem CSS */
.fc-map-wave {
	position: absolute;
	top: 50%;
	left: 50%;
	border-style: solid;
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(1);
	transform-origin: center center;
	pointer-events: none;
}

/* PLZ-Label */
.fc-map-label {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(10px, -50%);
	font-family: 'Courier New', monospace;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	white-space: nowrap;
	pointer-events: none;
	/* Farbe kommt aus JS */
}

/* ── Split-Layout ─────────────────────────────────────────────────────────── */

.fc-map-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	min-height: 500px;
}

.fc-map-split--right {
	direction: rtl;
}

.fc-map-split--right > * {
	direction: ltr;
}

.fc-map-split__text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(24px, 5vw, 80px);
	background: #000;
}

.fc-map-split__map {
	position: relative;
	overflow: hidden;
}

@media ( max-width: 768px ) {
	.fc-map-split {
		grid-template-columns: 1fr;
	}
}
/* ── Sticker-Marker – Slap-Tag ───────────────────────────────────────────── */

.fc-sticker-marker {
	cursor: pointer;
	transition: transform 0.18s ease;
	transform-origin: 50% 100%;
}
.fc-sticker-marker:hover {
	transform: scale(1.06) rotate(-2deg);
}
.fc-sticker-marker svg {
	display: block;
	overflow: visible;
}
.fc-sticker-body {
	filter: drop-shadow( 4px 5px 0 rgba(0,0,0,0.85) );
}

/* Neon-Modus: Neon-Logo-Datei einblenden (gleiches Muster wie Nav-Plakette). */
.fc-sticker-logo--neon { display: none; }
html[data-theme="neon"] .fc-sticker-logo--gelb + .fc-sticker-logo--neon { display: block; }
html[data-theme="neon"] .fc-sticker-logo--gelb:has(+ .fc-sticker-logo--neon) { display: none; }
