/* ============================================================================
   КНОПКИ МЕССЕНДЖЕРОВ — один файл на весь сайт

   Раньше эти правила лежали в main.css, а разметку кнопок ставит общий сборщик
   на КАЖДУЮ страницу. Страницы услуг, отзывов, акций, политики и предложений
   main.css не подключают — и кнопки выводились там простым списком ссылок во
   всю ширину, а не кружками в углу (замечание MARKETING-2042 п. 16, проверено
   на живом сайте 08.09.2026: блок .msg-fab был 1440×4343 пикселя).

   Второй копией жил генератор страниц врача: он вырезал эти же правила из
   main.css при сборке. Теперь источник один — этот файл; и страницы, и
   генератор подключают его ссылкой (§🔁 v3.15).

   Правила режима для слабовидящих — в assets/css/a11y.css, они там и остаются.
   ============================================================================ */

/* ================================================================
   МЕССЕНДЖЕРЫ — плавающие кнопки (п. 26, 2026-08-19)

   Стоят у правого края над кнопкой обратного звонка. Тёмное стекло, как у
   остальных плавающих кнопок сайта, а сама иконка — в цвете мессенджера:
   так кнопка узнаётся, но не выбивается из оформления.
   ================================================================ */
.msg-fab{
  position: fixed; right: 24px; bottom: 24px; z-index: 59;
  display: flex; flex-direction: column; gap: 12px;
}
/* На главной ниже стоит кнопка обратного звонка (60 px + отступ) — поднимаем,
   чтобы кнопки не наезжали друг на друга. Класс ставится только там, где эта
   кнопка есть, поэтому на остальных страницах отступ снизу обычный. */
.msg-fab--above-call{ bottom: 100px; }
.msg-fab__btn{
  width: 48px; height: 48px; border-radius: 50%;
  display: grid; place-items: center;
  background: rgba(11,11,10,.72);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid var(--divider-strong);
  box-shadow: var(--shadow-sm);
  transition: transform .25s var(--easing), border-color .25s var(--easing);
}
.msg-fab__btn:hover{ transform: scale(1.08); }
.msg-fab__btn svg{ width: 24px; height: 24px; display: block; }
.msg-fab__btn--wa{ color: #25D366; }
.msg-fab__btn--wa:hover{ border-color: rgba(37,211,102,.55); }
.msg-fab__btn--tg{ color: #2AABEE; }
.msg-fab__btn--tg:hover{ border-color: rgba(42,171,238,.55); }
/* MAX — фирменный фиолетовый мессенджера (max.ru). */
.msg-fab__btn--max{ color: #8A5CF6; }
.msg-fab__btn--max:hover{ border-color: rgba(138,92,246,.55); }

@media (max-width: 760px){
  .msg-fab{ right: 16px; bottom: 16px; gap: 10px; }
  /* Кнопка звонка на телефоне 54 px (см. правило .cb-fab выше). */
  .msg-fab--above-call{ bottom: 82px; }
  .msg-fab__btn{ width: 44px; height: 44px; }
  .msg-fab__btn svg{ width: 22px; height: 22px; }
}
/* На телефоне внизу есть полоса с кнопкой «Записаться» — поднимаем кнопки над
   ней, иначе они перекрывают друг друга. */
@media (max-width: 760px){
  body:has(.mobile-bar) .msg-fab{ bottom: 88px; }
  body:has(.mobile-bar) .msg-fab--above-call{ bottom: 150px; }
}
