/* Sağ alt WhatsApp butonu + arada bir açılan balon. Küçük, mobil uyumlu; ürün sayfasında yapışkan çubuğun üstüne çıkar. */
.wa-float { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom)); z-index: 60; display: flex; flex-direction: column; align-items: flex-end; gap: 0.65rem; pointer-events: none; }
.wa-float > * { pointer-events: auto; }
.has-sticky-cta .wa-float { bottom: calc(5.4rem + env(safe-area-inset-bottom)); }

.wa-float__btn { position: relative; display: grid; place-items: center; width: 3.25rem; height: 3.25rem; border-radius: 50%; background: var(--color-brand, #063529); border: 1.5px solid var(--color-gold, #c59c63); box-shadow: 0 0.7rem 1.4rem -0.7rem rgb(5 15 11 / 0.7); transition: transform var(--dur-base, 0.3s) var(--ease, ease), box-shadow var(--dur-base, 0.3s) var(--ease, ease); }
.wa-float__btn svg { width: 1.6rem; height: 1.6rem; fill: #fff; }
.wa-float__btn:hover, .wa-float__btn:focus-visible { transform: translateY(-2px) scale(1.05); box-shadow: 0 0.9rem 1.6rem -0.7rem rgb(5 15 11 / 0.8); }
.wa-float__btn:focus-visible { outline: 2px solid var(--color-gold, #c59c63); outline-offset: 3px; }
/* Nabız halkası (yalnızca balon/animasyon açıkken) */
.wa-float.has-bubble .wa-float__btn::after { content: ""; position: absolute; inset: -1.5px; border-radius: 50%; border: 1.5px solid var(--color-gold, #c59c63); opacity: 0; animation: wa-pulse 3.2s ease-out 2s infinite; pointer-events: none; }
@keyframes wa-pulse { 0% { transform: scale(1); opacity: 0.7; } 70%, 100% { transform: scale(1.65); opacity: 0; } }

.wa-float__bubble { position: relative; max-width: min(17rem, calc(100vw - 2rem)); background: #fff; border: 1px solid var(--color-gold, #c59c63); border-radius: 1rem 1rem 0.25rem 1rem; box-shadow: 0 1rem 2rem -1rem rgb(5 15 11 / 0.55); opacity: 0; transform: translateY(0.6rem) scale(0.96); transform-origin: 100% 100%; pointer-events: none; transition: opacity 0.35s var(--ease, ease), transform 0.35s var(--ease, ease); }
.wa-float__bubble.is-open { opacity: 1; transform: none; pointer-events: auto; }
.wa-float__bubble-link { display: flex; align-items: center; gap: 0.65rem; padding: 0.7rem 2rem 0.7rem 0.7rem; text-decoration: none; color: inherit; }
.wa-float__avatar { flex: none; display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--color-brand, #063529); border: 1px solid var(--color-gold, #c59c63); color: var(--color-gold, #c59c63); font-size: 0.8rem; font-weight: 700; letter-spacing: 0.06em; }
.wa-float__who { display: grid; gap: 0.1rem; min-width: 0; line-height: 1.3; }
.wa-float__who strong { font-size: 0.9rem; color: var(--wp--preset--color--brand-deep, #063529); }
.wa-float__who span { font-size: 0.85rem; color: var(--color-text-muted, #5b645f); }
.wa-float__close { position: absolute; top: 0.2rem; right: 0.3rem; width: 1.6rem; height: 1.6rem; padding: 0; border: 0; border-radius: 50%; background: transparent; font: inherit; font-size: 1.15rem; line-height: 1; color: var(--color-text-muted, #5b645f); cursor: pointer; }
.wa-float__close:hover { color: var(--color-text, #0b1d17); background: rgb(0 0 0 / 0.05); }

@media (max-width: 599.98px) {
	.wa-float { right: max(0.75rem, env(safe-area-inset-right)); bottom: max(0.75rem, env(safe-area-inset-bottom)); gap: 0.5rem; }
	.wa-float__btn { width: 3rem; height: 3rem; }
	.wa-float__btn svg { width: 1.45rem; height: 1.45rem; }
	.wa-float__bubble { max-width: calc(100vw - 1.5rem); }
	.wa-float__avatar { width: 2.1rem; height: 2.1rem; }
}
@media print { .wa-float { display: none; } }
@media (prefers-reduced-motion: reduce) {
	.wa-float.has-bubble .wa-float__btn::after { animation: none; }
	.wa-float__bubble { transition: opacity 0.2s linear; transform: none; }
}
