/* ============================================================
   Мультиязычность — страховка вёрстки.

   Русский — язык, под который рисовался макет, и он не должен измениться
   ни на пиксель. Поэтому ВСЕ правила ниже включаются только когда язык
   интерфейса не русский: :root:not([lang="ru"]).

   Проблема, которую они решают: казахские и английские эквиваленты часто
   длиннее русских («Поддержать» → «Қолдау көрсету»). Элементы с жёстким
   white-space: nowrap в этом случае выдавливают соседей за край карточки
   или полосы. Разрешаем им переноситься и рвать сверхдлинные слова —
   вместо того чтобы ломать сетку.
   ============================================================ */

/* 1) Общая защита: длинное слово рвётся, а не распирает контейнер. */
:root:not([lang="ru"]) body {
  overflow-wrap: break-word;
}

/* 2) Флекс-дети по умолчанию не сжимаются меньше содержимого — из-за этого
      длинный перевод выталкивает соседей. min-width:0 снимает это. */
:root:not([lang="ru"]) .react,
:root:not([lang="ru"]) .own-bar,
:root:not([lang="ru"]) .site-menu__langs {
  flex-wrap: wrap;
}
:root:not([lang="ru"]) .react > *,
:root:not([lang="ru"]) .own-bar > * {
  min-width: 0;
}

/* 3) Чипы и подписи, которым nowrap задан жёстко: разрешаем перенос. */
:root:not([lang="ru"]) .pub-about__chip,
:root:not([lang="ru"]) .own-bar__label,
:root:not([lang="ru"]) .afisha__cb,
:root:not([lang="ru"]) .mlk-topics-chip,
:root:not([lang="ru"]) .cab-gc__hwdue {
  white-space: normal;
}

/* 4) Кнопки интерфейса: текст переносится внутри, тач-цель сохраняется. */
:root:not([lang="ru"]) .btn,
:root:not([lang="ru"]) .react__btn,
:root:not([lang="ru"]) .site-menu__item {
  white-space: normal;
  height: auto;
  min-height: 44px;
}

/* 5) Средняя оценка остаётся в одну строку — это короткое число, а перенос
      «★ 4,3 · 12» посреди выглядел бы поломкой. */
:root:not([lang="ru"]) .react__avg {
  white-space: nowrap;
}

/* 6) Переключатель языка: на узком экране кнопки становятся в столбец,
      если три подписи не помещаются в ряд. */
@media (max-width: 380px) {
  .site-menu__lang { flex: 1 1 100%; }
}

/* — переведённое пользовательское содержимое —
   Тонкий пунктир снизу: сигнал, что текст переведён и его можно вернуть к
   оригиналу одним касанием. Кто-то пишет на другом языке намеренно — учит
   его или приводит название, — и человек должен видеть, что было написано. */
.is-i18n-tr {
  border-bottom: 1px dotted var(--line-strong);
  cursor: pointer;
}
.is-i18n-tr.is-i18n-orig {
  border-bottom-style: solid;
  border-bottom-color: var(--accent);
}
