/* VAD WhatsApp Chat — изолированные стили. Значения приходят из CSS-переменных (настройки плагина). */
#vadwa {
	position: fixed !important;
	bottom: var(--vadwa-b, 100px) !important;
	top: auto !important;
	z-index: var(--vadwa-z, 99999) !important;
	display: flex !important;
	flex-direction: column !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	height: auto !important;
	background: none !important;
	border: 0 !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	line-height: 1.4 !important;
	pointer-events: none;
}
#vadwa > * { pointer-events: auto; }
#vadwa *, #vadwa *::before, #vadwa *::after { box-sizing: border-box !important; }

#vadwa.vadwa--right { right: var(--vadwa-s, 30px) !important; left: auto !important; align-items: flex-end !important; }
#vadwa.vadwa--left  { left: var(--vadwa-s, 30px) !important; right: auto !important; align-items: flex-start !important; }

/* ---------- Облачко ---------- */
#vadwa .vadwa-bubble {
	position: relative !important;
	display: block !important;
	width: min(var(--vadwa-w, 260px), calc(100vw - 2 * var(--vadwa-s, 20px))) !important;
	margin: 0 0 15px !important;
	padding: 14px 38px 14px 16px !important;
	background: var(--vadwa-bbg, #fff) !important;
	color: var(--vadwa-btxt, #2c3e50) !important;
	border: 0 !important;
	border-radius: 15px !important;
	box-shadow: 0 10px 35px rgba(0, 0, 0, .18) !important;
	cursor: pointer !important;
	text-align: left !important;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity .4s ease, transform .5s cubic-bezier(.22, 1, .36, 1);
}
#vadwa .vadwa-bubble[hidden] { display: none !important; }
#vadwa .vadwa-bubble.is-visible { opacity: 1; transform: none; }

/* Хвостик облачка — центрирован над кнопкой */
#vadwa .vadwa-bubble::after {
	content: "" !important;
	position: absolute !important;
	bottom: -10px !important;
	width: 0 !important;
	height: 0 !important;
	border-style: solid !important;
	border-width: 10px 10px 0 !important;
	border-color: var(--vadwa-bbg, #fff) transparent transparent !important;
}
#vadwa.vadwa--right .vadwa-bubble::after { right: calc(var(--vadwa-size, 65px) / 2 - 10px) !important; left: auto !important; }
#vadwa.vadwa--left  .vadwa-bubble::after { left: calc(var(--vadwa-size, 65px) / 2 - 10px) !important; right: auto !important; }

#vadwa .vadwa-text {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 40px;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: inherit !important;
	transition: opacity .3s ease;
}
#vadwa .vadwa-text.is-fading { opacity: 0; }

#vadwa .vadwa-close {
	position: absolute !important;
	top: 6px !important;
	right: 8px !important;
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 2px 6px !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #aaa !important;
	font: 400 20px/1 Arial, sans-serif !important;
	cursor: pointer !important;
}
#vadwa .vadwa-close:hover, #vadwa .vadwa-close:focus-visible { color: #555 !important; }

/* ---------- Кнопка ---------- */
#vadwa .vadwa-btn {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--vadwa-size, 65px) !important;
	height: var(--vadwa-size, 65px) !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: linear-gradient(135deg, var(--vadwa-c1, #25D366), var(--vadwa-c2, #128C7E)) !important;
	box-shadow: 0 8px 25px rgba(37, 211, 102, .35) !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: transform .3s ease, box-shadow .3s ease !important;
}
#vadwa .vadwa-btn:hover { transform: scale(1.08) !important; box-shadow: 0 10px 30px rgba(37, 211, 102, .45) !important; }
#vadwa .vadwa-btn:focus-visible { outline: 3px solid var(--vadwa-c2, #128C7E) !important; outline-offset: 3px !important; }

#vadwa .vadwa-btn svg {
	display: block !important;
	width: 56% !important;
	height: 56% !important;
	fill: var(--vadwa-icon, #fff) !important;
	position: relative;
	z-index: 1;
}

/* Пульсация */
#vadwa.vadwa--pulse .vadwa-btn::before {
	content: "";
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	border-radius: 50%;
	background: var(--vadwa-c1, #25D366);
	z-index: 0;
	animation: vadwa-pulse 2.2s ease-out infinite;
}
@keyframes vadwa-pulse {
	0%   { transform: scale(1);   opacity: .55; }
	80%  { transform: scale(1.5); opacity: 0; }
	100% { transform: scale(1.5); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	#vadwa .vadwa-bubble, #vadwa .vadwa-text, #vadwa .vadwa-btn { transition: none !important; }
	#vadwa.vadwa--pulse .vadwa-btn::before { animation: none; display: none; }
}

@media print { #vadwa { display: none !important; } }

/* ---------- Расписание ---------- */
#vadwa.vadwa--pending, #vadwa.vadwa--off-hidden { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
#vadwa .vadwa-status { display: none; }
#vadwa.vadwa--dot.vadwa--online .vadwa-status,
#vadwa.vadwa--dot.vadwa--offline .vadwa-status {
	display: block !important;
	position: absolute !important;
	top: 4% !important;
	right: 4% !important;
	width: 22% !important;
	height: 22% !important;
	min-width: 11px; min-height: 11px;
	border-radius: 50% !important;
	border: 2px solid #fff !important;
	z-index: 2 !important;
	box-sizing: border-box !important;
}
#vadwa.vadwa--dot.vadwa--online .vadwa-status { background: #31d158 !important; }
#vadwa.vadwa--dot.vadwa--offline .vadwa-status { background: #ffa41b !important; }
#vadwa.vadwa--offline.vadwa--pulse .vadwa-btn::before { animation: none; display: none; }
