/* Floating WhatsApp button (bottom-right on every page) */
.wa-float{
  position:fixed;z-index:60;
  right:max(20px,calc(env(safe-area-inset-right) + 16px));
  bottom:max(20px,calc(env(safe-area-inset-bottom) + 16px));
  display:flex;align-items:center;gap:12px;
  direction:ltr;text-decoration:none;
  -webkit-tap-highlight-color:transparent;
  animation:wa-in .6s cubic-bezier(.2,.9,.3,1.2) .8s both;
  pointer-events:none;
}
.wa-float__btn{
  position:relative;flex:none;pointer-events:auto;
  width:62px;height:62px;border-radius:50%;
  display:grid;place-items:center;
  background:linear-gradient(145deg,#2fe27c 0%,#1fb855 100%);
  color:#fff;
  box-shadow:0 10px 26px rgba(17,128,66,.38),0 2px 6px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.35);
  transition:transform .35s cubic-bezier(.2,.9,.3,1.3),box-shadow .35s ease;
}
.wa-float__btn svg{width:32px;height:32px;display:block}
/* soft pulsing ring */
.wa-float__btn::before,.wa-float__btn::after{
  content:"";position:absolute;inset:0;border-radius:50%;
  border:2px solid rgba(37,211,102,.55);
  animation:wa-ring 3.2s cubic-bezier(.2,.6,.3,1) 2s infinite;
  pointer-events:none;
}
.wa-float__btn::after{animation-delay:2.5s}
.wa-float__label{
  direction:rtl;white-space:nowrap;
  font-family:var(--sans,'Assistant','Segoe UI',sans-serif);
  font-size:.95rem;font-weight:600;line-height:1.25;
  color:var(--indigo-deep,#141F38);
  background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  padding:.7em 1.1em;border-radius:14px 14px 4px 14px;
  box-shadow:0 10px 30px rgba(20,31,56,.18),0 1px 3px rgba(20,31,56,.12);
  border:1px solid rgba(201,160,78,.35);
  opacity:0;transform:translateX(10px) scale(.96);transform-origin:right center;
  transition:opacity .35s ease,transform .35s cubic-bezier(.2,.9,.3,1.2);
  pointer-events:none;
}
.wa-float__label small{display:block;font-size:.78rem;font-weight:500;color:var(--ink-soft,#5A4F40);margin-top:2px}
.wa-float:hover .wa-float__btn,.wa-float:focus-visible .wa-float__btn{
  transform:translateY(-3px) scale(1.06);
  box-shadow:0 16px 34px rgba(17,128,66,.45),0 3px 8px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.35);
}
.wa-float:active .wa-float__btn{transform:scale(.94)}
.wa-float:hover .wa-float__label,.wa-float:focus-visible .wa-float__label,.wa-float.is-peek .wa-float__label{
  opacity:1;transform:none;
}
.wa-float:focus-visible{outline:none}
.wa-float:focus-visible .wa-float__btn{outline:3px solid var(--gold,#C9A04E);outline-offset:3px}

@keyframes wa-in{from{opacity:0;transform:translateY(24px) scale(.8)}to{opacity:1;transform:none}}
@keyframes wa-ring{0%{transform:scale(1);opacity:.9}70%,100%{transform:scale(1.6);opacity:0}}

/* Mobile: slightly smaller, label only as a short peek */
@media (max-width:760px){
  .wa-float{gap:10px;right:max(16px,calc(env(safe-area-inset-right) + 12px));bottom:max(16px,calc(env(safe-area-inset-bottom) + 12px))}
  .wa-float__btn{width:58px;height:58px}
  .wa-float__btn svg{width:30px;height:30px}
  .wa-float__label{font-size:.88rem;padding:.6em .95em}
  .wa-float__label small{display:none}
  .wa-float:hover .wa-float__label{opacity:0;transform:translateX(10px) scale(.96)}
  .wa-float.is-peek .wa-float__label{opacity:1;transform:none}
}
@media (hover:none){.wa-float:hover .wa-float__btn{transform:none}}

@media (prefers-reduced-motion:reduce){
  .wa-float,.wa-float__btn,.wa-float__label{animation:none!important;transition:none!important}
  .wa-float__btn::before,.wa-float__btn::after{display:none}
}
@media print{.wa-float{display:none}}
