/* Wtyczka fryderyk-core — style kasy i formularza kontaktowego.
   Kolory pobieramy z motywu (zmienne CSS), z bezpiecznymi fallbackami,
   żeby wtyczka działała też pod innym motywem. */

.fc-hidden-field { display: none !important; }

.fc-consent-row { margin-bottom: 1rem; }
.fc-consent-row label { display: flex; gap: .75rem; align-items: flex-start; font-size: .875rem; }
.fc-consent-row input { margin-top: .25rem; }

/* =========================================================================
   Wybór paczkomatu — mapa (Leaflet + OpenStreetMap)
   ========================================================================= */

.fc-locker-block { margin: var(--fc-s6, 2rem) 0; }
.fc-locker-block[hidden] { display: none; }

.fc-locker__tabs {
	display: inline-flex;
	margin: var(--fc-s4, 1rem) 0 var(--fc-s3, .75rem);
	border: 1px solid var(--fc-line, rgba(198,161,91,.2));
	border-radius: 2px;
	overflow: hidden;
}
.fc-locker__tab {
	padding: .55rem 1.4rem;
	font-size: .7rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	background: transparent;
	color: var(--fc-muted, #8a8079);
	border: 0;
	cursor: pointer;
	font-family: inherit;
	transition: background .2s ease, color .2s ease;
}
.fc-locker__tab + .fc-locker__tab { border-left: 1px solid var(--fc-line, rgba(198,161,91,.2)); }
.fc-locker__tab.is-active { background: var(--fc-gold, #c6a15b); color: #1a130a; }

.fc-locker__map {
	position: relative;
	height: clamp(300px, 42vh, 440px);
	border: 1px solid var(--fc-line-soft, rgba(244,238,229,.09));
	background: var(--fc-surface, #15110f);
	overflow: hidden;
}
.fc-locker__map[hidden] { display: none; }
.fc-locker__map-loader {
	position: absolute; inset: 0;
	display: grid; place-items: center;
	font-size: .85rem; color: var(--fc-muted, #8a8079);
	text-align: center; padding: 1rem;
}
.fc-locker__maphint {
	margin: .6rem 0 0;
	font-size: .78rem;
	color: var(--fc-muted-2, #7a6d5d);
	letter-spacing: .03em;
}
.fc-locker__maphint[hidden] { display: none; }

/* Pinezka — własna, żeby nie ciągnąć obrazków Leafletu */
.fc-locker__pin { background: none; border: 0; }
.fc-locker__pin span {
	display: block;
	width: 22px; height: 22px;
	margin: 0 auto;
	border-radius: 50% 50% 50% 0;
	transform: rotate(-45deg);
	background: linear-gradient(180deg, #e3c88e, #c6a15b);
	border: 1px solid rgba(26,19,10,.5);
	box-shadow: 0 4px 10px rgba(0,0,0,.45);
	transition: transform .15s ease;
}
.fc-locker__pin.is-selected span {
	background: linear-gradient(180deg, #fff2d4, #e3c88e);
	transform: rotate(-45deg) scale(1.25);
	box-shadow: 0 0 0 4px rgba(198,161,91,.25), 0 6px 14px rgba(0,0,0,.5);
}
.fc-locker__pin:hover span { transform: rotate(-45deg) scale(1.12); }

/* Dymek punktu */
.leaflet-popup-content-wrapper {
	background: var(--fc-surface-2, #1c1714);
	color: var(--fc-text, #e8dfd2);
	border: 1px solid var(--fc-line, rgba(198,161,91,.25));
	border-radius: 2px;
	box-shadow: 0 20px 44px rgba(0,0,0,.55);
}
.leaflet-popup-tip { background: var(--fc-surface-2, #1c1714); border: 1px solid var(--fc-line, rgba(198,161,91,.25)); }
.leaflet-popup-content { margin: .9rem 1rem; min-width: 190px; }
.leaflet-container a.leaflet-popup-close-button { color: var(--fc-muted, #8a8079); }
.fc-locker__popup { display: grid; gap: .18rem; }
.fc-locker__popup b { color: var(--fc-gold-light, #e3c88e); font-size: .95rem; letter-spacing: .06em; }
.fc-locker__popup span { font-size: .8rem; color: var(--fc-muted, #8a8079); line-height: 1.45; }
.fc-locker__popup-hours { color: var(--fc-muted-2, #7a6d5d) !important; }
.fc-locker__popup-btn {
	margin-top: .6rem;
	width: 100%;
	padding: .65rem 1rem !important;
	font-size: .68rem !important;
}

/* Kafelki OSM na ciemnym tle nie mogą świecić bielą */
.leaflet-container { background: #0f0c0a; font-family: inherit; }
/* Leaflet ustawia `filter: inherit` na kafelkach i ładuje swój CSS później,
   więc przyciemniamy całą warstwę kafelków, a nie pojedyncze obrazki. */
.fc-locker__map .leaflet-tile-pane { filter: sepia(.24) saturate(.6) brightness(.7) contrast(1.12); }
.leaflet-control-attribution {
	background: rgba(11,9,8,.78) !important;
	color: var(--fc-muted-2, #7a6d5d) !important;
	font-size: 10px !important;
}
.leaflet-control-attribution a { color: var(--fc-gold, #c6a15b) !important; }
.leaflet-bar a {
	background: var(--fc-surface-2, #1c1714) !important;
	color: var(--fc-cream, #f4eee5) !important;
	border-color: var(--fc-line-soft, rgba(244,238,229,.12)) !important;
}
.leaflet-bar a:hover { background: var(--fc-surface-3, #241d18) !important; color: var(--fc-gold, #c6a15b) !important; }


/* `hidden` musi wygrywać z display:grid na liście wyników */
.fc-locker__results[hidden] { display: none !important; }
.fc-locker__map .leaflet-container { width: 100% !important; height: 100% !important; }
