.bsw-float-btn {
	/* Fallback only - the real position (type/top/bottom/left/right) is
	   written by BSW_Public::build_position_css() as a higher-specificity
	   #bsw-floating-whatsapp-btn rule, from the admin's Position settings. */
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 999999;
	width: var(--bsw-size, 60px);
	height: var(--bsw-size, 60px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: transform 0.15s ease, filter 0.15s ease;
	padding: 0;
}

/* Icon-only (no custom button text) is the default/most common case.
   The logo SVG itself now draws the bubble shape, the colour, the white
   outline AND its own drop-shadow-like halo - so the button wrapper
   stays fully transparent here. It only needs to hold/scale the SVG;
   it must NOT also paint its own green circle behind it, or the icon
   ends up looking like a small badge sitting inside a bigger plain
   circle instead of being one single WhatsApp logo. */
.bsw-float-btn:not(.bsw-has-text) {
	background: none;
	box-shadow: none;
}

.bsw-float-btn:not(.bsw-has-text):hover {
	filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.35));
}

/* Only when there IS button text do we switch to a solid pill shape
   (background colour + shadow) with padding + a gap, and fall back to
   the plain phone glyph (see whatsapp_simple_svg()) instead of the full
   logo mark, so the two don't visually double up. */
.bsw-float-btn.bsw-has-text {
	background-color: var(--bsw-color, #25D366);
	border-radius: 50px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
	padding: 0 16px;
	gap: 8px;
}

.bsw-float-btn:hover {
	transform: scale(1.06);
}

.bsw-float-btn.bsw-has-text:hover {
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
}

.bsw-float-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	flex-shrink: 0;
}

.bsw-float-btn.bsw-has-text .bsw-float-icon {
	width: 32px;
	height: 32px;
}

.bsw-float-text {
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

@media (max-width: 782px) {
	.bsw-float-btn.bsw-hide-mobile {
		display: none !important;
	}
}

@media (min-width: 783px) {
	.bsw-float-btn.bsw-hide-desktop {
		display: none !important;
	}
}
