.pwa-float { display: none; }
@media (max-width: 767.98px) {
  .pwa-float {
    display: flex; flex-direction: column; align-items: flex-end; gap: 12px;
    position: fixed; right: calc(16px + env(safe-area-inset-right, 0px));
    bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 980;
  }
  .pwa-float__button {
    display: inline-flex; align-items: center; justify-content: center;
    width: 56px; height: 56px; flex: 0 0 56px; border-radius: 50%; padding: 0;
    border: 1px solid #73d5eb; color: #fff;
    background: linear-gradient(145deg, #002a5c, #0e527c);
    box-shadow: 0 6px 20px rgba(0, 42, 92, .28); cursor: pointer;
  }
  .pwa-float__button > i { display: inline-flex; align-items: center; justify-content: center; font-size: 23px; line-height: 1; }
  .pwa-float__button > i::before { display: block; line-height: 1; }
  .pwa-float__button:focus-visible, .pwa-float__close:focus-visible { outline: 3px solid #31bedd; outline-offset: 3px; }
  .pwa-float__button:disabled { opacity: .8; cursor: progress; }
  .pwa-float__help {
    width: min(320px, calc(100vw - 32px - env(safe-area-inset-right, 0px) - env(safe-area-inset-left, 0px)));
    max-height: calc(100dvh - 120px - env(safe-area-inset-bottom, 0px)); overflow-y: auto;
    padding: 16px; border-radius: 18px; border: 1px solid var(--ictus-border, #d7deea);
    background: var(--ictus-white, #fff); color: var(--ictus-graphite, #202b3b);
    box-shadow: 0 8px 30px rgba(0, 26, 56, .18); font-size: .85rem; text-align: left;
  }
  .pwa-float__help header { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
  .pwa-float__help p { margin: 0 0 10px; color: inherit; }
  .pwa-float__help ol { padding-left: 20px; margin: 0 0 10px; }
  .pwa-float__help li + li { margin-top: 8px; }
  .pwa-float__help small { color: var(--ictus-lead, #505d73); }
  .pwa-float__close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; border: 0; border-radius: 10px; background: transparent; color: inherit; }
  body.theme-dark .pwa-float__help { background: var(--ictus-dark-surface, #062548); border-color: var(--ictus-dark-border); color: var(--ictus-screen, #f2f5f8); }
  body.theme-dark .pwa-float__help small { color: var(--ictus-dark-muted, #b9c5d3); }
  body.modal-open .pwa-float, body.swal2-shown .pwa-float { display: none; }
}
