/* ════════ Touch accessibility (WCAG 2.5.5, Apple HIG) ════════
   Минимальный размер touch-target = 44×44px на mobile/tablet.
   Применяется только на узких экранах (≤1024px), не трогает desktop.
   Включается через <link rel="stylesheet" href="/touch-a11y.css"> в HTML. ═══ */

@media (max-width: 1024px) {
  /* Кнопки навигации/действий — гарантировать min-height 44px. */
  .drop-btn,
  .drop-btn.coral,
  .drop-btn.ghost,
  .drop-btn.entry,
  .home-btn,
  .login,
  .login-small,
  .home,
  .als-gchip,
  .agw-grade,
  .vh-drop,
  .vh-qopt {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* drop-btn: текущий padding 13px + font ~16px = ~42px. Поднимаем до 44. */
  .drop-btn {
    padding-top: max(13px, calc((44px - 1em) / 2));
    padding-bottom: max(13px, calc((44px - 1em) / 2));
  }

  /* Бейдж гостя/пользователя — аватар был 42px, поднимаем до 44. */
  .aino-id-badge {
    min-height: 44px;
    min-width: 44px;
  }

  /* Кнопки с иконкой-only (без текста) — даем честные 44×44. */
  button[aria-label],
  a[aria-label],
  .icon-btn {
    min-height: 44px;
    min-width: 44px;
  }

  /* Закрыть/назад кнопки в модалках. */
  .close-btn,
  .modal-close {
    min-height: 44px;
    min-width: 44px;
  }

  /* ★ GENERIC FALLBACK: все button/a/input[type=submit] с видимым размером
     < 44px — поднимаем. Покрывает classless кнопки (🔊Слушать историю, Войти
     без класса), Tailwind-кнопки (p-2 rounded-full), и любой будущий класс.
     !important — переопределяет inline Tailwind p-2 (8px) и специфичность. */
  button:not([disabled]):not(.touch-skip),
  a[href]:not(.touch-skip),
  input[type="submit"]:not(.touch-skip),
  input[type="button"]:not(.touch-skip),
  [role="button"]:not(.touch-skip) {
    min-height: 44px;
    min-width: 44px;
  }

  /* Текстовые input и поля ответа — оставляем как есть (не tap-target). */
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="number"],
  input:not([type]) {
    min-height: revert;
    min-width: revert;
  }
}

