/* Language Link — switcher banner + language badge.
   Theme via :root overrides: --langlink-accent, --langlink-accent-deep,
   --langlink-bg, --langlink-text. Neutral fallbacks below. */
.langlink-banner {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .35rem .6rem;
	background: var(--langlink-bg, #f7f7f5);
	border-left: 3px solid var(--langlink-accent, #4a7c8c);
	border-radius: 6px;
	padding: .8rem 1.1rem;
	margin: 0 0 1.8rem;
	font-size: .92rem;
	color: var(--langlink-text, #1c2430);
}
.langlink-banner__flag {
	font-size: 1.1rem;
	line-height: 1;
}
.langlink-banner a {
	color: var(--langlink-accent-deep, var(--langlink-accent, #38616e));
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}
.langlink-banner a:hover {
	text-decoration: underline;
}
.langlink-badge {
	display: inline-block;
	background: var(--langlink-accent, #4a7c8c);
	color: #fff;
	font-size: .6rem;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.4;
	padding: .15rem .45rem;
	border-radius: 4px;
	vertical-align: middle;
	margin-left: .5rem;
}
/* Visually-hidden (screen-reader only) — plugin-owned, no theme dependency. */
.langlink-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}
.langlink-switcher { display: inline-flex; align-items: center; gap: .35em; }
.langlink-switcher__flag { font-style: normal; line-height: 1; }
