/* PrimeLingo — selector de idioma */
.primelingo-switcher {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	line-height: 1;
}
.primelingo-switcher .primelingo-lang {
	text-decoration: none;
	opacity: 0.6;
	font-weight: 600;
	letter-spacing: 0.02em;
	transition: opacity 0.15s ease;
}
.primelingo-switcher .primelingo-lang:hover,
.primelingo-switcher .primelingo-lang:focus,
.primelingo-switcher .primelingo-lang.is-active {
	opacity: 1;
}
.primelingo-switcher .primelingo-sep {
	opacity: 0.35;
}

/* Desplegable (más de dos idiomas) */
.primelingo-dropdown {
	position: relative;
}
.primelingo-dd {
	position: relative;
}
.primelingo-dd > summary {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 32px;
	padding: 4px 6px;
	cursor: pointer;
	font-weight: 600;
	letter-spacing: 0.02em;
	list-style: none;
	user-select: none;
}
.primelingo-dd > summary::-webkit-details-marker {
	display: none;
}
.primelingo-dd > summary::marker {
	content: "";
}
.primelingo-caret {
	transition: transform 0.15s ease;
	opacity: 0.7;
}
.primelingo-dd[open] .primelingo-caret {
	transform: rotate(180deg);
}
.primelingo-dd-list {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	z-index: 10000;
	min-width: 170px;
	max-height: min(70vh, 420px);
	overflow-y: auto;
	margin: 0;
	padding: 6px;
	list-style: none;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.16);
	text-align: start;
}
.primelingo-dd-list li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.primelingo-dropdown .primelingo-dd-list .primelingo-lang {
	display: block;
	padding: 10px 12px;
	border-radius: 6px;
	color: #1d2327;
	opacity: 1;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.2;
	white-space: nowrap;
}
.primelingo-dropdown .primelingo-dd-list .primelingo-lang:hover,
.primelingo-dropdown .primelingo-dd-list .primelingo-lang:focus {
	background: #f3f4f6;
}
.primelingo-dropdown .primelingo-dd-list .primelingo-lang.is-active {
	font-weight: 700;
}

/* Botón flotante */
.primelingo-floating {
	position: fixed;
	right: 18px;
	bottom: 18px;
	bottom: calc(18px + env(safe-area-inset-bottom, 0px));
	z-index: 9999;
	padding: 10px 14px;
	background: #fff;
	border-radius: 999px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.14);
}
.primelingo-floating .primelingo-lang,
.primelingo-floating .primelingo-dd > summary {
	color: #1d2327;
}
.primelingo-floating.primelingo-dropdown {
	padding: 4px 10px;
}
.primelingo-floating .primelingo-dd-list {
	top: auto;
	bottom: calc(100% + 12px);
}

/* Dentro de un menú */
.primelingo-menu-item .primelingo-switcher {
	padding: 0 10px;
}

/* Páginas en árabe: la lista se abre hacia el otro lado */
[dir="rtl"] .primelingo-dd-list {
	right: auto;
	left: 0;
}
[dir="rtl"] .primelingo-floating {
	right: auto;
	left: 18px;
}
