/*
 * PicaJet DAM — компоненты.
 * Токены приходят из theme.json как CSS-переменные --wp--preset--*.
 * Здесь только то, что theme.json выразить не может.
 * Инлайн-стилей в шаблонах нет и быть не должно.
 */

:root {
	--ink:            var(--wp--preset--color--ink);
	--ink-2:          var(--wp--preset--color--ink-2);
	--ink-3:          var(--wp--preset--color--ink-3);
	--ink-4:          var(--wp--preset--color--ink-4);
	--surface:        var(--wp--preset--color--surface);
	--surface-2:      var(--wp--preset--color--surface-2);
	--canvas:         var(--wp--preset--color--canvas);
	--accent:         var(--wp--preset--color--accent);
	--accent-text:    var(--wp--preset--color--accent-text);
	--accent-bg:      var(--wp--preset--color--accent-bg);
	--accent-border:  var(--wp--preset--color--accent-border);
	--line-card:      var(--wp--preset--color--line-card);
	--line-section:   var(--wp--preset--color--line-section);
	--line-row:       var(--wp--preset--color--line-row);
	--line-grid:      var(--wp--preset--color--line-grid);
	--line-thead:     #201e1d;
	--line-btn:       #201e1d;
	--line-dashed:    #7d7979;
	--dark:           var(--wp--preset--color--dark);
	--dark-2:         #2d2b2b;
	--on-dark:        var(--wp--preset--color--on-dark);
	--on-dark-2:      #9b9797;

	/* Радиусов в макете нет ни одного — система «modernist» строится
	   на прямых углах и рамке 2px. Переменные оставлены, чтобы не
	   переписывать каждое правило, но все равны нулю. */
	--r-pill: 0;
	--r-btn: 0;
	--r-sm: 0;
	--r-md: 0;
	--r-lg: 0;
	--r-xl: 0;
	--rule: 2px solid var(--ink);

	--shadow-card: none;   /* теней в макете нет */

	--pad-x: 30px;
	--frame: 1240px;
	--rail-w: 262px;
	--toc-w: 238px;
}

*, *::before, *::after { box-sizing: border-box; }

body {
	margin: 0;
	background: var(--canvas);
	color: var(--ink);
	font-family: var(--wp--preset--font-family--archivo);
	font-size: 15px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

p { text-wrap: pretty; max-width: 88ch; }
h1, h2, h3 { text-wrap: balance; margin: 0 0 12px; }
h1 { font-size: 38px; font-weight: 800; line-height: 1.03; letter-spacing: -.03em; }
h2 { font-size: 23px; font-weight: 800; line-height: 1.15; letter-spacing: -.012em; margin-top: 26px; }
h3 { font-size: 19px; font-weight: 700; line-height: 1.2; }

a { color: var(--accent-text); text-decoration: underline; text-underline-offset: 2px; }
a:hover { color: var(--accent); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
::selection { background: var(--accent-bg); }

.screen-reader-text {
	position: absolute; width: 1px; height: 1px;
	overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.skip {
	position: absolute; left: -9999px;
	background: var(--ink); color: #fff; padding: 10px 16px; z-index: 100;
}
.skip:focus { left: 12px; top: 12px; }

/* ── Шапка ───────────────────────────────────────────── */
.site-header { background: var(--surface); border-bottom: var(--rule); }
.site-header__inner {
	display: flex; align-items: center; gap: 26px;
	max-width: var(--frame); margin: 0 auto; padding: 17px var(--pad-x);
}
.site-header__brand {
	font-size: 19px; font-weight: 800; letter-spacing: -.01em;
	color: var(--ink); text-decoration: none;
}
.site-nav__list { display: flex; gap: 26px; margin: 0; padding: 0; list-style: none; }
.site-nav__list a { font-size: 13.5px; font-weight: 500; color: var(--ink); text-decoration: none; }
.site-nav__list a:hover { color: var(--accent-text); }
.site-nav__list .current-menu-item a { font-weight: 600; }
.site-search { margin-left: auto; }
.site-search input {
	font: inherit; font-size: 12.5px; color: var(--ink-3);
	border: 1px solid var(--line-thead); background: var(--surface-2);
	border-radius: var(--r-pill); padding: 7px 14px; width: 150px;
}

/* ── Каркас страницы ─────────────────────────────────── */
.site-main { max-width: var(--frame); margin: 0 auto; padding: 0 0 40px; }

.frame {
	background: var(--surface);
	border: var(--rule);
	overflow: hidden;
}

.crumbs {
	display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	padding: 13px var(--pad-x);
	border-bottom: 1px solid var(--line-card);
	font-size: 11.5px; color: var(--ink-3);
}
.crumbs a { color: var(--ink-3); text-decoration: none; }
.crumbs a:hover { color: var(--accent-text); text-decoration: underline; }
.crumbs__sep { margin: 0 6px; color: var(--ink-4); }

.split { display: grid; grid-template-columns: 1fr var(--rail-w); }
.split--toc { grid-template-columns: var(--toc-w) 1fr; }
.split__body { padding: var(--pad-x); }
.split--toc .split__body { border-left: 1px solid var(--line-section); }
.split > .rail { border-left: 1px solid var(--line-section); }

.meta-line {
	display: flex; flex-wrap: wrap; gap: 16px;
	font-size: 12.5px; color: var(--ink-4); margin: 0 0 18px;
}
.meta-line a { color: var(--ink-4); }
.meta-line__method { color: var(--accent-text); }

.prose > * + * { margin-top: 14px; }
.prose h2 { margin-top: 26px; }

/* ── Кнопки ──────────────────────────────────────────── */
.btn {
	display: inline-block; font: inherit; font-weight: 600; font-size: 14px;
	border-radius: var(--r-btn); text-decoration: none; cursor: pointer;
	border: 1px solid transparent; padding: 11px 18px;
}
.btn--primary { background: var(--accent); color: #fff; }
.btn--primary:hover { background: #dd2b0f; color: #fff; }
.btn--primary:active { background: #c92709; }
.btn--ghost { background: var(--surface); border-color: var(--line-btn); color: var(--ink); padding: 10px 18px; }
.btn--ghost:hover { border-color: var(--ink); color: var(--ink); }
.btn--sm { font-size: 12.5px; padding: 8px 14px; border-radius: 9px; }

.pill {
	display: inline-block; background: var(--accent); color: #fff;
	font-size: 11px; font-weight: 700; letter-spacing: .1em;
	padding: 5px 11px; border-radius: var(--r-pill);
}
.pill--warn { background: #fff0ec; color: var(--accent-text); border: 1px solid #ffd0c6; }

/* ── Сетка ячеек: зазор красит сама сетка ────────────── */
.cells {
	display: grid; gap: 1px;
	background: var(--line-grid);
	border: 1px solid var(--line-grid);
	border-radius: var(--r-lg);
	overflow: hidden;
	margin: 22px 0;
}
.cells--2 { grid-template-columns: repeat(2, 1fr); }
.cells--3 { grid-template-columns: repeat(3, 1fr); }
.cells--5 { grid-template-columns: repeat(5, 1fr); }
.cell { background: var(--surface); padding: 16px 18px; }
.cell h3 { font-size: 17px; font-weight: 800; margin: 0 0 6px; }
.cell p { font-size: 13px; line-height: 1.5; color: var(--ink-3); margin: 0; }
.cell__kicker {
	font-size: 10.5px; font-weight: 600; letter-spacing: .12em;
	text-transform: uppercase; color: var(--accent); margin: 0 0 6px;
}

/* ── Таблицы: только горизонтальные линии ────────────── */
.table-wrap { overflow-x: auto; margin: 0 0 22px; }
table.data { width: 100%; border-collapse: collapse; font-size: 13px; }
table.data th,
table.data td { border: 0; text-align: left; vertical-align: top; }
table.data thead th {
	padding: 11px 12px;
	border-bottom: 1px solid var(--line-thead);
	font-size: 10.5px; font-weight: 600; letter-spacing: .1em;
	text-transform: uppercase; color: var(--ink-4);
}
table.data tbody th,
table.data tbody td {
	padding: 12px; border-bottom: 1px solid var(--line-row);
}
table.data tbody th { font-weight: 700; }
table.data .qual { color: var(--ink-4); }

/* ── Выноски ─────────────────────────────────────────── */
.callout { border-radius: var(--r-md); padding: 16px 18px; margin: 22px 0; }
.callout p { margin: 0; max-width: 92ch; }
.callout__label {
	font-size: 10.5px; font-weight: 600; letter-spacing: .16em;
	text-transform: uppercase; margin: 0 0 7px !important;
}
.callout--neutral {
	background: var(--surface-2); border: 1px solid var(--line-card);
	border-radius: var(--r-lg); padding: 20px 22px;
}
.callout--neutral .callout__label { color: var(--accent); }
.callout--accent { background: var(--accent-bg); border: 1px solid var(--accent-border); }
.callout--accent .callout__label { color: var(--accent-text); }

/* ── FAQ ─────────────────────────────────────────────── */
.faq { margin: 26px 0 0; }
.faq__label {
	font-size: 11px; font-weight: 600; letter-spacing: .16em;
	text-transform: uppercase; color: var(--ink-4); margin: 0 0 12px;
}
.faq__item { border-top: 1px solid var(--line-row); padding: 11px 0; }
.faq__item:last-child { border-bottom: 1px solid var(--line-row); }
.faq__q {
	font-size: 15px; font-weight: 700; cursor: pointer; list-style: none;
	margin: 0 0 4px;
}
.faq__q::-webkit-details-marker { display: none; }
.faq__a { font-size: 13.5px; line-height: 1.55; color: var(--ink-3); margin: 0; max-width: 92ch; }

/* ── Sources ─────────────────────────────────────────── */
.sources {
	padding: 20px var(--pad-x);
	border-top: 1px solid var(--line-row);
	background: var(--surface-2);
}
.sources__label {
	font-size: 11px; font-weight: 600; letter-spacing: .16em;
	text-transform: uppercase; color: var(--ink-4); margin: 0 0 10px;
}
.sources__list { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.sources__item { font-size: 12.5px; line-height: 1.5; }
.sources__checked { color: var(--ink-4); }

/* ── Сайдбар и оглавление ────────────────────────────── */
.rail, .toc { background: var(--surface-2); padding: var(--pad-x) 22px; }
.rail__label, .toc .rail__label {
	font-size: 10.5px; font-weight: 600; letter-spacing: .16em;
	text-transform: uppercase; color: var(--ink-4); margin: 0 0 10px;
}
.rail__list, .toc__list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.rail__list a, .toc__list a { font-size: 13.5px; line-height: 1.35; color: var(--ink); text-decoration: none; }
.rail__list a:hover, .toc__list a:hover { color: var(--accent-text); text-decoration: underline; }
.toc__list a.is-current { color: var(--accent-text); font-weight: 700; }
.rail__rule { border: 0; border-top: 1px solid var(--line-card); margin: 18px 0 10px; }
.rail__card {
	background: var(--surface); border: 1px solid var(--line-card);
	border-radius: var(--r-md); padding: 15px 16px; margin-top: 20px;
}
.rail__card-title { font-size: 14.5px; font-weight: 700; margin: 0 0 5px; }
.rail__card-body { font-size: 12.5px; line-height: 1.45; color: var(--ink-3); margin: 0 0 8px; }

/* ── Глоссарий ───────────────────────────────────────── */
.definition {
	font-size: 17px; font-weight: 500; line-height: 1.5;
	max-width: 80ch; margin: 0 0 18px;
}
.example {
	border: 1px solid var(--line-card); background: var(--surface-2);
	border-radius: var(--r-md); padding: 16px 18px; margin: 0 0 18px;
}
.example__row { font-size: 13.5px; line-height: 1.7; margin: 0; }
.example__field { color: var(--ink-4); margin-right: 6px; }
.example__values { color: var(--accent-text); }

/* ── Автор ───────────────────────────────────────────── */
.author-box {
	display: flex; gap: 14px; align-items: flex-start;
	border-top: 1px solid var(--line-card); padding-top: 14px; margin-top: 26px;
}
.author-box__photo {
	width: 56px; height: 56px; flex: none;
	border: 1px solid var(--line-card); border-radius: var(--r-sm);
}
.author-box__name { font-size: 15px; font-weight: 700; margin: 0; }
.author-box__bio { font-size: 12.5px; line-height: 1.5; color: var(--ink-3); margin: 3px 0 0; max-width: 70ch; }

/* ── Диаграмма отчёта (PT-11) ────────────────────────── */
.bars { display: grid; gap: 10px; margin: 0 0 22px; }
.bar { display: flex; align-items: center; gap: 14px; }
.bar__label { flex: 0 0 190px; font-size: 13.5px; font-weight: 600; }
.bar__track { flex: 1; min-width: 0; display: flex; }
.bar__fill { height: 28px; border-radius: 7px; background: var(--accent); }
.bar__value { flex: 0 0 152px; white-space: nowrap; font-size: 13px; color: var(--ink-3); }
.bar--1 .bar__fill { background: #ffc4b8; }
.bar--2 .bar__fill { background: #ff9783; }
.bar--3 .bar__fill { background: #ff563c; }

/* ── Инструмент (PT-10) ──────────────────────────────── */
.dropzone {
	border: 1.5px dashed var(--line-dashed); border-radius: var(--r-md);
	padding: 34px 18px;
}
.dropzone__title { font-size: 16px; font-weight: 700; margin: 0 0 5px; }
.dropzone__hint { font-size: 12.5px; line-height: 1.5; color: var(--ink-3); margin: 0; }

/* ── Рекламные слоты: высота резервируется заранее ───── */
.ad-slot { display: block; margin: 26px 0; background: var(--surface-2); }
.ad-slot--leaderboard { min-height: 90px; }
.ad-slot--rectangle { min-height: 250px; }
.ad-slot--rail { min-height: 600px; }

/* ── Футер ───────────────────────────────────────────── */
.site-footer { background: var(--dark); color: var(--on-dark-2); }
.site-footer__inner {
	display: flex; align-items: baseline; gap: 26px;
	max-width: var(--frame); margin: 0 auto; padding: 22px var(--pad-x);
	font-size: 12.5px;
}
.site-footer__brand { font-weight: 700; color: #fff; }
.site-footer__list { display: flex; gap: 26px; margin: 0; padding: 0; list-style: none; }
.site-footer__list a { color: var(--on-dark-2); text-decoration: none; }
.site-footer__list a:hover { color: #fff; }
.site-footer__copy { margin-left: auto; }

/* ── Адаптив ─────────────────────────────────────────── */
@media (max-width: 1023px) {
	.split, .split--toc { grid-template-columns: 1fr; }
	.split > .rail, .split--toc .split__body { border-left: 0; }
	.split > .rail { border-top: 1px solid var(--line-section); }
	.toc { order: 2; border-top: 1px solid var(--line-section); }
	.cells--3, .cells--5 { grid-template-columns: repeat(2, 1fr); }
}

/*
 * Двухколоночные шаблоны схлопываются в одну колонку.
 * Без этого фрейм не помещается в экран: сетка задана в фиксированных
 * колонках и на 375px вылезает за вьюпорт вместе со всей страницей.
 * Сайдбар и оглавление уходят ПОД контент — читать сначала статью,
 * а не список соседей.
 */
@media (max-width: 1023px) {
	.split,
	.split--toc { grid-template-columns: 1fr; }
	.split__body { order: 1; }
	.split > .rail,
	.split > .toc { order: 2; }
	.split--toc .split__body,
	.split > .rail { border-left: 0; }
	.split > .rail,
	.split > .toc {
		border-top: 1px solid var(--line-section);
		width: auto;
	}
}

@media (max-width: 767px) {
	:root { --pad-x: 18px; }
	h1 { font-size: 28px; }
	h2 { font-size: 20px; }
	.cells--2, .cells--3, .cells--5 { grid-template-columns: 1fr; }
	.site-main { padding: 0 0 40px; }
	.frame { border-radius: 0; border-left: 0; border-right: 0; }
	.site-nav { display: none; }
	.site-nav.is-open { display: block; }
	.bar { flex-wrap: wrap; }
	.bar__label { flex: 0 0 100%; }
	.bar__value { flex: 0 0 auto; }
	.site-footer__inner { flex-wrap: wrap; gap: 12px; }
	.site-footer__list { flex-wrap: wrap; gap: 14px; }
}

@media print {
	.site-header, .site-footer, .rail, .toc, .ad-slot { display: none; }
	.frame { border: 0; box-shadow: none; }
}

/* ── PT-01: герой главной ─────────────────────────────── */
.hero { padding: 40px var(--pad-x) 32px; }
.hero__title {
	font-size: 50px; line-height: 1.0; letter-spacing: -.032em; font-weight: 800;
	margin: 0 0 14px; max-width: 24ch; text-wrap: balance;
}
.hero__lead {
	font-size: 16px; line-height: 1.58; color: var(--ink-2);
	max-width: 78ch; margin: 0 0 22px; text-wrap: pretty;
}
.hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }

/* Ячейки главной — кликабельны целиком, поэтому это ссылки, а не div */
.cells--3 { margin: 0 var(--pad-x) var(--pad-x); }
.cell h2 { font-size: 17px; font-weight: 800; margin: 0 0 6px; letter-spacing: -.01em; }
.cell__kicker { display: block; }
a.cell { text-decoration: none; color: inherit; display: block; }
a.cell:hover h2 { color: var(--accent-text); }
a.cell:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }

@media (max-width: 767px) {
	.hero { padding: 28px var(--pad-x) 22px; }
	.hero__title { font-size: 32px; }
	.cells--3 { margin: 0 var(--pad-x) var(--pad-x); }
}

/* ── Списки в ячейках и алфавитный указатель pillar ───── */
.cell__list { margin: 0; padding-left: 18px; font-size: 13px; line-height: 1.75; color: var(--ink-3); }
.cell__price { font-size: 12px; color: var(--accent-text); margin: 0 0 4px; font-weight: 600; }

/*
 * Список подчинённых страниц pillar'а стоит в основной колонке, а не в
 * сайдбаре, поэтому приглушённый стиль .rail__list здесь не годится:
 * без цвета и подчёркивания строки читаются как обычный текст и никто
 * не понимает, что это ссылки. Возвращаем им обычный вид ссылки.
 */
.rail__list--pillar { columns: 2; column-gap: 26px; margin: 0 0 22px; }
.rail__list--pillar li { break-inside: avoid; margin: 0 0 9px; }
.rail__list--pillar a {
	font-size: 14.5px;
	line-height: 1.4;
	color: var(--accent-text);
	text-decoration: underline;
	text-underline-offset: 2px;
	text-decoration-thickness: 1px;
}
.rail__list--pillar a:hover {
	color: var(--accent);
	text-decoration-thickness: 2px;
}

.alpha { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.alpha a {
	display: inline-block; min-width: 24px; text-align: center;
	padding: 4px 6px; border: 1px solid var(--line-btn); border-radius: var(--r-btn);
	font-size: 12.5px; font-weight: 600; text-decoration: none; color: var(--ink-2);
}
.alpha a:hover { border-color: var(--ink); color: var(--accent-text); }
.alpha__head {
	font-size: 11px; letter-spacing: .16em; text-transform: uppercase;
	color: var(--ink-4); margin: 18px 0 8px;
}

.tool__result { margin-top: 18px; }

@media (max-width: 767px) { .rail__list--pillar { columns: 1; } }

/* ── Соседи по силосу под текстом (шаблоны без сайдбара) ── */
.related { margin: 26px 0 0; padding-top: 18px; border-top: 1px solid var(--line-card); }
.related__label {
	font-size: 11px; letter-spacing: .16em; text-transform: uppercase;
	color: var(--ink-4); font-weight: 700; margin: 0 0 10px;
}
.related__list { columns: 2; column-gap: 26px; margin: 0; padding-left: 18px; }
.related__list li { break-inside: avoid; margin: 0 0 6px; font-size: 13.5px; }
.related__up { margin: 12px 0 0; font-size: 13.5px; }
.related__up a { color: var(--accent-text); font-weight: 600; }
@media (max-width: 767px) { .related__list { columns: 1; } }

/* ═══ Новая структура страницы (пакет от 06.08.2026, «modernist») ═══ */

/* Служебная полоса выходных данных над мастхедом */
.imprint {
	background: var(--dark); color: var(--on-dark);
	border-bottom: var(--rule);
}
.imprint__inner {
	display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
	max-width: var(--frame); margin: 0 auto; padding: 9px var(--pad-x);
	font-size: 10.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.imprint__note { color: var(--on-dark-2); font-weight: 600; letter-spacing: .1em; }
.imprint__edition { margin-left: auto; color: var(--accent); }

/* Номер отчёта и ревизии в строке крошек */
.crumbs__ref {
	display: flex; gap: 18px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}

/* Надзаголовок-рубрика над H1 */
.kicker {
	margin: 0 0 10px; color: var(--accent);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}

/* Полоса авторства и верификации: четыре ячейки */
.byline {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	border-top: var(--rule); border-bottom: var(--rule);
	margin: 0;
}
.byline__cell {
	padding: 14px var(--pad-x);
	border-left: 1px solid var(--line-card);
}
.byline__cell:first-child { border-left: 0; }
.byline__label {
	margin: 0 0 6px; color: var(--ink-4);
	font-size: 9.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.byline__value { margin: 0; font-size: 14.5px; font-weight: 700; line-height: 1.2; }
.byline__value a { color: var(--accent-text); }
.byline__note { margin: 4px 0 0; font-size: 11.5px; color: var(--ink-4); }

/* Выноска с цветной шапкой */
.callout--accent {
	background: var(--surface); border: var(--rule); padding: 0;
}
.callout--accent .callout__label {
	background: var(--accent); color: #fff; margin: 0;
	padding: 8px 16px; font-size: 10.5px; letter-spacing: .14em;
}
.callout--accent > :not(.callout__label) { padding: 0 16px; }
.callout--accent > :not(.callout__label):first-of-type { padding-top: 14px; }
.callout--accent > :last-child { padding-bottom: 14px; }

/* Источники: нумерованные, в две колонки */
.sources { background: var(--surface-2); border-top: var(--rule); padding: 20px var(--pad-x); }
.sources__label {
	margin: 0 0 12px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.sources__list {
	columns: 2; column-gap: 34px; margin: 0; padding-left: 18px;
	font-size: 12.5px; line-height: 1.5;
}
.sources__item { break-inside: avoid; margin: 0 0 8px; }
.sources__checked { color: var(--ink-4); }

/* Сноска в тексте на нумерованный источник */
.fn {
	font-size: .72em; vertical-align: super; line-height: 0;
	color: var(--accent); font-weight: 700; text-decoration: none;
}

/* Журнал правок */
.revisions { border-top: 1px solid var(--line-card); padding: 18px var(--pad-x); }
.revisions__label {
	margin: 0 0 10px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.revisions__list { margin: 0; padding: 0; list-style: none; font-size: 12.5px; }
.revisions__item {
	display: grid; grid-template-columns: 110px 1fr; gap: 14px;
	padding: 7px 0; border-top: 1px solid var(--line-row);
}
.revisions__date { color: var(--ink-4); font-weight: 600; }

@media (max-width: 767px) {
	.byline { grid-template-columns: 1fr 1fr; }
	.byline__cell:nth-child(3) { border-left: 0; }
	.sources__list { columns: 1; }
	.imprint__edition { margin-left: 0; width: 100%; }
	.crumbs__ref { width: 100%; }
}

/* ═══ Вторая редакция макета: издание, а не блог ═══════════════════ */

/* Мастхед: логотип с подзаголовком, меню, поиск */
.masthead { background: var(--surface); border-bottom: var(--rule); }
.masthead__inner {
	display: flex; align-items: center; gap: 32px; flex-wrap: wrap;
	max-width: var(--frame); margin: 0 auto; padding: 18px var(--pad-x);
}
.masthead__brand { text-decoration: none; color: var(--ink); }
.masthead__name { display: block; font-size: 26px; font-weight: 800; letter-spacing: -.02em; line-height: 1; }
.masthead__tagline {
	display: block; margin-top: 4px; color: var(--ink-4);
	font-size: 9.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
}
.masthead__list { display: flex; gap: 22px; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; }
.masthead__list a {
	display: inline-block; padding-bottom: 3px;
	font-size: 14.5px; font-weight: 500; color: var(--ink); text-decoration: none;
	border-bottom: 2px solid transparent;
}
.masthead__list a:hover { color: var(--accent-text); }
.masthead__list .current-menu-item a,
.masthead__list .current_page_parent a { border-bottom-color: var(--accent); font-weight: 600; }
.masthead__search { margin-left: auto; }
.masthead__search input {
	font: inherit; font-size: 13px; font-weight: 600; color: var(--ink);
	border: 2px solid var(--ink); background: var(--surface);
	padding: 9px 16px; width: 210px;
}

/* Герой: текст + панель показателей */
.frame--home { border-top: 0; }
.hero {
	display: grid; grid-template-columns: 1fr 420px;
	border-bottom: var(--rule);
}
.hero__main { padding: 34px var(--pad-x) 30px; }
.hero__title {
	font-size: 50px; line-height: 1.02; letter-spacing: -.032em; font-weight: 800;
	margin: 0 0 16px; max-width: 20ch;
}
.hero__lead { font-size: 16px; line-height: 1.55; color: var(--ink-2); max-width: 62ch; margin: 0 0 22px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }

.glance { background: var(--surface-2); border-left: var(--rule); padding: 30px 26px; }
.glance__label {
	margin: 0 0 14px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.glance__list { margin: 0; border-top: 2px solid var(--ink); }
.glance__row {
	display: flex; justify-content: space-between; align-items: baseline; gap: 16px;
	padding: 11px 0; border-bottom: 1px solid var(--line-card);
}
.glance__row dt { font-size: 14px; color: var(--ink-2); }
.glance__row dd { margin: 0; font-size: 17px; font-weight: 800; letter-spacing: -.01em; }
.glance__note { margin: 14px 0 0; font-size: 12px; line-height: 1.5; color: var(--ink-4); max-width: none; }

/* Сетка разделов */
.sections {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px;
	background: var(--ink); border-bottom: var(--rule);
}
.section { background: var(--surface); padding: 20px 22px 22px; text-decoration: none; color: inherit; display: block; }
.section:hover .section__title { color: var(--accent-text); }
.section__num {
	display: block; margin: 0 0 10px; color: var(--accent);
	font-size: 10.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.section__title { font-size: 21px; font-weight: 800; margin: 0 0 8px; letter-spacing: -.015em; }
.section__note { font-size: 13.5px; line-height: 1.5; color: var(--ink-3); margin: 0 0 14px; max-width: none; }
.section__count { margin: 0; font-size: 12.5px; color: var(--ink-4); }

/* Низ главной: FAQ + свежие правки */
.home-foot { display: grid; grid-template-columns: 1fr 420px; }
.home-foot__main { padding: 26px var(--pad-x) 30px; }
.home-foot .faq { border: 0; padding: 0; }
.updated { background: var(--surface-2); border-left: var(--rule); padding: 30px 26px; }
.updated__label {
	margin: 0 0 12px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.updated__list { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--ink); }
.updated__list li { padding: 11px 0; border-bottom: 1px solid var(--line-card); }
.updated__list a { display: block; font-size: 14.5px; font-weight: 700; color: var(--ink); text-decoration: none; }
.updated__list a:hover { color: var(--accent-text); }
.updated__when { display: block; margin-top: 3px; font-size: 12px; color: var(--ink-4); }

/* Полоса авторства на сером, с жирными разделителями */
.byline { background: var(--surface-2); }
.byline__cell { border-left: var(--rule); }

/* Подчинённые отчёты pillar: сетка карточек с датой проверки */
.reports { border-top: var(--rule); }
.reports__label {
	margin: 0; padding: 14px var(--pad-x) 12px; color: var(--ink-4);
	font-size: 10.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.reports__grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px;
	background: var(--line-card); border-top: 2px solid var(--ink);
}
.report { background: var(--surface); padding: 16px 20px; text-decoration: none; color: inherit; display: block; }
.report:hover .report__title { color: var(--accent-text); }
.report__title { font-size: 15.5px; font-weight: 700; margin: 0 0 4px; line-height: 1.25; }
.report__when { margin: 0; font-size: 12px; color: var(--ink-4); }
.reports__note { margin: 0; padding: 12px var(--pad-x) 16px; font-size: 12.5px; color: var(--ink-4); max-width: none; }

/* Примечание под таблицей */
.table-note {
	margin: -8px 0 22px; font-size: 12.5px; line-height: 1.5; color: var(--ink-4); max-width: none;
}

@media (max-width: 1023px) {
	.hero, .home-foot { grid-template-columns: 1fr; }
	.glance, .updated { border-left: 0; border-top: var(--rule); }
	.sections { grid-template-columns: repeat(2, 1fr); }
	.reports__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
	.hero__title { font-size: 34px; }
	.sections, .reports__grid { grid-template-columns: 1fr; }
	.masthead__search { margin-left: 0; width: 100%; }
	.masthead__search input { width: 100%; }
}

/* Индекс прозрачности */
.index { border-top: var(--rule); padding: 24px var(--pad-x) 8px; }
.index h2 { margin: 0 0 10px; }
.index__intro { font-size: 14px; line-height: 1.55; color: var(--ink-2); max-width: 78ch; margin: 0 0 20px; }
.index table.data { font-size: 12.5px; }
.index table.data td, .index table.data tbody th { padding: 9px 10px; }

/* Шкала на странице методики */
.scale { margin-top: 26px; }
.scale table.data { font-size: 12.5px; }
.scale table.data tbody th { max-width: 22ch; }
.scale table.data tbody th .qual { display: block; margin-top: 4px; font-weight: 400; font-size: 11.5px; line-height: 1.45; }

/* Одноколоночный вариант двухколоночного шаблона: оглавления нет */
.split--solo { grid-template-columns: 1fr; }
.split--solo > .split__body { border-left: 0; }
.index__cat { font-size: 15px; margin: 24px 0 8px; letter-spacing: -.01em; }
.index__cat:first-of-type { margin-top: 12px; }
