/* Lanceur léger visible avant le chargement du widget complet.
   Ne l'afficher qu'après restauration de sa position mémorisée. */
.heho-chat-launcher:not([data-position-ready]) { visibility: hidden; }
@media (scripting: none) { .heho-chat-launcher:not([data-position-ready]) { visibility: visible; } }
.heho-chat-launcher {
  position: fixed;
  left: 20px;
  bottom: calc(20px + env(safe-area-inset-bottom));
  /* Au-dessus du header (1000), sous les tiroirs et offcanvas (1040+). */
  z-index: 1038;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: transparent;
  color: var(--st-accent, #fff);
  text-decoration: none;
  isolation: isolate;
  -webkit-tap-highlight-color: transparent;
  touch-action: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}
.heho-chat-launcher::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: 999px;
  background: #282834;
  box-shadow: 0 4px 24px #0006,
    0 0 0 2px color-mix(in srgb, var(--st-accent, #d6a2ff) 14%, transparent),
    0 0 10px 2px color-mix(in srgb, var(--st-accent, #aa84e0) 33%, transparent);
}
.heho-chat-launcher svg { display: block; width: 20px; height: 20px; stroke-width: 2; }
.heho-chat-launcher:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (max-width: 480px) {
  .heho-chat-launcher { left: 12px; bottom: calc(80px + env(safe-area-inset-bottom)); width: 60px; height: 60px; }
  .heho-chat-launcher svg { width: 26px; height: 26px; }
}
