/* ═══ ДОСТУПНОСТЬ: hit-target ≥ 44×44 на тач-устройствах ═══
   iOS HIG / Apple WCAG 2.5.5 требует минимум 44×44 для тап-целей.
   На мобиле многие иконки/закрывашки были 32-36px — палец промазывал.

   Подход: pointer:coarse (тач-экран) → все кнопки минимум 44×44.
   Используем min-width/min-height чтобы не ломать визуальный размер
   иконки внутри — она остаётся той же, но «область клика» расширяется. */

@media (pointer: coarse), (max-width: 640px) {

  /* Закрывашки модалок ─────────────────────────────── */
  .ai-close,
  #ai-modal .ai-close,
  #pclose,
  #legal-modal button,
  #feedback-modal button[onclick*="remove"],
  #paywall-modal button[onclick*="remove"],
  #cart-modal .cart-close,
  #auth-modal .auth-close,
  .modal-close,
  button.close-btn,
  button[onclick*="classList.remove('open')"] {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Кнопки плеера: «<», «>», quality, source ─────── */
  #pframe-wrap .pp,
  #pframe-wrap .pn,
  #pqbtn,
  #p-src-btn,
  .p-btn,
  .player-btn,
  #pbar > button,
  #pbar [role="button"] {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  /* Иконки навигации в хедере (AI, тема, корзина, бургер) ── */
  nav .ai-toggle,
  nav .theme-toggle,
  nav .cart-btn,
  nav .burger,
  nav .nav-icon-btn,
  header button[data-lucide],
  .my-drop-toggle {
    min-width: 44px !important;
    min-height: 44px !important;
  }

  /* «✕» и стрелки в drop-меню, dm-msg-menu, share-menu ── */
  #share-menu button,
  .dm-msg-menu button,
  .drop-item-close {
    min-height: 44px !important;
  }

  /* Звёздочки рейтинга должны быть крупнее на тач — пользователь не должен «прицеливаться» ── */
  .star,
  .review-star,
  .fb-star,
  #fb-stars span {
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Чекбоксы и радиокнопки — родительский label получает area ── */
  label.checkbox,
  label.radio,
  .switch-label {
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }
}
