/* public/css/i18n.css — П-47 (2026-09-17): двенадцать языков. Подключается ПОСЛЕДНИМ.
   1) выбор языка — выпадающий список; 2) письменности, которых нет в шрифтах PT (только латиница
   Latin-1 и кириллица): без этих правил слово собирается из двух шрифтов, а тайские и индийские
   надстрочные знаки режутся тесным интерлиньяжем. Оформление экранов здесь не трогается. */

/* --- Выбор языка --- */
.langsel{
  max-width:100%;padding:4px 8px;border-radius:6px;border:1px solid var(--et-line,#786448);
  background:var(--et-panel,#1d1b19);color:inherit;font:inherit;font-size:13px;line-height:1.3;cursor:pointer;
}
.langsel:focus-visible{outline:2px solid var(--et-gold,#c9a45c);outline-offset:1px}
.langsel option{background:#1d1b19;color:#e9e2d2}
.langsel--dock{font-size:12px;padding:2px 6px}
.langsel--settings{font-size:14px;padding:6px 10px;min-width:220px}

/* --- Французское «œ», «Ÿ», знак евро и т. п.: глифы в файлах PT есть, но объявленный диапазон
   (restyle.css) их не включал — буква бралась из запасного шрифта посреди слова. --- */
@font-face{font-family:'PT Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ptsans-latin-400.woff2') format('woff2');unicode-range:U+0131,U+0152-0153,U+0160-0161,U+0178,U+017D-017E,U+02C6,U+02DC,U+20AC,U+2122}
@font-face{font-family:'PT Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/ptsans-latin-700.woff2') format('woff2');unicode-range:U+0131,U+0152-0153,U+0160-0161,U+0178,U+017D-017E,U+02C6,U+02DC,U+20AC,U+2122}
@font-face{font-family:'PT Serif';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ptserif-latin-400.woff2') format('woff2');unicode-range:U+0131,U+0152-0153,U+0160-0161,U+0178,U+017D-017E,U+02C6,U+02DC,U+20AC,U+2122}
@font-face{font-family:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/ptserif-latin-700.woff2') format('woff2');unicode-range:U+0131,U+0152-0153,U+0160-0161,U+0178,U+017D-017E,U+02C6,U+02DC,U+20AC,U+2122}

/* --- Вьетнамский: в PT нет ă, đ, ơ, ư и букв с двумя диакритиками — весь текст системным шрифтом,
   иначе каждое второе слово собрано из двух гарнитур. --- */
:root:lang(vi){
  --et-font-body:'Segoe UI',Roboto,'Noto Sans','Helvetica Neue',Arial,sans-serif;
  --et-font-display:'Segoe UI',Roboto,'Noto Serif','Helvetica Neue',Arial,sans-serif;
  --font:var(--et-font-body);
}
:lang(vi) body{line-height:1.55}

/* --- Китайский, японский: системные гарнитуры нужной страны (у иероглифов начертания разные). --- */
:root:lang(zh-CN){
  --et-font-body:'PT Sans','PingFang SC','Microsoft YaHei UI','Microsoft YaHei','Noto Sans SC','Source Han Sans SC',sans-serif;
  --et-font-display:'PT Serif','Songti SC','SimSun','Noto Serif SC','PingFang SC','Microsoft YaHei',serif;
  --font:var(--et-font-body);
}
:root:lang(ja){
  --et-font-body:'PT Sans','Hiragino Sans','Hiragino Kaku Gothic ProN','Yu Gothic UI','Yu Gothic','Meiryo','Noto Sans JP',sans-serif;
  --et-font-display:'PT Serif','Hiragino Mincho ProN','Yu Mincho','Noto Serif JP','Hiragino Sans','Meiryo',serif;
  --font:var(--et-font-body);
}
:lang(zh-CN) body,:lang(ja) body{line-height:1.6;line-break:strict}

/* --- Тайский, хинди: высокие знаки над и под строкой. --- */
:root:lang(th){
  --et-font-body:'PT Sans','Leelawadee UI','Thonburi','Noto Sans Thai','Tahoma',sans-serif;
  --et-font-display:'PT Serif','Leelawadee UI','Thonburi','Noto Serif Thai','Noto Sans Thai','Tahoma',serif;
  --font:var(--et-font-body);
}
:root:lang(hi){
  --et-font-body:'PT Sans','Nirmala UI','Kohinoor Devanagari','Noto Sans Devanagari','Mangal',sans-serif;
  --et-font-display:'PT Serif','Nirmala UI','Kohinoor Devanagari','Noto Serif Devanagari','Noto Sans Devanagari','Mangal',serif;
  --font:var(--et-font-body);
}
:lang(th) body,:lang(hi) body{line-height:1.7}

/* Разрядка букв рвёт лигатуры деванагари и тайские сочетания, у иероглифов выглядит дырами; прописных
   букв в этих письменностях нет. Во вьетнамском прописные с двумя диакритиками упираются в строку выше. */
:lang(th) *,:lang(hi) *,:lang(zh-CN) *,:lang(ja) *{letter-spacing:0 !important}
:lang(vi) *{letter-spacing:normal}
:lang(th) .btn,:lang(hi) .btn,:lang(th) button,:lang(hi) button{line-height:1.5}

/* Немецкие и французские подписи длиннее русских на треть: кнопки и вкладки переносят слово, а не
   вылезают за рамку. */
:lang(de) .btn,:lang(fr) .btn,:lang(es) .btn,:lang(pt-BR) .btn,:lang(vi) .btn{hyphens:auto;overflow-wrap:anywhere}

/* evening.css задаёт body шрифт напрямую ('PT Sans', минуя переменные) — возвращаем стек языка. */
:lang(th) body,:lang(hi) body,:lang(zh-CN) body,:lang(ja) body{font-family:var(--et-font-body)}
/* Вьетнамский: одна гарнитура везде — заголовки на PT Serif тоже собирались бы из двух шрифтов. */
:lang(vi) body,:lang(vi) body *{font-family:var(--et-font-body) !important}

/* --- Карта мира: подписи городов текстом поверх табличек, вшитых в картинку по-русски.
   Размер шрифта привязан к ширине карты (cqw), чтобы подпись масштабировалась вместе с рисунком;
   длинное название расширяет плашку в обе стороны от центра и всё равно закрывает нарисованную. --- */
.atlas__map{container-type:inline-size}
.atlas__label{
  position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;
  box-sizing:border-box;padding:0 .6em;white-space:nowrap;pointer-events:none;line-height:1;
  background:linear-gradient(#2b1f14,#1c140c);border:1px solid #b08d4f;border-radius:3px;
  box-shadow:0 0 0 1px rgba(0,0,0,.6),0 1px 3px rgba(0,0,0,.7);
  color:#f1e3be;font-family:var(--et-font-display);font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  font-size:11px;font-size:clamp(7px,1.18cqw,15px);
}
