/* ==========================================================================
   ПРО РЕКЛАМУ — скин издания. Прогон prk, 28.09.2026; тона — 29.09.2026.
   Композиция: adindex.ru (плотность, данные как жанр). Манера: creativebloq.com.

   ⛔⛔ ТРИ ПЛАНА: ПОЛОТНО — ЛИСТ — ВРЕЗКА (владелец, 29.09.2026: «фон и блоки
   сливаются»). Прежняя редакция скина держала принцип «разделителей-линеек НЕТ,
   границу блока даёт смена тона плиты», и он провалился арифметически:
     · полотно страницы было `--prk-list` #F2F1EC, то есть полотно И БЫЛО бумагой;
     · карточка `.prk-c` красилась тем же #F2F1EC — контраст к фону ровно **1.00**,
       блока не видно вовсе (правило просто не применялось);
     · «вторая плита» #E3E2DA против #F2F1EC — **1.15**, на глаз неразличимо;
     · рамки не было ни у одного блока, кроме `.prk-wid--plita`.
   Ни один гейт этого не ловит: R3 меряет текст к фону, а не блок к полотну.
   Теперь тон обязателен и он измерим — лестница из четырёх ступеней, и ребёнок
   НИКОГДА не берёт тон родителя (см. §1). Лист получает рамку и тень, врезка —
   только тон, без своей рамки ([DESIGN-ELEMENTS](DESIGN-ELEMENTS.md) §1,
   пункт 05.15e: полотно и лист — РАЗНЫЕ тона, поле вокруг листа, рабочее поле
   внутри 32–40 / 16, рамка и тень). Уголковая скоба осталась акцентом полосы,
   а не единственной границей.
   ========================================================================== */

/* --- 0. Гарнитуры: свои, самохостные, переменные ------------------------- */
@font-face{ font-family:"PRK Displei"; font-style:normal; font-weight:400 800; font-display:swap;
  src:url(/prk/prk-displei-c.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116 }
@font-face{ font-family:"PRK Displei"; font-style:normal; font-weight:400 800; font-display:swap;
  src:url(/prk/prk-displei-l.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,
                U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD }
@font-face{ font-family:"PRK Korpus"; font-style:normal; font-weight:300 700; font-display:swap;
  src:url(/prk/prk-korpus-c.woff2) format("woff2");
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116 }
@font-face{ font-family:"PRK Korpus"; font-style:normal; font-weight:300 700; font-display:swap;
  src:url(/prk/prk-korpus-l.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,
                U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD }

/* --- 1. Токены ----------------------------------------------------------- */
:root{
  /* --- лестница тонов. Замер каждой ступени — в комментарии, потому что на глаз
     полтона от полутора не отличить, а именно на этом скин и погорел.
     Ребёнок не берёт тон родителя: полотно → лист → врезка → плита.            */
  --prk-polotno:#D8D4C6;       /* ПОЛОТНО страницы. Только <body>, больше нигде */
  --prk-list:#FCFBF7;          /* ЛИСТ (бумага). К полотну 1.43                 */
  --prk-list-2:#E9E6DA;        /* ВРЕЗКА на листе: карточка, виджет. К листу 1.21 */
  --prk-list-3:#DBD7C9;        /* ПЛИТА внутри врезки / вторая полоса зебры.
                                  К листу 1.39, к врезке 1.15                  */
  --prk-ramka:#CFCBBA;         /* рамка листа и плиты. К листу 1.57            */
  --prk-ten:0 1px 2px rgba(18,22,27,.06),0 10px 28px -14px rgba(18,22,27,.22);

  --prk-pad:34px;              /* РАБОЧЕЕ ПОЛЕ внутри листа (05.15e: 32–40)    */
  --prk-gap:16px;              /* поле ПОЛОТНА вокруг листа (05.15e)           */
  --prk-tush:#12161B;          /* чернила: текст, полоса выпуска, подвал      */
  --prk-skoba:#C3BFAE;         /* уголковая скоба. ЛИНИЯ, не краска для букв  */
  /* ⛔ служебный серый считается по САМОМУ ТЁМНОМУ светлому плану, а не по бумаге.
     Прежний #66655E давал 5.65 на бумаге — и 4.18 на плите, 3.94 на полотне, где
     стоят крошки и мета карточки-плиты. Нынешний проходит везде:
     лист 7.13 · врезка 5.91 · плита 5.28 · полотно 4.98.                      */
  --prk-seryi:#57564D;         /* служебный слой на светлых планах             */
  --prk-znak:#1B39C4;          /* ультрамарин: акцент, заливка                */
  --prk-znak-t:#1730A8;        /* текстовая грань ультрамарина (лист 10.02)    */
  --prk-kislota:#D9F24B;       /* лайм. ТОЛЬКО ЗАЛИВКА, буквами не ставить    */
  /* ⛔ прежняя грань #5C6B00 давала на лайме 4.71 — впритык к норме, а капитель и
     сноска лаймового виджета стоят именно ею. Нынешняя: на лайме 5.85.        */
  --prk-kislota-t:#4F5C00;     /* текстовая грань лайма                       */
  --prk-seryi-sv:#C4C2B8;      /* служебный слой на чернилах (10.17)          */
  --prk-znak-sv:#8FA6FF;       /* акцент на чернилах (7.84)                   */

  --prk-displei:"PRK Displei",Manrope,"Trebuchet MS",Tahoma,sans-serif;
  --prk-korpus:"PRK Korpus",Commissioner,"Liberation Sans",Verdana,sans-serif;

  --prk-konvert:1296px;        /* конверт издания                             */
  /* ⚠️ конверт статьи вырос с 1208: рабочее поле листа выросло с 20 до 34 px, и
     при прежнем числе мера чтения ужалась бы с 532 до 504 px. 1276 − 68 = 1208
     рабочих, минус рельс 248, полка 296 и два зазора 46 → мера 572.           */
  --prk-konvert-art:1276px;    /* конверт шаблона статьи                      */
  --prk-mera:664px;            /* мера чтения                                 */
  --prk-stamp:232px;           /* вертикальный стамп выпуска                  */
  --prk-rail:312px;            /* полка рубричного хаба                       */
  --prk-fakty:296px;           /* полка фактов в статье                       */
  --prk-index:248px;           /* левая колонка-указатель в статье            */
  --prk-modul:176px;           /* высота строки модуля кладки                 */

  --prk-shag-1:10px;
  --prk-shag-2:22px;
  --prk-shag-3:46px;
}
@media (max-width:900px){ :root{ --prk-pad:26px } }
@media (max-width:620px){ :root{ --prk-pad:16px; --prk-gap:10px; --prk-modul:160px } }

/* --- 2. Сброс и основа --------------------------------------------------- */
*,*::before,*::after{ box-sizing:border-box }        /* вместо *{max-width}   */
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth }
body{
  margin:0; padding:0;
  background:var(--prk-polotno);                        /* ПОЛОТНО, не бумага   */
  color:var(--prk-tush);
  font:400 17px/1.64 var(--prk-korpus);
  overflow-x:hidden;                                  /* нулевой гориз. скролл */
}
img,svg,video,iframe,table{ max-width:100% }
img{ height:auto; display:block; border:0 }
a{ color:var(--prk-znak-t); text-decoration:none }
a:hover,a:focus{ text-decoration:underline }
:focus-visible{ outline:3px solid var(--prk-znak); outline-offset:2px }
h1,h2,h3,h4{ font-family:var(--prk-displei); font-weight:800; letter-spacing:-.03em; margin:0 0 var(--prk-shag-2) }
p{ margin:0 0 var(--prk-shag-2) }
ul,ol{ margin:0 0 var(--prk-shag-2); padding-left:1.15em }
.prk-vh{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }

/* --- 3. Конверт и полосы -------------------------------------------------- */
/* ⚠️ отступ задаётся ОДИН раз на конверте и не вкладывается (§2)             */
.prk-w{ width:100%; max-width:var(--prk-konvert); margin:0 auto;
        padding-left:var(--prk-pad); padding-right:var(--prk-pad) }
.prk-w--art{ max-width:var(--prk-konvert-art) }
.prk-w .prk-w{ padding-left:0; padding-right:0; max-width:none }

/* --- 3а. ЛИСТ: каждая полоса <main> — отдельный лист на полотне -------------- */
/* ⛔⛔ ТУТ И ЛЕЧИТСЯ «фон и блоки сливаются». Поле полотна даёт <main>, а не
   margin у листа: у `.prk-w` стоит `width:100%` + `margin:0 auto`, и боковой
   margin либо сорвал бы центровку, либо вылез бы за вьюпорт горизонтальной
   прокруткой. Отступ задаётся ОДИН раз (§2): поле полотна — на main, рабочее
   поле — на самом листе, вложенные конверты обнулены правилом выше.
   Вертикальное поле листа считается ЗДЕСЬ и перебивает собственные отступы полос
   (`main>.prk-w` весит 0-1-1 против 0-1-0 у `.prk-vypusk`/`.prk-hub`/`.prk-art`),
   поэтому 46 + 46 не складываются. */
main{ padding:var(--prk-gap) var(--prk-gap) 0 }
main>.prk-w{
  background:var(--prk-list);
  border:1px solid var(--prk-ramka);
  box-shadow:var(--prk-ten);
  margin-bottom:var(--prk-gap);
  padding-top:var(--prk-shag-3); padding-bottom:var(--prk-shag-3);
}
/* полоса рубрики несёт своё вертикальное поле — на листе оно уже есть. Селектор
   по ПРЯМОМУ ребёнку: та же `.prk-lenta` внутри `.prk-hub__glav` не лист, и там
   её собственные отступы нужны. */
main>.prk-w>.prk-lenta{ padding-top:0; padding-bottom:0 }
main>.prk-w>.prk-rek{ margin:0 }
/* полоса размещения владельца — лист с узким полем: высоту блока задаёт чужой
   скрипт, и при 46 px сверху и снизу пустая полоса выглядела бы браком */
main>.prk-w:has(>.prk-rek){ padding-top:var(--prk-shag-2); padding-bottom:var(--prk-shag-2) }
/* ⚠️ КРОШКИ — НЕ ЛИСТ. Служебная строка лежит на полотне, над листом: её
   собственные отступы восстановлены здесь, потому что вес у правила тот же 0-1-1.
   Служебный серый на полотне даёт 4.98 — норму проходит (см. токены). */
main>.prk-krohi{ background:none; border:0; box-shadow:none; margin-bottom:0;
                 padding-top:var(--prk-shag-1); padding-bottom:var(--prk-shag-1) }
.prk-polosa{ width:100%; background:var(--prk-list) }
.prk-polosa--plita{ background:var(--prk-list-2) }
/* ⛔ ПОЛОСА ЦВЕТА ВТОРОЙ ПЛИТЫ ИСЧЕЗАЕТ НА ВТОРОЙ ПЛИТЕ. В тёмном виджете шкала
   «Масштаб» читается (светлая полоса на туши), а в светлом строки таблицы сами
   красятся через одну в `--prk-list-2` — и на чётных строках полоса совпадала с
   фоном в цвет, на нечётных отличалась на полтона: у «Хроники рубрики» на хабах
   столбец выглядел пустым (замер 29.09.2026, rubrika-d-top.png). На бумаге шкала
   рисуется служебным серым; тёмный и цветные виджеты остаются как были. */
.prk-wid:not(.prk-wid--tush):not(.prk-wid--znak):not(.prk-wid--kislota)
  .prk-polosa--plita{ background:var(--prk-seryi) }

/* --- 4. Служебный слой: капитель, а не моно ------------------------------ */
.prk-kapitel{
  font-family:var(--prk-displei); font-weight:700; font-size:12px;
  text-transform:uppercase; letter-spacing:.08em; color:var(--prk-seryi);
}
/* ⛔ Числовой набор НЕ ПЕРЕНОСИТСЯ. «2006—2025» — одна лексема, но тире даёт
   перенос: в столбце лет «Индекса архива» ячейка вставала в 2 строки на деке и
   в 3 на мобиле (замер 29.09.2026, 9 ячеек на странице). Тот же класс носят
   даты, счётчики просмотров и номера страниц — их рвать тоже нечем и незачем. */
.prk-cifra{ font-variant-numeric:tabular-nums; font-feature-settings:"tnum" 1;
            white-space:nowrap }
/* ⛔ НА ТУШЁВКЕ КАПИТЕЛЬ СВЕТЛЕЕТ ПРИНУДИТЕЛЬНО, и правило обязано стоять здесь, у
   самой капители: у `.prk-kapitel` есть СОБСТВЕННЫЙ `color`, поэтому светлый цвет
   тёмного контейнера до неё не доходит — наследуется только то, чего элемент не
   задал сам. На прогоне 28.09.2026 это давало #66655E на #12161B, контраст 3,10
   при норме 4,5, и так на каждой странице: дата сборки и объём архива в полосе
   выпуска, «сверено редакцией» в подписи, подзаголовки тёмных виджетов и подвала
   (R3, 18 узлов на странице). Перечислены ВСЕ тёмные контейнеры скина: полоса,
   подвал, тёмная карточка, тёмный виджет, кнопка. */
.prk-bar .prk-kapitel,.prk-foot .prk-kapitel,.prk-c--tush .prk-kapitel,
.prk-wid--tush .prk-kapitel,.prk-btn .prk-kapitel{ color:var(--prk-seryi-sv) }
/* ⛔ То же и на ЗАЛИВКАХ, а не только на тушёвке: на ультрамарине #1B39C4 своя
   капитель #66655E давала 1,30, на лайме #D9F24B — 4,47 при норме 4,5. Правило
   стоит здесь же, у капители, по той же причине: свой `color` наследование
   перебивает. Ультрамарину — светлая грань, лайму — его текстовая грань.
   Карточек на заливке (`prk-c--znak`, `prk-c--kislota`) скин не печатает —
   парные селекторы сняты, чтобы не висело правил без разметки (C09.31). */
.prk-wid--znak .prk-kapitel{ color:#fff; opacity:.86 }
.prk-wid--kislota .prk-kapitel{ color:var(--prk-kislota-t) }

/* --- 5. Уголковая скоба — единственный разделитель ----------------------- */
.prk-skoba{ position:relative; padding-top:18px }
.prk-skoba::before{
  content:""; position:absolute; top:0; left:0; width:14px; height:14px;
  border-top:2px solid var(--prk-skoba); border-left:2px solid var(--prk-skoba);
}

/* --- 6. Полоса выпуска (ПЕРВАЯ СТРОКА мачты, full-bleed) ----------------- */
/* Полоса лежит ВНУТРИ <header class="prk-mast">: над шапкой не должно быть ничего,
   иначе её высота читается приёмкой как «зазор НАД шапкой» (R6 требует 0). */
.prk-bar{ background:var(--prk-tush); color:var(--prk-seryi-sv) }
.prk-bar__in{ display:flex; flex-wrap:wrap; gap:6px var(--prk-shag-2);
              align-items:center; min-height:38px; padding-top:8px; padding-bottom:8px }
.prk-bar b{ color:var(--prk-list); font-weight:700 }
.prk-bar a{ color:var(--prk-znak-sv) }
.prk-bar__zna{ margin-left:auto }

/* --- 7. Мачта: вордмарк и рубрики в ОДНОЙ строке ------------------------- */
/* ⛔ Шапка красится тоном ЛИСТА, а не полотна, и идёт во всю ширину (05.15e):
   на полотне она читалась бы как часть фона — ровно та жалоба, с которой начался
   этот прогон. Тень отделяет её от полотна снизу, рамка не нужна. */
.prk-mast{ background:var(--prk-list);
           box-shadow:0 1px 0 var(--prk-ramka),0 8px 20px -14px rgba(18,22,27,.30) }
.prk-mast__in{ display:flex; align-items:flex-end; justify-content:space-between;
               gap:var(--prk-shag-2); padding-top:var(--prk-shag-2); padding-bottom:var(--prk-shag-2) }
/* ⛔ ЛОГОТИП ОБЯЗАН УМЕТЬ СЖИМАТЬСЯ. При `flex:0 0 auto` его ширину задаёт самая
   длинная строка внутри — подзаголовок «издание о рекламе, маркетинге и
   коммуникациях» одной строкой, а он в капители с разрядкой шире 340 px. На 390 px
   документ выходил 442 px: `HTML. 442px | HEADER.prk-mast 442px` плюс «overflow 45
   [A.prk-logo | SPAN.]». Прятать подзаголовок нельзя — это скрытый текст (R5),
   поэтому он переносится: сжатие разрешено и логотипу, и вложенному span (без
   `min-width:0` флекс-элемент не сжимается ниже max-content ни при каком flex). */
.prk-logo{ display:inline-flex; align-items:center; gap:10px; text-decoration:none;
           color:inherit; flex:0 1 auto; min-width:0 }
.prk-logo>span{ min-width:0 }
.prk-logo:hover{ text-decoration:none }
.prk-logo__sign{ width:38px; height:38px; flex:0 0 auto }
.prk-logo__w{ font-family:var(--prk-displei); font-weight:800; letter-spacing:-.045em;
              font-size:clamp(26px,4.6vw,40px); line-height:.92; text-transform:uppercase }
.prk-logo__w i{ font-style:normal; color:var(--prk-znak-t) }
.prk-logo__sub{ display:block; margin-top:3px }

.prk-nav{ display:flex; flex-wrap:wrap; justify-content:flex-end;
          gap:4px 20px; padding:0; margin:0; list-style:none; text-align:right }
.prk-nav a{
  font-family:var(--prk-displei); font-weight:700; font-size:15px; letter-spacing:-.01em;
  color:var(--prk-tush); display:inline-block; padding:6px 0; border-bottom:2px solid transparent;
}
.prk-nav a:hover,.prk-nav a:focus{ text-decoration:none; border-bottom-color:var(--prk-znak) }
.prk-nav a[aria-current="page"]{ border-bottom-color:var(--prk-kislota) }

/* бургер — checkbox+label, без JS */
.prk-burger,.prk-burger__lab{ display:none }
.prk-burger__lab{ align-items:center; gap:9px; min-height:44px; padding:0 4px;
                  font-family:var(--prk-displei); font-weight:700; font-size:14px;
                  text-transform:uppercase; letter-spacing:.06em; cursor:pointer }
.prk-burger__lab span{ display:block; width:26px; height:2px; background:var(--prk-tush);
                       box-shadow:0 -8px 0 var(--prk-tush),0 8px 0 var(--prk-tush) }
/* ⛔ РИСУНОК ИЗ box-shadow УЖЕ ТРИ ПОЛОСЫ, А В РАЗМЕТКЕ ТРИ span. В шапке мобилы
   стояло ТРИ бургера подряд (замер 29.09.2026, glav-m-top.png): каждый span
   получал свои три полосы, а `gap:9px` расставлял их в ряд. Полосы рисует
   первый span, соседние убраны — правка в скине, разметку генератора менять не
   надо (там span'ы как раз на случай «каждый span = полоса»). */
.prk-burger__lab span+span{ display:none }

/* --- 8. Крошки ----------------------------------------------------------- */
.prk-krohi{ padding-top:var(--prk-shag-1); padding-bottom:var(--prk-shag-1) }
.prk-krohi ol{ display:flex; flex-wrap:wrap; gap:4px 8px; margin:0; padding:0; list-style:none }
.prk-krohi li{ font-size:13px; color:var(--prk-seryi) }
/* ⚠️ косая крошек стоит НА ПОЛОТНЕ, а не на бумаге: цветом скобы (1.31 к полотну)
   её не видно. R3 этого не поймает — содержимое `::before` в innerText не входит. */
.prk-krohi li+li::before{ content:"/"; margin-right:8px; color:var(--prk-seryi) }
.prk-krohi a{ color:var(--prk-seryi) }

/* --- 9. Стамп выпуска + кладка (первый экран) ---------------------------- */
.prk-vypusk{ display:grid; grid-template-columns:var(--prk-stamp) minmax(0,1fr);
             gap:var(--prk-shag-3); padding-top:var(--prk-shag-3); padding-bottom:var(--prk-shag-3) }
.prk-stamp{ align-self:start; position:sticky; top:14px }
.prk-stamp__d{ font-family:var(--prk-displei); font-weight:800; font-size:44px; line-height:.9;
               letter-spacing:-.05em; margin:0 0 6px }
.prk-stamp dl{ margin:var(--prk-shag-2) 0 0 }
.prk-stamp dt{ font-family:var(--prk-displei); font-weight:700; font-size:11px;
               text-transform:uppercase; letter-spacing:.08em; color:var(--prk-seryi) }
.prk-stamp dd{ margin:0 0 var(--prk-shag-1); font-variant-numeric:tabular-nums;
               font-family:var(--prk-displei); font-weight:800; font-size:22px }

/* ⛔ СТРОКА КЛАДКИ — НЕ ПОТОЛОК, А ПОЛ. Было `grid-auto-rows:var(--prk-modul)`,
   то есть ровно 176 px, а `.prk-c{overflow:hidden}` обрезал всё, что не влезло:
   заголовок в пять строк («Как установить счетчик тепла в квартире
   многоквартирного дома?») съедал 224 px, и ДАТА ПОД НИМ РЕЗАЛАСЬ ПОПОЛАМ —
   на главной, на первом экране (28.09.2026). Ни один гейт этого не видит:
   переполнения по горизонтали нет, коробка не нулевая, текст в DOM есть.
   `minmax(модуль, auto)` держит тот же ритм, но даёт строке вырасти под
   длинный заголовок. Резать редакционный текст ради сетки нельзя. */
.prk-kladka{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
             grid-auto-rows:minmax(var(--prk-modul),auto); gap:var(--prk-shag-2) }
.prk-kladka>*{ min-width:0 }
.prk-k22{ grid-column:span 2; grid-row:span 2 }
.prk-k11{ grid-column:span 1; grid-row:span 1 }
.prk-k21{ grid-column:span 2; grid-row:span 1 }

/* --- 10. Карточка: рамок нет, тон ВРЕЗКИ и своя мера --------------------- */
/* ⛔⛔ КАРТОЧКА БЫЛА ЦВЕТА БУМАГИ, А БУМАГА БЫЛА ФОНОМ СТРАНИЦЫ — контраст ровно
   1.00: витрина главной и все сетки хабов читались как один сплошной лист
   («фон и блоки сливаются», владелец 29.09.2026). Карточка — врезка на листе,
   значит второй тон и БЕЗ своей рамки (05.15e). Три веса карточки различимы все:
   обычная — врезка (к листу 1.21), плита — третья ступень (1.39), тушёвка — чернила. */
.prk-c{ display:flex; flex-direction:column; min-width:0; height:100%;
        background:var(--prk-list-2); overflow:hidden }
.prk-c--plita{ background:var(--prk-list-3) }
.prk-c--tush{ background:var(--prk-tush); color:var(--prk-list) }
.prk-c--tush a{ color:var(--prk-list) }
.prk-c--tush .prk-c__meta{ color:var(--prk-seryi-sv) }
/* ⛔ ЛИД НА ТУШЁВКЕ ОСТАВАЛСЯ БУМАЖНЫМ. Лид добавлен в клетки кладки, чтобы они не
   стояли полупустыми (правка 5), а цвет ему достался общий: #57564D по чернилам —
   контраст 2.46 при пороге 4.5 (R3, 29.09.2026). Тушёвка перекрашивает ВСЁ, что
   печатается серым; мету это правило держало с самого начала, лида тогда не было. */
.prk-c--tush .prk-c__lid{ color:var(--prk-seryi-sv) }
/* рамка кадра на ступень глубже своей карточки — иначе пустой кадр (донорского
   превью нет) сливался бы с полем карточки */
.prk-c__kadr{ display:block; position:relative; overflow:hidden; background:var(--prk-list-3) }
.prk-c--plita .prk-c__kadr{ background:var(--prk-ramka) }
.prk-c--tush .prk-c__kadr{ background:rgba(255,255,255,.09) }
/* ⛔ ЗАГЛУШКА КАДРА — ПЛОСКОСТЬ, А НЕ ПУСТОЕ МЕСТО. Витринный слот без файла ронял
   кадр вместе с классом коробки: карточка вырождалась в текст на общем фоне и
   вставала в ряд с соседями, у которых кадр есть, — ряд шёл вразнобой (замер
   29.09.2026: 4 таких слота на главной). Заглушка держит пропорцию слота, а
   читается как «здесь фото нет», а не как поломка: штриховка рамочным тоном плюс
   капитель рубрики на бумажной плашке. Тон берётся от карточки — на плите и на
   туши та же штриховка другим планом, иначе плашка провалилась бы в фон. */
.prk-c__kadr--net{ display:grid; place-items:center; padding:12px; background:
  repeating-linear-gradient(135deg,var(--prk-ramka) 0 2px,transparent 2px 9px),
  var(--prk-list-3) }
.prk-c__net{ font-family:var(--prk-displei); font-weight:800; font-size:12px;
  letter-spacing:.14em; text-transform:uppercase; text-align:center;
  color:var(--prk-seryi); background:var(--prk-list); border:1px solid var(--prk-ramka);
  padding:7px 11px; max-width:100%; overflow-wrap:break-word }
.prk-c--plita .prk-c__kadr--net{ background:
  repeating-linear-gradient(135deg,rgba(18,22,27,.09) 0 2px,transparent 2px 9px),
  var(--prk-ramka) }
.prk-c--tush .prk-c__kadr--net{ background:
  repeating-linear-gradient(135deg,rgba(255,255,255,.11) 0 2px,transparent 2px 9px),
  rgba(255,255,255,.06) }
.prk-c--tush .prk-c__net{ color:var(--prk-seryi-sv); background:transparent;
  border-color:rgba(255,255,255,.24) }
.prk-c__kadr img{ width:100%; height:100%; object-fit:cover; transition:transform .35s ease }
.prk-c:hover .prk-c__kadr img{ transform:scale(1.03) }
.prk-c--45 .prk-c__kadr{ aspect-ratio:4/5 }
.prk-c--11 .prk-c__kadr{ aspect-ratio:1/1 }
/* ⛔ ВЫСОКАЯ РАМКА ТРЕБУЕТ ВЫСОКОГО ФАЙЛА. `object-fit:cover` догоняет коробку по
   КОРОТКОЙ стороне: лежачий файл в рамке 4:5 растёт до её высоты, и половина ширины
   уходит в обрез. Лежачему файлу коробка ставится лежачая — класс печатает
   prk_render по ih/iw материала. В сетке это та же 3:2, что и у --45, так что вид
   сеток не меняется; правило нужно кладке, где рамка героя 463 px шириной. */
.prk-c--32 .prk-c__kadr{ aspect-ratio:3/2 }
/* ⛔ КАДР НЕ УВЕЛИЧИВАЕТСЯ — то же правило, что в колонке материала
   (`.prk-art__kadr--uzk`). Донорское превью 300×200, вернувшееся из папки материала,
   в рамке героя 463×579 вырастало в 2,9 раза (R17: «файл 300x200 → 463x579»). В
   слоте героя файлу уже KADR_GEROI коробка не назначается вовсе: он рисуется в свою
   натуральную величину и только уменьшается. Пропорции у такой карточки нет —
   класса --45/--11 на ней тоже нет, поэтому мобильное правило 16/10 её не поднимает. */
/* коробка узкого кадра обжимает сам файл: без этого подложка рамки уходила бы
   на всю ширину карточки, и рядом с фото 300 px стояла бы полоса пустого тона */
.prk-c--uzk .prk-c__kadr{ width:fit-content; max-width:100% }
.prk-c--uzk .prk-c__kadr img{ width:auto; max-width:100%; height:auto; display:block }
/* ⛔ МЕЛКИЙ ДОНОРСКИЙ КАДР НЕ РАСТЯГИВАЕТСЯ. У донора 413 карточек несут превью
   `*_thumb.jpg` ровно 100×100, полноразмерный сосед есть у 55; в рамке карточки
   остальные выходили 478 px шириной — увеличение в 4,8 раза, на экране мыло
   (R17: «растянутых img 8 · файл 100x100 → 478x87»). Такая карточка строится
   ИНАЧЕ: кадр стоит слева в свою натуральную величину, текст справа. Это обычный
   редакционный ряд с превью, а не урезанная карточка. */
.prk-c--mini{ flex-direction:row; align-items:flex-start; gap:0 }
.prk-c--mini .prk-c__kadr{ width:100px; height:100px; flex:0 0 auto; aspect-ratio:auto;
                           margin:14px 0 14px 16px }
/* Кадр, у которого класс `--mini` стоит НА СЕБЕ, а не на карточке: размещения
   владельца и материал, чьё донорское превью всего 100×100 (`KADR_MINI` в
   prk_render.py). Коробку ему задаёт он сам — без этого правила `object-fit:cover`
   растягивал бы превью на всю ширину колонки по `aspect-ratio` карточки. */
.prk-c__kadr--mini{ width:100px; height:100px; flex:0 0 auto; aspect-ratio:auto }
.prk-c--mini .prk-c__txt{ padding:14px 16px 16px }
/* Вариант `prk-c--bare` (ряд с превью без полей карточки) скин не печатает:
   мелкие карточки стоят только в бумажной плитке, где поля нужны. Правила сняты
   — висящее правило без разметки ловит C09.31. */
.prk-c--mini .prk-c__h{ font-size:17px }
.prk-c--mini.prk-c--big .prk-c__h{ font-size:clamp(19px,1.8vw,23px) }
.prk-c__txt{ display:flex; flex-direction:column; flex:1; padding:14px 16px 16px; min-width:0 }
.prk-c__rub{ font-family:var(--prk-displei); font-weight:700; font-size:11px;
             text-transform:uppercase; letter-spacing:.08em; color:var(--prk-znak-t);
             margin:0 0 8px; display:inline-block }
.prk-c--tush .prk-c__rub{ color:var(--prk-znak-sv) }
/* `anywhere`, а не `break-word`, заголовок ещё и СУЖАЕТ: он не даёт клетке сетки
   min-content по самому длинному слову, и разрыв посреди слова выглядит как норма.
   Сеть требует у заголовков `hyphens:manual; overflow-wrap:break-word` — ломать
   слово только тогда, когда оно не влезает в строку целиком. */
.prk-c__h{ font-family:var(--prk-displei); font-weight:800; letter-spacing:-.028em;
           line-height:1.14; margin:0 0 8px; font-size:19px;
           hyphens:manual; overflow-wrap:break-word }
.prk-c__h a{ color:inherit; overflow-wrap:break-word }
.prk-c__lid,.prk-c__meta{ overflow-wrap:anywhere }
.prk-c__h a:hover{ color:var(--prk-znak-t); text-decoration:none }
/* ⛔ `vw` НЕ ЗНАЕТ ПРО КОЛОНКУ. На 1440 `2.5vw` = 36 → потолок 31px, а карточка
   внутри `prk-potok--shir` шириной 280 (мера 248): «Широкоформатная» набирается
   287px и рвётся посреди слова. Потолок берём по карточке: 9cqi от 280 = 25px,
   слово 233 < 248. `min()` только ОПУСКАЕТ — герой 463 (41cqi) и мобила
   (9,75vw) упираются в прежние края клампа, там ничего не меняется. */
.prk-c--big .prk-c__h{ font-size:clamp(22px,2.5vw,31px) }
.prk-c--small .prk-c__h{ font-size:16px }
.prk-c__lid{ margin:0 0 var(--prk-shag-1); color:var(--prk-seryi); font-size:15px; line-height:1.5 }
/* ⛔ ЛИД ГЕРОЯ ЗАПОЛНЯЕТ КЛЕТКУ, НО НЕ РАСТИТ ЕЁ. Текста герою даётся 900 знаков —
   столько нужно клетке 2×2 под кадром 3:2 (замер: дыра 272 px). Под кадром 4:5
   места остаётся вчетверо меньше, и тот же лид вытолкнул бы дату за низ клетки,
   растянув ВЕСЬ ряд кладки. Поэтому строки режутся по классу коробки кадра, а на
   мобиле — по единому потолку: там карточка в одну колонку и тянуть её нечему. */
.prk-c--big .prk-c__lid{ display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden }
.prk-c--45.prk-c--big .prk-c__lid{ -webkit-line-clamp:6 }
.prk-c--32.prk-c--big .prk-c__lid{ -webkit-line-clamp:14 }
.prk-c--uzk.prk-c--big .prk-c__lid{ -webkit-line-clamp:18 }
.prk-c__meta{ margin-top:auto; padding-top:12px; display:flex; flex-wrap:wrap; gap:4px 14px;
              font-family:var(--prk-displei); font-weight:700; font-size:11px;
              text-transform:uppercase; letter-spacing:.07em; color:var(--prk-seryi);
              font-variant-numeric:tabular-nums }

/* --- 11. Полосы рубрик: два потока, узкий поток меняет сторону ----------- */
.prk-lenta{ padding-top:var(--prk-shag-3); padding-bottom:var(--prk-shag-3) }
.prk-lenta__hd{ display:flex; align-items:baseline; gap:var(--prk-shag-2);
                flex-wrap:wrap; margin-bottom:var(--prk-shag-2) }
.prk-lenta__h{ font-size:clamp(21px,2.4vw,29px); margin:0 }
.prk-lenta__h a{ color:inherit }
.prk-lenta__all{ margin-left:auto }
.prk-potoki{ display:grid; grid-template-columns:3fr 1fr; gap:var(--prk-shag-3) }
.prk-potoki--zerkalo{ grid-template-columns:1fr 3fr }
.prk-potoki--zerkalo .prk-potok--shir{ order:2 }
.prk-potoki--zerkalo .prk-potok--uzk{ order:1 }
.prk-potok{ min-width:0 }
/* ⛔⛔ РЯД НЕ ТЯНЕТ АНОНС НА ВЫСОТУ ГЕРОЯ. Было: сетка растягивает детей на всю
   высоту ряда (`align-items:normal`), карточка добирает остаток `height:100%`, а
   дата прижата к низу `margin-top:auto` — и анонс без кадра и лида выходил бледной
   коробкой в 766–990 px с двумя строками текста сверху. Замер 29.09.2026 на живом:
   34 карточки главной из 35 с пустотой больше 24 px, худшая 858 px при коробке 990
   («куча пустого места в блоках», владелец). Ряду высоту задаёт герой: его
   портретный кадр в колонке 394 px — это 492 px одной картинкой.
   `align-items:start` без `height:auto` НЕ РАБОТАЕТ: `height:100%` у карточки
   считается от площади ряда, а не от содержимого, и коробка остаётся во всю высоту
   (проверено примеркой на живом: рвань 0, пустота та же). В кладке `height:100%`
   остаётся — там карточка занимает свою клетку по спану.
   После правки: пустота суммарно 8195 → 1523 px, худшая 858 → 81. */
.prk-setka{ display:grid; gap:var(--prk-shag-2); grid-template-columns:repeat(3,minmax(0,1fr));
            align-items:start }
.prk-setka>.prk-c{ height:auto }
/* Портрет 4:5 — приём широкой полосы и кладки; в колонке сетки он давал ряду
   +230 px, из которых соседям доставалась пустота. В сетке герой идёт 3:2. */
.prk-setka>.prk-c--45 .prk-c__kadr{ aspect-ratio:3/2 }
.prk-setka--2{ grid-template-columns:repeat(2,minmax(0,1fr)) }
/* ⛔⛔ Число колонок шло от ВЬЮПОРТА, а сетка стоит и внутри 532-px колонки статьи:
   при 1440 px три колонки дали карточку 163 px и абзац 131 px — деку набирало
   по 11,9 знака в строку, телеграфным столбиком (R21, 28.09.2026, лист 16/17/20/21).
   Медиазапрос про это не знает: вьюпорт широкий. Поэтому узкий КОНТЕЙНЕР решает сам,
   и правило действует всюду, где сетку вложили в колонку, а не только в статье. */
.prk-art__body .prk-setka,.prk-potok--uzk .prk-setka{ grid-template-columns:repeat(2,minmax(0,1fr)) }
.prk-art__body .prk-setka--2,.prk-potok--uzk .prk-setka--2{ grid-template-columns:1fr }
/* ⛔ И вторая половина той же правки: селектор по предку весит 0-2-0 и перебивает
   СВОЙ ЖЕ контейнерный запрос (0-1-0) — на 390 px сетка так и держала две колонки
   по 170 px, а дека набиралась по 11,6 знака (R21 на мобиле, 28.09.2026). Внутри
   `@container` вес обязан быть не ниже, чем у правила, которое он отменяет. */
@supports (container-type:inline-size){
  .prk-art__body,.prk-potok{ container-type:inline-size }
  /* Клетка сетки и клетка кладки — свои контейнеры: без этого `cqi` в заголовке
     считался бы от `.prk-potok` (1180px), то есть ровно от того, чего мерить
     нельзя. Внутри карточек нет ни одного `position:absolute`, поэтому
     `contain:layout` ничего не смещает. */
  .prk-setka>.prk-c,.prk-kladka>.prk-c{ container-type:inline-size }
  .prk-c--big .prk-c__h{ font-size:clamp(22px,min(2.5vw,9cqi),31px) }
  @container (max-width:700px){
    .prk-art__body .prk-setka,.prk-potok--uzk .prk-setka,
    .prk-setka{ grid-template-columns:repeat(2,minmax(0,1fr)) }
  }
  @container (max-width:420px){
    .prk-art__body .prk-setka,.prk-art__body .prk-setka--2,
    .prk-potok--uzk .prk-setka,.prk-potok--uzk .prk-setka--2,
    .prk-setka,.prk-setka--2{ grid-template-columns:1fr }
  }
}

/* --- 12. Список-строки (лента без кадров) -------------------------------- */
.prk-stroki{ list-style:none; margin:0; padding:0; display:grid; gap:2px }
/* ⛔ ЗЕБРА ОБЯЗАНА БЫТЬ ВИДНА ОБЕИМИ ПОЛОСАМИ. Прежняя пара была `--prk-list-2` /
   `--prk-list`, то есть нечётная строка красилась цветом ФОНА СТРАНИЦЫ и
   пропадала: список читался как половина списка. На листе зебра идёт врезкой и
   плитой, а внутри светлого виджета (сам виджет — врезка) — бумагой и плитой:
   ни одна полоса не совпадает с подложкой. */
.prk-stroki li{ background:var(--prk-list-2); padding:12px 16px; display:flex;
                gap:14px; align-items:baseline; min-width:0 }
.prk-stroki li:nth-child(odd){ background:var(--prk-list-3) }
.prk-wid:not(.prk-wid--tush):not(.prk-wid--znak):not(.prk-wid--kislota)
  .prk-stroki li{ background:var(--prk-list) }
.prk-wid:not(.prk-wid--tush):not(.prk-wid--znak):not(.prk-wid--kislota)
  .prk-stroki li:nth-child(odd){ background:var(--prk-list-3) }
.prk-stroki__t{ font-family:var(--prk-displei); font-weight:700; font-size:16px;
                line-height:1.25; letter-spacing:-.02em; min-width:0 }
.prk-stroki__t a{ color:var(--prk-tush) }
.prk-stroki__d{ margin-left:auto; white-space:nowrap; font-size:11px; color:var(--prk-seryi);
                font-variant-numeric:tabular-nums; letter-spacing:.06em; text-transform:uppercase }
/* строка с лидом: заголовок и первая фраза — список остаётся списком, но читается */
.prk-stroki--lid li{ display:grid; grid-template-columns:1fr auto; gap:2px 14px;
                     align-items:baseline; padding:14px 16px }
.prk-stroki--lid .prk-stroki__lid{ grid-column:1/-1; margin:0; font-size:14px;
                                   line-height:1.45; color:var(--prk-seryi) }
.prk-wid--tush .prk-stroki--lid .prk-stroki__lid{ color:var(--prk-seryi-sv) }

/* --- 12а. Свой редакционный текст страницы ------------------------------- */
.prk-metod{ background:var(--prk-list-2); margin:0 0 var(--prk-shag-3);
            padding:var(--prk-shag-3) var(--prk-shag-2);
            box-shadow:inset 4px 0 0 var(--prk-znak) }
.prk-metod__in{ display:grid; gap:var(--prk-shag-2) var(--prk-shag-3);
                grid-template-columns:repeat(auto-fit,minmax(288px,1fr)) }
.prk-metod__b{ min-width:0 }
.prk-metod__h{ font-family:var(--prk-displei); font-size:13px; font-weight:800;
               text-transform:uppercase; letter-spacing:.08em; color:var(--prk-znak-t);
               margin:0 0 var(--prk-shag-1) }
.prk-metod p{ margin:0 0 var(--prk-shag-1); font-size:15px; line-height:1.62;
              max-width:var(--prk-mera) }
.prk-metod p:last-child{ margin-bottom:0 }

/* --- 12б. Метка сверки и подпись редакции -------------------------------- */
.prk-obnov{ display:inline-flex; gap:.45em; align-items:baseline; white-space:nowrap }
.prk-obnov time{ font-variant-numeric:tabular-nums; letter-spacing:.04em }
/* ⛔ `padding:<верх> 0 0` СТИРАЕТ боковые поля конверта: на 390 px конверт занимает
   всю ширину, и подпись редакции упиралась в самый край (R7, «текст у края» на
   /reklama/ и /novosti/). Сокращённая запись задаёт все четыре стороны — у
   элемента с классом `.prk-w` меняется только верх. */
/* ⚠️ `margin-top:var(--prk-shag-4)` снят: токена `--prk-shag-4` в скине нет вовсе
   (шкала кончается на `--prk-shag-3`), объявление было недействительным и давало 0.
   Расстояние до предыдущего листа теперь даёт зазор полотна `--prk-gap`, а
   внутреннюю линейку заменила рамка листа. */
.prk-podpis{ padding-top:var(--prk-shag-3) }
.prk-podpis p{ margin:0 0 var(--prk-shag-1); font-size:14px; line-height:1.6;
               color:var(--prk-seryi); max-width:var(--prk-mera) }
.prk-podpis__l{ display:flex; gap:var(--prk-shag-2); flex-wrap:wrap; font-family:var(--prk-displei);
                font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.07em }
.prk-podpis__l a{ color:var(--prk-znak-t) }

/* --- 13. Виджеты --------------------------------------------------------- */
.prk-wid{ background:var(--prk-list-2); padding:18px 18px 20px; margin:0 0 var(--prk-shag-2) }
.prk-wid--tush{ background:var(--prk-tush); color:var(--prk-list) }
.prk-wid--tush a{ color:var(--prk-znak-sv) }
/* «плита» — виджет В ОБВОДКЕ: им идут поля, перенесённые из карточки архива,
   чтобы они не читались как текст редакции (tone='plita' в prk_pages).
   ⛔ Отличает его РАМКА, а не тон: раньше он красился бумагой `--prk-list`, и на
   листе (бумага же) от него оставалась одна линия. Тон тот же, что у всякой
   врезки, — тогда и зебра, и таблица внутри него ложатся по общему правилу. */
.prk-wid--plita{ background:var(--prk-list-2); border:1px solid var(--prk-ramka);
                 padding:17px 17px 19px }
.prk-wid--znak{ background:var(--prk-znak); color:#fff }
.prk-wid--znak a{ color:#fff; text-decoration:underline }
/* ⛔ Список-строки внутри ЗАЛИВОЧНОГО виджета красит себе СВОЙ СВЕТЛЫЙ фон
   (`--prk-list`/`--prk-list-2`), а ссылка в нём наследует от виджета `color:#fff`
   — белое по светлому: 1,13 на 13 узлах главной (R3, 28.09.2026). Полосы строк
   внутри заливки затемняются ею же, а не красятся бумагой: белое по #1B39C4 с
   притемнением — 8,5 и выше. Тот же разворот у ссылки строки: у `.prk-stroki__t a`
   свои чернила, на заливке они дают 1,9. */
.prk-wid--znak .prk-stroki li{ background:rgba(0,0,0,.20) }
.prk-wid--znak .prk-stroki li:nth-child(odd){ background:rgba(0,0,0,.10) }
.prk-wid--znak .prk-stroki__t a,.prk-wid--znak .prk-stroki a{ color:#fff }
.prk-wid--znak .prk-stroki__d{ color:#fff; opacity:.86 }
/* ⛔ Тот же разворот у ЧЕРНИЛЬНОГО виджета, и он сильнее: `.prk-wid--tush a`
   (класс+тип, 0,1,1) стоит НИЖЕ `.prk-stroki__t a` с такой же силой и потому
   перебивает её — светлый акцент `--prk-znak-sv` ложился на СВЕТЛУЮ полосу
   строки: 2,05 «ProstoDesign STUDIO» и 1,78 «ПК "Эксграфика-М"» (R3, 28.09.2026).
   Полосы на чернилах высветляются ими же, ссылка идёт белой. */
.prk-wid--tush .prk-stroki li{ background:rgba(255,255,255,.07) }
.prk-wid--tush .prk-stroki li:nth-child(odd){ background:rgba(255,255,255,.03) }
.prk-wid--tush .prk-stroki__t a,.prk-wid--tush .prk-stroki a{ color:#fff }
.prk-wid--tush .prk-stroki__d{ color:var(--prk-seryi-sv) }
.prk-wid--kislota .prk-stroki li{ background:rgba(0,0,0,.07) }
.prk-wid--kislota .prk-stroki li:nth-child(odd){ background:rgba(255,255,255,.35) }
.prk-wid--kislota .prk-stroki__t a,.prk-wid--kislota .prk-stroki a{ color:var(--prk-tush) }
.prk-wid--kislota .prk-stroki__d{ color:var(--prk-kislota-t) }
.prk-wid--kislota{ background:var(--prk-kislota); color:var(--prk-tush) }
.prk-wid--kislota a{ color:var(--prk-tush) }
.prk-wid__k{ margin:0 0 4px }
.prk-wid__h{ font-size:20px; margin:0 0 var(--prk-shag-2); letter-spacing:-.03em }
.prk-wid__note{ margin:var(--prk-shag-1) 0 0; font-size:12px; color:var(--prk-seryi) }
.prk-wid--tush .prk-wid__note{ color:var(--prk-seryi-sv) }
/* ⛔ у сноски тоже СВОЙ серый: на ультрамарине 1,48, на лайме — 4,47 (R3) */
.prk-wid--znak .prk-wid__note{ color:#fff; opacity:.86 }
.prk-wid--kislota .prk-wid__note{ color:var(--prk-kislota-t) }
/* ⛔ ОДИН РАЗ для всей заливки: внутренние элементы виджета носят свой серый
   (`--prk-seryi`) и свою бумажную подложку (`--prk-list`) — и то и другое на
   ультрамарине и на лайме читается как «текст того же цвета, что фон». Перечислены
   ВСЕ внутренности, которые скин кладёт в виджет: пары, плитки, таблица, провод. */
.prk-wid--znak .prk-pary dt,.prk-wid--znak .prk-plitka span,
.prk-wid--znak table.prk-t thead th,.prk-wid--znak .prk-wire p{ color:#fff; opacity:.86 }
.prk-wid--znak .prk-plitka,.prk-wid--znak table.prk-t thead th,
.prk-wid--znak table.prk-t tbody tr:nth-child(odd) td{ background:rgba(0,0,0,.16) }
.prk-wid--znak table.prk-t tbody tr:nth-child(even) td{ background:rgba(0,0,0,.08) }
.prk-wid--znak .prk-plitka b,.prk-wid--znak table.prk-t td{ color:#fff }
.prk-wid--kislota .prk-pary dt,.prk-wid--kislota .prk-plitka span,
.prk-wid--kislota table.prk-t thead th,
.prk-wid--kislota .prk-wire p{ color:var(--prk-kislota-t) }
.prk-wid--kislota .prk-plitka,.prk-wid--kislota table.prk-t thead th,
.prk-wid--kislota table.prk-t tbody tr:nth-child(odd) td{ background:rgba(255,255,255,.4) }
.prk-wid--kislota table.prk-t tbody tr:nth-child(even) td{ background:rgba(0,0,0,.05) }
.prk-wid dl.prk-pary{ display:grid; grid-template-columns:auto 1fr; gap:6px 14px; margin:0 }
.prk-pary dt{ font-family:var(--prk-displei); font-weight:700; font-size:11px;
              text-transform:uppercase; letter-spacing:.07em; color:var(--prk-seryi) }
.prk-pary dd{ margin:0; font-weight:600; font-variant-numeric:tabular-nums }
/* ⛔ ПАРА «ПОЛЕ — ЗНАЧЕНИЕ» В УЗКОЙ ПОЛОСЕ НЕ ДЕЛИТСЯ НАДВОЕ. Колонка `auto`
   отдаёт термину его max-content (137 px из 260), и значение печатается
   столбиком по одному слову: R21 ловил `dd` шириной 109 px на 1440 и 119 px на
   390 («Реклама, которая вводит в заблуждение…», 5 узлов на 3 адресах,
   28.09.2026). Переполнения при этом нет, поля целы, контраст в норме — глазу
   виден только «телеграфный» столбик. В полосе фактов и в узком потоке пара
   встаёт в один столбец: подпись сверху, значение под ней. */
.prk-art__fakty .prk-wid dl.prk-pary,
.prk-potok--uzk .prk-wid dl.prk-pary{ grid-template-columns:minmax(0,1fr); gap:1px 0 }
.prk-art__fakty .prk-wid .prk-pary dd,
.prk-potok--uzk .prk-wid .prk-pary dd{ margin:0 0 8px }
.prk-plitki{ display:grid; grid-template-columns:repeat(auto-fill,minmax(132px,1fr)); gap:8px }
.prk-plitka{ background:var(--prk-list); padding:11px 12px; min-width:0 }
.prk-plitka b{ display:block; font-family:var(--prk-displei); font-size:15px; letter-spacing:-.02em }
.prk-plitka span{ font-variant-numeric:tabular-nums; font-size:12px; color:var(--prk-seryi) }

/* --- 14. Таблицы --------------------------------------------------------- */
.prk-tabl-obertka{ overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 0 var(--prk-shag-2) }
table.prk-t{ width:100%; border-collapse:collapse; font-size:15px; min-width:min(520px,100%) }
/* ⛔ У ТАБЛИЦЫ ПОЯВИЛАСЬ ЛИНЕЙКА ПО СТРОКАМ. Скин строился на «разделителей нет,
   границу даёт тон», и таблица держалась одной зеброй — а зебра шла бумагой,
   то есть цветом подложки: половина строк пропадала, сетка читалась как абзац
   цифр. Тонкая линия по низу ячейки работает на любом плане, в том числе там,
   где полоса зебры совпала с фоном виджета. На тушёвке и заливках линия своя,
   светлая, — тёмная на тёмном не видна (см. ниже). */
table.prk-t th,table.prk-t td{ text-align:left; padding:9px 12px; vertical-align:top;
                               font-variant-numeric:tabular-nums;
                               border-bottom:1px solid var(--prk-ramka) }
table.prk-t thead th{ font-family:var(--prk-displei); font-weight:700; font-size:11px;
                      text-transform:uppercase; letter-spacing:.07em; color:var(--prk-seryi);
                      background:var(--prk-list-3) }
table.prk-t tbody tr:nth-child(odd) td{ background:var(--prk-list) }
table.prk-t tbody tr:nth-child(even) td{ background:var(--prk-list-2) }
table.prk-t tbody tr:last-child td{ border-bottom:0 }
.prk-wid--tush table.prk-t th,.prk-wid--tush table.prk-t td{
  border-bottom-color:rgba(255,255,255,.16) }
.prk-wid--znak table.prk-t th,.prk-wid--znak table.prk-t td{
  border-bottom-color:rgba(255,255,255,.24) }
.prk-wid--kislota table.prk-t th,.prk-wid--kislota table.prk-t td{
  border-bottom-color:rgba(0,0,0,.14) }
.prk-wid--tush table.prk-t thead th{ background:transparent; color:var(--prk-seryi-sv) }
.prk-wid--tush table.prk-t tbody tr:nth-child(odd) td{ background:rgba(255,255,255,.05) }
.prk-wid--tush table.prk-t tbody tr:nth-child(even) td{ background:transparent }
/* ⛔ 520 px В ПОЛКЕ ШИРИНОЙ ~310. `min-width:min(520px,100%)` стоит ради широких
   донорских таблиц в прозе, но в узкой колонке (полка хаба, факты статьи) из-за
   него таблица уезжает под край виджета: у «Индекса архива» столбец «Годы» был
   срезан по букве — «200Є» вместо «2006—2025» (замер 29.09.2026, e404-d-top.png).
   Прокрутка обёртки это формально спасает, но читателю виден обрубок. В узком
   месте ширина считается по содержимому, а четвёртый столбец — повторная ссылка
   «указатель» — снимается: название рубрики в первом столбце уже ссылка, ни один
   адрес при этом не меняется. */
.prk-hub__polka table.prk-t,.prk-art__fakty table.prk-t{ min-width:0; font-size:14px }
.prk-hub__polka table.prk-t th,.prk-hub__polka table.prk-t td,
.prk-art__fakty table.prk-t th,.prk-art__fakty table.prk-t td{ padding:8px }
.prk-hub__polka table.prk-t tr>*:nth-child(4),
.prk-art__fakty table.prk-t tr>*:nth-child(4){ display:none }

/* --- 15. Кнопки: плита, а не пилюля-обводка ------------------------------ */
.prk-btn{ display:inline-flex; align-items:center; gap:9px; min-height:44px;
          padding:0 20px; background:var(--prk-tush); color:var(--prk-list);
          font-family:var(--prk-displei); font-weight:700; font-size:14px;
          text-transform:uppercase; letter-spacing:.06em; border:0; cursor:pointer }
.prk-btn:hover,.prk-btn:focus{ background:var(--prk-znak); color:#fff; text-decoration:none }
.prk-btn--znak{ background:var(--prk-znak); color:#fff }
/* ⛔ ЦВЕТ ССЫЛКИ КОНТЕЙНЕРА ПЕРЕБИВАЕТ ЦВЕТ ПЛИТЫ. `.prk-art__idx a` и
   `.prk-wid--tush a` — класс+тип (0,1,1), а `.prk-btn` — один класс (0,1,0),
   и оба стоят в файле ниже: текст кнопки внутри навигации рубрики красился в
   `--prk-tush` ПО `--prk-tush` — контраст ровно 1.00 на «Вся рубрика» и «Вся
   лента» (R3, 28.09.2026; плита видна, букв на ней нет). Плита держит свою пару
   цветов сама — селектор удвоенным классом, чтобы не зависеть от порядка. */
.prk-btn.prk-btn{ background:var(--prk-tush); color:var(--prk-list) }
.prk-btn.prk-btn:hover,.prk-btn.prk-btn:focus{ background:var(--prk-znak); color:#fff }
.prk-btn--znak.prk-btn--znak{ background:var(--prk-znak); color:#fff }

/* --- 16. Шаблон статьи: 248 / 664 / 296 ---------------------------------- */
.prk-art{ display:grid; grid-template-columns:var(--prk-index) minmax(0,var(--prk-mera)) var(--prk-fakty);
          gap:var(--prk-shag-3); padding-top:var(--prk-shag-2); padding-bottom:var(--prk-shag-3);
          align-items:start }
.prk-art__idx{ position:sticky; top:14px; align-self:start; min-width:0 }
.prk-art__idx ul{ list-style:none; margin:0 0 var(--prk-shag-2); padding:0; display:grid; gap:7px }
.prk-art__idx a{ font-family:var(--prk-displei); font-weight:700; font-size:14px; color:var(--prk-tush) }
.prk-art__idx a:hover{ color:var(--prk-znak-t); text-decoration:none }
.prk-art__body{ min-width:0 }
.prk-art__fakty{ min-width:0 }
.prk-h1{ font-size:clamp(28px,4.3vw,46px); line-height:1.06; margin:0 0 var(--prk-shag-2) }
/* h1 главной: он же мачта выпуска — крупнее, но в один поток с лентой */
.prk-h1--vyp{ font-size:clamp(26px,3.2vw,38px); letter-spacing:-.03em;
              margin:0 0 var(--prk-shag-3); max-width:20ch }
.prk-art__meta{ display:flex; flex-wrap:wrap; gap:6px var(--prk-shag-2); margin:0 0 var(--prk-shag-2) }
.prk-art__kadr{ margin:0 0 var(--prk-shag-2) }
.prk-art__kadr img{ width:100% }
/* мелкое донорское превью в колонке материала: своя величина, не во всю ширину —
   `width:100%` давало файлу 100×100 семикратное увеличение (R17) */
.prk-art__kadr--mini img{ width:auto; max-width:100%; height:auto }
/* ⛔ КАДР НЕ УВЕЛИЧИВАЕТСЯ. `width:100%` в колонке материала (≈740 px) раздувает
   донорское превью 300×200 в 2,5 раза — то же мыло, что R17 ловил на карточках.
   Кадр уже 560 px рисуется в свою величину: класс ставит prk_pages по iw. */
.prk-art__kadr--uzk img{ width:auto; max-width:100% }
.prk-art__kadr figcaption{ margin-top:8px; font-size:13px; color:var(--prk-seryi) }
.prk-proza{ font-size:18px; line-height:1.7 }
.prk-proza h2{ font-size:clamp(21px,2.6vw,27px); margin:var(--prk-shag-3) 0 var(--prk-shag-1) }
.prk-proza h3{ font-size:19px; margin:var(--prk-shag-2) 0 var(--prk-shag-1) }
.prk-proza img{ margin:var(--prk-shag-2) 0 }
.prk-proza blockquote{ margin:var(--prk-shag-2) 0; padding:2px 0 2px 18px;
                       border-left:3px solid var(--prk-kislota); font-size:20px; line-height:1.45 }
.prk-proza table{ width:100%; border-collapse:collapse; font-size:15px }
.prk-proza table td,.prk-proza table th{ padding:8px 11px; text-align:left; vertical-align:top;
                                         background:var(--prk-list-2);
                                         border-bottom:1px solid var(--prk-ramka) }
.prk-proza a{ text-decoration:underline }
.prk-proza .prk-vrezka{ background:var(--prk-list-2); padding:16px 18px; margin:var(--prk-shag-2) 0 }

/* --- 16б. Статья автопостинга приезжает ГОЛЫМ html ----------------------- */
/* Робот moz.biz кладёт в %CONTENT_1% свою разметку: обёрток сборщика (прокрутка
   широкой таблицы, разрезание списков) у неё не будет никогда, а гейты её не
   видят — в момент приёмки ни одной такой страницы ещё нет. Поэтому защита
   висит на самом контейнере прозы. ⛔ Селектор ВЛОЖЕННЫЙ, а не прямой ребёнок:
   у 14 прежних статей робота проза приезжает в донорской обёртке `<div>`, и по
   `.prk-proza > table` правило на них не совпадает вовсе — таблица уезжает за
   край экрана на мобильном. Меряет это `gate_tpl.js`, не глаза. */
.prk-proza{ container-type:inline-size; overflow-wrap:break-word }
.prk-proza a{ overflow-wrap:anywhere }
.prk-proza table{ display:block; max-width:100%; overflow-x:auto }
.prk-proza pre{ max-width:100%; overflow-x:auto; white-space:pre;
                background:var(--prk-list-2); padding:12px 14px; font-size:14px }
/* подпись уезжает вместе с прокруткой: держим её по ВИДИМОЙ части, а не по
   прокручиваемой ширине (min-width:100% мерит прокручиваемую и режет подпись) */
.prk-proza table>caption{ position:sticky; left:0; width:100cqi; max-width:100%;
                          caption-side:top; text-align:left; font-size:13px;
                          color:var(--prk-seryi); padding-bottom:6px }
.prk-proza img{ max-width:100%; height:auto }

/* --- 16в. Гнездо анонсов автопостинга ------------------------------------ */
/* Робот вставляет свой блок СРАЗУ ЗА маркером ленты, поэтому маркер стоит в
   отдельном блочном контейнере (внутри <ul> его div был бы прямым ребёнком
   списка) и НАД лентой: свежий анонс оказывается сверху. Заголовка у гнезда
   нет — до первой публикации это была бы подпись над пустым местом; пустое
   гнездо снимает себя само. Вложенный :has() спецификацией запрещён, поэтому
   правило одноуровневое. Инлайновый margin-bottom анонса перебивается. */
.prk-wire{ display:grid; gap:2px; margin:0 0 var(--prk-shag-2) }
/* ⛔ Проверка идёт по ЛЮБОМУ элементу-ребёнку, а не по `>div`: разметку анонса
   задаёт робот, и завтра там может стоять <p> или <article>. Пробелы и перевод
   строки элементами не считаются, поэтому гнездо остаётся спрятанным. */
.prk-wire:not(:has(*)){ display:none }
.prk-wire>*{ margin:0 !important; padding:14px 0; border-top:1px solid var(--prk-skoba) }
.prk-wire>*:first-child{ border-top:0 }
.prk-wire h4,.prk-wire h3,.prk-wire h2{ font-family:var(--prk-displei); font-size:19px;
                  line-height:1.25; margin:0 0 6px; letter-spacing:-.01em }
.prk-wire h4 a,.prk-wire h3 a,.prk-wire h2 a{ text-decoration:none }
.prk-wire h4 a:hover,.prk-wire h3 a:hover,.prk-wire h2 a:hover{ text-decoration:underline }
.prk-wire p{ margin:0; font-size:15px; color:var(--prk-seryi); line-height:1.55 }

/* своё оглавление — СВЁРНУТОЕ (§11) */
.prk-toc{ background:var(--prk-list-2); padding:12px 16px; margin:0 0 var(--prk-shag-2) }
.prk-toc>summary{ cursor:pointer; font-family:var(--prk-displei); font-weight:700; font-size:13px;
                  text-transform:uppercase; letter-spacing:.07em; min-height:28px }
.prk-toc ol{ margin:12px 0 0; padding-left:1.3em; display:grid; gap:6px; font-size:15px }

/* --- 17. Комментарии (донорские, сохраняются) ---------------------------- */
.prk-komm{ margin:var(--prk-shag-3) 0 0 }
.prk-komm ul{ list-style:none; margin:0; padding:0; display:grid; gap:2px }
/* зебра комментариев — по той же причине, что у списка-строк: бумажная полоса на
   бумажном листе пропадала, и половина реплик читалась как продолжение прозы */
.prk-komm li{ background:var(--prk-list-2); padding:13px 16px; font-size:15px }
.prk-komm li:nth-child(even){ background:var(--prk-list-3) }

/* --- 18. Хаб: горизонтальная полоса фильтра + полка ---------------------- */
.prk-hub{ display:grid; grid-template-columns:minmax(0,1fr) var(--prk-rail);
          gap:var(--prk-shag-3); padding-bottom:var(--prk-shag-3); align-items:start }
.prk-hub__glav{ min-width:0 }
.prk-hub__polka{ min-width:0 }
.prk-filtr{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 var(--prk-shag-2); padding:0; list-style:none }
.prk-filtr a{ display:inline-block; padding:8px 13px; background:var(--prk-list-2);
              font-family:var(--prk-displei); font-weight:700; font-size:13px;
              letter-spacing:-.01em; color:var(--prk-tush); min-height:36px }
.prk-filtr a:hover,.prk-filtr a:focus{ background:var(--prk-tush); color:var(--prk-list); text-decoration:none }
.prk-filtr a[aria-current="page"]{ background:var(--prk-kislota); color:var(--prk-tush) }
.prk-intro{ max-width:72ch; font-size:18px; line-height:1.66; margin:0 0 var(--prk-shag-3) }

/* --- 19. Пагинация ------------------------------------------------------- */
.prk-pag{ display:flex; flex-wrap:wrap; gap:6px; list-style:none; margin:var(--prk-shag-3) 0 0; padding:0 }
.prk-pag a,.prk-pag span{ display:inline-flex; align-items:center; justify-content:center;
                          min-width:44px; min-height:44px; padding:0 10px;
                          font-family:var(--prk-displei); font-weight:700; font-size:14px;
                          font-variant-numeric:tabular-nums; background:var(--prk-list-2); color:var(--prk-tush) }
.prk-pag a:hover{ background:var(--prk-tush); color:var(--prk-list); text-decoration:none }
.prk-pag [aria-current="page"]{ background:var(--prk-znak); color:#fff }

/* --- 20. Указатель архива ------------------------------------------------ */
.prk-ukaz{ columns:4 210px; column-gap:var(--prk-shag-3); margin:0 0 var(--prk-shag-3) }
.prk-ukaz section{ break-inside:avoid; margin:0 0 var(--prk-shag-2) }
.prk-ukaz h3{ font-size:15px; margin:0 0 7px }
.prk-ukaz ul{ list-style:none; margin:0; padding:0; font-size:14px; display:grid; gap:5px }

/* --- 21. Партнёрские размещения (переносятся без изменений) -------------- */
.prk-part{ background:var(--prk-list-2); padding:16px 18px 18px }
.prk-part__list{ list-style:none; margin:0; padding:0;
                 display:grid; grid-template-columns:repeat(auto-fill,minmax(212px,1fr)); gap:12px }
.prk-part__list li{ background:var(--prk-list); padding:11px 12px; font-size:14px; min-width:0 }
/* ⛔ ПРЕВЬЮ РАЗМЕЩЕНИЯ НЕ РАЗДУВАЕТСЯ ДО ШИРИНЫ ПЛИТКИ. `width:100%` тянул
   донорское `*_thumb.jpg` 100×100 до 236 px на десктопе и 302 px на мобиле —
   увеличение в 3 раза, на экране мыло: R «растянутых img 8» (28.09.2026). Файл
   размещения владельца переносится как есть (правило 4), поэтому меняется не
   картинка, а коробка: печатаем в натуральную величину, ужимаем только то, что
   шире плитки. */
.prk-part__list img{ margin:0 0 8px; width:auto; max-width:100%; height:auto }
/* заголовок проданной карточки, у которой страницы в снимке нет: текст остаётся,
   ссылки нет (п. 12.4в) — перенос и вес те же, цвет корпусный, а не ссылочный */
.prk-part__list a,.prk-part__list .prk-part__mert{ overflow-wrap:anywhere }
.prk-part__list .prk-part__mert{ display:block; font-weight:600 }

/* --- 22. Подвал ---------------------------------------------------------- */
.prk-foot{ background:var(--prk-tush); color:var(--prk-seryi-sv); margin-top:var(--prk-shag-3) }
.prk-foot__in{ padding-top:var(--prk-shag-3); padding-bottom:var(--prk-shag-3) }
.prk-foot__setka{ display:grid; grid-template-columns:2fr 1fr 1fr; gap:var(--prk-shag-3) }
.prk-foot h2{ font-size:13px; text-transform:uppercase; letter-spacing:.08em;
              color:var(--prk-list); margin:0 0 var(--prk-shag-1); font-weight:700 }
.prk-foot ul{ list-style:none; margin:0; padding:0; display:grid; gap:7px; font-size:15px }
.prk-foot a{ color:var(--prk-seryi-sv) }
.prk-foot a:hover{ color:var(--prk-list) }
.prk-foot__o{ font-size:15px; line-height:1.6; max-width:52ch }
.prk-foot__niz{ margin-top:var(--prk-shag-3); display:flex; flex-wrap:wrap;
                gap:var(--prk-shag-2); align-items:center; font-size:13px }
.prk-foot__sch{ margin-left:auto; display:flex; gap:12px; align-items:center; flex-wrap:wrap }

/* --- 23. Реклама и счётчики: свои рамки вокруг чужого блока -------------- */
.prk-rek{ margin:var(--prk-shag-2) 0; min-width:0; overflow:hidden }
.prk-rek>*{ max-width:100% }
.prk-rek__k{ display:block; margin-bottom:6px }

/* Виджет-сервис владельца: форма обратной связи fortunida на /contact.html. Форму
   рисует чужой скрипт внутрь пустого `#feedback-form`, поэтому свой вид блоку даёт
   только обёртка — без правила он приезжал бы без полей и без плиты, как случайный
   кусок разметки в конце страницы. Ни адрес скрипта, ни его data-атрибуты не
   трогаются (правило 4). */
.prk-widget{ margin:var(--prk-shag-3) 0 0; min-width:0 }
.prk-widget>*{ max-width:100% }
.prk-widget--forma{ padding:var(--prk-shag-2); background:var(--prk-list-2);
                    border-left:4px solid var(--prk-znak) }

/* --- 23б. ПОЛЯ ФОРМЫ: свой вид, а не браузерный -------------------------- */
/* Владелец 29.09.2026, вдогонку к «фон и блоки сливаются»: «не переделывать все
   а просто добавить чтобы формы от фонов отличались». Замер браузерного поля на
   стенде: `input` белый `#fff` — к листу **1.04**, кнопка `#F0F0F0` — **1.10**,
   на врезке таблицы 1.21. То есть поле читается не коробкой, а строчкой: ровно
   тот же дефект, что и блок без тона, только у полей его держит UA, а не скин.
   Коробку даёт РАМКА цвета служебного серого (7.13 к листу), а не тон заливки —
   поле остаётся бумагой, чтобы текст в нём читался как в тексте. Форма на сайте
   одна (донорский вход `/enter`: 6 полей + 2 кнопки), так что это ДОБАВЛЕНИЕ
   правила, а не переделка скина. [[tone-alone-is-not-a-block-boundary]] */
.prk-w input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),
.prk-w textarea,.prk-w select{
  font:400 15px/1.4 var(--prk-korpus); color:var(--prk-tush);
  background:var(--prk-list); border:1.5px solid var(--prk-seryi); border-radius:0;
  padding:9px 11px; min-height:42px; max-width:100%; box-sizing:border-box }
.prk-w textarea{ min-height:120px; resize:vertical }
.prk-w input:focus,.prk-w textarea:focus,.prk-w select:focus{
  outline:3px solid var(--prk-kislota); outline-offset:0; border-color:var(--prk-tush) }
.prk-w input[type=submit],.prk-w input[type=button],.prk-w button:not(.prk-btn){
  min-height:44px; padding:0 20px; background:var(--prk-tush); color:var(--prk-list);
  font-family:var(--prk-displei); font-weight:700; font-size:14px;
  text-transform:uppercase; letter-spacing:.06em; border:0; cursor:pointer }
.prk-w input[type=submit]:hover,.prk-w input[type=button]:hover,
.prk-w button:not(.prk-btn):hover{ background:var(--prk-znak); color:#fff }
/* ⚠️ Чекбокс и радио — единственные поля, которым заливка не нужна: их рисует UA
   акцентом. Красить их через общее правило нельзя — спрятанный чекбокс бургера
   `.prk-burger.prk-vh` вылез бы коробкой в шапке на каждой странице. */
.prk-w input[type=checkbox]:not(.prk-burger),.prk-w input[type=radio]{
  accent-color:var(--prk-znak); width:18px; height:18px }

/* --- 24. Брейкпоинты: 1320 · 1040 · 900 · 620 · 420 --------------------- */
@media (max-width:1320px){
  .prk-art{ grid-template-columns:var(--prk-index) minmax(0,1fr) var(--prk-fakty) }
  /* ⚠️ девять рубрик в одну строку держатся до 1320; ниже ряд ужимается кеглем,
     а не переносом: перенос даёт вторую строку у самой узкой полосы шапки. */
  .prk-nav{ gap:4px 16px }
  .prk-nav a{ font-size:14px }
}
@media (max-width:1040px){
  .prk-vypusk{ grid-template-columns:1fr; gap:var(--prk-shag-2) }
  .prk-stamp{ position:static }
  .prk-stamp__blok{ display:flex; flex-wrap:wrap; align-items:baseline; gap:var(--prk-shag-2) }
  /* ⛔ `display:flex` БЕЗ переноса: три пары dt/dd легли в одну нерушимую строку и
     растянули документ до 428 px при вьюпорте 390 — горизонтальная прокрутка на
     КАЖДОЙ странице плюс «текст у края» на всём стампе (R8/R7, 28.09.2026).
     Раскладка колоночная: подпись сверху, число снизу, три столбца — они делят
     ширину и сжимаются вместе с ней. */
  .prk-stamp dl{ display:grid; grid-auto-flow:column; grid-template-rows:auto auto;
                 grid-auto-columns:minmax(0,1fr); gap:2px var(--prk-shag-2); margin:0 }
  .prk-stamp dt,.prk-stamp dd{ min-width:0; overflow-wrap:anywhere }
  .prk-stamp dd{ margin:0 }
  .prk-art{ grid-template-columns:minmax(0,1fr) var(--prk-fakty) }
  .prk-art__idx{ position:static; grid-column:1/-1; order:-1 }
  .prk-art__idx ul{ display:flex; flex-wrap:wrap; gap:10px 18px }
  .prk-potoki,.prk-potoki--zerkalo{ grid-template-columns:1fr }
  .prk-potoki--zerkalo .prk-potok--shir,.prk-potoki--zerkalo .prk-potok--uzk{ order:0 }
  .prk-foot__setka{ grid-template-columns:1fr 1fr }
}
@media (max-width:900px){
  .prk-burger__lab{ display:inline-flex }
  .prk-mast__in{ align-items:center }
  /* ⚠️ разделители мобильного меню шли `--prk-list-2` по бумаге шапки — 1.21, на
     экране полосы не было. Линия рисуется цветом рамки (1.57). */
  .prk-nav{ display:none; width:100%; justify-content:flex-start; text-align:left;
            order:3; gap:0; border-top:2px solid var(--prk-ramka); margin-top:var(--prk-shag-1) }
  .prk-nav li{ width:100% }
  .prk-nav a{ display:block; width:100%; min-height:48px; line-height:48px; font-size:17px;
              padding:0 2px; border-bottom:2px solid var(--prk-ramka) }
  /* ⛔ СОСЕДНИЙ КОМБИНАТОР СЧИТАЕТ СОСЕДЕЙ, А НЕ ПОТОМКОВ. Чекбокс `.prk-burger`
     стоит ПЕРЕД `.prk-mast__in`, а ряд рубрик лежит ВНУТРИ него, поэтому
     `.prk-burger:checked ~ .prk-nav` не совпадал никогда: на мобиле бургер
     нажимался, а меню не открывалось — глазом на десктопе это не видно, гейт
     `menu` дал N3 на 25 адресах из 25 (28.09.2026). */
  .prk-burger:checked ~ .prk-mast__in .prk-nav{ display:flex; flex-wrap:wrap }
  .prk-mast__in{ flex-wrap:wrap }
  .prk-hub{ grid-template-columns:1fr }
  .prk-kladka{ grid-template-columns:repeat(2,minmax(0,1fr)) }
  .prk-k22,.prk-k21{ grid-column:span 2 }
  .prk-k22{ grid-row:span 2 }
  .prk-setka{ grid-template-columns:repeat(2,minmax(0,1fr)) }
  .prk-ukaz{ columns:2 180px }
}
@media (max-width:620px){
  .prk-art{ grid-template-columns:1fr; gap:var(--prk-shag-2) }
  .prk-art__fakty{ grid-column:1/-1 }
  /* ⛔ НА УЗКОЙ КОЛОНКЕ РЕЛЬС ЕДЕТ ВНИЗ. Выше по файлу у `.prk-art__idx` стоит
     `order:-1`: на планшете это компактный ряд ссылок над статьёй, а на 390 тот
     же ряд разворачивается в столбец на семь заголовков — и первым экраном
     статьи читатель видел список ДРУГИХ материалов, заголовок уезжал за сгиб
     (замер 29.09.2026, nash-m-top.png и donor-m-top.png). `order:1` ставит
     рельс после текста и после виджетов, у которых порядок нулевой. */
  .prk-art__idx{ order:1 }
  .prk-proza{ font-size:17px }
  .prk-kladka{ grid-template-columns:1fr; grid-auto-rows:auto }
  .prk-k22,.prk-k11,.prk-k21{ grid-column:1/-1; grid-row:auto }
  /* мелкий кадр из мобильной пропорции исключён: вес правил одинаковый (0-2-0), а это
     ниже по файлу — без `:not()` превью 100×100 снова растянулось бы на 16/10 */
  .prk-c--45 .prk-c__kadr:not(.prk-c__kadr--mini),
  .prk-c--32 .prk-c__kadr:not(.prk-c__kadr--mini),
  .prk-c--11 .prk-c__kadr:not(.prk-c__kadr--mini){ aspect-ratio:16/10 }
  /* вес 0-3-0 — ровно как у десктопных потолков лида, иначе они бы устояли */
  .prk-c--45.prk-c--big .prk-c__lid,.prk-c--32.prk-c--big .prk-c__lid,
  .prk-c--uzk.prk-c--big .prk-c__lid{ -webkit-line-clamp:5 }
  /* запасной путь для браузера без @container: вес тот же 0-2-0, что у правила по предку */
  .prk-art__body .prk-setka,.prk-art__body .prk-setka--2,
  .prk-potok--uzk .prk-setka,.prk-potok--uzk .prk-setka--2,
  .prk-setka,.prk-setka--2{ grid-template-columns:1fr }
  .prk-foot__setka{ grid-template-columns:1fr }
  .prk-foot__sch{ margin-left:0 }
  .prk-stroki li{ flex-wrap:wrap }
  .prk-stroki__d{ margin-left:0 }
  .prk-ukaz{ columns:1 }
  .prk-logo__w{ font-size:clamp(22px,7vw,30px) }
}
@media (max-width:420px){
  .prk-stamp__d{ font-size:34px }
  .prk-part__list{ grid-template-columns:1fr }
}
@media (prefers-reduced-motion:reduce){
  *{ transition:none!important; animation:none!important }
  html{ scroll-behavior:auto }
}
@media print{
  .prk-bar,.prk-nav,.prk-hub__polka,.prk-art__fakty,.prk-rek{ display:none }
  /* полотно и тени на бумагу не печатаем: лист на листе смысла не имеет */
  body{ background:#fff }
  main{ padding:0 }
  main>.prk-w{ background:#fff; border:0; box-shadow:none; margin-bottom:0 }
  .prk-mast{ box-shadow:none }
}
