/* =====================================================================
   Блог GeoWise — ред. 11 (05.11.2026; ред. 10 — 05.11.2026): новые элементы для статей-рейтингов.
   Подключать ПОСЛЕ blog.css (или дописать в конец blog.css) → обновить
   schema/templates.lock.json и assets_version, затем blog rebuild.
   Только токены сайта: Inter 400/700; размеры 24·20·17·15·13; цвета
   #1D1D1F #6E6E73 #A1A1A6 #C7C7CC #D2D2D7 #E8E8ED #F5F5F7, синий #0A5CFF —
   только нажимаемое. Классы с префиксом rt- — не пересекаются с blog.css.
   Макет: Figma, страница «Блог», сценарий 11 (узлы 1470:2 · 1471:2 · 1472:2).
   ===================================================================== */

:root{
  --rt-blk:28px;    /* текст ↔ блок (содержание, таблица, схема баллов) */
  --rt-card:40px;   /* карточка агентства → карточка */
  --rt-h2t:12px;    /* H2 → первый блок */
}
@media (max-width:1023px){:root{--rt-card:36px}}
@media (max-width:767px){:root{--rt-blk:24px;--rt-card:32px;--rt-h2t:10px}}

/* ---------- «Коротко»: пункты под первой фразой (поле tldr_points) ---------- */
.rt-tldr-points{list-style:none;margin:12px 0 0;padding:0}
.rt-tldr-points li{position:relative;padding-left:18px;margin-top:8px;font:400 15px/22px Inter,sans-serif;color:#1D1D1F}
.rt-tldr-points li::before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:3px;background:#A1A1A6}

/* ---------- Содержание (:::toc) ---------- */
.rt-toc{margin-top:16px;border:1px solid #E8E8ED;border-radius:20px;padding:24px}
.rt-toc__h{margin:0;font:700 13px/16px Inter,sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#6E6E73}
.rt-toc ol{list-style:none;margin:12px 0 0;padding:0;columns:2;column-gap:32px;counter-reset:t}
.rt-toc li{break-inside:avoid;display:flex;gap:10px;padding:5px 0;margin:0;font:400 15px/20px Inter,sans-serif;counter-increment:t}
.rt-toc li::before{content:counter(t);min-width:18px;color:#A1A1A6;font-variant-numeric:tabular-nums;position:static;width:auto;height:auto;background:none}
.rt-toc a{color:#0A5CFF;text-decoration:none}
@media (max-width:767px){.rt-toc{padding:20px;border-radius:16px}.rt-toc ol{columns:1}}

/* ---------- Схема 100 баллов (:::rating-weights) ---------- */
.rt-weights{margin:var(--rt-blk) 0 0}
.rt-weights__bar{display:flex;gap:3px;height:8px}
.rt-weights__bar span{border-radius:4px;background:#1D1D1F}
.rt-weights__bar span:nth-child(2){background:#3A3A3C}.rt-weights__bar span:nth-child(3){background:#6E6E73}
.rt-weights__bar span:nth-child(4){background:#86868B}.rt-weights__bar span:nth-child(5){background:#A1A1A6}.rt-weights__bar span:nth-child(6){background:#C7C7CC}
.rt-weights__leg{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 24px;margin:16px 0 0;padding:0;list-style:none;font:400 13px/18px Inter,sans-serif;color:#6E6E73}
.rt-weights__leg li{display:flex;align-items:baseline;gap:8px;margin:0;padding:0}
.rt-weights__leg li::before{content:"";flex:none;width:8px;height:8px;border-radius:2px;background:var(--c);align-self:center;position:static}
.rt-weights__leg .w{min-width:18px;color:#1D1D1F;font:400 15px/20px Inter,sans-serif;font-variant-numeric:tabular-nums}
@media (max-width:767px){.rt-weights__leg{grid-template-columns:repeat(2,1fr);gap:10px 16px}}

/* ---------- Заголовок критерия (### … {: .rt-crit}) ---------- */
h3.rt-crit span{font-weight:400;color:#6E6E73}

/* ---------- Сводная таблица (:::rating-table) ----------
   ПК и планшет: полная таблица, №/Агентство/Итог закреплены, остальное прокручивается.
   Телефон: список «агентство — полоса — значение», переключатель метрик (как «Все метрики» в отчёте);
   «Все критерии» открывает полную таблицу. Всё на CSS (radio/checkbox), без JS. */
.rt{margin-top:var(--rt-blk)}
h2+.rt{margin-top:var(--rt-h2t)}
.rt__m,.rt__sw-in{position:absolute;opacity:0;pointer-events:none}
.rt__chips,.rt__sw{display:none}
.rt__hint{margin:0 0 10px;text-align:right;font:400 13px/16px Inter,sans-serif;color:#A1A1A6}
.rt__wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0;
  -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent)}
.rt__t{border-collapse:separate;border-spacing:0;table-layout:fixed;width:1564px;margin:0}
.rt__t th,.rt__t td{box-sizing:border-box;padding:13px 16px 13px 0;text-align:left;vertical-align:top;font:400 15px/20px Inter,sans-serif;color:#1D1D1F;border:0;border-top:1px solid #E8E8ED;white-space:nowrap;background:none}
.rt__t thead th{border-top:0;padding:0 16px 12px 0;vertical-align:bottom;white-space:normal;font:700 13px/16px Inter,sans-serif;text-transform:uppercase;letter-spacing:.02em;color:#6E6E73}
.rt__t tbody tr:first-child>*{border-top-color:#D2D2D7}
.rt__t .c-n{border-top:0!important;color:#A1A1A6;font-variant-numeric:tabular-nums}   /* линии — от текста, не от номера */
.rt__t .c-n,.rt__t .c-ag,.rt__t .c-tot{position:sticky;z-index:2;background:#fff}
.rt__t .c-n{left:0;width:40px}
.rt__t .c-ag{left:40px;width:192px;font-weight:400}
.rt__t .c-ag a{color:#0A5CFF;text-decoration:none}
.rt__t .c-tot{left:232px;width:72px;font-weight:700;box-shadow:12px 0 12px -12px rgba(29,29,31,.16)}
.rt__t .c-s{width:128px}
.rt__t tr>:nth-child(4){width:144px;padding-left:16px}
.rt__t .c-pr{width:176px}
.rt__t .c-reg{width:300px;padding-right:24px}
.rt__t td{font-variant-numeric:tabular-nums}
.rt__sw-k{width:44px;height:26px;border-radius:13px;background:#E8E8ED;position:relative;flex:none}
.rt__sw-k::after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2)}
p.rt-note{margin:16px 0 0;font:400 13px/18px Inter,sans-serif;color:#6E6E73}

/* ред. 11 (05.11.2026): переключатель критериев и строки со шкалой — на телефоне И планшете (≤1023);
   цифры — по правому краю, шкалы — одной колонкой между названием и цифрой, одинаковой длины во всех критериях */
@media (max-width:1023px){
  .rt{--rt-bar:clamp(56px,18vw,160px);--rt-val:96px}
  .rt__chips{display:flex;gap:8px;overflow-x:auto;margin:0 calc(-1*var(--gutter));padding:0 var(--gutter);scrollbar-width:none}
  .rt__chips::-webkit-scrollbar{display:none}
  .rt__chips label{flex:none;display:flex;align-items:center;height:36px;padding:0 16px;border-radius:18px;background:#F5F5F7;font:400 15px/20px Inter,sans-serif;color:#1D1D1F;white-space:nowrap;cursor:pointer}
  #rtm2:checked~.rt__chips [for=rtm2],#rtm3:checked~.rt__chips [for=rtm3],#rtm4:checked~.rt__chips [for=rtm4],#rtm5:checked~.rt__chips [for=rtm5],
  #rtm6:checked~.rt__chips [for=rtm6],#rtm7:checked~.rt__chips [for=rtm7],#rtm8:checked~.rt__chips [for=rtm8],#rtm9:checked~.rt__chips [for=rtm9]{background:#1D1D1F;color:#fff;font-weight:700}
  .rt__hint{display:none}
  .rt__sw{display:flex;align-items:center;gap:12px;margin-top:20px;font:400 15px/20px Inter,sans-serif;color:#1D1D1F;cursor:pointer}
  .rt__sw-in:checked~.rt__sw .rt__sw-k{background:#0A5CFF}
  .rt__sw-in:checked~.rt__sw .rt__sw-k::after{transform:translateX(18px)}
  .rt__sw-in:checked~.rt__chips{display:none}

  .rt__sw-in:not(:checked)~.rt__wrap{margin-top:16px;overflow:visible;-webkit-mask-image:none;mask-image:none}
  .rt__sw-in:not(:checked)~.rt__wrap .rt__t,
  .rt__sw-in:not(:checked)~.rt__wrap tbody{display:block;width:auto}
  .rt__sw-in:not(:checked)~.rt__wrap thead{display:none}
  .rt__sw-in:not(:checked)~.rt__wrap tr{display:grid;grid-template-columns:28px minmax(0,1fr) auto;column-gap:12px;align-items:center;padding:12px 0;position:relative}
  .rt__sw-in:not(:checked)~.rt__wrap tr+tr::before{content:"";position:absolute;top:0;left:40px;right:0;height:1px;background:#E8E8ED}
  .rt__sw-in:not(:checked)~.rt__wrap tr>*{display:none;position:static;width:auto;padding:0;border:0;box-shadow:none;background:none;white-space:normal}
  .rt__sw-in:not(:checked)~.rt__wrap .c-n{display:block;font:400 15px/20px Inter,sans-serif}
  .rt__sw-in:not(:checked)~.rt__wrap .c-ag{display:block;font:400 15px/20px Inter,sans-serif}
  #rtm2:checked~.rt__sw-in:not(:checked)~.rt__wrap .k2,#rtm3:checked~.rt__sw-in:not(:checked)~.rt__wrap .k3,
  #rtm4:checked~.rt__sw-in:not(:checked)~.rt__wrap .k4,#rtm5:checked~.rt__sw-in:not(:checked)~.rt__wrap .k5,
  #rtm6:checked~.rt__sw-in:not(:checked)~.rt__wrap .k6,#rtm7:checked~.rt__sw-in:not(:checked)~.rt__wrap .k7,
  #rtm8:checked~.rt__sw-in:not(:checked)~.rt__wrap .k8{display:flex;align-items:center;justify-content:flex-end;gap:12px}
  .rt__wrap td[style]::before{content:"";flex:none;width:var(--rt-bar);height:6px;border-radius:3px;background:linear-gradient(90deg,#1D1D1F var(--p),#E8E8ED var(--p))}
  .rt__sw-in:checked~.rt__wrap td[style]::before{display:none}
  .rt__wrap td .v{flex:none;width:var(--rt-val);min-width:0;text-align:right;font:700 15px/20px Inter,sans-serif;font-variant-numeric:tabular-nums}
  .rt__sw-in:not(:checked)~.rt__wrap td .v[data-of]::after{content:" " attr(data-of);font-weight:400;color:#A1A1A6}
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .c-ag{grid-column:2/4}
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k9,
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k10{display:flex;justify-content:space-between;gap:12px;grid-column:2/4;margin-top:4px;font:400 13px/18px Inter,sans-serif;color:#6E6E73}
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k9::before,
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k10::before{content:attr(data-l)}
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k9 .v,
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .k10 .v{font:400 13px/18px Inter,sans-serif;color:#1D1D1F;min-width:0;width:auto}
  #rtm9:checked~.rt__sw-in:not(:checked)~.rt__wrap .c-n{align-self:start}
}
@media (max-width:767px){
  .rt__t .c-n{width:32px}.rt__t .c-ag{left:32px;width:150px}.rt__t .c-tot{left:182px;width:64px}
  .rt__t{width:1480px}
}

/* ---------- Карточка агентства (### … {: .rt-agency}) ---------- */
.rt-card{margin-top:var(--rt-card)}
h2+.rt-card{margin-top:20px}
.rt-card__hd{display:flex;align-items:center;gap:24px}
.rt-card__hd h3{margin:0;flex:1}
.rt-card__bar{flex:none;width:120px;height:6px;border-radius:3px;background:#E8E8ED;overflow:hidden}
.rt-card__bar i{display:block;height:100%;border-radius:3px;background:#1D1D1F}
p.rt-card__site{margin:6px 0 0;font:400 15px/20px Inter,sans-serif;color:#6E6E73}
.rt-card>p{margin:16px 0 0}
.rt-card>p.rt-card__site+p{margin-top:12px}
p.rt-card__fit{margin:20px 0 0;background:#F5F5F7;border-radius:16px;padding:16px 20px;font:400 15px/22px Inter,sans-serif;color:#1D1D1F}
@media (max-width:767px){.rt-card__hd{display:block}.rt-card__bar{display:none}p.rt-card__fit{margin-top:16px;padding:14px 16px}}

/* ---------- Источники (:::sources) ---------- */
ul.rt-src{list-style:none;columns:2;column-gap:32px;margin:16px 0 0;padding:0}
ul.rt-src>li{break-inside:avoid;padding:0;margin:0 0 12px;font:400 13px/18px Inter,sans-serif;color:#6E6E73}
ul.rt-src>li::before{display:none}
ul.rt-src strong{font-weight:400;color:#1D1D1F}
@media (max-width:767px){ul.rt-src{columns:1}}

/* ---------- gw4 (05.11.2026): кнопка Telegram не перекрывает баллы ----------
   Приёмка: на телефоне круглая кнопка «Написать в Telegram» (.tg из components.css сайта —
   position:fixed, 56×56, правый нижний угол) ложится поверх правой колонки списка рейтинга
   и закрывает баллы той строки, которая в этот момент оказалась у нижнего края экрана.
   Список на телефоне — строки-сетки (.rt__sw-in:not(:checked) ~ .rt__wrap tr), поэтому
   под кнопку попадает любая строка при прокрутке, а не какая-то одна.
   Правка: на телефоне строки списка получают правое поле шириной кнопки с запасом —
   баллы встают левее её круга и видны всегда. Разделительная линия между строками
   (tr+tr::before, right:0) проходит по краю поля, то есть во всю ширину, как было.
   Остальные ширины и режим «вся таблица» (.rt__sw-in:checked — таблица с прокруткой вбок)
   не меняются: там баллы стоят в закреплённой левой колонке и под кнопку не попадают.
   Подробности и порядок повторения — docs/LOCAL_PATCHES.md, правка gw4. */
/* ред. 11 (05.11.2026): правое поле 64 px снято — по решению заказчика цифры стоят по правому краю
   колонки текста. Кнопка Telegram может на время прокрутки перекрывать строку у нижнего края экрана,
   как любой плавающий элемент; строки под ней проходят при прокрутке. */

/* ---------- gw3 (05.11.2026): стыковка с настоящим blog.css ----------
   Пакет писал этот файл поверх реконструкции blog-base-predprosmotr.css. В настоящем
   blog.css блога (ред. 9) есть четыре правила, которых в реконструкции нет, и они
   перебивают стили рейтинга. Ниже — только возврат к тому, что задано в ТЗ §3.3.
   Подробности и порядок повторения — docs/LOCAL_PATCHES.md, правка gw3. */
.art ul.rt-tldr-points{list-style:none;margin:12px 0 0;padding:0}   /* .art ul: disc + margin-bottom */
.art ul.rt-tldr-points li{margin:8px 0 0}                           /* .art li: margin-bottom 8 */
.rt__t tbody th{text-transform:none}            /* .tbl th: названия агентств — не заглавными */
.rt__t tbody td.c-n{font-weight:400}            /* .tbl td:first-child: номер — не жирный */
.art h2+.rt-card{margin-top:20px!important}     /* .art h2 + *: H2 → первая карточка 20 */
