/* ============================================================
   LiveSofia - locandina in primo piano (aggiunta 2026-10-20)
   Finestra con la sola immagine (lv-locandina.php, js/lv-locandina.js): la locandina riempie lo schermo
   finché ci sta, senza deformarsi, con la X in alto a destra.
   ============================================================ */

.lv-locandina[hidden] { display: none !important; }
html.lv-locandina-open, html.lv-locandina-open body { overflow: hidden !important; }

.lv-locandina {
	position: fixed;
	inset: 0;
	z-index: 100001;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.lv-locandina-fondo {
	position: absolute;
	inset: 0;
	background: rgba(5, 5, 8, .82);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	opacity: 0;
	transition: opacity .22s ease;
	cursor: pointer;
}
.lv-locandina-box {
	position: relative;
	max-width: 100%;
	max-height: 100%;
	opacity: 0;
	transform: translateY(14px) scale(.98);
	transition: opacity .22s ease, transform .22s ease;
}
.lv-locandina.is-in .lv-locandina-fondo { opacity: 1; }
.lv-locandina.is-in .lv-locandina-box { opacity: 1; transform: none; }

.lv-locandina-link { display: block; }
.lv-locandina-link:not([href]) { cursor: default; }
.lv-locandina-img {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: min(92vw, 900px) !important;
	max-height: calc(100vh - 40px) !important;
	max-height: calc(100dvh - 40px) !important;
	margin: 0 !important;
	border-radius: 14px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .65);
}

.lv-locandina-x {
	position: absolute;
	top: -12px;
	right: -12px;
	z-index: 1;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 26px !important;
	line-height: 40px !important;
	color: #fff !important;
	background: #15151c !important;
	border: 2px solid rgba(255, 255, 255, .85) !important;
	border-radius: 50% !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .5) !important;
	cursor: pointer;
}
.lv-locandina-x:hover { background: #ff4d79 !important; border-color: #ff4d79 !important; }

@media (max-width: 767px) {
	.lv-locandina { padding: 14px; }
	.lv-locandina-img {
		max-width: calc(100vw - 28px) !important;
		max-height: calc(100vh - 28px) !important;
		max-height: calc(100dvh - 28px) !important;
		border-radius: 10px;
	}
	.lv-locandina-x { top: 8px; right: 8px; background: rgba(21, 21, 28, .85) !important; }
}

@media (prefers-reduced-motion: reduce) {
	.lv-locandina-fondo, .lv-locandina-box { transition: none; }
}
