/* ==========================================================================
   VM Sales OS — Executive Front Chat Suite
   Luxury Dark Canvas, Glassmorphism, Generative UI & Responsive Layout
   ========================================================================== */

#vmsos-widget-root {
	--vmsos-accent: #c9a227;
	--vmsos-accent-glow: rgba(201, 162, 39, 0.25);
	--vmsos-surface: #070d1e;
	--vmsos-surface-card: #0e172a;
	--vmsos-surface-light: #16203c;
	--vmsos-surface-border: rgba(255, 255, 255, 0.1);
	--vmsos-text: #f8fafc;
	--vmsos-text-muted: #94a3b8;
	--vmsos-emerald: #10b981;
	--vmsos-cyan: #06b6d4;
	bottom: 24px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	position: fixed;
	right: 24px;
	z-index: 999999 !important;
}

#vmsos-widget-root[data-position="left"] {
	left: 24px;
	right: auto;
}

/* ------------------------------------------------ Elementor & Theme Total Reset */
#vmsos-widget-root,
#vmsos-widget-root *,
#vmsos-widget-root *::before,
#vmsos-widget-root *::after {
	box-sizing: border-box !important;
	letter-spacing: normal !important;
	text-shadow: none !important;
	text-transform: none !important;
	word-break: break-word;
}

#vmsos-widget-root [hidden],
#vmsos-widget-root .vmsos-panel[hidden] {
	display: none !important;
}

#vmsos-widget-root button {
	all: unset;
	box-sizing: border-box !important;
	cursor: pointer !important;
	font-family: inherit !important;
	letter-spacing: normal !important;
	margin: 0 !important;
	outline: none !important;
	text-decoration: none !important;
	text-shadow: none !important;
	text-transform: none !important;
}

#vmsos-widget-root a {
	all: unset;
	box-sizing: border-box !important;
	cursor: pointer !important;
	text-decoration: none !important;
}

/* ---------------------------------------------------- Proactive Sales Teaser */
#vmsos-widget-root .vmsos-teaser {
	animation: vmsosSlideUp 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	background: linear-gradient(145deg, rgba(14, 23, 42, 0.96) 0%, rgba(7, 13, 30, 0.98) 100%) !important;
	border: 1px solid rgba(201, 162, 39, 0.35) !important;
	border-radius: 20px !important;
	bottom: 74px;
	box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.75), 0 0 25px rgba(201, 162, 39, 0.15) !important;
	color: var(--vmsos-text) !important;
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: calc(100vw - 36px);
	max-width: 360px;
	padding: 18px !important;
	position: absolute;
	right: 0;
	z-index: 99999;
	backdrop-filter: blur(24px) !important;
	-webkit-backdrop-filter: blur(24px) !important;
	box-sizing: border-box !important;
}

#vmsos-widget-root[data-position="left"] .vmsos-teaser {
	left: 0;
	right: auto;
}

@keyframes vmsosSlideUp {
	from { opacity: 0; transform: translateY(14px) scale(0.96); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

#vmsos-widget-root .vmsos-teaser__head {
	align-items: center;
	display: flex;
	gap: 12px;
	position: relative;
	width: 100%;
}

#vmsos-widget-root .vmsos-teaser__avatar-wrap {
	align-items: center;
	background: linear-gradient(135deg, rgba(201, 162, 39, 0.25), rgba(16, 185, 129, 0.2)) !important;
	border: 1.5px solid rgba(201, 162, 39, 0.45) !important;
	border-radius: 50% !important;
	display: flex;
	height: 42px;
	justify-content: center;
	position: relative;
	width: 42px;
	flex-shrink: 0;
	box-shadow: 0 0 14px rgba(201, 162, 39, 0.2);
}

#vmsos-widget-root .vmsos-teaser__avatar {
	color: var(--vmsos-accent) !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

#vmsos-widget-root .vmsos-teaser__dot {
	background: #10b981 !important;
	border: 2px solid #0e172a !important;
	border-radius: 50% !important;
	bottom: -1px;
	height: 11px;
	position: absolute;
	right: -1px;
	width: 11px;
	box-shadow: 0 0 8px #10b981;
}

#vmsos-widget-root .vmsos-teaser__meta {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
	gap: 2px;
}

#vmsos-widget-root .vmsos-teaser__name {
	color: #f8fafc !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: -0.2px !important;
	line-height: 1.25 !important;
	display: flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

#vmsos-widget-root .vmsos-teaser__name-badge {
	color: #10b981;
	display: inline-flex;
	align-items: center;
}

#vmsos-widget-root .vmsos-teaser__sub {
	color: #10b981 !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap !important;
}

#vmsos-widget-root .vmsos-teaser__sub-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #10b981;
	box-shadow: 0 0 6px #10b981;
	display: inline-block;
}

#vmsos-widget-root .vmsos-teaser__close,
#vmsos-widget-root button.vmsos-teaser__close {
	align-items: center !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	color: #94a3b8 !important;
	cursor: pointer !important;
	display: flex !important;
	font-size: 16px !important;
	height: 26px !important;
	justify-content: center !important;
	line-height: 1 !important;
	padding: 0 !important;
	position: absolute;
	right: -2px;
	top: -2px;
	width: 26px !important;
	transition: all 0.2s ease !important;
}

#vmsos-widget-root .vmsos-teaser__close:hover {
	background: rgba(255, 255, 255, 0.16) !important;
	color: #ffffff !important;
	transform: scale(1.08);
}

#vmsos-widget-root .vmsos-teaser__text {
	color: #e2e8f0 !important;
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	margin: 2px 0 2px 0 !important;
}

#vmsos-widget-root .vmsos-teaser__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 2px;
}

/* -------------------------------------------------------------- Chips */
#vmsos-widget-root .vmsos-chips-container,
#vmsos-widget-root .vmsos-chips-wrap {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	margin: 8px 0 12px 0 !important;
	padding: 0 !important;
}

#vmsos-widget-root .vmsos-chip,
#vmsos-widget-root button.vmsos-chip,
#vmsos-widget-root .vmsos-chip-btn,
#vmsos-widget-root button.vmsos-chip-btn {
	all: unset !important;
	align-items: center !important;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 20px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: #e2e8f0 !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	gap: 5px !important;
	letter-spacing: normal !important;
	line-height: 1.25 !important;
	padding: 6px 13px !important;
	text-transform: none !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	user-select: none !important;
	white-space: nowrap !important;
}

#vmsos-widget-root .vmsos-chip:hover,
#vmsos-widget-root button.vmsos-chip:hover,
#vmsos-widget-root .vmsos-chip-btn:hover,
#vmsos-widget-root button.vmsos-chip-btn:hover {
	background: rgba(201, 162, 39, 0.18) !important;
	border-color: var(--vmsos-accent) !important;
	color: #fbbf24 !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 14px rgba(201, 162, 39, 0.25) !important;
}

#vmsos-widget-root .vmsos-teaser__cta,
#vmsos-widget-root button.vmsos-teaser__cta {
	all: unset !important;
	align-items: center !important;
	background: linear-gradient(135deg, #c9a227 0%, #e0b429 100%) !important;
	border: none !important;
	border-radius: 12px !important;
	box-shadow: 0 4px 16px rgba(201, 162, 39, 0.35) !important;
	box-sizing: border-box !important;
	color: #0b1327 !important;
	cursor: pointer !important;
	display: flex !important;
	font-family: inherit !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	justify-content: space-between !important;
	letter-spacing: normal !important;
	padding: 11px 16px !important;
	text-transform: none !important;
	white-space: nowrap !important;
	width: 100% !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#vmsos-widget-root .vmsos-teaser__cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(201, 162, 39, 0.45) !important;
	background: linear-gradient(135deg, #d4ad2b 0%, #ebd04b 100%) !important;
}

#vmsos-widget-root .vmsos-teaser__cta-arrow {
	transition: transform 0.2s ease;
	display: inline-block;
}

#vmsos-widget-root .vmsos-teaser__cta:hover .vmsos-teaser__cta-arrow {
	transform: translateX(3px);
}

/* ------------------------------------------------------------- Floating Launcher FAB */
#vmsos-widget-root .vmsos-launcher,
#vmsos-widget-root button.vmsos-launcher {
	all: unset !important;
	align-items: center !important;
	background: linear-gradient(135deg, #0b1327 0%, #17244a 100%) !important;
	border: 1px solid rgba(201, 162, 39, 0.45) !important;
	border-radius: 999px !important;
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.5), 0 0 16px var(--vmsos-accent-glow) !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	gap: 10px !important;
	height: 52px !important;
	padding: 0 20px !important;
	position: relative !important;
	text-transform: none !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#vmsos-widget-root .vmsos-launcher:hover {
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.7), 0 0 24px var(--vmsos-accent-glow) !important;
	transform: translateY(-2px) !important;
}

/* When teaser is open, collapse launcher into an elegant 48px round FAB to avoid button clash */
#vmsos-widget-root .vmsos-launcher.is-teaser-active,
#vmsos-widget-root button.vmsos-launcher.is-teaser-active {
	width: 50px !important;
	min-width: 50px !important;
	max-width: 50px !important;
	height: 50px !important;
	padding: 0 !important;
	justify-content: center !important;
	border-radius: 50% !important;
}

#vmsos-widget-root .vmsos-launcher.is-teaser-active .vmsos-launcher__label,
#vmsos-widget-root button.vmsos-launcher.is-teaser-active .vmsos-launcher__label {
	display: none !important;
}

#vmsos-widget-root .vmsos-launcher.is-teaser-active .vmsos-launcher__pulse,
#vmsos-widget-root button.vmsos-launcher.is-teaser-active .vmsos-launcher__pulse {
	left: auto !important;
	right: 4px !important;
	top: 4px !important;
}

#vmsos-widget-root .vmsos-launcher:hover {
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.7), 0 0 24px var(--vmsos-accent-glow) !important;
	transform: translateY(-2px) !important;
}

#vmsos-widget-root .vmsos-launcher__pulse {
	background: #10b981 !important;
	border: 2px solid #0b1327 !important;
	border-radius: 50% !important;
	height: 11px;
	left: 12px;
	position: absolute;
	top: 10px;
	width: 11px;
	box-shadow: 0 0 8px #10b981;
}

#vmsos-widget-root .vmsos-launcher__icon-chat {
	align-items: center;
	color: var(--vmsos-accent) !important;
	display: inline-flex;
}

#vmsos-widget-root .vmsos-launcher__icon-close {
	color: #fff !important;
	display: inline-flex;
	align-items: center;
}

#vmsos-widget-root .vmsos-launcher__label {
	color: var(--vmsos-text) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

/* ---------------------------------------------------------------- Chat Panel */
#vmsos-widget-root .vmsos-panel {
	animation: vmsosSlideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	background: linear-gradient(180deg, #0b1327 0%, #070d1e 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 20px !important;
	bottom: 74px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.75), 0 0 1px 1px rgba(201, 162, 39, 0.25) !important;
	color: var(--vmsos-text) !important;
	display: none;
	flex-direction: column;
	height: min(78vh, 620px);
	overflow: hidden;
	position: absolute;
	right: 0;
	width: min(94vw, 410px);
	z-index: 99999;
	backdrop-filter: blur(20px);
}

#vmsos-widget-root .vmsos-panel.is-open,
#vmsos-widget-root.is-open .vmsos-panel,
#vmsos-widget-root.is-open #vmsos-panel {
	display: flex !important;
}

#vmsos-widget-root[data-position="left"] .vmsos-panel {
	left: 0;
	right: auto;
}

/* ------------------------------------------------------------- Panel Header */
#vmsos-widget-root .vmsos-head {
	align-items: center;
	background: linear-gradient(135deg, #0e172a 0%, #152038 100%) !important;
	border-bottom: 1px solid var(--vmsos-surface-border) !important;
	display: flex;
	justify-content: space-between;
	padding: 14px 18px !important;
}

#vmsos-widget-root .vmsos-head__info {
	align-items: center;
	display: flex;
	gap: 12px;
}

#vmsos-widget-root .vmsos-head__avatar-wrap {
	align-items: center;
	background: linear-gradient(135deg, rgba(201, 162, 39, 0.25), rgba(6, 182, 212, 0.25)) !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 50% !important;
	display: flex;
	height: 40px;
	justify-content: center;
	position: relative;
	width: 40px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

#vmsos-widget-root .vmsos-head__avatar {
	color: var(--vmsos-accent) !important;
	display: flex;
	align-items: center;
	justify-content: center;
}

#vmsos-widget-root .vmsos-head__dot {
	background: #10b981 !important;
	border: 2px solid #0e172a !important;
	border-radius: 50% !important;
	bottom: -1px;
	height: 10px;
	position: absolute;
	right: -1px;
	width: 10px;
	box-shadow: 0 0 6px #10b981;
}

#vmsos-widget-root .vmsos-head__name {
	color: #fff !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	line-height: 1.2;
}

#vmsos-widget-root .vmsos-head__status {
	color: #10b981 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em;
	margin-top: 2px;
}

#vmsos-widget-root .vmsos-head__controls {
	align-items: center;
	display: flex;
	gap: 6px;
}

/* Header Action Controls */
#vmsos-widget-root .vmsos-btn-action,
#vmsos-widget-root button.vmsos-btn-action,
#vmsos-widget-root a.vmsos-btn-action {
	all: unset !important;
	align-items: center !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text-muted) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	height: 30px !important;
	justify-content: center !important;
	padding: 0 !important;
	text-decoration: none !important;
	text-transform: none !important;
	width: 30px !important;
	transition: all 0.15s ease !important;
}

#vmsos-widget-root .vmsos-btn-action:hover,
#vmsos-widget-root button.vmsos-btn-action:hover,
#vmsos-widget-root a.vmsos-btn-action:hover {
	background: rgba(255, 255, 255, 0.15) !important;
	color: #fff !important;
	border-color: rgba(255, 255, 255, 0.2) !important;
}

#vmsos-widget-root .vmsos-btn-wa {
	color: #25d366 !important;
	background: rgba(37, 211, 102, 0.12) !important;
	border-color: rgba(37, 211, 102, 0.3) !important;
}

#vmsos-widget-root .vmsos-btn-wa:hover {
	background: rgba(37, 211, 102, 0.25) !important;
	color: #fff !important;
}

#vmsos-widget-root .vmsos-btn-phone:hover {
	color: var(--vmsos-accent) !important;
}

#vmsos-widget-root .vmsos-head__close,
#vmsos-widget-root button.vmsos-head__close {
	all: unset !important;
	align-items: center !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text-muted) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	height: 30px !important;
	justify-content: center !important;
	padding: 0 !important;
	text-transform: none !important;
	width: 30px !important;
	transition: color 0.15s !important;
}

#vmsos-widget-root .vmsos-head__close:hover {
	color: #fff !important;
}

/* ----------------------------------------------------------- Tab Navigation */
#vmsos-widget-root .vmsos-tabs-nav {
	background: rgba(11, 19, 39, 0.85) !important;
	border-bottom: 1px solid var(--vmsos-surface-border) !important;
	display: flex !important;
	padding: 8px 10px !important;
	gap: 6px !important;
}

#vmsos-widget-root .vmsos-tab-btn,
#vmsos-widget-root button.vmsos-tab-btn {
	all: unset !important;
	align-items: center !important;
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 9px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: rgba(255, 255, 255, 0.65) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	flex: 1 1 0 !important;
	font-family: inherit !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	justify-content: center !important;
	letter-spacing: normal !important;
	line-height: 1 !important;
	padding: 8px 4px !important;
	text-align: center !important;
	text-transform: none !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	white-space: nowrap !important;
}

#vmsos-widget-root .vmsos-tab-btn:hover,
#vmsos-widget-root button.vmsos-tab-btn:hover {
	background: rgba(255, 255, 255, 0.08) !important;
	color: #fff !important;
}

#vmsos-widget-root .vmsos-tab-btn.is-active,
#vmsos-widget-root button.vmsos-tab-btn.is-active {
	background: rgba(201, 162, 39, 0.14) !important;
	color: var(--vmsos-accent) !important;
	border-color: rgba(201, 162, 39, 0.35) !important;
}

/* ------------------------------------------------------------- Tab Views */
#vmsos-widget-root .vmsos-tab-view {
	display: flex;
	flex-direction: column;
	flex: 1;
	overflow: hidden;
}

/* ------------------------------------------------------------- Messages Log */
#vmsos-widget-root .vmsos-log {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 12px;
	overflow-y: auto;
	padding: 16px !important;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.15) transparent;
}

#vmsos-widget-root .vmsos-log::-webkit-scrollbar {
	width: 5px;
}
#vmsos-widget-root .vmsos-log::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.15);
	border-radius: 4px;
}

/* --------------------------------------------------- Welcome Hero Card */
#vmsos-widget-root .vmsos-welcome-hero {
	background: linear-gradient(135deg, rgba(22, 32, 60, 0.6) 0%, rgba(11, 19, 39, 0.8) 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 14px !important;
	padding: 14px 16px !important;
	display: flex;
	flex-direction: column;
	gap: 10px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

#vmsos-widget-root .vmsos-welcome-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	font-weight: 600;
	color: var(--vmsos-emerald);
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

#vmsos-widget-root .vmsos-welcome-pulse-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--vmsos-emerald);
	box-shadow: 0 0 8px var(--vmsos-emerald);
}

#vmsos-widget-root .vmsos-welcome-text {
	color: #f1f5f9;
	font-size: 13.5px;
	line-height: 1.5;
}

#vmsos-widget-root .vmsos-welcome-wa {
	all: unset !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	background: rgba(37, 211, 102, 0.12) !important;
	border: 1px solid rgba(37, 211, 102, 0.3) !important;
	border-radius: 8px !important;
	padding: 8px 12px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: #4ade80 !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

#vmsos-widget-root .vmsos-welcome-wa:hover {
	background: rgba(37, 211, 102, 0.22) !important;
	border-color: rgba(37, 211, 102, 0.5) !important;
	color: #fff !important;
}

#vmsos-widget-root .vmsos-wa-pill-icon {
	display: inline-flex;
	align-items: center;
	color: #25d366;
}

#vmsos-widget-root .vmsos-wa-arrow {
	font-weight: bold;
}

/* ------------------------------------------------------------- Message Bubbles */
#vmsos-widget-root .vmsos-msg {
	animation: vmsosMsgIn 0.22s cubic-bezier(0.16, 1, 0.3, 1) forwards;
	border-radius: 16px !important;
	font-size: 13.8px !important;
	line-height: 1.55 !important;
	max-width: 88%;
	padding: 12px 16px !important;
	position: relative;
	word-break: break-word;
}

@keyframes vmsosMsgIn {
	from { opacity: 0; transform: translateY(8px) scale(0.98); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

#vmsos-widget-root .vmsos-msg a {
	color: var(--vmsos-accent) !important;
	text-decoration: underline !important;
}

#vmsos-widget-root .vmsos-msg.is-agent {
	align-self: flex-start;
	background: #141f38 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom-left-radius: 4px !important;
	color: #f1f5f9 !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

#vmsos-widget-root .vmsos-msg.is-agent:hover .vmsos-msg-copy {
	opacity: 0.85;
}

#vmsos-widget-root .vmsos-msg.is-visitor {
	align-self: flex-end;
	background: linear-gradient(135deg, #c9a227 0%, #eab308 100%) !important;
	border-bottom-right-radius: 4px !important;
	color: #0b1327 !important;
	font-weight: 600 !important;
	box-shadow: 0 4px 14px rgba(201, 162, 39, 0.25);
}

#vmsos-widget-root .vmsos-msg.is-visitor a {
	color: #0b1327 !important;
}

#vmsos-widget-root .vmsos-msg-copy {
	all: unset !important;
	background: rgba(0, 0, 0, 0.5) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 6px !important;
	box-sizing: border-box !important;
	color: #cbd5e1 !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 22px !important;
	width: 22px !important;
	opacity: 0;
	position: absolute;
	right: 8px;
	top: 8px;
	transition: all 0.15s ease;
}

#vmsos-widget-root .vmsos-msg-copy:hover {
	background: rgba(0, 0, 0, 0.8) !important;
	color: #fff !important;
	opacity: 1 !important;
}

#vmsos-widget-root .vmsos-msg-time {
	color: var(--vmsos-text-muted) !important;
	display: block;
	font-size: 10px !important;
	letter-spacing: 0.02em;
	margin-top: 6px;
	opacity: 0.65;
	text-align: right;
	user-select: none;
}

#vmsos-widget-root .vmsos-msg.is-visitor .vmsos-msg-time {
	color: rgba(17, 24, 39, 0.7) !important;
}

/* ------------------------------------------------- Animated Typing Dots Wave */
#vmsos-widget-root .vmsos-msg.is-typing {
	align-self: flex-start;
	background: #141f38 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom-left-radius: 4px !important;
	min-width: 58px;
	padding: 12px 16px !important;
}

#vmsos-widget-root .vmsos-typing-dots {
	align-items: center;
	display: inline-flex;
	gap: 5px;
	height: 12px;
}

#vmsos-widget-root .vmsos-typing-dots span {
	animation: vmsosTypingBounce 1.4s infinite ease-in-out both;
	background: var(--vmsos-accent) !important;
	border-radius: 50% !important;
	display: inline-block;
	height: 7px;
	opacity: 0.35;
	width: 7px;
}

#vmsos-widget-root .vmsos-typing-dots span:nth-child(1) { animation-delay: -0.32s; }
#vmsos-widget-root .vmsos-typing-dots span:nth-child(2) { animation-delay: -0.16s; }
#vmsos-widget-root .vmsos-typing-dots span:nth-child(3) { animation-delay: 0s; }

@keyframes vmsosTypingBounce {
	0%, 80%, 100% { transform: scale(0.65); opacity: 0.3; }
	40% { transform: scale(1.15); opacity: 1; }
}

#vmsos-widget-root .vmsos-msg.is-agent.is-system {
	background: rgba(201, 162, 39, 0.12) !important;
	border: 1px dashed rgba(201, 162, 39, 0.4) !important;
	color: #f7e7a9 !important;
	font-size: 13px !important;
}

/* ---------------------------------------------------- Markdown Rich Styling */
#vmsos-widget-root .vmsos-msg-content {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

#vmsos-widget-root .vmsos-list {
	list-style: disc inside !important;
	margin: 4px 0 !important;
	padding-left: 8px !important;
}

#vmsos-widget-root .vmsos-list li {
	margin-bottom: 3px !important;
}

#vmsos-widget-root .vmsos-code-inline {
	background: rgba(0, 0, 0, 0.35) !important;
	border-radius: 4px !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
	font-size: 12px !important;
	padding: 2px 6px !important;
	color: #38bdf8 !important;
}

#vmsos-widget-root .vmsos-code-block {
	background: rgba(0, 0, 0, 0.5) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 8px !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
	font-size: 12px !important;
	margin: 6px 0 !important;
	overflow-x: auto;
	padding: 10px !important;
}

#vmsos-widget-root .vmsos-blockquote {
	border-left: 3px solid var(--vmsos-accent) !important;
	color: var(--vmsos-text-muted) !important;
	font-style: italic !important;
	margin: 4px 0 !important;
	padding-left: 10px !important;
}

/* -------------------------------------------------- Action Cards (WhatsApp / Phone) */
#vmsos-widget-root .vmsos-action-card {
	animation: vmsosMsgIn 0.25s ease-out forwards;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 12px !important;
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 4px 0 !important;
	padding: 12px 14px !important;
}

#vmsos-widget-root .vmsos-action-wa {
	background: linear-gradient(135deg, rgba(37, 211, 102, 0.14), rgba(0, 0, 0, 0.25)) !important;
	border-color: rgba(37, 211, 102, 0.35) !important;
}

#vmsos-widget-root .vmsos-action-phone {
	background: linear-gradient(135deg, rgba(201, 162, 39, 0.14), rgba(0, 0, 0, 0.25)) !important;
	border-color: rgba(201, 162, 39, 0.35) !important;
}

#vmsos-widget-root .vmsos-action-card__inner {
	align-items: center;
	display: flex;
	gap: 10px;
}

#vmsos-widget-root .vmsos-action-card__icon {
	align-items: center;
	color: #25d366 !important;
	display: flex;
	font-size: 20px;
}

#vmsos-widget-root .vmsos-action-phone .vmsos-action-card__icon {
	color: var(--vmsos-accent) !important;
}

#vmsos-widget-root .vmsos-action-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
}

#vmsos-widget-root .vmsos-action-card__title {
	color: var(--vmsos-text) !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
}

#vmsos-widget-root .vmsos-action-card__desc {
	color: var(--vmsos-text-muted) !important;
	font-size: 11.8px !important;
	line-height: 1.35 !important;
}

#vmsos-widget-root .vmsos-action-card__btns {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

#vmsos-widget-root .vmsos-action-card__btn,
#vmsos-widget-root a.vmsos-action-card__btn,
#vmsos-widget-root button.vmsos-action-card__btn {
	all: unset !important;
	align-items: center !important;
	background: #25d366 !important;
	border: none !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	color: #ffffff !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font-family: inherit !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	justify-content: center !important;
	letter-spacing: normal !important;
	padding: 7px 12px !important;
	text-decoration: none !important;
	text-transform: none !important;
	transition: opacity 0.15s, transform 0.1s !important;
}

#vmsos-widget-root .vmsos-action-card__btn:hover {
	opacity: 0.92 !important;
	transform: translateY(-1px) !important;
}

#vmsos-widget-root .vmsos-action-card__btn.is-secondary {
	background: rgba(255, 255, 255, 0.1) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	color: var(--vmsos-text) !important;
}

#vmsos-widget-root .vmsos-action-card__btn.is-wa {
	background: #25d366 !important;
	color: #ffffff !important;
}

/* -------------------------------------------------- Generative UI Cards (Booking & Quote) */
#vmsos-widget-root .vmsos-gen-card {
	animation: vmsosMsgIn 0.28s ease-out forwards;
	background: linear-gradient(135deg, rgba(22, 32, 60, 0.95), rgba(11, 19, 39, 0.95)) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	border-radius: 14px !important;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 6px 0 !important;
	padding: 14px !important;
}

#vmsos-widget-root .vmsos-booking-card {
	border-color: rgba(6, 182, 212, 0.4) !important;
}

#vmsos-widget-root .vmsos-quote-card {
	border-color: rgba(201, 162, 39, 0.4) !important;
}

#vmsos-widget-root .vmsos-gen-card__head {
	align-items: center;
	display: flex;
	gap: 10px;
}

#vmsos-widget-root .vmsos-gen-card__icon {
	font-size: 22px;
}

#vmsos-widget-root .vmsos-gen-card__titles {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

#vmsos-widget-root .vmsos-gen-card__titles strong {
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700;
}

#vmsos-widget-root .vmsos-gen-card__titles span {
	color: var(--vmsos-text-muted) !important;
	font-size: 11.5px !important;
}

#vmsos-widget-root .vmsos-gen-card__dates,
#vmsos-widget-root .vmsos-gen-card__slots {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

#vmsos-widget-root .vmsos-pill-btn,
#vmsos-widget-root button.vmsos-pill-btn {
	all: unset !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 6px !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text) !important;
	cursor: pointer !important;
	font-family: inherit !important;
	font-size: 11.5px !important;
	font-weight: 500 !important;
	padding: 5px 10px !important;
	transition: all 0.15s ease !important;
}

#vmsos-widget-root .vmsos-pill-btn:hover {
	background: rgba(255, 255, 255, 0.12) !important;
	border-color: rgba(255, 255, 255, 0.25) !important;
}

#vmsos-widget-root .vmsos-pill-btn.is-selected {
	background: rgba(6, 182, 212, 0.25) !important;
	border-color: var(--vmsos-cyan) !important;
	color: #22d3ee !important;
	font-weight: 600 !important;
}

#vmsos-widget-root .vmsos-gen-card__cta,
#vmsos-widget-root button.vmsos-gen-card__cta {
	all: unset !important;
	align-items: center !important;
	background: linear-gradient(135deg, #c9a227 0%, #dfb738 100%) !important;
	border: none !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	color: #0b1327 !important;
	cursor: pointer !important;
	display: flex !important;
	font-family: inherit !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	justify-content: center !important;
	padding: 8px 14px !important;
	text-transform: none !important;
	transition: opacity 0.15s !important;
}

#vmsos-widget-root .vmsos-gen-card__cta:hover {
	opacity: 0.92 !important;
}

/* Quote Estimator Options */
#vmsos-widget-root .vmsos-quote-options {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

#vmsos-widget-root .vmsos-quote-option {
	align-items: center;
	background: rgba(0, 0, 0, 0.25);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	cursor: pointer;
	display: flex;
	gap: 8px;
	padding: 7px 10px;
}

#vmsos-widget-root .vmsos-quote-option input[type="checkbox"] {
	accent-color: var(--vmsos-accent);
	cursor: pointer;
}

#vmsos-widget-root .vmsos-quote-option span {
	color: var(--vmsos-text) !important;
	flex: 1;
	font-size: 12px;
}

#vmsos-widget-root .vmsos-quote-option strong {
	color: var(--vmsos-accent) !important;
	font-size: 12px;
}

#vmsos-widget-root .vmsos-quote-footer {
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-top: 8px;
}

#vmsos-widget-root .vmsos-quote-total-wrap {
	color: var(--vmsos-text-muted) !important;
	font-size: 12.5px !important;
	font-weight: 500;
}

#vmsos-widget-root .vmsos-quote-total {
	color: #10b981 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	margin-left: 4px;
}

/* Honeypot Anti-Spam (Completely hidden from human visitors) */
#vmsos-widget-root .vmsos-hp,
#vmsos-widget-root input.vmsos-hp {
	display: none !important;
	position: absolute !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
	clip: rect(0, 0, 0, 0) !important;
}

/* ----------------------------------------------------------- Input & Mic Bar */
#vmsos-widget-root .vmsos-chat-form {
	align-items: center;
	background: rgba(14, 23, 42, 0.95) !important;
	border-top: 1px solid var(--vmsos-surface-border) !important;
	display: flex;
	gap: 8px;
	padding: 12px 14px !important;
}

#vmsos-widget-root .vmsos-input,
#vmsos-widget-root input.vmsos-input {
	all: unset !important;
	background: rgba(0, 0, 0, 0.45) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 24px !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text) !important;
	flex: 1 !important;
	font-family: inherit !important;
	font-size: 13.5px !important;
	padding: 10px 16px !important;
	text-transform: none !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}

#vmsos-widget-root .vmsos-input:focus,
#vmsos-widget-root input.vmsos-input:focus {
	border-color: var(--vmsos-accent) !important;
	box-shadow: 0 0 0 2px rgba(201, 162, 39, 0.2) !important;
	outline: none !important;
}

#vmsos-widget-root .vmsos-mic,
#vmsos-widget-root button.vmsos-mic {
	all: unset !important;
	align-items: center !important;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid var(--vmsos-surface-border) !important;
	border-radius: 50% !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text-muted) !important;
	cursor: pointer !important;
	display: inline-flex !important;
	height: 38px !important;
	justify-content: center !important;
	width: 38px !important;
	flex-shrink: 0 !important;
	transition: background 0.15s, color 0.15s !important;
}

#vmsos-widget-root .vmsos-mic:hover {
	background: rgba(255, 255, 255, 0.15) !important;
	color: var(--vmsos-text) !important;
}

#vmsos-widget-root .vmsos-mic.is-listening {
	animation: vmsosPulseRed 1.2s infinite !important;
	background: #dc2626 !important;
	border-color: #ef4444 !important;
	color: #ffffff !important;
}

@keyframes vmsosPulseRed {
	0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.6); }
	70% { box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); }
	100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

#vmsos-widget-root .vmsos-send,
#vmsos-widget-root button.vmsos-send {
	all: unset !important;
	align-items: center !important;
	background: linear-gradient(135deg, #c9a227 0%, #dfb738 100%) !important;
	border: none !important;
	border-radius: 50% !important;
	box-shadow: 0 4px 12px rgba(201, 162, 39, 0.3) !important;
	box-sizing: border-box !important;
	color: #0b1327 !important;
	cursor: pointer !important;
	display: inline-flex !important;
	height: 38px !important;
	justify-content: center !important;
	width: 38px !important;
	flex-shrink: 0 !important;
	transition: transform 0.15s, box-shadow 0.15s !important;
}

#vmsos-widget-root .vmsos-send:hover {
	transform: scale(1.06) !important;
	box-shadow: 0 6px 16px rgba(201, 162, 39, 0.45) !important;
}

/* ---------------------------------------------------- Fast Inquiry Form Tab */
#vmsos-widget-root .vmsos-inquiry-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
	overflow-y: auto;
	padding: 16px !important;
}

#vmsos-widget-root .vmsos-q-heading h4 {
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	margin: 0 0 4px 0 !important;
}

#vmsos-widget-root .vmsos-q-heading p {
	color: var(--vmsos-text-muted) !important;
	font-size: 12px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
}

#vmsos-widget-root .vmsos-q-field {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

#vmsos-widget-root .vmsos-q-field label {
	color: #cbd5e1 !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
}

#vmsos-widget-root .vmsos-q-field input,
#vmsos-widget-root .vmsos-q-field textarea {
	all: unset !important;
	background: rgba(0, 0, 0, 0.35) !important;
	border: 1px solid var(--vmsos-surface-border) !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text) !important;
	font-family: inherit !important;
	font-size: 13px !important;
	padding: 8px 12px !important;
	width: 100% !important;
}

#vmsos-widget-root .vmsos-q-field input:focus,
#vmsos-widget-root .vmsos-q-field textarea:focus {
	border-color: var(--vmsos-accent) !important;
	box-shadow: 0 0 0 1px var(--vmsos-accent) !important;
	outline: none !important;
}

#vmsos-widget-root .vmsos-q-submit,
#vmsos-widget-root button.vmsos-q-submit {
	all: unset !important;
	align-items: center !important;
	background: linear-gradient(135deg, #c9a227 0%, #dfb738 100%) !important;
	border: none !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 14px rgba(201, 162, 39, 0.3) !important;
	box-sizing: border-box !important;
	color: #0b1327 !important;
	cursor: pointer !important;
	display: flex !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	justify-content: center !important;
	margin-top: 6px !important;
	padding: 10px 16px !important;
	text-transform: none !important;
	transition: opacity 0.15s, transform 0.1s !important;
}

#vmsos-widget-root .vmsos-q-submit:hover {
	opacity: 0.92 !important;
	transform: translateY(-1px) !important;
}

#vmsos-widget-root .vmsos-q-status {
	border-radius: 6px;
	font-size: 12px;
	font-weight: 600;
	padding: 8px 12px;
	text-align: center;
}

#vmsos-widget-root .vmsos-q-status.is-ok {
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.35);
	color: #34d399;
}

#vmsos-widget-root .vmsos-q-status.is-error {
	background: rgba(239, 68, 68, 0.15);
	border: 1px solid rgba(239, 68, 68, 0.35);
	color: #f87171;
}

#vmsos-widget-root.is-open #vmsos-launcher,
#vmsos-widget-root.is-open .vmsos-launcher,
#vmsos-widget-root.is-open button.vmsos-launcher,
#vmsos-widget-root .vmsos-panel.is-open ~ #vmsos-launcher,
#vmsos-widget-root #vmsos-launcher.is-hidden {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* ------------------------------------------------ Tab 3: WebCall & Voice */
#vmsos-widget-root .vmsos-tab-view.is-voice-tab {
	display: flex;
	flex-direction: column;
	flex: 1;
	overflow-y: auto;
}

#vmsos-widget-root .vmsos-voice-container {
	align-items: center !important;
	display: flex !important;
	flex-direction: column !important;
	padding: 24px 18px !important;
	text-align: center !important;
	width: 100% !important;
}

#vmsos-widget-root .vmsos-voice-avatar-wrap {
	margin-bottom: 14px !important;
	position: relative !important;
}

#vmsos-widget-root .vmsos-voice-ring {
	align-items: center !important;
	background: linear-gradient(135deg, #101c3d 0%, #172752 100%) !important;
	border: 2px solid var(--vmsos-accent) !important;
	border-radius: 50% !important;
	box-shadow: 0 10px 25px rgba(201, 162, 39, 0.25) !important;
	display: flex !important;
	height: 80px !important;
	justify-content: center !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	width: 80px !important;
}

#vmsos-widget-root .vmsos-voice-ring.active {
	animation: vmsosVoicePulse 1.6s infinite ease-out !important;
}

@keyframes vmsosVoicePulse {
	0% {
		box-shadow: 0 0 0 0 rgba(201, 162, 39, 0.6), 0 0 0 8px rgba(16, 185, 129, 0.3);
	}
	70% {
		box-shadow: 0 0 0 20px rgba(201, 162, 39, 0), 0 0 0 30px rgba(16, 185, 129, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(201, 162, 39, 0), 0 0 0 0 rgba(16, 185, 129, 0);
	}
}

#vmsos-widget-root #vmsos-voice-title {
	color: var(--vmsos-text) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	margin: 0 0 4px 0 !important;
}

#vmsos-widget-root #vmsos-voice-status {
	color: var(--vmsos-text-muted) !important;
	font-size: 12px !important;
	margin: 0 0 14px 0 !important;
}

#vmsos-widget-root #vmsos-voice-visualizer {
	border-radius: 8px !important;
	height: 50px !important;
	margin-bottom: 12px !important;
	width: 280px !important;
}

#vmsos-widget-root .vmsos-voice-transcript {
	background: rgba(14, 23, 42, 0.7) !important;
	border: 1px dashed rgba(201, 162, 39, 0.35) !important;
	border-radius: 12px !important;
	color: #cbd5e1 !important;
	font-size: 12.5px !important;
	font-style: italic !important;
	line-height: 1.45 !important;
	margin-bottom: 16px !important;
	max-height: 70px !important;
	overflow-y: auto !important;
	padding: 10px 14px !important;
	width: 100% !important;
}

#vmsos-widget-root .vmsos-voice-call-btn,
#vmsos-widget-root button.vmsos-voice-call-btn {
	align-items: center !important;
	all: unset !important;
	background: linear-gradient(135deg, #c9a227 0%, #eab308 100%) !important;
	border-radius: 28px !important;
	box-shadow: 0 8px 20px rgba(201, 162, 39, 0.3) !important;
	box-sizing: border-box !important;
	color: #070d1e !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	gap: 8px !important;
	padding: 10px 24px !important;
	transition: all 0.25s ease !important;
}

#vmsos-widget-root .vmsos-voice-call-btn:hover {
	box-shadow: 0 10px 26px rgba(201, 162, 39, 0.45) !important;
	transform: scale(1.04) !important;
}

#vmsos-widget-root .vmsos-voice-phone-box {
	background: rgba(14, 23, 42, 0.8) !important;
	border: 1px solid var(--vmsos-surface-border) !important;
	border-radius: 14px !important;
	margin-top: 18px !important;
	padding: 12px 14px !important;
	width: 100% !important;
}

#vmsos-widget-root .vmsos-voice-phone-title {
	color: var(--vmsos-text-muted) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	margin-bottom: 8px !important;
	text-align: left !important;
}

#vmsos-widget-root .vmsos-voice-phone-input-row {
	display: flex !important;
	gap: 8px !important;
}

#vmsos-widget-root .vmsos-voice-phone-input-row input {
	all: unset !important;
	background: rgba(7, 13, 30, 0.9) !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 10px !important;
	box-sizing: border-box !important;
	color: var(--vmsos-text) !important;
	flex: 1 !important;
	font-size: 13px !important;
	padding: 8px 12px !important;
}

#vmsos-widget-root .vmsos-voice-phone-input-row input:focus {
	border-color: var(--vmsos-accent) !important;
}

#vmsos-widget-root .vmsos-btn-trigger-call,
#vmsos-widget-root button.vmsos-btn-trigger-call {
	all: unset !important;
	background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
	border-radius: 10px !important;
	box-sizing: border-box !important;
	color: #fff !important;
	cursor: pointer !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	padding: 8px 14px !important;
	transition: transform 0.2s !important;
	white-space: nowrap !important;
}

#vmsos-widget-root .vmsos-btn-trigger-call:hover {
	transform: scale(1.03) !important;
}

#vmsos-widget-root .vmsos-phone-call-status {
	color: var(--vmsos-emerald) !important;
	font-size: 11.5px !important;
	margin-top: 8px !important;
	text-align: left !important;
}

/* ------------------------------------------------ Responsive Mobile Adaptations */
@media (max-width: 480px) {
	#vmsos-widget-root {
		bottom: 12px;
		right: 12px;
	}
	#vmsos-widget-root[data-position="left"] {
		left: 12px;
	}
	#vmsos-widget-root .vmsos-panel {
		bottom: 64px;
		height: calc(100vh - 80px);
		max-height: 580px;
		right: 0;
		width: calc(100vw - 24px);
	}
	#vmsos-widget-root .vmsos-teaser {
		max-width: calc(100vw - 24px);
		right: 0;
	}
}
