/*
 * Przełącznik języków (flagi PL / GB / DE) w menu Salient — HTML: inc/jezyki.php (karpie_jezyk_przelacznik_html).
 * Tokeny --k-* z assets/karpie.css (wartości zapasowe na wypadek, gdyby karpie.css się nie wczytał).
 * Cel dotyku ≥ 44 px, focus z klawiatury widoczny, aktywny język z obwódką w kolorze akcentu.
 */

.k-jezyki {
	display: flex;
	align-items: center;
	gap: 2px;
}

.k-jezyki__link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: var(--k-tap, 44px);
	min-height: var(--k-tap, 44px);
	padding: 0 6px;
	border-radius: var(--k-r-xs, 6px);
	color: var(--k-text-2, #b4c0d4) !important;
	text-decoration: none !important;
	opacity: 0.72;
	transition: opacity var(--k-t-fast, 140ms) var(--k-ease, ease), background-color var(--k-t-fast, 140ms) var(--k-ease, ease);
}

.k-jezyki__link:hover,
.k-jezyki__link:focus-visible {
	opacity: 1;
	background-color: rgba(160, 182, 222, 0.08);
}

.k-jezyki__link:focus-visible {
	outline: 2px solid var(--k-focus, #ffb24a) !important;
	outline-offset: 2px !important;
}

.k-jezyki__flaga {
	display: block;
	width: 20px;
	height: 14px;
	overflow: hidden;
	border-radius: 3px;
	/* Cienka krawędź — biały pas flagi PL nie zlewa się z jasnym tłem przezroczystego nagłówka. */
	box-shadow: 0 0 0 1px rgba(6, 13, 31, 0.35), var(--k-shadow-1, 0 1px 2px rgba(2, 6, 16, 0.45));
}

.k-jezyki__flaga svg {
	display: block;
	width: 20px;
	height: 14px;
}

.k-jezyki__link[aria-current="true"] {
	opacity: 1;
}

.k-jezyki__link[aria-current="true"] .k-jezyki__flaga {
	box-shadow: 0 0 0 2px var(--k-accent, #ff6a00);
}

/* Kod języka tylko w menu mobilnym (na pasku same flagi; nazwa języka jest w aria-label / title). */
.k-jezyki__kod {
	display: none;
	font-size: var(--k-fs-sm, 0.9375rem);
	font-weight: 700;
	letter-spacing: var(--k-track-label, 0.06em);
	line-height: 1;
}

/* --- Pasek nagłówka (desktop) ---------------------------------------------------------------- */
#header-outer #top nav > ul > li.k-jezyki-poz {
	display: flex;
	align-items: center;
	margin-left: 8px;
	padding-left: 8px;
	border-left: 1px solid var(--k-line, rgba(160, 182, 222, 0.12));
}

#header-outer #top nav > ul > li.k-jezyki-poz .k-jezyki__link {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Salient dodaje podkreślenie i odstępy pozycjom menu — przełącznik ich nie potrzebuje. */
#header-outer #top nav > ul > li.k-jezyki-poz::after,
#header-outer #top nav > ul > li.k-jezyki-poz > a {
	display: none !important;
}

/* --- Menu mobilne / pełnoekranowe Salient (#slide-out-widget-area) -------------------------- */
body.karpie #slide-out-widget-area .off-canvas-menu-container .menu > li.k-jezyki-poz {
	margin-top: var(--k-s-5, 24px);
	padding-top: var(--k-s-4, 16px);
	border-top: 1px solid var(--k-line, rgba(160, 182, 222, 0.12));
	list-style: none;
}

body.karpie #slide-out-widget-area .k-jezyki {
	gap: var(--k-s-2, 8px);
	flex-wrap: wrap;
}

body.karpie #slide-out-widget-area.fullscreen .k-jezyki {
	justify-content: center;
}

body.karpie #slide-out-widget-area .k-jezyki__link {
	padding: 0 12px;
	color: var(--k-text, #eef2f8) !important;
	border: 1px solid var(--k-line-strong, rgba(160, 182, 222, 0.24));
	border-radius: var(--k-r-pill, 999px);
	opacity: 1;
}

body.karpie #slide-out-widget-area .k-jezyki__link[aria-current="true"] {
	border-color: var(--k-accent, #ff6a00);
	background-color: var(--k-accent-soft, rgba(255, 106, 0, 0.13));
}

body.karpie #slide-out-widget-area .k-jezyki__kod {
	display: inline;
}

/* Na stopce: dopisek „(in Polish)” przy linkach do stron bez tłumaczenia. */
.k-stopka__pl {
	color: var(--k-text-3, #8d9cb8);
	font-size: var(--k-fs-xs, 0.8125rem);
}

@media (prefers-reduced-motion: reduce) {
	.k-jezyki__link {
		transition: none;
	}
}

@media (forced-colors: active) {
	.k-jezyki__link[aria-current="true"] {
		outline: 2px solid CanvasText;
	}
}

/* Salient wymusza display:block na linkach menu — flaga stała przy górnej krawędzi linku (44 px),
   a tekst menu jest wyśrodkowany w pionie. Flex wyrównuje flagi z tekstem. */
#header-outer #top nav > ul > li.k-jezyki-poz .k-jezyki a,
#header-outer nav .k-jezyki a {
	display: flex !important;
	align-items: center;
	justify-content: center;
}

/* Nagłówek mobilny Salient (.mobile-header poza <nav>): ta sama poprawka wyrównania flag co w pasku desktop. */
#header-outer .k-jezyki a {
	display: flex !important;
	align-items: center;
	justify-content: center;
}
