/* Assistente FAQ: tutto sotto il prefisso .vao-chat, senza toccare gli stili del sito. */
.vao-chat, .vao-chat * { box-sizing:border-box !important; }
.vao-chat {
	--vao-navy: #050e1b;
	--vao-pink: #ff4890;
	--vao-pink-dark: #e02f78;
	--vao-bg: #ffffff;
	--vao-soft: #f3f4f7;
	--vao-text: #1c2430;
	--vao-muted: #5d6676;
	position:fixed !important;
	right:20px !important;
	bottom:20px !important;
	z-index:99990 !important;
	font-family:inherit !important;
	font-size:15px !important;
	line-height:1.5 !important;
	color:var(--vao-text) !important;
}
.vao-chat[hidden] { display:none !important; }
.vao-chat button { font:inherit !important; cursor:pointer !important; }
/* Reset dei bottoni/campi: il tema e Elementor stilano button e input a livello globale. */
.vao-chat button, .vao-chat input { white-space:normal !important; text-transform:none !important; letter-spacing:normal !important; box-shadow:none !important; min-width:0 !important; min-height:0 !important; height:auto !important; margin:0 !important; font-family:inherit !important; text-shadow:none !important; }
.vao-chat a { text-transform:none !important; letter-spacing:normal !important; }


.vao-chat .vao-chat__apri {
	display:inline-flex !important; align-items:center !important; gap:10px !important;
	padding:14px 20px !important; border:0 !important; border-radius:999px !important;
	background:var(--vao-pink) !important; color:var(--vao-navy) !important;
	font-weight:700 !important; letter-spacing:.02em !important;
	box-shadow:0 10px 30px rgba(5, 14, 27, .35) !important;
	transition:transform .2s ease, background .2s ease !important;
}
.vao-chat .vao-chat__apri:hover { background:var(--vao-pink-dark) !important; color:#fff !important; transform:translateY(-2px) !important; }
.vao-chat .vao-chat__apri:focus-visible, .vao-chat button:focus-visible, .vao-chat a:focus-visible, .vao-chat input:focus-visible { outline:3px solid #ffd1e4 !important; outline-offset:2px !important; }
.vao-chat .vao-chat__apri svg { width:22px !important; height:22px !important; flex:none !important; fill:none !important; stroke:currentColor !important; stroke-width:2 !important; stroke-linecap:round !important; stroke-linejoin:round !important; }
.vao-chat--aperta .vao-chat__apri { display:none !important; }

.vao-chat .vao-chat__pannello {
	display:none !important; flex-direction:column !important;
	width:400px !important; max-width:calc(100vw - 24px) !important;
	height:min(640px, calc(100vh - 40px)) !important; height:min(640px, calc(100dvh - 40px)) !important;
	background:var(--vao-bg) !important; border-radius:18px !important; overflow:hidden !important;
	box-shadow:0 24px 70px rgba(5, 14, 27, .45) !important;
}
.vao-chat--aperta .vao-chat__pannello { display:flex !important; }

.vao-chat .vao-chat__testata { background:var(--vao-navy) !important; color:#fff !important; padding:14px 16px 12px !important; flex:none !important; }
.vao-chat .vao-chat__riga { display:flex !important; align-items:center !important; justify-content:space-between !important; gap:12px !important; }
.vao-chat .vao-chat__titolo { margin:0 !important; font-size:17px !important; font-weight:700 !important; color:#fff !important; line-height:1.2 !important; }
.vao-chat .vao-chat__sotto { margin:2px 0 0 !important; font-size:12.5px !important; color:rgba(255,255,255,.72) !important; }
.vao-chat .vao-chat__chiudi { flex:none !important; width:36px !important; height:36px !important; border:0 !important; border-radius:50% !important; background:rgba(255,255,255,.12) !important; color:#fff !important; font-size:22px !important; line-height:1 !important; }
.vao-chat .vao-chat__chiudi:hover { background:rgba(255,255,255,.24) !important; }
.vao-chat .vao-chat__lingue { display:flex !important; gap:6px !important; margin-top:12px !important; flex-wrap:wrap !important; }
.vao-chat .vao-chat__lingua { padding:5px 12px !important; border:1px solid rgba(255,255,255,.35) !important; border-radius:999px !important; background:transparent !important; color:#fff !important; font-size:13px !important; font-weight:600 !important; }
.vao-chat .vao-chat__lingua[aria-pressed="true"] { background:var(--vao-pink) !important; border-color:var(--vao-pink) !important; color:var(--vao-navy) !important; }

.vao-chat .vao-chat__log { flex:1 1 auto !important; overflow-y:auto !important; padding:16px !important; background:var(--vao-soft) !important; overscroll-behavior:contain !important; -webkit-overflow-scrolling:touch !important; }
.vao-chat .vao-chat__msg { max-width:92% !important; margin:0 0 12px !important; padding:11px 14px !important; border-radius:14px !important; background:#fff !important; color:var(--vao-text) !important; box-shadow:0 1px 2px rgba(5,14,27,.08) !important; word-wrap:break-word !important; overflow-wrap:anywhere !important; }
.vao-chat .vao-chat__msg p { margin:0 0 8px !important; }
.vao-chat .vao-chat__msg p:last-child { margin-bottom:0 !important; }
.vao-chat .vao-chat__msg ul { margin:0 0 8px !important; padding-left:18px !important; }
.vao-chat .vao-chat__msg li { margin:0 0 6px !important; }
.vao-chat .vao-chat__msg a { color:var(--vao-pink-dark) !important; font-weight:600 !important; text-decoration:underline !important; }
.vao-chat .vao-chat__msg--utente { margin-left:auto !important; background:var(--vao-navy) !important; color:#fff !important; border-bottom-right-radius:4px !important; }
.vao-chat .vao-chat__msg--bot { border-bottom-left-radius:4px !important; }
.vao-chat .vao-chat__etichetta { display:block !important; margin:0 0 6px !important; font-size:12px !important; font-weight:700 !important; letter-spacing:.04em !important; text-transform:uppercase !important; color:var(--vao-muted) !important; }

.vao-chat .vao-chat__chips { display:flex !important; flex-direction:column !important; gap:8px !important; margin:0 0 12px !important; }
.vao-chat .vao-chat__chip { display:block !important; width:100% !important; padding:10px 14px !important; border:1.5px solid var(--vao-navy) !important; border-radius:12px !important; background:#fff !important; color:var(--vao-navy) !important; text-align:left !important; font-size:14px !important; font-weight:600 !important; line-height:1.35 !important; transition:background .15s ease, color .15s ease !important; }
.vao-chat .vao-chat__chip:hover { background:var(--vao-navy) !important; color:#fff !important; }
.vao-chat .vao-chat__chip--link { text-decoration:none !important; border-color:var(--vao-pink) !important; background:var(--vao-pink) !important; color:var(--vao-navy) !important; }
.vao-chat .vao-chat__chip--link:hover { background:var(--vao-pink-dark) !important; border-color:var(--vao-pink-dark) !important; color:#fff !important; }
.vao-chat .vao-chat__altro { align-self:flex-start !important; padding:6px 2px !important; border:0 !important; background:none !important; color:var(--vao-muted) !important; font-size:13.5px !important; font-weight:600 !important; text-decoration:underline !important; }
.vao-chat .vao-chat__lista { max-height:0 !important; overflow:hidden !important; }

.vao-chat .vao-chat__form { display:flex !important; gap:8px !important; padding:12px 14px !important; border-top:1px solid #e3e6ec !important; background:#fff !important; flex:none !important; }
.vao-chat .vao-chat__input { flex:1 1 auto !important; min-width:0 !important; padding:11px 14px !important; border:1.5px solid #c9cfda !important; border-radius:999px !important; background:#fff !important; color:var(--vao-text) !important; font:inherit !important; font-size:16px !important; }
.vao-chat .vao-chat__input:focus { border-color:var(--vao-navy) !important; }
.vao-chat .vao-chat__invia { flex:none !important; padding:0 18px !important; border:0 !important; border-radius:999px !important; background:var(--vao-pink) !important; color:var(--vao-navy) !important; font-weight:700 !important; }
.vao-chat .vao-chat__invia:hover { background:var(--vao-pink-dark) !important; color:#fff !important; }
.vao-chat .vao-chat__nota { margin:0 !important; padding:0 16px 12px !important; background:#fff !important; color:var(--vao-muted) !important; font-size:12px !important; line-height:1.4 !important; flex:none !important; }
.vao-chat .vao-chat__nota a { color:inherit !important; font-weight:600 !important; }

@media (max-width: 600px) {
	.vao-chat { right:12px !important; bottom:12px !important; }
	.vao-chat.vao-chat--aperta { bottom:76px !important; }
	.vao-chat--aperta { left:12px !important; }
	.vao-chat .vao-chat__pannello { width:100% !important; max-width:100% !important; height:min(86vh, 680px) !important; height:min(86dvh, 680px) !important; }
}
@media (prefers-reduced-motion: reduce) { .vao-chat * { transition: none !important; } }

/* Ritocchi: bottone chiudi tondo, hover lingue, focus del campo */
.vao-chat .vao-chat__chiudi { display:inline-flex !important; align-items:center !important; justify-content:center !important; padding:0 !important; width:36px !important; height:36px !important; min-width:36px !important; flex:none !important; border-radius:50% !important; background:rgba(255,255,255,.14) !important; color:#fff !important; line-height:1 !important; }
.vao-chat .vao-chat__chiudi:hover { background:rgba(255,255,255,.28) !important; color:#fff !important; }
.vao-chat .vao-chat__lingua:hover { background:rgba(255,255,255,.18) !important; color:#fff !important; border-color:rgba(255,255,255,.6) !important; }
.vao-chat .vao-chat__lingua[aria-pressed="true"]:hover { background:var(--vao-pink) !important; color:var(--vao-navy) !important; border-color:var(--vao-pink) !important; }
.vao-chat .vao-chat__input:focus { outline:none !important; border-color:var(--vao-navy) !important; box-shadow:0 0 0 3px rgba(255,72,144,.35) !important; }
.vao-chat .vao-chat__invia { height:auto !important; min-height:44px !important; }
