.whatsapp-floating {
  position: fixed;
  z-index: 30;
  right: max(1.25rem, env(safe-area-inset-right));
  bottom: max(1.25rem, env(safe-area-inset-bottom));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  min-height: 48px;
  padding: .5rem 1rem;
  border: 2px solid white;
  border-radius: 2rem;
  background: #096347;
  color: white;
  box-shadow: 0 3px 12px #062b6033;
  font: 750 .95rem/1.2 var(--font-sans, system-ui, sans-serif);
  text-decoration: none;
}
.whatsapp-floating:hover { background: #064b36; color: white; }
.whatsapp-floating:focus-visible { outline: 3px solid #062b60; outline-offset: 2px; }
body:has(.whatsapp-floating) .mobile-quote-bar:has(a[href^="https://wa.me/"]),
body:has(#measurement-consent:not([hidden]), .mobile-menu[open], dialog[open], input:focus, textarea:focus, select:focus, [contenteditable="true"]:focus) .whatsapp-floating {
  display: none;
}
@media (max-width: 720px) {
  .whatsapp-floating {
    right: max(.75rem, env(safe-area-inset-right));
    bottom: max(.75rem, env(safe-area-inset-bottom));
    width: 52px;
    height: 52px;
    padding: 0;
  }
  .whatsapp-floating span { display: none; }
  body:has(.mobile-quote-bar:not([hidden]) a:not([href^="https://wa.me/"])) .whatsapp-floating { display: none; }
}
@media print { .whatsapp-floating { display: none; } }
