/* ==========================================================================
   Бразилия: гайд по переезду — оформление поверх Material 9.7.
   Палитра в mkdocs.base.yml стоит на primary/accent: custom, поэтому все
   цвета заданы здесь. Зачем своя палитра: штатный green (#4cae4f) даёт белому
   тексту шапки и ссылкам на белом контраст ~2.9:1 — ниже порога читаемости 4.5.
   ========================================================================== */

/* --- Цвета: зелёный и золото флага, затемнённые под контраст ------------- */
:root {
  --br-green: #00813d;          /* шапка: белый текст 5:1 */
  --br-green-soft: #00813d14;   /* подложки заголовков блоков */
  --br-gold: #e0a100;           /* акцент-полоса, маркеры */
  --md-primary-fg-color: #00813d;
  --md-primary-fg-color--light: #2e9a5e;
  --md-primary-fg-color--dark: #006a32;
  --md-primary-bg-color: #fff;
  --md-primary-bg-color--light: #ffffffb3;
  --md-accent-fg-color: #a86400;              /* наведение: читается на белом */
  --md-accent-fg-color--transparent: #a864001a;
  --md-accent-bg-color: #fff;
  --md-accent-bg-color--light: #ffffffb3;
}
[data-md-color-scheme="default"] {
  --md-typeset-a-color: #00733a;              /* ссылки: 6:1 на белом */
}
[data-md-color-scheme="slate"] {
  --md-hue: 200;                              /* фон чуть в морскую волну вместо синевы */
  --br-green-soft: #3ecf8e1a;
  --br-gold: #ffc94d;
  --md-primary-fg-color: #0d4f2d;             /* шапка в тёмной теме не светит в глаза */
  --md-primary-fg-color--light: #1d6b40;
  --md-primary-fg-color--dark: #093a21;
  --md-typeset-a-color: #5fd08f;              /* ссылки: 8:1 на тёмном фоне */
  --md-accent-fg-color: #ffc94d;
  --md-accent-fg-color--transparent: #ffc94d1a;
}
/* Узкая золотая полоса под шапкой — единственный «флаговый» штрих. */
.md-header { box-shadow: inset 0 -.15rem 0 var(--br-gold); }
.md-header[data-md-state="shadow"], .md-header--shadow {
  box-shadow: inset 0 -.15rem 0 var(--br-gold), 0 0 .2rem #0000001a, 0 .2rem .4rem #0003;
}

/* --- Заголовки: разделы длинной страницы должны быть видны при прокрутке --- */
.md-typeset h1 {
  color: var(--md-default-fg-color);
  font-weight: 700;
  letter-spacing: -.02em;
  margin-bottom: .5em;
}
.md-typeset h2 {
  font-weight: 700;
  font-size: 1.35em;
  letter-spacing: -.01em;
  margin-top: 2em;
  padding-top: .9em;
  border-top: .05rem solid var(--md-default-fg-color--lightest);
}
/* Сразу после блоков «Коротко»/«Нельзя» линия лишняя. */
.md-typeset .admonition + h2 { border-top: 0; padding-top: 0; }
.md-typeset h3 { font-weight: 650; }

/* --- Шапка страницы «🟢 основа: N утверждений…» — плашка, а не серый шум --- */
.md-typeset h1 + p > small:only-child {
  display: inline-block;
  padding: .3em .8em;
  border-radius: 1em;
  background: var(--md-default-fg-color--lightest);
  color: var(--md-default-fg-color--light);
  font-size: .68rem;
  line-height: 1.5;
}

/* --- Блоки: «Коротко» и «Нельзя» — главное на странице, не мельче текста --- */
.md-typeset .admonition, .md-typeset details { font-size: .72rem; }
.md-typeset .admonition.abstract, .md-typeset .admonition.danger {
  font-size: .76rem;
  border-width: 0 0 0 .25rem;
  box-shadow: none;
}
.md-typeset .admonition.abstract { border-color: var(--br-green); background: var(--br-green-soft); }
.md-typeset .abstract > .admonition-title { background: transparent; font-size: .8rem; }
.md-typeset .abstract > .admonition-title::before { background-color: var(--br-green); }
.md-typeset .admonition.danger { background: #ff17440d; }
.md-typeset .danger > .admonition-title { background: transparent; font-size: .8rem; }
.md-typeset .admonition.abstract li, .md-typeset .admonition.danger li { margin-bottom: .35em; }
[data-md-color-scheme="slate"] .md-typeset .abstract > .admonition-title::before { background-color: #5fd08f; }

/* --- «По городам»: 10–18 свёрнутых блоков подряд — компактный аккордеон --- */
.md-typeset details.note {
  margin: .35em 0;
  box-shadow: none;
  border-width: .05rem;
  border-color: var(--md-default-fg-color--lightest);
}
.md-typeset details.note > summary {
  background: transparent;
  font-weight: 600;
  font-size: .74rem;
}
.md-typeset details.note > summary::before { background-color: var(--br-gold); }
.md-typeset details.note[open] { border-color: var(--br-gold); }
.md-typeset h2 + details.note { margin-top: .8em; }

/* --- Служебный блок ссылок на сообщения: узнаётся по t.me-ссылкам, без правки
       шаблона. Приглушён и разложен колонками — 80 дат не тянут страницу вниз. --- */
.md-typeset details.note:has(a[href^="https://t.me/"]) {
  --md-admonition-icon--note: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M1.75 1h8.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 10.25 10H7.061l-2.574 2.573A1.458 1.458 0 0 1 2 11.543V10h-.25A1.75 1.75 0 0 1 0 8.25v-5.5C0 1.784.784 1 1.75 1M1.5 2.75v5.5c0 .138.112.25.25.25h1a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.75.75 0 0 1 .53-.22h3.5a.25.25 0 0 0 .25-.25v-5.5a.25.25 0 0 0-.25-.25h-8.5a.25.25 0 0 0-.25.25m13 2a.25.25 0 0 0-.25-.25h-.5a.75.75 0 0 1 0-1.5h.5c.966 0 1.75.784 1.75 1.75v5.5A1.75 1.75 0 0 1 14.25 12H14v1.543a1.458 1.458 0 0 1-2.487 1.03L9.22 12.28a.749.749 0 0 1 .326-1.275.75.75 0 0 1 .734.215l2.22 2.22v-2.19a.75.75 0 0 1 .75-.75h1a.25.25 0 0 0 .25-.25Z"/></svg>');
  margin-top: 2em;
  border-style: dashed;
  opacity: .8;
}
.md-typeset details.note:has(a[href^="https://t.me/"]) > summary { font-weight: 400; }
.md-typeset details.note[open]:has(a[href^="https://t.me/"]) { border-color: var(--md-default-fg-color--lighter); }
.md-typeset details.note:has(a[href^="https://t.me/"]) > summary::before {
  background-color: var(--md-default-fg-color--light);
}
.md-typeset details.note:has(a[href^="https://t.me/"]) ul {
  columns: 7.5em;
  column-gap: 1em;
  list-style: none;
  margin-left: 0;
  font-variant-numeric: tabular-nums;
}
.md-typeset details.note:has(a[href^="https://t.me/"]) li { margin: 0 0 .15em; }

/* --- Таблицы сроков и цен: во всю ширину, крупнее штатных .64rem ---------- */
.md-typeset table:not([class]) { display: table; width: 100%; font-size: .7rem; }
.md-typeset table:not([class]) th {
  background: var(--br-green-soft);
  font-weight: 700;
}
.md-typeset table:not([class]) tbody tr:nth-child(odd) { background: var(--md-code-bg-color--light); }
.md-typeset table:not([class]) tbody tr:hover { background: var(--md-accent-fg-color--transparent); }
/* Последний столбец — «по данным на ММ.ГГГГ»: служебный, узкий, приглушённый. */
.md-typeset table:not([class]) td:last-child:nth-child(3) {
  white-space: nowrap;
  color: var(--md-default-fg-color--light);
  font-variant-numeric: tabular-nums;
}
@media screen and (max-width: 44.9375em) {
  .md-typeset table:not([class]) td:last-child:nth-child(3) { white-space: normal; }
}

/* --- Аббревиатуры: Material уже рисует пунктир снизу; своё underline давало
       двойную линию. Оставляем одну, бледную — их на странице десятки. --- */
.md-typeset abbr {
  text-decoration: none;
  border-bottom: .05rem dotted var(--md-default-fg-color--lighter);
}
.md-typeset a abbr { border-bottom-color: currentcolor; }

/* Длинные адреса gov.br (в «Официальные источники») не рвут вёрстку телефона. */
.md-typeset a { overflow-wrap: break-word; }

/* --- Чек-листы «Что подготовить»: отступ как у обычного списка ------------ */
.md-typeset .task-list-item { margin-bottom: .3em; }

/* --- Карточки разделов и тем: вся карточка кликабельна, наведение видно ---- */
.md-typeset .grid.cards > ul > li {
  position: relative;
  border-radius: .6rem;
  border-color: var(--md-default-fg-color--lightest);
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.md-typeset .grid.cards > ul > li:hover {
  border-color: var(--md-primary-fg-color--light);
  box-shadow: 0 .2rem .8rem #0000001a;
  transform: translateY(-.1rem);
}
.md-typeset .grid.cards > ul > li > p:first-child { font-size: .85rem; margin-bottom: 0; }
.md-typeset .grid.cards > ul > li > p:first-child a { color: var(--md-default-fg-color); }
.md-typeset .grid.cards > ul > li:hover > p:first-child a { color: var(--md-typeset-a-color); }
/* Растянутая ссылка: клик по любому месту карточки ведёт на страницу. */
.md-typeset .grid.cards > ul > li > p:first-child a::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
}
.md-typeset .grid.cards > ul > li > hr { margin: .5em 0; }
.md-typeset .grid.cards > ul > li > p:not(:first-child) {
  color: var(--md-default-fg-color--light);
  font-size: .72rem;
}
.md-typeset .grid.cards > ul > li em:last-child {
  font-style: normal;
  white-space: nowrap;
  color: var(--md-default-fg-color--light);
}
/* Абзац-подпись «N тем · 🟢…» и «опыта мало» (класс ставит build.py). */
.md-typeset .grid.cards .card-meta {
  display: block;
  margin-top: .4em;
  font-size: .64rem;
  color: var(--md-default-fg-color--light);
}

/* --- Главная, «Дорожная карта»: этапы как вехи ---------------------------- */
.md-typeset h2 + h3, .md-typeset h3 { margin-top: 1.6em; }
.md-content .md-typeset h3:has(+ ul) {
  padding: .2em 0 .2em .6em;
  border-left: .2rem solid var(--br-gold);
}

/* --- Низ страницы: «Дальше» — кнопка, «См. также» — чипы ------------------ */
/* Разметка из see_also(): <hr> <p><strong>➡️ Дальше:</strong> <a></p>
   <p><strong>См. также:</strong> <a> · <a></p>. Разделители «·» гасим
   нулевым шрифтом абзаца, у детей возвращаем размер. */
.md-typeset hr ~ p:has(> strong:first-child + a) {
  font-size: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  align-items: center;
  margin: .8em 0;
}
.md-typeset hr ~ p:has(> strong:first-child + a) > * { font-size: .74rem; }
.md-typeset hr ~ p:has(> strong:first-child + a) > strong {
  color: var(--md-default-fg-color--light);
  font-weight: 600;
  margin-right: .2rem;
}
.md-typeset hr ~ p:has(> strong:first-child + a) > a {
  padding: .25em .75em;
  border: .05rem solid var(--md-default-fg-color--lightest);
  border-radius: 1em;
  color: var(--md-default-fg-color);
  transition: border-color .15s, color .15s;
}
.md-typeset hr ~ p:has(> strong:first-child + a) > a:hover {
  border-color: var(--md-accent-fg-color);
  color: var(--md-accent-fg-color);
}
/* «Дальше»: одна ссылка в абзаце — заливка, это основной путь чтения. */
.md-typeset hr ~ p:has(> strong:first-child + a:last-child) > a {
  background: var(--md-primary-fg-color);
  border-color: var(--md-primary-fg-color);
  color: var(--md-primary-bg-color);
  font-weight: 600;
}
.md-typeset hr ~ p:has(> strong:first-child + a:last-child) > a:hover {
  background: var(--md-primary-fg-color--dark);
  color: var(--md-primary-bg-color);
}
/* Подпись «Собрано автоматически…» — последний абзац, мелко и приглушённо. */
.md-typeset hr ~ p:last-child > small:only-child {
  display: block;
  margin-top: 1.5em;
  color: var(--md-default-fg-color--light);
}

/* --- Мелочи ---------------------------------------------------------------- */
/* Нижний навигатор «Назад/Вперёд» дублирует «Дальше» — делаем тише. */
.md-footer__title { font-size: .8rem; }
/* Выделение текста в фирменном золоте. */
::selection { background: #e0a10055; }

/* ==========================================================================
   v3 (25.09): меньше шума. Разделы — вкладками в шапке, на главной крупно
   только первые вопросы новичка, остальное — колонками ссылок.
   ========================================================================== */

/* --- Вкладки разделов в шапке: активная — золотой чертой, как акцент флага -- */
.md-tabs { background-color: var(--md-primary-fg-color); }
.md-tabs__link { font-size: .74rem; opacity: .85; }
.md-tabs__item--active .md-tabs__link {
  opacity: 1;
  font-weight: 600;
  box-shadow: inset 0 -.15rem 0 var(--br-gold);
  padding-bottom: .35rem;
}

/* --- Главная: карточки-вопросы крупнее и спокойнее обычных --------------- */
.md-typeset .grid.cards.first-q > ul {
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}
.md-typeset .grid.cards.first-q > ul > li { padding: 1rem 1.1rem; }
.md-typeset .grid.cards.first-q > ul > li > p:first-child { font-size: .95rem; line-height: 1.35; }
.md-typeset .grid.cards.first-q > ul > li > p:not(:first-child) { margin-top: .5em; }

/* --- Главная: «Все разделы» — колонки ссылок без описаний ---------------- */
.md-typeset .topic-cols {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
  gap: .4rem 1.6rem;
}
.md-typeset .topic-cols > div > p:first-child { margin: 0 0 .3em; font-size: .8rem; }
.md-typeset .topic-cols > div > p:first-child a { color: var(--md-default-fg-color); }
.md-typeset .topic-cols ul { list-style: none; margin: 0; padding: 0; }
.md-typeset .topic-cols ul li { margin: 0 0 .25em; font-size: .74rem; }
.md-typeset .topic-cols a.more { color: var(--md-default-fg-color--light); }
.md-typeset .topic-cols a.more:hover { color: var(--md-accent-fg-color); }

/* Кнопка «Пошагово» под карточками — отступ, чтобы не липла к сетке. */
.md-typeset .md-button { margin: .6em 0 .4em; font-size: .74rem; }

/* --- «Пошагово»: вкладки этапов ------------------------------------------ */
.md-typeset .tabbed-labels > label { font-size: .74rem; }
.md-typeset .tabbed-block > ul > li { margin-bottom: .55em; }

/* Подпись «заготовка» в карточке — строкой ниже, мелко. */
.md-typeset .grid.cards li .card-meta { margin-top: .5em; }
