/* Floating Text – Frontend */

#ft-floating-wrap {
	position: fixed;
	top: var(--ft-top, auto);
	bottom: var(--ft-bottom, 20px);
	left: var(--ft-left, auto);
	right: var(--ft-right, 20px);
	z-index: var(--ft-z, 9999);
	transform: var(--ft-transform, none);
}

/* Center-horizontal correction when left:50% */
#ft-floating-wrap.ft-center-h {
	transform: translateX(-50%) var(--ft-transform, none);
}

#ft-floating-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: var(--ft-padding, 12px 20px);
	background-color: var(--ft-bg-color, #6ab04c);
	color: var(--ft-font-color, #ffffff);
	font-size: var(--ft-font-size, 16px);
	font-weight: 600;
	border-radius: var(--ft-radius, 4px);
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
	white-space: nowrap;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	line-height: 1.4;
}

a#ft-floating-btn {
	text-decoration: none;
}

#ft-floating-btn:hover,
#ft-floating-btn:focus-visible {
	background-color: var(--ft-hover-bg, #5a9a3c);
	color: var(--ft-hover-color, #ffffff);
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.24);
	outline: none;
}

#ft-floating-btn:active {
	transform: translateY(0);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

/* Mobile collapsed state */
#ft-floating-btn.ft-collapsed .ft-text {
	display: none;
}

#ft-floating-btn.ft-collapsed .ft-icon {
	display: inline;
}

.ft-icon {
	display: none;
	font-size: 1.3em;
	line-height: 1;
}

/* Expanded on mobile (after tap) */
#ft-floating-btn.ft-mobile-expanded .ft-text {
	display: inline;
}

#ft-floating-btn.ft-mobile-expanded .ft-icon {
	display: none;
}
