/* Страницы публичных оферт биржи: /oferta/advertiser и /oferta/seller и постоянные адреса
 * их редакций (/oferta/{offer}/{version}).
 *
 * Документ юридический и длинный (13–15 разделов, полторы сотни пунктов), поэтому здесь
 * решаются ровно две задачи: читаемая колонка (иначе строка растягивается на всю ширину
 * монитора и глаз теряет начало следующей) и различимая структура — разделы, пункты, списки.
 *
 * Палитра и размеры — токены дизайн-системы (ds-tokens.css), поэтому страница темнеет по
 * html[data-bs-theme="dark"] сама, без единой строки тёмного CSS. */

.offer-doc {
  max-width: 860px;
  margin: 0 auto;
  padding: var(--sp-6) 0 var(--sp-8);
  color: var(--text);
  font-size: var(--fs-base);
  line-height: var(--lh-normal);
}

.offer-doc__title {
  margin: 0 0 var(--sp-2);
  color: var(--text);
  font-size: var(--fs-3xl);
  font-weight: var(--fw-black);
  line-height: var(--lh-tight);
}

.offer-doc__subtitle {
  margin: 0 0 var(--sp-5);
  color: var(--text-muted);
  font-size: var(--fs-lg);
}

/* Плашка редакции: номер, срок действия и постоянный адрес. Стоит до текста, потому что
 * первое, что нужно человеку и проверяющему, — какая это редакция и где она лежит всегда. */
.offer-doc__meta {
  margin-bottom: var(--sp-6);
  padding: var(--sp-4);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  background: var(--bg);
}

.offer-doc__meta p {
  margin: 0 0 var(--sp-1);
}

.offer-doc__meta p:last-child {
  margin-bottom: 0;
}

.offer-doc__body h2 {
  margin: var(--sp-6) 0 var(--sp-3);
  font-size: var(--fs-xl);
  font-weight: var(--fw-bold);
  line-height: var(--lh-tight);
}

/* Пункты идут сплошным потоком абзацев с собственной нумерацией внутри текста («4.5.1. …»),
 * поэтому расстояние между ними важнее любых отступов слева: по нему глаз и отделяет пункт
 * от пункта. */
.offer-doc__body p {
  margin: 0 0 var(--sp-3);
}

.offer-doc__body .offer-doc__list {
  margin: 0 0 var(--sp-3);
  padding-left: var(--sp-5);
}

.offer-doc__body .offer-doc__list li {
  margin-bottom: var(--sp-1);
}

.offer-doc__revisions {
  margin-top: var(--sp-8);
  padding-top: var(--sp-5);
  border-top: 1px solid var(--border);
}

.offer-doc__revisions h2 {
  margin: 0 0 var(--sp-3);
  font-size: var(--fs-lg);
  font-weight: var(--fw-semi);
}

.offer-doc__revisions ul {
  margin: 0;
  padding-left: var(--sp-5);
}

@media (max-width: 767px) {
  .offer-doc {
    padding: var(--sp-4) 0 var(--sp-6);
  }

  .offer-doc__title {
    font-size: var(--fs-2xl);
  }
}
