/**
 * WhatsApp CTA — inline buttons + fixed FAB.
 */

.tekton-whatsapp-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.45em 0.95em;
	border-radius: 999px;
	background: #25d366;
	color: #fff !important;
	text-decoration: none !important;
	font-weight: 600;
	font-size: 0.875rem;
	line-height: 1.2;
	transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
	box-shadow: 0 6px 16px rgba(37, 211, 102, 0.35);
}

.tekton-whatsapp-cta:hover,
.tekton-whatsapp-cta:focus {
	color: #fff !important;
	filter: brightness(1.05);
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(37, 211, 102, 0.4);
}

.tekton-whatsapp-cta__icon {
	display: inline-flex;
	width: 1.15em;
	height: 1.15em;
}

.tekton-whatsapp-cta__icon svg {
	width: 100%;
	height: 100%;
	display: block;
	fill: currentColor;
}

.tekton-whatsapp-cta--header .tekton-whatsapp-cta__label,
.tekton-whatsapp-cta--footer .tekton-whatsapp-cta__label {
	white-space: nowrap;
}

/* Floating FAB */
.tekton-whatsapp-fab {
	position: fixed;
	/* Above scroll-to-top (99999) and sticky header (100020); below language modal (~100100). */
	z-index: 100025;
	width: 56px;
	height: 56px;
	border-radius: 999px;
	background: #25d366;
	color: #fff !important;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none !important;
	box-shadow: 0 12px 28px rgba(37, 211, 102, 0.45);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.tekton-whatsapp-fab:hover,
.tekton-whatsapp-fab:focus {
	color: #fff !important;
	transform: scale(1.06);
	box-shadow: 0 16px 32px rgba(37, 211, 102, 0.5);
}

.tekton-whatsapp-fab__icon {
	display: flex;
	width: 28px;
	height: 28px;
}

.tekton-whatsapp-fab__icon svg {
	width: 100%;
	height: 100%;
	fill: currentColor;
	display: block;
}

.tekton-whatsapp-fab--right {
	right: max(var(--scroll-top-offset-side, 16px), env(safe-area-inset-right, 0px));
	left: auto;
}

.tekton-whatsapp-fab--left {
	left: max(var(--scroll-top-offset-side, 16px), env(safe-area-inset-left, 0px));
	right: auto;
}

.tekton-whatsapp-fab--middle {
	top: 50%;
	bottom: auto;
	transform: translateY(-50%);
}

.tekton-whatsapp-fab--middle:hover,
.tekton-whatsapp-fab--middle:focus {
	transform: translateY(-50%) scale(1.06);
}

/*
 * Bottom offset mirrors scroll-to-top.
 * --tekton-app-bar-body-offset already includes safe-area when the app bar is on;
 * do not add env(safe-area-inset-bottom) again.
 */
.tekton-whatsapp-fab--bottom {
	top: auto;
	bottom: calc(var(--scroll-top-offset-bottom, 30px) + var(--tekton-app-bar-body-offset, 0px));
}

/* Stack above scroll-to-top when same side */
.tekton-whatsapp-fab--bottom.tekton-whatsapp-fab--stack-scroll-top {
	bottom: calc(
		var(--scroll-top-offset-bottom, 30px)
		+ var(--scroll-top-size, 45px)
		+ 14px
		+ var(--tekton-app-bar-body-offset, 0px)
	);
}

.tekton-whatsapp-fab--middle.tekton-whatsapp-fab--stack-scroll-top {
	/* keep middle; scroll-top stays at bottom */
}

@media (max-width: 959px) {
	.tekton-whatsapp-fab--vis-desktop {
		display: none !important;
	}
}

@media (min-width: 960px) {
	.tekton-whatsapp-fab--vis-mobile {
		display: none !important;
	}
}
