/* Общие правила под телефон: безопасные зоны iPhone, настройки доступности, удобные касания.
   Подключается одной строкой на каждой странице приложения, до брендбука клиента:
   <link rel="stylesheet" href="/app-ios.css">
   Цвета и шрифты здесь не задаются — только поведение и размеры. */

/* Светлая тема объявлена явно: иначе Safari в тёмной теме сам перекрашивает поля и
   выпадающие списки, и они перестают попадать в брендбук. */
:root { color-scheme: light; }

/* Высота экрана: 100vh на iPhone считается вместе с панелями браузера, из-за чего низ
   страницы уходит под них. dvh меняется вместе с панелями. */
@supports (height: 100dvh) {
  body { min-height: 100dvh; }
}

/* Отступ под полосу «домой» страницы считают сами (calc(... + env(safe-area-inset-bottom))).
   Раньше он не работал: env() на iPhone даёт ноль без viewport-fit=cover в <meta viewport>.
   Теперь cover прописан на всех страницах, и их собственные отступы заработали — своё
   значение здесь не навязываем, чтобы не ломать выверенные панели. */

/* Поля ввода: на iPhone Safari увеличивает страницу, если шрифт в поле меньше 16px.
   Человек набирает телефон — экран «прыгает» и обратно сам не возвращается. */
@media (pointer: coarse) {
  input, textarea, select { font-size: 16px; }
}

/* Касание: палец уверенно попадает примерно в 44×44 pt. Маленькие кнопки увеличиваем
   самим размером — трогать их расположение нельзя, часть из них уже спозиционирована
   вручную (глазок в поле пароля, крестик в окне), и position здесь всё ломает. */
.help-btn { min-width: 26px; min-height: 26px; }
.lead-x, .backbtn, .pwtoggle { min-width: 40px; min-height: 40px; }

/* Серый блик по тапу на iPhone выглядит грязно: подсветку убираем, но фокус с клавиатуры
   оставляем — им пользуются с внешней клавиатурой и программы чтения с экрана. */
a, button, .svc, .more-item, .moreitem, .tk, .card {
  -webkit-tap-highlight-color: transparent;
}
:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* «Уменьшение движения» в настройках телефона: человек просил не анимировать — не анимируем. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* «Увеличить контраст»: тонкие линии в полупрозрачных тонах при этой настройке пропадают. */
@media (prefers-contrast: more) {
  .card, .tk, .svc, .more-item, .moreitem, input, textarea, select {
    border-color: currentColor;
  }
}

/* Длинные слова армянского и ссылки не должны распирать карточку на узком экране. */
body { overflow-wrap: break-word; }
