.ts-contact-floating-stack {
  position: fixed;
  right: 22px;
  bottom: 30px;
  z-index: 90;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 12px;
}
.ts-contact-floating-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: opacity .25s ease, transform .3s ease;
}
.ts-contact-floating-main,
.ts-contact-floating-button {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(15,23,42,.1);
  border-radius: 18px;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 18px 44px rgba(15,23,42,.2);
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease, opacity .22s ease;
}
.ts-contact-floating-main {
  border: 0;
  background: linear-gradient(135deg,#0891b2,#06b6d4);
  color: #fff;
  font-size: 27px;
  font-weight: 900;
}
.ts-contact-floating-main span { transition: transform .3s ease; }
.ts-contact-floating-button:hover,
.ts-contact-floating-main:hover { transform: translateY(-4px) scale(1.04); }
.ts-contact-floating-button svg { width: 24px; height: 24px; }
.ts-contact-floating-button--whatsapp { background: #22c55e; color: #fff; }
.ts-contact-floating-button--gps { background: #7c3aed; color: #fff; }
.ts-contact-floating-button { position: relative; }
.ts-contact-floating-button::before {
  content: attr(data-contact-tooltip);
  position: absolute;
  right: calc(100% + 12px);
  padding: 7px 10px;
  border-radius: 10px;
  background: #0f172a;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  opacity: 0;
  transform: translateX(8px);
  pointer-events: none;
  transition: .2s ease;
}
.ts-contact-floating-button:hover::before { opacity: 1; transform: translateX(0); }
.ts-contact-floating-stack.is-collapsed .ts-contact-floating-actions {
  opacity: 0;
  transform: translateY(18px) scale(.88);
  pointer-events: none;
}
.ts-contact-floating-stack.is-collapsed .ts-contact-floating-main span { transform: rotate(45deg); }
html[data-market-theme="dark"] .ts-contact-floating-button {
  border-color: rgba(148,163,184,.18);
  background: #111827;
  color: #f8fafc;
}
html[data-market-theme="dark"] .ts-contact-floating-button--whatsapp { background:#16a34a; }
html[data-market-theme="dark"] .ts-contact-floating-button--gps { background:#6d28d9; }
@media (max-width: 700px) {
  .ts-contact-floating-stack { right: 12px; bottom: 18px; }
  .ts-contact-floating-main,.ts-contact-floating-button { width: 48px; height: 48px; border-radius: 16px; }
  .ts-contact-floating-button::before { display:none; }
}
