/* =====================================================================
   LANG-SWITCHER.CSS
   Selettore lingua condiviso da tutte le pagine (radice IT e sottocartelle
   /en/, /es/, /fr/, /pt/, /de/...). Bandiere a emoji: nessuna immagine da
   caricare, sempre nitide, pronte per nuove lingue senza altro lavoro.
   ===================================================================== */

.lang-switcher{
	position:fixed;
	top:26px;
	right:26px;
	z-index:999;
	font-family:'Livvic', sans-serif;
}
.lang-switcher .lang-current{
	display:flex;
	align-items:center;
	gap:7px;
	background:rgba(11,11,11,.7);
	border:1px solid rgba(255,255,255,.22);
	color:#fff;
	padding:9px 14px;
	border-radius:24px;
	cursor:pointer;
	backdrop-filter:blur(6px);
	-webkit-backdrop-filter:blur(6px);
	font-size:13px;
	line-height:1;
}
.lang-switcher .lang-current:hover{
	border-color:#019d3d;
}
.lang-switcher .flag{
	font-size:16px;
	line-height:1;
}
.lang-switcher .chev{
	transition:transform .2s ease;
	flex:none;
}
.lang-switcher.open .chev{
	transform:rotate(180deg);
}
.lang-switcher .lang-menu{
	list-style:none;
	margin:8px 0 0;
	padding:6px;
	position:absolute;
	right:0;
	top:100%;
	background:#151515;
	border:1px solid #262626;
	border-radius:14px;
	min-width:170px;
	opacity:0;
	visibility:hidden;
	transform:translateY(-6px);
	transition:opacity .2s ease, transform .2s ease, visibility .2s;
	box-shadow:0 12px 30px rgba(0,0,0,.4);
}
.lang-switcher.open .lang-menu{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
}
.lang-switcher .lang-menu a{
	display:flex;
	align-items:center;
	gap:9px;
	padding:9px 12px;
	border-radius:9px;
	color:#fff;
	text-decoration:none;
	font-size:13px;
	white-space:nowrap;
}
.lang-switcher .lang-menu a:hover{
	background:#019d3d;
}

@media (max-width:600px){
	.lang-switcher{ top:16px; right:16px; }
	.lang-switcher .lang-current .code{ display:none; }
	.lang-switcher .lang-current{ padding:9px 11px; }
}
