.leadflow-widget {
	position: fixed;
	right: 20px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
	z-index: 999999;
	text-decoration: none;
	transition: transform 0.15s ease;
}

.leadflow-widget:hover {
	transform: scale(1.08);
}

.leadflow-call-widget {
	bottom: 90px;
	background: #2f9e44;
}

.leadflow-whatsapp-widget {
	bottom: 20px;
	background: #25d366;
}

/* Floating circle (default) uses the base .leadflow-widget rules above. */

.leadflow-widget-label {
	display: none;
	font-size: 0.85rem;
	font-weight: 600;
	color: #fff;
	white-space: nowrap;
	margin-left: 4px;
}

/* Floating flat / pill: rounded rectangle with icon + label */
.leadflow-widget[class*="leadflow-placement-floating-flat"] {
	width: auto;
	height: auto;
	border-radius: 999px;
	padding: 10px 18px 10px 14px;
	bottom: 20px;
}
.leadflow-widget[class*="leadflow-placement-floating-flat"] .leadflow-widget-label {
	display: inline-block;
}
.leadflow-placement-floating-flat-bottom-right { right: 20px; left: auto; }
.leadflow-placement-floating-flat-bottom-left { left: 20px; right: auto; }

/* Sticky bar: full width, fixed to top or bottom */
.leadflow-widget[class*="leadflow-placement-sticky-bar"] {
	position: fixed;
	left: 0;
	right: 0;
	width: 100%;
	height: auto;
	border-radius: 0;
	padding: 12px 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
}
.leadflow-widget[class*="leadflow-placement-sticky-bar"] .leadflow-widget-label {
	display: inline-block;
}
.leadflow-placement-sticky-bar-top { top: 0; bottom: auto; }
.leadflow-placement-sticky-bar-bottom { bottom: 0; top: auto; }

/* Side tab: vertical strip anchored to the viewport edge, mid-height */
.leadflow-widget[class*="leadflow-placement-side-tab"] {
	top: 50%;
	bottom: auto;
	right: auto;
	transform: translateY(-50%);
	width: auto;
	height: auto;
	border-radius: 8px 0 0 8px;
	padding: 12px 14px;
	writing-mode: vertical-rl;
	text-orientation: mixed;
}
.leadflow-widget[class*="leadflow-placement-side-tab"]:hover {
	transform: translateY(-50%) scale(1.04);
}
.leadflow-widget[class*="leadflow-placement-side-tab"] .leadflow-widget-label {
	display: inline-block;
	margin-left: 0;
	margin-top: 6px;
}
.leadflow-placement-side-tab-right { right: 0; }
.leadflow-placement-side-tab-left { left: 0; border-radius: 0 8px 8px 0; }

/* Simple, dependency-free device targeting for widgets marked mobile/desktop only. */
@media (max-width: 782px) {
	.leadflow-device-desktop { display: none !important; }
}
@media (min-width: 783px) {
	.leadflow-device-mobile { display: none !important; }
}

.leadflow-icon {
	width: 26px;
	height: 26px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.leadflow-icon-call {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M6.6 10.8c1.4 2.7 3.6 4.9 6.3 6.3l2.1-2.1c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.5.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1-9.4 0-17-7.6-17-17 0-.6.4-1 1-1h3.6c.6 0 1 .4 1 1 0 1.2.2 2.4.6 3.5.1.4 0 .8-.3 1.1l-2.1 2.2z'/%3E%3C/svg%3E");
}

.leadflow-icon-whatsapp {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M20.5 3.5A11 11 0 0 0 3 17.4L2 22l4.7-1.2A11 11 0 1 0 20.5 3.5zM12 20a8 8 0 0 1-4.1-1.1l-.3-.2-3 .8.8-2.9-.2-.3A8 8 0 1 1 12 20zm4.4-5.9c-.2-.1-1.4-.7-1.6-.8-.2-.1-.4-.1-.5.1s-.6.8-.7.9c-.1.1-.3.2-.5.1-1.4-.7-2.3-1.3-3.2-2.8-.2-.4.2-.4.6-1.2.1-.1 0-.3 0-.4-.1-.1-.5-1.3-.7-1.8-.2-.5-.4-.4-.5-.4h-.4c-.1 0-.4.1-.6.3-.2.2-.8.8-.8 2s.8 2.3.9 2.5c.1.1 1.6 2.5 4 3.5.6.2 1 .4 1.3.5.6.2 1.1.1 1.5-.1.5-.2 1.4-.6 1.6-1.1.2-.5.2-.9.1-1z'/%3E%3C/svg%3E");
}

.leadflow-form {
	max-width: 480px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.leadflow-form-title {
	margin: 0 0 4px;
}

.leadflow-field {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.leadflow-field label {
	font-size: 0.875rem;
	font-weight: 600;
}

.leadflow-field input,
.leadflow-field textarea {
	padding: 10px 12px;
	border: 1px solid #d0d5dd;
	border-radius: 6px;
	font-size: 0.95rem;
}

.leadflow-form-submit {
	background: #2f5aff;
	color: #fff;
	border: none;
	border-radius: 6px;
	padding: 12px 16px;
	font-weight: 600;
	cursor: pointer;
}

.leadflow-form-submit:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.leadflow-form-message {
	font-size: 0.875rem;
}

.leadflow-form-message.success {
	color: #2f9e44;
}

.leadflow-form-message.error {
	color: #d92d20;
}
