/* ───────────────────────────────────────────────────────────────
   IVAE WhatsApp Floating Action Button — site-wide
   Position: fixed bottom-right, above the bottom-nav tabs on mobile.
   Mobile-first; lifts down to viewport edge on desktop.
   ─────────────────────────────────────────────────────────────── */
.ivae-wa-fab{
  position:fixed;
  right:14px;
  bottom:calc(86px + env(safe-area-inset-bottom,0px));
  width:56px;height:56px;border-radius:50%;
  background:#ffffff;color:#25D366;border:1px solid rgba(0,0,0,.06);
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 12px 28px -8px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.2);
  z-index:78;
  text-decoration:none;
  transition:transform .3s cubic-bezier(.22,.61,.36,1),
             box-shadow .3s cubic-bezier(.22,.61,.36,1),
             opacity .3s ease,
             visibility .3s ease;
}
.ivae-wa-fab svg{width:30px;height:30px;display:block}
/* Lock the glyph to WhatsApp green on every page — the global dark theme
   rule `html.dark a{color:var(--gold)}` would otherwise tint it gold, since
   the SVG paints with currentColor. */
.ivae-wa-fab,
html.dark a.ivae-wa-fab,
html a.ivae-wa-fab{color:#25D366 !important}
.ivae-wa-fab:hover,
.ivae-wa-fab:focus-visible{
  transform:scale(1.05);
  box-shadow:0 16px 36px -8px rgba(0,0,0,.30), 0 6px 14px rgba(0,0,0,.22);
  outline:none;
}
.ivae-wa-fab:focus-visible{outline:2px solid #c9a54e;outline-offset:3px}
.ivae-wa-fab:active{transform:scale(.95)}
.ivae-wa-fab[data-hidden="1"]{opacity:0;visibility:hidden;transform:scale(.7)}

/* Desktop: FAB lifts to viewport edge (no bottom-nav above 900px) */
@media (min-width:901px){
  .ivae-wa-fab{
    bottom:24px;
    right:24px;
    width:60px;height:60px;
  }
  .ivae-wa-fab svg{width:32px;height:32px}
}

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .ivae-wa-fab,
  .ivae-wa-fab:hover,
  .ivae-wa-fab:active{transition:none;transform:none}
}

/* Subtle entry pulse — once on first paint */
@media (prefers-reduced-motion:no-preference){
  @keyframes ivaeWaFabPulse{
    0%{box-shadow:0 12px 28px -8px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.2), 0 0 0 0 rgba(201,165,78,.5)}
    70%{box-shadow:0 12px 28px -8px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.2), 0 0 0 18px rgba(201,165,78,0)}
    100%{box-shadow:0 12px 28px -8px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.2), 0 0 0 0 rgba(201,165,78,0)}
  }
  .ivae-wa-fab[data-pulse="1"]{animation:ivaeWaFabPulse 1.4s cubic-bezier(.22,.61,.36,1) 1.2s 2}
}
