/*
 * Чегать — вид блоков темы и частей страницы поверх base.css. Подключён и на сайте, и в редакторе.
 * Сейчас здесь компоненты каркаса (шапка, меню, крошки, карточки, форма, подвал, cookie, встраивания); на этапе 4
 * их заменяют компоненты прототипа. Раздел на блок: node tools/new-block.js дописывает его в конец файла.
 */

/* ---------- Шапка (SiteHeader): 64 px, белая с нижней рамкой; вкладки 44 px с полосой 3 px снизу ---------- */
.chegat-header { position: relative; z-index: 60; background: var(--bg-surface); border-bottom: 1px solid var(--border); }
.chegat-header__bar { display: flex; align-items: center; gap: var(--space-1); min-height: 64px; padding-block: var(--space-3); }
.chegat-logo { display: inline-flex; align-items: center; min-height: var(--touch-min); color: var(--logo-ink); flex-shrink: 0; }
.chegat-logo__svg { display: block; }
.chegat-logo__g { fill: var(--brand-green); }
.chegat-header__logo { margin-right: 20px; }
.chegat-header__nav { display: flex; align-items: center; gap: var(--space-1); min-width: 0; }
.chegat-header__sep { width: 1px; height: 24px; margin: 0 6px; background: var(--border); flex-shrink: 0; }
.chegat-htab, .chegat-hlink {
	display: inline-flex; align-items: center; gap: 6px; height: var(--touch-min); box-sizing: border-box; flex-shrink: 0;
	padding: 3px var(--space-3) 0; border: 0; border-bottom: 3px solid transparent; border-radius: var(--radius-sm) var(--radius-sm) 0 0;
	background: transparent; color: var(--text-primary); font: inherit; font-size: var(--fs-button); font-weight: 600; text-decoration: none; white-space: nowrap; cursor: pointer;
}
.chegat-hlink { padding-inline: 10px; font-size: var(--fs-control); font-weight: 400; }
.chegat-htab:hover, .chegat-hlink:hover { color: var(--brand-primary); background: var(--bg-raised); }
.chegat-htab[aria-expanded="true"] { background: var(--brand-soft); color: var(--brand-primary); }
.chegat-htab[aria-expanded="true"] .chegat-icon:last-child { transform: rotate(180deg); }
.chegat-htab.is-current, .chegat-hlink.is-current { color: var(--brand-primary); border-bottom-color: var(--brand-primary); }
.chegat-hlink.is-current { font-weight: 600; }
.chegat-htab.is-plain { font-size: var(--fs-control); font-weight: 400; border-radius: var(--radius-sm); }
/* Точка «новое»: зелёная, пока посетитель не открыл меню (site.js хранит просмотр в chegat-seen). */
.chegat-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--brand-green); flex-shrink: 0; }
.is-seen .chegat-dot { display: none; }
.chegat-header__sections { display: flex; gap: 2px; }
.chegat-header__sections-dd { position: relative; display: block; }
.chegat-dropdown { position: absolute; top: 48px; left: 0; z-index: 2; display: flex; flex-direction: column; min-width: 200px; padding: var(--space-2); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); box-shadow: var(--shadow-lg); }
.chegat-dropdown[hidden] { display: none; }
.chegat-dropdown a { display: flex; align-items: center; min-height: var(--touch-min); padding: 0 var(--space-3); border-radius: var(--radius-sm); color: var(--text-primary); text-decoration: none; }
.chegat-dropdown a:hover { background: var(--bg-raised); }
/* Рекламное место занимает остаток строки; пока сети не подключены (этап 6), оно пустое. */
.chegat-header__ad { flex: 1; min-width: 0; display: none; justify-content: center; margin: 0 var(--space-4); }
/* Место header_inline (SiteHeader: между меню и поиском, высота 100 px) — от 1280 px, где оно помещается рядом
   с меню. Скрытое место не заполняется (site.js пропускает невидимые), поэтому показа впустую нет. */
@media (min-width: 1280px) { .chegat-header__ad { display: flex; } }
.chegat-header__ad .chegat-ad { width: 100%; max-width: 420px; min-height: 0; }
.chegat-header__ad .chegat-ad__label { display: none; }
.chegat-header__ad .chegat-ad__box { height: 100px; }
.chegat-header__tools { display: flex; align-items: center; gap: var(--space-2); margin-left: auto; }
.chegat-hicon { display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--text-primary); cursor: pointer; flex-shrink: 0; }
.chegat-hicon:hover, .chegat-hicon[aria-expanded="true"] { background: var(--bg-raised); }
.chegat-hicon.is-filled { background: var(--bg-raised); }
/* Поиск: поле на всю ширину под строкой шапки. */
.chegat-header__search { border-top: 1px solid var(--border); padding: var(--space-3) 0; }
.chegat-header__search[hidden] { display: none; }
.chegat-search { display: flex; gap: var(--space-2); }
.chegat-search input { flex: 1; min-width: 0; min-height: var(--button-primary); box-sizing: border-box; padding: 0 var(--space-4); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); color: var(--text-primary); font: inherit; font-size: var(--fs-control); }
/* Мега-меню и панель сравнений: под шапкой на всю ширину. */
.chegat-mega { position: absolute; top: 100%; left: 0; right: 0; background: var(--bg-surface); border-bottom: 1px solid var(--border); box-shadow: var(--shadow-lg); }
.chegat-mega[hidden] { display: none; }
.chegat-mega__in { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: var(--space-6); padding-block: var(--space-6); }
.chegat-mega__cats { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 2px var(--space-6); align-content: start; }
.chegat-mega__cats a { display: flex; align-items: center; gap: var(--space-2); min-height: var(--touch-min); padding: 6px var(--space-2); border-radius: var(--radius-sm); color: var(--text-primary); font-size: var(--fs-control); text-decoration: none; }
.chegat-mega__cats a:hover { background: var(--bg-raised); }
.chegat-mega__recent { display: grid; gap: var(--space-2); align-content: start; }
.chegat-mega__side { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-4); border-radius: var(--radius-md); background: var(--bg-page); align-self: start; }
.chegat-mega__head { padding: 0 var(--space-2); font-size: var(--fs-label); line-height: var(--lh-label); font-weight: 700; color: var(--text-secondary); text-transform: uppercase; }
.chegat-mega__side .chegat-mega__head { padding: 0; }
.chegat-mega__title { font-size: var(--fs-control); font-weight: 700; }
.chegat-mega__item { display: flex; align-items: center; gap: 10px; min-height: var(--touch-min); color: var(--text-primary); text-decoration: none; }
.chegat-mega__item b { display: block; font-size: var(--fs-control); font-weight: 600; }
.chegat-mega__item small { display: block; font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-mega__icon { display: block; width: 32px; height: 32px; border-radius: 8px; background: var(--border); overflow: hidden; flex-shrink: 0; }
.chegat-mega__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-mega__side .chegat-btn { margin-top: var(--space-1); min-height: var(--button-default); font-size: var(--fs-control); }
@media (max-width: 1279.98px) {
	/* Системы на узком компьютере уходят в «Разделы»: строка шапки не помещается. */
	.chegat-header__sections { display: none; }
}
@media (max-width: 1023.98px) {
	.chegat-header__bar { padding: var(--space-2) var(--space-2) var(--space-2) var(--space-4); gap: var(--space-2); }
	.chegat-header__logo { flex: 1; margin-right: 0; }
	.chegat-header__logo .chegat-logo__svg { width: 141px; height: 32px; }
	.chegat-header__tools { gap: var(--space-1); }
}

/* ---------- Мобильное меню: панель под шапкой; каталог первым (DS02) ---------- */
.chegat-mnav { border-top: 1px solid var(--border); padding: var(--space-2) var(--space-4) var(--space-4); background: var(--bg-surface); }
.chegat-mnav[hidden] { display: none; }
.chegat-mnav ul { list-style: none; margin: 0; padding: 0; display: grid; }
.chegat-mnav a { display: flex; align-items: center; min-height: var(--touch-min); padding: 0 var(--space-2); border-radius: var(--radius-sm); color: var(--text-primary); text-decoration: none; font-size: var(--fs-button); }
.chegat-mnav a.is-strong { font-weight: 600; }
.chegat-mnav a:hover { background: var(--bg-raised); }

/* ---------- Хлебные крошки (P05): 15 px, «›»; на телефоне — «‹ Родитель» ---------- */
.chegat-crumbs { font-size: var(--fs-small); line-height: var(--lh-small); color: var(--text-secondary); }
.chegat-main > .chegat-crumbs { box-sizing: border-box; max-width: var(--container); margin: 0 auto; padding: var(--space-2) var(--gutter-page) 0; }
.chegat-crumbs ol { flex-wrap: wrap; align-items: center; gap: 0 var(--space-2); margin: 0; padding: 0; list-style: none; }
.chegat-crumbs li { display: inline-flex; align-items: center; gap: var(--space-2); }
.chegat-crumbs li + li::before { content: "›"; }
.chegat-crumbs a { display: inline-flex; align-items: center; gap: var(--space-1); min-height: var(--touch-min); color: var(--text-secondary); }
.chegat-crumbs a:hover { color: var(--link-hover); }

/* ---------- Левая колонка: разделы и последние записи (P05) ---------- */
.chegat-side-nav, .chegat-latest { display: flex; flex-direction: column; gap: var(--space-1); }
.chegat-side-nav__title { padding: 0 var(--space-3) var(--space-1); font-size: var(--fs-label); line-height: var(--lh-label); font-weight: 700; color: var(--text-secondary); }
.chegat-latest .chegat-side-nav__title { padding-inline: 0; }
.chegat-side-nav a { display: flex; align-items: center; min-height: 40px; padding: var(--space-1) var(--space-3); border-radius: var(--radius-sm); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-side-nav a:hover { background: var(--bg-raised); }
.chegat-side-nav a.is-current { background: var(--brand-soft); font-weight: 600; }
.chegat-latest a { display: flex; flex-direction: column; gap: 2px; padding: 10px 0; border-top: 1px solid var(--border); color: var(--text-primary); text-decoration: none; }
.chegat-latest__meta { font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-latest__title { font-size: var(--fs-small); line-height: 1.35; font-weight: 600; }
.chegat-latest a:hover .chegat-latest__title { color: var(--link-hover); }
.chegat-latest a.chegat-more { padding-top: var(--space-2); border-top: 0; font-size: var(--fs-small); font-weight: 600; color: var(--link); text-decoration: underline; }
/* «Хотите писать для нас?» (P15, P23). */
.chegat-write-cta { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4) var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-write-cta a { font-weight: 600; }
/* Хаб «Решить проблему»: карточки тем. */
.chegat-topic__title { font-size: var(--fs-h3); line-height: var(--lh-h3); }

/* ---------- Карточки ---------- */
.chegat-cards { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-card { display: grid; gap: var(--space-2); align-content: start; padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-lg); color: var(--text-primary); text-decoration: none; box-shadow: var(--shadow-sm); }
.chegat-card:hover { border-color: var(--border-strong); }
.chegat-card.is-urgent { background: var(--warning-soft); border-color: var(--warning); }
.chegat-card__more { color: var(--link); font-weight: 600; }
.chegat-card__meta { font-size: var(--fs-label); color: var(--text-secondary); }

/* ---------- Форма заявки (Contact Form 7) ---------- */
.chegat-form .wpcf7-form { display: grid; gap: var(--space-4); max-width: 560px; }
.chegat-form label { display: grid; gap: var(--space-1); font-weight: 500; }
.chegat-form .wpcf7-acceptance label { display: flex; gap: var(--space-2); align-items: flex-start; font-weight: 400; }
.chegat-form .wpcf7-list-item { margin: 0; }
.chegat-form .wpcf7-acceptance input { margin-top: .35em; }
.chegat-form :where(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], select, textarea) { box-sizing: border-box; width: 100%; min-height: var(--button-primary); padding: var(--space-3); border: 1px solid var(--border-strong); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); font: inherit; }
.chegat-form .wpcf7-not-valid { border-color: var(--danger); }
.chegat-form .wpcf7-not-valid-tip { color: var(--danger); font-size: var(--fs-label); }
.chegat-form .chegat-hp { position: absolute; left: -9999px; }
/* Формы P16, P22, P26 (блок chegat/lead-form): чипы выбора (radio CF7), ряды по два поля, сообщение об отправке. */
.chegat-lead-form { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-lead-form .wpcf7-form { max-width: 720px; }
.chegat-lead__chips { margin: 0; padding: 0; border: 0; display: grid; gap: var(--space-2); }
.chegat-lead__chips .wpcf7-radio { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.chegat-lead__chips .wpcf7-list-item label { position: relative; display: inline-flex; align-items: center; min-height: var(--touch-min); padding: 0 var(--space-4); border: 1px solid var(--border-strong); border-radius: 999px; background: var(--bg-surface); font-weight: 400; cursor: pointer; }
.chegat-lead__chips .wpcf7-list-item input { position: absolute; opacity: 0; }
.chegat-lead__chips .wpcf7-list-item label:has(input:checked) { border-color: var(--brand-primary); background: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
.chegat-lead__chips .wpcf7-list-item label:has(input:focus-visible) { outline: 2px solid var(--link); outline-offset: 2px; }
.chegat-lead-form .chegat-cform__row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.chegat-lead-form .wpcf7-response-output { margin: 0 !important; padding: var(--space-3) var(--space-4) !important; border-radius: var(--radius-sm); }
@media (max-width: 599.98px) {
	.chegat-lead-form { padding: var(--space-4); }
	.chegat-lead-form .chegat-cform__row { grid-template-columns: 1fr; }
}
.chegat-form .wpcf7-submit { min-height: var(--button-primary); padding: 0 var(--space-8); border: 0; border-radius: var(--radius-md); background: var(--brand-primary); color: var(--on-brand); font: inherit; font-weight: 600; cursor: pointer; }

/* ---------- Подвал (страницы P): светлый; полоса доверия на подложке, колонки, подписка, документы, тема ---------- */
.chegat-footer { margin-top: var(--space-12); background: var(--bg-surface); border-top: 1px solid var(--border); color: var(--text-primary); }
.chegat-footer__trust { background: var(--bg-raised); border-bottom: 1px solid var(--border); }
.chegat-footer__trust-in { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--space-6); padding-block: var(--space-8); }
.chegat-trust { display: flex; gap: 14px; align-items: flex-start; }
.chegat-trust__icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--brand-primary); color: var(--footer-link); flex-shrink: 0; }
.chegat-trust__title { font-size: var(--fs-button); font-weight: 700; }
.chegat-trust__link { display: inline-flex; align-items: center; min-height: 32px; font-size: var(--fs-small); font-weight: 600; }
.chegat-footer__main { display: flex; flex-direction: column; gap: 28px; padding-block: var(--space-8) var(--space-6); }
.chegat-footer__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--space-6) var(--space-8); }
.chegat-footer__brand { display: flex; flex-direction: column; gap: 14px; }
.chegat-footer__authors { display: flex; align-items: center; gap: var(--space-3); min-height: var(--touch-min); color: var(--text-primary); text-decoration: none; line-height: 1.3; }
.chegat-footer__authors b { display: block; font-size: var(--fs-small); }
.chegat-footer__authors small { display: block; font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-avatars { display: flex; padding-left: 10px; }
.chegat-avatar { display: block; width: 36px; height: 36px; margin-left: -10px; border: 2px solid var(--bg-surface); border-radius: 50%; background: var(--border); overflow: hidden; box-sizing: border-box; }
.chegat-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-footer__write { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; font-size: var(--fs-small); font-weight: 600; }
.chegat-footer__col { display: flex; flex-direction: column; gap: 2px; font-size: var(--fs-small); }
.chegat-footer__col a { display: inline-flex; align-items: center; min-height: 32px; }
.chegat-footer__col-title, .chegat-footer__col a.chegat-footer__col-title { display: inline-flex; align-items: center; min-height: 36px; color: var(--text-primary); font-size: var(--fs-button); font-weight: 700; text-decoration: none; }
.chegat-footer__subscribe { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-6); padding: var(--space-4) 20px; border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-footer__subscribe p { flex: 1; min-width: 240px; margin: 0; font-size: var(--fs-control); }
.chegat-footer__subscribe .chegat-btn { min-height: var(--button-default); font-size: var(--fs-control); }
.chegat-footer__strong-link { display: inline-flex; align-items: center; min-height: var(--touch-min); font-weight: 600; }
.chegat-footer__bottom { display: flex; flex-direction: column; gap: var(--space-4); padding-top: var(--space-2); font-size: var(--fs-label); line-height: 1.5; color: var(--text-secondary); }
.chegat-footer__docs { align-self: center; display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-1); padding: var(--space-1); border-radius: 12px; background: var(--bg-raised); }
.chegat-footer__docs a, .chegat-footer__docs button { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 0; border-radius: 8px; background: none; color: var(--text-secondary); font: inherit; text-decoration: none; cursor: pointer; }
.chegat-footer__docs a:hover, .chegat-footer__docs button:hover { background: var(--bg-surface); color: var(--text-primary); }
.chegat-footer__legal { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: var(--space-3) var(--space-6); text-align: center; }
.chegat-footer__legal p { max-width: 820px; margin: 0; }
/* Переключатель темы (DS07): три состояния с подписью; на телефоне — кнопки на всю ширину. */
.chegat-theme-switch { display: inline-flex; gap: 2px; padding: 2px; border: 1px solid var(--border); border-radius: 20px; }
.chegat-theme-switch button { height: 36px; padding: 0 var(--space-3); border: 0; border-radius: 18px; background: transparent; color: var(--text-secondary); font: inherit; white-space: nowrap; cursor: pointer; }
.chegat-theme-switch button[aria-checked="true"] { background: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
@media (max-width: 1023.98px) {
	.chegat-footer__cols { grid-template-columns: 1fr; }
	.chegat-theme-switch { display: flex; width: 100%; }
	.chegat-theme-switch button { flex: 1; }
}

/* ---------- Окно cookie (до баннера согласия, этап 9) ---------- */
.chegat-cookie { position: fixed; z-index: 70; left: var(--gutter-page); right: var(--gutter-page); bottom: var(--gutter-page); max-width: 520px; padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-lg); display: grid; gap: var(--space-3); }
.chegat-cookie[hidden] { display: none; }
.chegat-cookie__row { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.chegat-cookie label { display: flex; align-items: center; gap: var(--space-2); min-height: var(--touch-min); }

/* ---------- Встраивания: превью YouTube вместо плеера (inc/embeds.php) ---------- */
.chegat-yt { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 0; border-radius: var(--radius-md); overflow: hidden; background: #000; cursor: pointer; }
.chegat-yt img { width: 100%; height: 100%; object-fit: cover; }
.chegat-yt__play { position: absolute; inset: 50% auto auto 50%; width: 68px; height: 48px; transform: translate(-50%, -50%); border-radius: 12px; background: rgba(0, 0, 0, .75); }
.chegat-yt__play::after { content: ""; position: absolute; inset: 50% auto auto 54%; transform: translate(-50%, -50%); border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff; }
.chegat-yt-frame { width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: var(--radius-md); }

/* ---------- Лента (слайдер): [data-chegat-slider] > [data-chegat-track], кнопки — site.js ---------- */
/* position: relative обязателен: иначе абсолютные потомки карточек (.screen-reader-text, бейджи) привязываются к странице,
   лента их не обрезает, и на телефоне страница растягивается до конца ленты. */
[data-chegat-track] { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px, 1fr); gap: var(--space-4); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; list-style: none; margin: 0; padding: 0; }
[data-chegat-track]::-webkit-scrollbar { display: none; }
[data-chegat-track] > * { scroll-snap-align: start; min-width: 0; }

/* ---------- Статья ---------- */
.chegat-article { display: grid; gap: var(--space-6); padding: var(--space-8) 0; }
.chegat-article :where(pre, table) { max-width: 100%; overflow-x: auto; }

/* ---------- Таблица цен (blocks/price-table) ---------- */
.chegat-price-table__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-price-table__item { display: grid; gap: var(--space-2); padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-lg); }

/* ---------- simple (blocks/simple) ---------- */
.chegat-simple__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-simple__item { display: grid; gap: var(--space-2); padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-lg); }

/* ---------- Каркас страницы: контейнер с отступом сверху, колонки — сетка chegat-grid (base.css) ---------- */
.chegat-page { padding-top: var(--space-4); }
.chegat-page .chegat-left, .chegat-page .chegat-right { align-self: stretch; }

/* ---------- Материал (P05): колонка текста, блоки через 32 px ---------- */
.chegat-article { display: flex; flex-direction: column; gap: var(--space-8); min-width: 0; }
.chegat-article > .chegat-crumbs { margin-bottom: calc(-1 * var(--space-6)); } /* в прототипе крошки, H1 и мета — одна группа через 16 px */
.chegat-ahead { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-ahead__lead { margin: 0; font-size: var(--fs-lead); line-height: var(--lh-lead); }
.chegat-ahead__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-4); font-size: var(--fs-small); color: var(--text-secondary); }
.chegat-chip { display: inline-flex; align-items: center; gap: var(--space-1); height: 28px; padding: 0 var(--space-2); border-radius: var(--radius-sm); background: var(--bg-raised); color: var(--text-primary); font-size: var(--fs-label); font-weight: 600; }
.chegat-chip.is-checked { background: var(--brand-green); color: var(--on-green); }
.chegat-summary { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-6); border-radius: var(--radius-md); background: var(--green-soft); }
.chegat-summary__title { font-size: var(--fs-label); font-weight: 700; }
.chegat-summary p { margin: 0; }

/* Оглавление: inline — свёрнутый блок до 1365 px (TocInline), side — список в левой колонке. */
.chegat-toc.is-inline { background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-toc.is-inline summary { display: flex; justify-content: space-between; align-items: center; height: var(--button-primary); padding: 0 var(--space-4); font-size: var(--fs-control); font-weight: 600; cursor: pointer; list-style: none; }
.chegat-toc.is-inline summary::-webkit-details-marker { display: none; }
.chegat-toc.is-inline[open] summary .chegat-icon { transform: rotate(180deg); }
.chegat-toc.is-inline nav { display: flex; flex-direction: column; gap: 2px; padding: var(--space-2); border-top: 1px solid var(--border); }
.chegat-toc a { display: flex; align-items: center; gap: var(--space-3); min-height: var(--touch-min); box-sizing: border-box; padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); color: var(--text-primary); font-size: var(--fs-control); line-height: 1.35; text-decoration: none; }
.chegat-toc a:hover { background: var(--bg-raised); }
.chegat-toc__n { width: 24px; flex-shrink: 0; font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-toc.is-side { display: flex; flex-direction: column; gap: var(--space-1); padding-top: var(--space-4); border-top: 1px solid var(--border); }
.chegat-toc.is-side a { font-size: var(--fs-small); padding-left: 9px; }
.chegat-toc.is-side .chegat-toc__n { display: none; }

/* Программа для задачи: после текста (wide) и в правой колонке (side). */
.chegat-pteaser { display: flex; gap: var(--space-4); padding: var(--space-4); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-primary); text-decoration: none; }
.chegat-pteaser.is-wide { align-items: center; flex-wrap: wrap; }
.chegat-pteaser.is-side { flex-direction: column; gap: var(--space-1); }
.chegat-pteaser.is-side:hover { border-color: var(--border-strong); }
.chegat-pteaser__icon { display: block; width: 56px; height: 56px; border-radius: 12px; background: var(--border); overflow: hidden; flex-shrink: 0; }
.chegat-pteaser__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-pteaser__body { flex: 1 1 240px; display: flex; flex-direction: column; gap: 2px; }
.chegat-pteaser__kind { font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-pteaser__name { font-size: var(--fs-lead); font-weight: 700; }
.chegat-pteaser.is-side .chegat-pteaser__name { font-size: var(--fs-body); }
.chegat-pteaser__more { font-size: var(--fs-small); font-weight: 600; color: var(--link); }

/* «Следующий шаг», «Другие новости»: карточки; «Ещё статьи» — список (как «Последние записи»). */
.chegat-related.is-cards { display: flex; flex-direction: column; gap: var(--space-3); }
.chegat-related__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-4); }
.chegat-rcard { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-primary); text-decoration: none; }
.chegat-rcard:hover { border-color: var(--border-strong); }
.chegat-rcard__kind { font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-rcard__title { font-size: var(--fs-body); line-height: 1.35; font-weight: 700; }

/* Блок автора, «Помогло?», «Не помогло?». */
.chegat-author-box { display: flex; gap: var(--space-4); align-items: flex-start; padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); font-size: var(--fs-control); }
.chegat-author-box .chegat-stack-0 { gap: var(--space-1); }
.chegat-author-box__photo { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: var(--border); color: var(--text-secondary); font-weight: 700; overflow: hidden; flex-shrink: 0; }
.chegat-author-box__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-author-box__name { color: var(--text-primary); font-size: var(--fs-body); font-weight: 700; }
.chegat-author-box__muted { color: var(--text-secondary); }
/* «Помогло?» вариант A: панели по data-state (ask · thanks · why · sent), переключатели — aria-pressed. */
.chegat-feedback { display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-4) var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-feedback__main { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); }
.chegat-feedback__q { font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 700; }
.chegat-feedback__vote { display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--button-primary); padding: 0 var(--space-4); border: 1px solid var(--border-strong); border-radius: 999px; background: var(--bg-surface); color: var(--text-primary); font: inherit; font-size: var(--fs-control); font-weight: 700; cursor: pointer; }
.chegat-feedback__vote[aria-pressed="true"] { border-color: var(--brand-primary); background: var(--brand-primary); color: var(--on-brand); }
.chegat-feedback__vote[aria-pressed="true"] path { fill: currentColor; }
.chegat-feedback__panel { display: none; flex-direction: column; align-items: flex-start; gap: var(--space-2); padding-top: var(--space-4); border-top: 1px solid var(--border); }
.chegat-feedback[data-state="thanks"] .is-thanks, .chegat-feedback[data-state="why"] .is-why, .chegat-feedback[data-state="sent"] .is-sent { display: flex; }
.chegat-feedback .is-why { align-items: stretch; gap: var(--space-3); }
.chegat-chip-btn { min-height: var(--touch-min); padding: 0 var(--space-4); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); color: var(--text-primary); font: inherit; font-size: var(--fs-control); cursor: pointer; }
.chegat-chip-btn[aria-pressed="true"] { border: 2px solid var(--brand-primary); background: var(--brand-soft); color: var(--brand-primary); font-weight: 600; }
.chegat-chip-btn[aria-pressed="true"]::before { content: "✓ "; }
.chegat-link-btn { padding: 0; min-height: var(--touch-min); border: 0; background: none; color: var(--link); font: inherit; font-weight: 600; text-decoration: underline; cursor: pointer; }
.chegat-feedback__err { color: var(--danger); font-weight: 600; }
.chegat-help-card { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-4); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-help-card__title { font-size: var(--fs-control); font-weight: 700; }
.chegat-help-card a { font-size: var(--fs-small); font-weight: 600; text-decoration: none; }

/* Комментарии (блок chegat/comments): ветки с отступом, «Автор» — тёмный кружок, форма свёрнута в кнопку. */
.chegat-cmts { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-cmts__list { display: flex; flex-direction: column; }
.chegat-cmt { display: flex; gap: var(--space-3); padding: var(--space-4) 0; border-top: 1px solid var(--border); }
.chegat-cmt.is-reply { margin-left: 52px; }
.chegat-cmt__ava { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--bg-raised); color: var(--text-primary); font-size: var(--fs-label); font-weight: 700; }
.chegat-cmt.is-author .chegat-cmt__ava { background: var(--brand-primary); color: var(--on-brand); }
.chegat-cmt__body { display: flex; flex-direction: column; gap: var(--space-1); min-width: 0; flex: 1; }
.chegat-cmt__head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-cmt__text p { margin: 0 0 var(--space-2); overflow-wrap: anywhere; }
.chegat-cmt__actions { display: flex; align-items: center; gap: var(--space-2); }
.chegat-cmt__vote { display: inline-flex; align-items: center; gap: 6px; min-height: var(--touch-min); padding: 0 var(--space-2); border: 0; border-radius: var(--radius-sm); background: none; color: var(--text-secondary); font: inherit; font-size: var(--fs-small); cursor: pointer; }
.chegat-cmt__vote[aria-pressed="true"] { color: var(--text-primary); font-weight: 700; }
.chegat-cmt__vote[aria-pressed="true"] path { fill: currentColor; }
.chegat-cmt__reply { display: inline-flex; align-items: center; min-height: var(--touch-min); padding: 0 var(--space-2); font-size: var(--fs-small); font-weight: 600; text-decoration: none; }
.chegat-cform { display: none; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-cform.is-open, .chegat-cform:target { display: flex; }
.chegat-cform__row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.chegat-cform__row > div { display: flex; flex-direction: column; gap: var(--space-1); }
.chegat-cform__err { color: var(--danger); font-weight: 600; }
.chegat-cmt .chegat-cform { margin-top: var(--space-2); }
.chegat-check { display: flex; align-items: flex-start; gap: var(--space-2); font-size: var(--fs-small); }
.chegat-check input { width: 20px; height: 20px; margin: 2px 0 0; flex: none; }
.chegat-cmts__open[hidden], .chegat-cmts__sent[hidden] { display: none; }
@media (max-width: 599.98px) {
	.chegat-cmt.is-reply { margin-left: var(--space-6); }
	.chegat-cform__row { grid-template-columns: 1fr; }
}

@media (max-width: 1023.98px) {
	.chegat-summary, .chegat-author-box { padding: var(--space-4); }
	.chegat-feedback { padding: var(--space-4); }
}

/* ---------- Программа и сервис (P11, P12): галерея слева, первый экран справа; до 1023 — галерея ниже ---------- */
.chegat-phero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.chegat-phero-grid > :only-child { grid-column: 1 / -1; }
.chegat-phero { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-phero__head { display: flex; gap: var(--space-4); align-items: center; }
.chegat-phero__head .chegat-stack-0 { gap: var(--space-1); justify-items: start; }
.chegat-phero__icon { display: block; width: 64px; height: 64px; border-radius: var(--radius-lg); background: var(--border); overflow: hidden; flex-shrink: 0; }
.chegat-phero__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-phero__title { margin: 0; font-size: var(--fs-h1); line-height: var(--lh-h1); }
.chegat-phero__lead { margin: 0; font-size: var(--fs-lead); line-height: var(--lh-lead); }
.chegat-phero__rating { display: flex; align-items: center; gap: var(--space-2); min-height: 32px; font-size: var(--fs-small); color: var(--text-primary); text-decoration: none; }
.chegat-phero__rating span:last-child { color: var(--link); text-decoration: underline; }
.chegat-phero__rating.is-few { color: var(--link); }
.chegat-stars { color: var(--gold); font-size: 18px; letter-spacing: 1px; }
.chegat-phero__checked { display: flex; align-items: center; gap: 6px; font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-phero__checked .chegat-icon { color: var(--success); }
.chegat-phero__actions { display: flex; flex-direction: column; gap: var(--space-2); padding-top: var(--space-2); }
.chegat-phero__alt { align-self: center; display: inline-flex; align-items: center; min-height: 32px; font-size: var(--fs-small); }
.chegat-phero__info { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-2) var(--space-3); margin: var(--space-2) 0 0; padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); font-size: var(--fs-label); }
.chegat-phero__info dt { color: var(--text-secondary); }
.chegat-phero__info dd { margin: 0; font-weight: 600; }
.chegat-badges { display: flex; flex-wrap: wrap; gap: 6px; }

/* Галерея: место под снимок зарезервировано (16:10), миниатюры — лента. */
.chegat-gallery { display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-gallery__main { margin: 0; display: grid; gap: var(--space-2); }
.chegat-gallery__main img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: contain; background: var(--bg-raised); border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-gallery__main figcaption { font-size: var(--fs-small); color: var(--text-secondary); }
.chegat-gallery__thumbs { display: flex; gap: var(--space-2); overflow-x: auto; }
.chegat-gallery__thumbs a { display: block; width: 96px; height: 64px; border: 1px solid var(--border); border-radius: var(--radius-sm); overflow: hidden; flex-shrink: 0; }
.chegat-gallery__thumbs a[aria-current="true"] { border: 2px solid var(--brand-primary); }
.chegat-gallery__thumbs img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* Характеристики и версии. */
.chegat-specs, .chegat-versions, .chegat-plinks { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-specs dl { display: grid; margin: 0; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); overflow: hidden; }
.chegat-specs dl > div { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: var(--space-4); padding: var(--space-3) var(--space-4); border-top: 1px solid var(--border); }
.chegat-specs dl > div:first-child { border-top: 0; }
.chegat-specs dt { color: var(--text-secondary); }
.chegat-specs dd { margin: 0; }
.chegat-versions ul { list-style: none; margin: 0; padding: 0; display: grid; }
.chegat-versions li { display: grid; grid-template-columns: 96px 160px minmax(0, 1fr); gap: var(--space-3); padding: var(--space-3) 0; border-top: 1px solid var(--border); }
.chegat-versions__v { font-weight: 700; }
.chegat-versions summary { min-height: var(--touch-min); display: flex; align-items: center; color: var(--link); cursor: pointer; }

/* Сетка карточек: каталог (3 колонки, до 1365 — 2, до 1023 — 1), альтернативы. */
.chegat-cards-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-pcard { display: flex; flex-direction: column; gap: var(--space-2); height: 100%; box-sizing: border-box; padding: var(--space-4); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-primary); text-decoration: none; }
.chegat-pcard:hover { border-color: var(--border-strong); box-shadow: var(--shadow-sm); }
.chegat-pcard__top { display: flex; align-items: center; gap: var(--space-3); }
.chegat-pcard__icon { display: block; width: 48px; height: 48px; border-radius: var(--radius-md); background: var(--border); overflow: hidden; flex-shrink: 0; }
.chegat-pcard__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-pcard__name { font-size: var(--fs-body); font-weight: 700; line-height: 1.3; }
.chegat-pcard__text { font-size: var(--fs-small); line-height: var(--lh-small); color: var(--text-secondary); }
.chegat-pcard__meta { margin-top: auto; font-size: var(--fs-label); color: var(--text-secondary); }

/* Каталог P10: заголовок и вкладки, фильтры слева, пагинация, пустой результат. */
.chegat-cathead { display: flex; flex-direction: column; gap: var(--space-3); }
.chegat-tabs { display: flex; gap: var(--space-1); border-bottom: 1px solid var(--border); }
.chegat-tabs a { display: inline-flex; align-items: center; height: var(--touch-min); padding: 0 var(--space-4); border-bottom: 3px solid transparent; color: var(--text-primary); font-size: var(--fs-button); font-weight: 600; text-decoration: none; }
.chegat-tabs a.is-current { color: var(--brand-primary); border-bottom-color: var(--brand-primary); }
.chegat-filters { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-filters__group { display: flex; flex-direction: column; gap: 2px; }
.chegat-filters__link { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); min-height: 40px; padding: var(--space-1) var(--space-3); border-radius: var(--radius-sm); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-filters__link:hover { background: var(--bg-raised); }
.chegat-filters__link.is-current { background: var(--brand-soft); font-weight: 600; }
.chegat-filters__n { color: var(--text-secondary); font-weight: 400; }
.chegat-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.chegat-fchip { display: inline-flex; align-items: center; min-height: var(--touch-min); padding: 0 var(--space-3) 0 var(--space-4); border: 1px solid var(--brand-primary); border-radius: var(--radius-pill); background: var(--brand-soft); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-catalog { display: flex; flex-direction: column; gap: var(--space-6); min-width: 0; }
.chegat-pagination { display: flex; flex-wrap: wrap; gap: var(--space-1); align-items: center; }
.chegat-pagination a, .chegat-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: var(--touch-min); height: var(--touch-min); padding: 0 var(--space-3); box-sizing: border-box; border: 1px solid var(--border); border-radius: var(--radius-sm); color: var(--text-primary); text-decoration: none; }
.chegat-pagination .current { background: var(--brand-primary); border-color: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
.chegat-empty { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-6); border: 1px dashed var(--border-strong); border-radius: var(--radius-md); }
.chegat-empty__title { margin: 0; font-size: var(--fs-body); font-weight: 600; }

@media (max-width: 1365.98px) {
	.chegat-cards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1023.98px) {
	.chegat-phero-grid { grid-template-columns: minmax(0, 1fr); }
	.chegat-phero-grid .chegat-gallery { order: 2; }
	.chegat-phero__info { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.chegat-specs dl > div { grid-template-columns: 120px minmax(0, 1fr); }
	.chegat-versions li { grid-template-columns: 80px minmax(0, 1fr); }
	.chegat-versions li > :last-child { grid-column: 1 / -1; }
	.chegat-cards-grid { grid-template-columns: minmax(0, 1fr); }
	.chegat-filters { display: none; } /* до модуля каталога (этап 6) фильтры на телефоне — полосой чипов */
}

/* ---------- Ленты и списки (P01–P04, P07, P13, P15, P18, P19) ---------- */
.chegat-lhead { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-lhead .chegat-lead { max-width: 820px; margin: 0; }
.chegat-tchip { display: inline-flex; align-items: center; gap: 6px; min-height: var(--touch-min); padding: 0 var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-pill); background: var(--bg-surface); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; white-space: nowrap; }
.chegat-tchip span { color: var(--text-secondary); font-size: var(--fs-label); }
.chegat-tchip:hover { border-color: var(--border-strong); }
.chegat-fmt { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.chegat-fmt__tab { display: inline-flex; align-items: center; gap: 6px; height: var(--touch-min); padding: 0 14px; border: 1px solid var(--border-strong); border-radius: var(--radius-pill); color: var(--text-primary); font-size: var(--fs-control); text-decoration: none; white-space: nowrap; }
.chegat-fmt__tab span { opacity: .8; }
.chegat-fmt__tab.is-current { background: var(--brand-primary); border-color: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
.chegat-feed { display: flex; flex-direction: column; gap: var(--space-6); min-width: 0; }
.chegat-alist { display: flex; flex-direction: column; gap: var(--space-3); margin: 0; padding: 0; list-style: none; }
.chegat-acard { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-6); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-primary); text-decoration: none; height: 100%; box-sizing: border-box; }
.chegat-acard:hover { border-color: var(--border-strong); }
.chegat-acard__meta { font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-acard__title { font-size: var(--fs-h3); line-height: var(--lh-h3); font-weight: 700; }
.chegat-acard__text { font-size: var(--fs-small); line-height: var(--lh-small); color: var(--text-secondary); }
.chegat-acard__author { font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-pinned { display: flex; flex-direction: column; gap: var(--space-2); align-items: flex-start; }
.chegat-pinned > .chegat-acard { align-self: stretch; border-color: var(--brand-primary); }
.chegat-problems { display: flex; flex-direction: column; gap: var(--space-8); min-width: 0; }
.chegat-problems details summary { min-height: var(--touch-min); display: flex; align-items: center; color: var(--link); cursor: pointer; }

/* Главная P01: первый экран с поиском, частые задачи (6 · на телефоне 4), колонки. */
/* Первый экран P01: заголовок, вступление и чипы популярных программ — без рамки, на фоне страницы. */
.chegat-hhero { display: flex; flex-direction: column; gap: var(--space-4); padding-block: var(--space-4) var(--space-2); }
.chegat-hhero h1 { margin: 0; }
.chegat-hhero .chegat-lead { margin: 0; max-width: 640px; }
.chegat-hhero .chegat-chips { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-hhero__all { margin-left: var(--space-2); font-weight: 600; }
/* Подборки на главной: карточка подборки, строки позиций, чипы сравнений, плитки «Другие подборки». */
.chegat-home-roundups { display: flex; flex-direction: column; gap: var(--space-6); }
.chegat-hbox { display: flex; flex-direction: column; padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-hbox__head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-4); padding-bottom: var(--space-4); }
.chegat-hbox__head h2 { margin: 0; }
.chegat-hbox__head > a { flex: none; font-size: var(--fs-small); font-weight: 600; }
.chegat-hbox__rows { margin: 0; padding: 0; list-style: none; }
.chegat-hrow { display: grid; grid-template-columns: 24px 40px minmax(0, 1fr) auto; align-items: center; gap: var(--space-4); padding: var(--space-3) 0; border-top: 1px solid var(--border); }
.chegat-hrow__n { font-weight: 600; text-align: center; color: var(--text-secondary); }
.chegat-hrow__icon img, .chegat-hrow__icon svg { display: block; width: 40px; height: 40px; border-radius: var(--radius-sm); }
.chegat-hrow__body { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-width: 0; }
.chegat-hrow__name { font-weight: 700; color: var(--text-primary); text-decoration: none; }
.chegat-hrow__name:hover { text-decoration: underline; }
.chegat-hrow__why { font-size: var(--fs-small); line-height: var(--lh-small); }
.chegat-hrow__body .chegat-badges { margin-top: var(--space-1); }
.chegat-hbox__cmp { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding-top: var(--space-4); border-top: 1px solid var(--border); font-size: var(--fs-small); }
.chegat-hbox__cmp > a:last-child:not(.chegat-tchip) { margin-left: var(--space-2); font-weight: 600; }
.chegat-hmore { gap: var(--space-2); }
.chegat-hmore__tile { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-hmore__tile:hover { border-color: var(--border-strong); }
@media (max-width: 599.98px) {
	.chegat-hbox { padding: var(--space-4); }
	.chegat-hrow { grid-template-columns: 20px 40px minmax(0, 1fr); }
	.chegat-hrow__btn { grid-column: 3; justify-self: start; }
}
/* «Последние публикации» P01: карточки по типам. */
.chegat-h4 { font-size: var(--fs-body); line-height: 1.3; font-weight: 700; }
.chegat-home-latest .chegat-g3, .chegat-home-latest .chegat-g2e { align-items: start; }
.chegat-lcard { display: flex; flex-direction: column; padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-lcard__head { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-3); padding-bottom: var(--space-3); }
.chegat-lcard__head h3 { margin: 0; }
.chegat-lcard__head a { font-size: var(--fs-small); font-weight: 600; }
.chegat-lcard__item { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3) 0; border-top: 1px solid var(--border); color: var(--text-primary); text-decoration: none; }
.chegat-lcard__item b { font-size: var(--fs-small); line-height: var(--lh-small); font-weight: 600; }
.chegat-lcard__item:hover b { color: var(--link-hover); }
.chegat-search.is-hero input { min-height: 56px; font-size: var(--fs-body); }
.chegat-search.is-hero .chegat-btn { min-height: 56px; }
.chegat-tasks { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--space-4); }
.chegat-task { display: flex; align-items: center; min-height: 64px; padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-page); color: var(--text-primary); font-size: var(--fs-small); font-weight: 600; line-height: 1.3; text-decoration: none; }
.chegat-task:hover { border-color: var(--border-strong); }
.chegat-hcols { display: grid; grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: var(--space-6); }
.chegat-hcol { display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-hcol__item { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3) 0; border-top: 1px solid var(--border); color: var(--text-primary); text-decoration: none; }
.chegat-hcol__item b { font-size: var(--fs-control); font-weight: 600; }
.chegat-hcol__item small { font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-hcol__item:hover b { color: var(--link-hover); }
.chegat-hcol__more { font-size: var(--fs-small); font-weight: 600; text-decoration: none; }

/* Авторы P15, P23; документы P18. */
.chegat-authors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-authorc { display: flex; gap: var(--space-4); align-items: center; padding: var(--space-4); background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); color: var(--text-primary); text-decoration: none; }
.chegat-authorc b { font-size: var(--fs-body); }
.chegat-aprofile { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: var(--space-8); align-items: start; }
.chegat-aprofile__photo { display: flex; align-items: center; justify-content: center; width: 160px; height: 160px; border-radius: 50%; background: var(--border); color: var(--text-secondary); font-size: 48px; font-weight: 700; overflow: hidden; }
.chegat-aprofile__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-aprofile h1 { margin: 0; }
.chegat-docrev { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-docrev__list summary { min-height: var(--touch-min); display: flex; align-items: center; color: var(--link); cursor: pointer; }
.chegat-docrev__list ul { margin: 0; padding-left: var(--space-6); display: grid; gap: var(--space-2); }

@media (max-width: 1365.98px) {
	.chegat-tasks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1023.98px) {
	.chegat-acard { padding: var(--space-4); }
	.chegat-hhero { padding: var(--space-4); }
	.chegat-tasks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
	.chegat-task.is-extra { display: none; }
	.chegat-hcols { grid-template-columns: minmax(0, 1fr); }
	.chegat-authors { grid-template-columns: minmax(0, 1fr); }
	.chegat-aprofile { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
	.chegat-aprofile__photo { width: 96px; height: 96px; font-size: 32px; }
}

/* ---------- Блоки текста материала (Blocks прототипа): шаги, врезки, плюсы и минусы, видео ---------- */
/* Шаг — H2 со стилем «Шаг»: номер ставит счётчик, заголовок попадает в оглавление. Итоговый — зелёная галочка. */
.chegat-prose { counter-reset: chegat-step; }
.chegat-prose .is-style-step, .chegat-prose .is-style-step-done, .is-style-step, .is-style-step-done { position: relative; padding-left: 52px; min-height: 36px; }
.is-style-step { counter-increment: chegat-step; }
.is-style-step::before, .is-style-step-done::before { position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; font-size: var(--fs-control); font-weight: 700; }
.is-style-step::before { content: counter(chegat-step); background: var(--brand-primary); color: var(--on-brand); }
.is-style-step-done::before { content: "✓"; background: var(--brand-green); color: var(--on-green); }
.chegat-note { display: flex; gap: var(--space-3); padding: var(--space-4); border-radius: var(--radius-md); background: var(--brand-soft); border-left: 4px solid var(--link); }
.chegat-note.is-warn { background: var(--warning-soft); border-left-color: var(--warning); }
.chegat-note.is-tip { background: var(--green-soft); border-left-color: var(--success); }
.chegat-note__icon { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--link); color: var(--on-brand); font-size: var(--fs-label); font-weight: 700; flex-shrink: 0; }
.chegat-note.is-warn .chegat-note__icon { background: var(--warning); }
.chegat-note.is-tip .chegat-note__icon { background: var(--success); }
.chegat-note.is-warn .chegat-note__title { color: var(--warning-text); }
.chegat-note .chegat-stack-0 { gap: var(--space-1); }
.chegat-note p { margin: 0; }
.chegat-pc .chegat-pc__col { display: grid; gap: var(--space-2); align-content: start; padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-pc .chegat-pc__col ul:not(.is-style-facts) { padding-left: var(--space-6); }
.chegat-video { margin: 0; display: grid; gap: var(--space-2); }
.chegat-video__cover { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: var(--radius-md); overflow: hidden; background: var(--footer-bg); color: var(--on-brand); text-decoration: none; }
.chegat-video__cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.chegat-video__play { position: absolute; inset: 50% auto auto 50%; width: 68px; height: 48px; transform: translate(-50%, -50%); border-radius: 12px; background: rgba(0, 0, 0, .7); }
.chegat-video__play::after { content: ""; position: absolute; inset: 50% auto auto 54%; transform: translate(-50%, -50%); border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff; }
.chegat-video__title { position: absolute; left: var(--space-4); right: var(--space-4); bottom: var(--space-3); font-weight: 600; color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); }
.chegat-video figcaption { font-size: var(--fs-small); color: var(--text-secondary); }
.chegat-prose .chegat-pcard { max-width: 520px; }
.chegat-note.is-danger { background: var(--danger-soft); border-left-color: var(--danger); }
.chegat-note.is-danger .chegat-note__icon { background: var(--danger); }
.chegat-note.is-danger .chegat-note__title { color: var(--danger); }

/* ---------- Скачивание D01 / D02: состояния по data-state (D01S) ---------- */
.chegat-dl { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-dl__title { margin: 0; font-size: var(--fs-h1); line-height: var(--lh-h1); }
.chegat-dl__head { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
.chegat-dl__head h2 { margin: 0; }
.chegat-dl__os { display: inline-flex; align-items: center; gap: 6px; min-height: var(--touch-min); padding: 0 var(--space-4); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); color: var(--text-primary); font-size: var(--fs-control); text-decoration: none; }
.chegat-dl__os[aria-checked="true"] { border: 2px solid var(--brand-primary); background: var(--brand-soft); color: var(--brand-primary); font-weight: 600; }
.chegat-dl__os[aria-checked="true"]::before { content: "✓"; }
.chegat-dl__status > div { display: none; flex-direction: column; gap: var(--space-1); }
.chegat-dl[data-state="waiting"] .chegat-dl__wait,
.chegat-dl[data-state="ready"] .chegat-dl__ready,
.chegat-dl[data-state="opened"] .chegat-dl__opened,
.chegat-dl[data-state="nosource"] .chegat-dl__none { display: flex; }
.chegat-dl__choose { display: none; color: var(--warning-text); }
.chegat-dl[data-state="unknown"] .chegat-dl__choose { display: inline; }
.chegat-dl__bar { display: block; height: 6px; border-radius: 3px; background: var(--bg-raised); overflow: hidden; }
.chegat-dl__bar > span { display: block; height: 100%; width: 0; background: var(--brand-primary); transition: width 1s linear; }
.chegat-dl__sources { display: grid; gap: var(--space-3); }
.chegat-dl[data-state="unknown"] .chegat-dl__sources, .chegat-dl[data-state="nosource"] .chegat-dl__sources { display: none; }
.chegat-dl[data-state="waiting"] .chegat-dl__source a { background: var(--border); color: var(--text-secondary); pointer-events: none; }
.chegat-dl__source { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-dl__source.is-official { border-color: var(--brand-primary); }
/* Кнопка источника на узком экране — на всю ширину карточки и с переносом, иначе nowrap кнопки раздвигает сетку. */
.chegat-dl__source { min-width: 0; }
@media (max-width: 599.98px) {
	.chegat-dl__source .chegat-btn { width: 100%; white-space: normal; justify-content: center; }
}
/* D02: «‹ Программа», иконка и строка версии, ожидание в рамке, «Как установить» карточкой. */
.chegat-dl__back { display: inline-flex; align-items: center; gap: 4px; align-self: flex-start; font-size: var(--fs-small); color: var(--link); }
.chegat-dl__hero { display: flex; align-items: center; gap: var(--space-4); }
.chegat-dl__icon { flex: none; width: 56px; height: 56px; border-radius: var(--radius-md); }
.chegat-dl.is-page .chegat-dl__status { padding: var(--space-4) var(--space-6); border: 1.5px solid var(--text-primary); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-dl.is-page .chegat-dl__similar.is-nosource-only { display: none; }
.chegat-dl.is-page[data-state="nosource"] .chegat-dl__similar.is-nosource-only { display: grid; } /* стопка chegat-stack-8: flex ставил ссылки в ряд и выталкивал страницу вбок на 360 px */
.chegat-dl__howto { padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-dl__howto ol { margin: 0; padding-left: var(--space-6); display: grid; gap: var(--space-2); }
.chegat-dl__howto .chegat-row { gap: var(--space-4); margin: 0; }
.chegat-dl__similar a { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3) 0; border-top: 1px solid var(--border); color: var(--text-primary); text-decoration: none; }
.chegat-dl-dialog { box-sizing: border-box; width: min(640px, calc(100vw - 2 * var(--gutter-page))); max-height: 90vh; padding: var(--space-6); border: 0; border-radius: var(--radius-lg); background: var(--bg-page); color: var(--text-primary); box-shadow: var(--shadow-lg); }
.chegat-dl-dialog::backdrop { background: rgba(17, 24, 39, .55); }
@media (max-width: 1023.98px) {
	.chegat-dl-dialog { padding: var(--space-4); }
	.chegat-dl__title { font-size: var(--fs-h2); line-height: var(--lh-h2); }
}
@media (prefers-reduced-motion: reduce) {
	.chegat-dl__bar > span { transition: none; }
}

/* ---------- Рекламные места (плагин: inc/ads.php) ----------
   Резерв высоты по устройству — из реестра мест (--ad-h компьютер, --ad-h-m телефон) плюс строка подписи:
   место не сдвигает текст, когда приходит реклама (CLS < 0,1). Отказ сети — место схлопывается целиком. */
.chegat-ad { display: flex; flex-direction: column; gap: 4px; min-height: calc(var(--ad-h-m) + 20px); }
.chegat-ad__label { font-size: var(--fs-micro); line-height: var(--lh-micro); color: var(--text-secondary); }
.chegat-ad__label a { color: inherit; }
.chegat-ad__box { flex: 1; display: flex; justify-content: center; align-items: center; min-width: 0; border-radius: var(--radius-md); background: var(--bg-raised); overflow: hidden; }
/* 1 · запрос (DS04): высота зарезервирована, штриховая подложка — видно, что здесь будет блок, текст не прыгает. */
.chegat-ad:not(.is-filled):not(.is-alt) .chegat-ad__box { background: repeating-linear-gradient(135deg, var(--bg-raised) 0 10px, var(--bg-surface) 10px 20px); border: 1px dashed var(--border); }
.chegat-ad.is-filled .chegat-ad__box, .chegat-ad.is-alt .chegat-ad__box { background: none; }
/* Креативы сети не перекрашиваются (Dark): в тёмной теме подложка слота остаётся светлой рамкой. */
.chegat-ad.is-rsya .chegat-ad__box { background: #FFFFFF; border: 1px solid var(--border); }
/* 3–4 · нет подбора или блокировщик, место на экране — полезное продолжение вместо рекламы, без подписи «Реклама». */
.chegat-ad.is-alt .chegat-ad__label { visibility: hidden; }
.chegat-ad__alt { display: flex; flex-direction: column; justify-content: center; gap: var(--space-1); width: 100%; height: 100%; padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-raised); color: var(--text-primary); text-decoration: none; }
.chegat-ad__alt b::after { content: " →"; }
@media (min-width: 1024px) { .chegat-ad.is-alt[style*="--ad-h:90px"] .chegat-ad__alt { flex-direction: row; align-items: center; justify-content: flex-start; gap: var(--space-4); padding-block: var(--space-2); } }
.chegat-ad__alt:hover b { text-decoration: underline; }
.chegat-ad.is-empty, .chegat-ad[hidden] { display: none !important; }
.chegat-ad.is-desktop, .chegat-ad.is-wide { display: none; }
@media (min-width: 1024px) {
	.chegat-ad { min-height: calc(var(--ad-h) + 20px); }
	.chegat-ad.is-desktop { display: flex; }
	.chegat-ad.is-mobile { display: none; }
}
@media (min-width: 1366px) {
	.chegat-ad.is-wide { display: flex; }
}
/* Своя реклама: из данных страницы, без сторонних скриптов; ссылка rel="sponsored noopener". */
.chegat-ad__house { display: flex; align-items: center; gap: var(--space-4); width: 100%; height: 100%; padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-ad__house img { flex: none; width: 96px; height: 96px; object-fit: cover; border-radius: var(--radius-sm); }
.chegat-ad__body { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-1); min-width: 0; }
.chegat-ad__house.is-banner { flex-direction: row !important; align-items: center; max-height: max(var(--ad-h), var(--ad-h-m)); padding: var(--space-2) var(--space-4); }
.chegat-ad__house.is-banner img { width: 56px; height: 56px; }
.chegat-ad__house.is-banner .chegat-ad__body { flex: 1; flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: var(--space-4); overflow: hidden; }
.chegat-ad__house.is-banner .chegat-ad__body .chegat-meta { flex: 1 1 280px; }
.chegat-footer__ad { padding-block: var(--space-6); }
.chegat-ad.is-desktop .chegat-ad__house, .chegat-ad.is-wide .chegat-ad__house { flex-direction: column; justify-content: center; align-items: flex-start; }

/* ---------- Отзывы (блок chegat/reviews): сводка, форма по data-state, список ---------- */
.chegat-rv { display: flex; flex-direction: column; gap: var(--space-4); scroll-margin-top: var(--space-8); }
.chegat-rv__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); }
.chegat-rv__summary { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--space-6); padding: var(--space-4) var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-rv__avg, .chegat-rv__few { display: flex; flex-direction: column; gap: var(--space-1); }
.chegat-rv__few { grid-column: 1 / -1; }
.chegat-rv__num { font-size: var(--fs-h1); line-height: var(--lh-h1); }
.chegat-rv-stars i { font-style: normal; color: var(--border-strong); }
.chegat-rv-stars i.is-on { color: var(--gold); }
.chegat-rv__dist { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; list-style: none; font-size: var(--fs-small); }
.chegat-rv__dist li { display: grid; grid-template-columns: 36px 1fr 40px; align-items: center; gap: var(--space-2); }
.chegat-rv__bar { display: block; height: 8px; border-radius: 4px; background: var(--bg-surface); overflow: hidden; }
.chegat-rv__bar > span { display: block; height: 100%; background: var(--gold); }
.chegat-rv__write { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-rv__ask { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); }
.chegat-rv-pick { display: inline-flex; }
.chegat-rv-pick a { display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); color: var(--border-strong); font-size: 28px; text-decoration: none; }
.chegat-rv-pick:hover a { color: var(--gold); }
.chegat-rv-pick a:hover ~ a { color: var(--border-strong); }
.chegat-rv__form, .chegat-rv__sent { display: none; flex-direction: column; gap: var(--space-2); }
.chegat-rv__write[data-state="open"] .chegat-rv__form, .chegat-rv__form:target, .chegat-rv__write[data-state="sent"] .chegat-rv__sent { display: flex; }
.chegat-rv__write[data-state="open"] .chegat-rv__ask, .chegat-rv__write[data-state="sent"] .chegat-rv__ask { display: none; }
.chegat-rv__form :where(select) { box-sizing: border-box; width: 100%; min-height: var(--button-primary); padding: 0 var(--space-3); border: 1px solid var(--border-strong); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); font: inherit; }
.chegat-rv__rate { display: flex; gap: 2px; margin: 0; padding: 0; border: 0; }
.chegat-rv__rate legend { margin-bottom: var(--space-1); }
.chegat-rv__rate label { position: relative; display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); color: var(--border-strong); font-size: 28px; cursor: pointer; }
.chegat-rv__rate input { position: absolute; opacity: 0; }
.chegat-rv__rate:has(input:checked) label { color: var(--gold); }
.chegat-rv__rate label:has(input:checked) ~ label { color: var(--border-strong); }
.chegat-rv__rate input:focus-visible + span { outline: 2px solid var(--link); outline-offset: 2px; }
.chegat-rv__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.chegat-rv__steps li { display: flex; flex-direction: column; gap: 2px; padding: var(--space-3); border-radius: var(--radius-sm); background: var(--bg-raised); }
.chegat-rv__steps li.is-done { background: var(--brand-soft); }
.chegat-rv__sorts .chegat-chip-btn { display: inline-flex; align-items: center; text-decoration: none; }
.chegat-rv__sorts .chegat-chip-btn[aria-current="true"] { border: 2px solid var(--brand-primary); background: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
.chegat-rv__list { display: flex; flex-direction: column; }
.chegat-rv-item { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-4) 0; border-top: 1px solid var(--border); }
.chegat-rv-item__head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-rv-item__title { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-rv-item__pm { margin: 0; }
.chegat-rv-item__text p { margin: 0 0 var(--space-2); overflow-wrap: anywhere; }
.chegat-rv-item__reply { display: flex; flex-direction: column; gap: var(--space-1); margin-left: var(--space-6); padding: var(--space-3) var(--space-4); border-left: 3px solid var(--border-strong); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; background: var(--bg-raised); }
.chegat-rv-item__reply p { margin: 0; }
.chegat-chip.is-rep { background: var(--brand-primary); color: var(--on-brand); }
.chegat-rv-item__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-rv-item__actions [data-chegat-rv-useful][aria-pressed="true"] { color: var(--text-primary); font-weight: 700; }
@media (max-width: 767.98px) {
	.chegat-rv__summary { grid-template-columns: 1fr; padding: var(--space-4); }
	.chegat-rv__steps { grid-template-columns: 1fr 1fr; }
	.chegat-rv-item__reply { margin-left: var(--space-3); }
}

/* ---------- Подборка P07 (chegat/roundup) и список подборок P27 (chegat/roundups) ---------- */
.chegat-roundup { display: flex; flex-direction: column; gap: var(--space-6); }
.chegat-roundup__best { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-4); border: 2px solid var(--badge-gold-bd); border-radius: var(--radius-md); background: var(--badge-gold-bg); }
.chegat-roundup__best .chegat-label { color: var(--badge-gold-fg); }
.chegat-roundup__list { display: flex; flex-direction: column; gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-roundup__item { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: var(--space-3); align-items: start; }
.chegat-roundup__place { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--bg-raised); font-size: var(--fs-control); font-weight: 700; }
.chegat-roundup__item.is-best .chegat-roundup__place { background: var(--badge-gold-bg); color: var(--badge-gold-fg); box-shadow: inset 0 0 0 2px var(--badge-gold-bd); }
.chegat-roundup__body { display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; }
.chegat-roundup__log ul { display: flex; flex-direction: column; gap: var(--space-1); margin: 0; padding: 0; list-style: none; }
.chegat-roundups__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-roundups__card { display: flex; flex-direction: column; gap: var(--space-1); height: 100%; box-sizing: border-box; padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-roundups__card:hover { border-color: var(--brand-primary); }

/* ---------- Сравнения: P25 (chegat/compare) и P24 (chegat/compare-hub) ---------- */
.chegat-cmp, .chegat-cmphub { display: flex; flex-direction: column; gap: var(--space-6); }
.chegat-cmp__ed { justify-content: space-between; align-items: center; color: var(--text-primary); text-decoration: none; }
.chegat-cmp__cards { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: var(--space-3); }
.chegat-cmp__card { position: relative; display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-cmp__remove { position: absolute; top: var(--space-1); right: var(--space-1); display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); color: var(--text-secondary); font-size: 22px; text-decoration: none; }
.chegat-cmp__add summary { min-height: var(--touch-min); display: flex; align-items: center; gap: var(--space-2); font-weight: 600; cursor: pointer; }
.chegat-cmp__add ul, .chegat-cmp__other ul, .chegat-cmphub__pairs ul { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-cmp__sum { padding: var(--space-4) var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-cmp__sum ul { margin: var(--space-2) 0 0; padding-left: var(--space-6); }
.chegat-cmp__table { display: flex; flex-direction: column; gap: var(--space-3); }
.chegat-cmp__toggle { position: absolute; opacity: 0; }
.chegat-cmp__toggle:focus-visible + label { outline: 2px solid var(--link); outline-offset: 2px; }
.chegat-cmp__toggle + label::before { content: ""; flex: none; width: 20px; height: 20px; border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); }
.chegat-cmp__toggle:checked + label::before { content: "✓"; display: inline-flex; align-items: center; justify-content: center; background: var(--brand-primary); color: var(--on-brand); }
.chegat-cmp__toggle:checked ~ .chegat-cmp__scroll tr.is-same { display: none; }
.chegat-cmp__scroll { overflow-x: auto; }
.chegat-cmp__scroll table { width: 100%; border-collapse: collapse; font-size: var(--fs-small); }
.chegat-cmp__scroll :where(th, td) { padding: var(--space-3); border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.chegat-cmp__scroll thead th { background: var(--bg-raised); }
.chegat-cmp__scroll tbody th { position: sticky; left: 0; background: var(--bg-page); font-weight: 600; min-width: 140px; }
.chegat-cmp__scroll tr.is-same td { color: var(--text-secondary); }
.chegat-cmp__scroll td.is-yes { color: var(--success); font-weight: 600; }
.chegat-cmp__fit ul { display: flex; flex-direction: column; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.chegat-cmphub__pick { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-6); border-radius: var(--radius-md); background: var(--bg-raised); }
.chegat-cmphub__cat { margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-cmphub__pick .chegat-btn { align-self: flex-start; }
@media (max-width: 599.98px) {
	/* minmax(0, …): иначе колонка растягивается под кнопку «Открыть карточку» и страница уезжает вбок на 360 px. */
	.chegat-cmp__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.chegat-cmp__card { min-width: 0; padding: var(--space-3); overflow-wrap: anywhere; }
	.chegat-cmp__card .chegat-btn { align-self: stretch; justify-content: center; white-space: normal; text-align: center; }
	.chegat-cmphub__pick { padding: var(--space-4); }
}

/* ---------- Подсказки поиска в шапке и фильтры выдачи P04 ---------- */
.chegat-search { position: relative; }
.chegat-suggest { position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 30; display: flex; flex-direction: column; margin: 0; padding: var(--space-1) 0; list-style: none; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); box-shadow: var(--shadow-lg); }
.chegat-suggest a { display: flex; justify-content: space-between; gap: var(--space-3); min-height: var(--touch-min); align-items: center; padding: 0 var(--space-4); color: var(--text-primary); text-decoration: none; }
.chegat-suggest li.is-active a, .chegat-suggest a:hover { background: var(--bg-raised); }
.chegat-suggest__all { border-top: 1px solid var(--border); }
.chegat-suggest__all a { color: var(--link); font-weight: 600; }
.chegat-suggest__sk { height: 14px; margin: var(--space-3) var(--space-4); border-radius: 4px; background: var(--bg-raised); }
.chegat-suggest__sk:nth-child(2) { width: 70%; }
.chegat-suggest__sk:nth-child(3) { width: 50%; }
.chegat-search-filters .chegat-chip-btn { display: inline-flex; align-items: center; text-decoration: none; }
.chegat-search-filters .chegat-chip-btn[aria-current="true"] { border: 2px solid var(--brand-primary); background: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
/* Внешние оценки в блоке отзывов: источник со ссылкой, оценка, число. */
.chegat-rv__ext { display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-rv__ext ul { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); margin: 0; padding: 0; list-style: none; }

/* ---------- Представитель разработчика: заявка в блоке отзывов и кабинет /developer/ ---------- */
.chegat-rv__rep { padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-rv__rep summary { min-height: var(--touch-min); display: flex; align-items: center; cursor: pointer; }
.chegat-rv__rep .chegat-form, .chegat-repcab .chegat-form { display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-repcab { display: flex; flex-direction: column; gap: var(--space-6); }
.chegat-repcab__login { max-width: 520px; }
.chegat-repcab__item { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-repcab__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); }
.chegat-repcab__reply { margin-top: var(--space-2); }
.chegat-repcab__propose summary { min-height: var(--touch-min); display: flex; align-items: center; font-weight: 600; cursor: pointer; }
.chegat-repcab__edits { display: flex; flex-direction: column; gap: var(--space-1); margin: 0; padding: 0; list-style: none; }
.chegat-repcab__done { margin: 0; color: var(--success); font-weight: 600; }

/* ---------- Реклама в лентах (listing_infeed) и плавающий блок на телефоне (mobile_floor_ad) ---------- */
.chegat-feed-ad { list-style: none; }
.chegat-feed-ad:has(.chegat-ad.is-empty) { display: none; }
.chegat-floor { display: none; }
@media (max-width: 1023.98px) {
	.chegat-floor { position: fixed; left: 0; right: 0; bottom: 0; z-index: 20; display: block; padding: var(--space-2) 48px var(--space-2) var(--space-2); border-top: 1px solid var(--border); background: var(--bg-surface); box-shadow: var(--shadow-lg); }
	.chegat-floor:has(.chegat-ad.is-empty) { display: none; }
	/* Отступ снизу у страницы: блок не закрывает последние кнопки (в том числе «Скачать»). */
	body:has(.chegat-floor .chegat-ad:not(.is-empty)) { padding-bottom: 96px; }
	/* До прокрутки на полэкрана — за нижним краем (site.js добавляет is-shown). */
	.chegat-floor:not(.is-shown) { transform: translateY(110%); visibility: hidden; }
	.chegat-floor { transition: transform .25s ease, visibility 0s; }
	/* Полоса, а не карточка: своя реклама в этом месте — картинка 44 px и заголовок в две строки (было до полэкрана
	   на 320 px: картинка 96 px, текст и кнопка). */
	.chegat-floor .chegat-ad { min-height: 0; gap: 2px; }
	.chegat-floor .chegat-ad__label { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 11px; }
	.chegat-floor .chegat-ad__house { flex-direction: row; gap: var(--space-3); padding: 2px 0; border: 0; border-radius: 0; background: none; }
	.chegat-floor .chegat-ad__house img { width: 44px; height: 44px; }
	.chegat-floor .chegat-ad__body .chegat-meta, .chegat-floor .chegat-ad__body .chegat-btn { display: none; }
	.chegat-floor .chegat-ad__body b { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: var(--fs-small); line-height: 1.3; }
}
@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce) { .chegat-floor { transition: none; } }
.chegat-floor__close { position: absolute; top: var(--space-1); right: var(--space-1); width: var(--touch-min); height: var(--touch-min); border: 0; background: none; color: var(--text-secondary); font-size: 24px; cursor: pointer; }
.chegat-rv-item[hidden] { display: none; } /* отзывы за «Показать ещё»: в HTML сразу, видны после нажатия */
/* 404 на 320 px: форма поиска в заголовке переносит кнопку, заголовок не шире колонки (обход QA этапа 10). */
.chegat-lhead { min-width: 0; max-width: 100%; }
.chegat-lhead .chegat-search { flex-wrap: wrap; }
.chegat-lhead .chegat-search input { flex: 1 1 180px; }
.chegat-ad__label a { display: inline-block; padding: 4px 0; } /* зона нажатия от 24 px (WCAG 2.5.8) */

/* ---------- Темы проблем (хаб «Решить проблему») (blocks/problem-topics) ---------- */
.chegat-problem-topics__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-problem-topics__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Хотите писать для нас? (blocks/write-cta) ---------- */
.chegat-write-cta__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-write-cta__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Главная: подборки (blocks/home-roundups) ---------- */
.chegat-home-roundups__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-home-roundups__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Главная: последние публикации по типам (blocks/home-latest) ---------- */
.chegat-home-latest__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-home-latest__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- side-box (blocks/side-box) ---------- */
.chegat-side-box__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-side-box__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- topic-extras (blocks/topic-extras) ---------- */
.chegat-topic-extras__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-topic-extras__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- news-source (blocks/news-source) ---------- */
.chegat-news-source__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-news-source__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Сверка с экранами, партия 3: правая колонка, тема проблемы, поиск, новости ---------- */
/* Карточки правой колонки (блок side-box) и программы темы. */
.chegat-sbox { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-sbox.is-raised { border: 0; background: var(--bg-raised); }
.chegat-sbox.is-green { border: 0; background: var(--green-soft); }
.chegat-sbox.is-green .chegat-btn { align-self: stretch; justify-content: center; }
.chegat-sbox > b { font-size: var(--fs-control); }
.chegat-sbox > p { margin: 0; }
.chegat-sbox > a:not(.chegat-btn):not(.chegat-sbox__prog):not(.chegat-sbox__link) { font-size: var(--fs-small); font-weight: 600; }
.chegat-sbox__title { font-size: var(--fs-control); font-weight: 700; }
.chegat-sbox__prog { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) 0; color: var(--text-primary); text-decoration: none; }
.chegat-sbox__prog img, .chegat-sbox__prog svg { display: block; border-radius: var(--radius-sm); }
.chegat-sbox__prog b { font-size: var(--fs-small); }
.chegat-sbox__prog small { color: var(--text-secondary); font-size: var(--fs-label); }
.chegat-sbox__prog.is-card { padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-sbox__link { padding: var(--space-2) 0; border-top: 1px solid var(--border); font-size: var(--fs-small); }
.chegat-sbox__more { font-size: var(--fs-small); font-weight: 600; }
.chegat-sbox__back { font-weight: 600; }
/* Тема проблемы: компактные карточки и «Вашей проблемы нет в списке?». */
.chegat-pcompact-grid { gap: var(--space-3); }
.chegat-pcompact { display: flex; flex-direction: column; gap: 4px; padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-pcompact b { color: var(--link); font-size: var(--fs-control); line-height: 1.35; }
.chegat-pcompact small { font-size: var(--fs-label); font-weight: 600; color: var(--text-secondary); }
.chegat-pcompact:hover { border-color: var(--border-strong); }
.chegat-ask { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-problems [hidden] { display: none; }
.chegat-chip-btn[aria-current="true"] { background: var(--brand-primary); border-color: var(--brand-primary); color: var(--on-brand); }
a.chegat-chip-btn { display: inline-flex; align-items: center; text-decoration: none; }
/* Поиск на странице P04 и компактная выдача. */
.chegat-search.is-page { max-width: 760px; }
.chegat-search__field { position: relative; flex: 1; display: flex; align-items: center; min-width: 0; }
.chegat-search__field svg { position: absolute; left: var(--space-3); color: var(--text-secondary); pointer-events: none; }
.chegat-search.is-page input { padding-left: 40px; border: 2px solid var(--text-primary); }
.chegat-scard { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-scard__meta { display: flex; align-items: center; gap: var(--space-2); font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-scard__title { font-size: var(--fs-control); font-weight: 700; color: var(--link); }
.chegat-scard__text { font-size: var(--fs-small); line-height: var(--lh-small); }
/* Карточка ленты: тип плашкой в строке меты (P02, P13). */
.chegat-acard__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.chegat-acard__meta .chegat-chip { height: 22px; }
/* Вкладки формата: «Сначала новые» справа. */
.chegat-fmt__sort { margin-left: auto; align-self: center; font-size: var(--fs-small); color: var(--text-secondary); }
/* Источник новости (P14). */
.chegat-source { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4) var(--space-6); border-left: 3px solid var(--brand-primary); border-radius: var(--radius-sm); background: var(--bg-surface); }

/* ---------- Подборка P07: лучшее, правила, позиции (RoundupItem), «Что выбрать» ---------- */
.chegat-rbest { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-6); border: 2px solid var(--brand-primary); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-rbest__head { display: flex; align-items: center; gap: var(--space-4); }
.chegat-rbest__head img, .chegat-rbest__head svg, .chegat-ritem__head img, .chegat-ritem__head svg { display: block; border-radius: var(--radius-md); }
.chegat-rbest p { margin: 0; }
.chegat-rrules { padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-rrules summary { font-weight: 700; cursor: pointer; }
.chegat-rrules ul { display: grid; gap: var(--space-2); margin: var(--space-3) 0 0; padding-left: var(--space-6); }
.chegat-rrules ul.chegat-rrules__pts { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); padding: 0; list-style: none; }
.chegat-roundup { display: flex; flex-direction: column; gap: var(--space-6); }
.chegat-roundup__list { display: flex; flex-direction: column; gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.chegat-ritem { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); scroll-margin-top: var(--space-8); }
.chegat-ritem.is-best { border: 2px solid var(--brand-primary); }
.chegat-ritem__head { display: flex; gap: var(--space-4); align-items: flex-start; }
.chegat-ritem__head h2 { margin: 0; }
.chegat-ritem__marks { gap: var(--space-2); }
.chegat-ritem p, .chegat-ritem h3 { margin: 0; }
.chegat-ritem__dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: var(--space-1) var(--space-4); margin: 0; font-size: var(--fs-small); }
.chegat-ritem__dl dt { color: var(--text-secondary); }
.chegat-ritem__dl dd { margin: 0; }
.chegat-ritem__limit { padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--bg-raised); font-size: var(--fs-small); }
.chegat-ritem__more summary { font-weight: 600; cursor: pointer; }
.chegat-chip.is-best { background: var(--badge-gold-bg); color: var(--badge-gold-fg); }
.chegat-rchoose { display: grid; gap: var(--space-2); }
.chegat-rchoose a { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-2); padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-rchoose a:hover { border-color: var(--border-strong); }
[data-chegat-tabs] tr[hidden] { display: none; }
/* Раздел «Подборки» P27: карточка подборки. */
.chegat-rcard-big { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-2); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-rcard-big:hover { border-color: var(--border-strong); }
.chegat-rcard-big__best { font-size: var(--fs-small); }

/* Автосравнение P25: иконки в карточках, плитки «Что выбрать». */
.chegat-cmp__icon img, .chegat-cmp__icon svg { display: block; border-radius: var(--radius-md); }
.chegat-cmp__card .chegat-btn { align-self: flex-start; margin-top: var(--space-2); }
.chegat-cmp__tiles { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: var(--space-3); }
.chegat-cmp__tile { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-cmp__tile:hover { border-color: var(--border-strong); }
@media (max-width: 599.98px) { .chegat-cmp__tiles { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Сравнение: карточки сравниваемых (blocks/cmp-cards) ---------- */
.chegat-cmp-cards__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-cmp-cards__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* Конструктор сравнений P24: плитки-флажки и плитки пар. */
.chegat-cmphub__tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--space-2); }
.chegat-cmphub__tile { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); cursor: pointer; }
.chegat-cmphub__tile:has(input:checked) { border: 2px solid var(--brand-primary); background: var(--brand-soft); }
.chegat-cmphub__tile:has(input:disabled) { opacity: .5; cursor: not-allowed; }
.chegat-cmphub__tile span:last-child { display: flex; flex-direction: column; min-width: 0; }
.chegat-cmphub__tile small { color: var(--text-secondary); font-size: var(--fs-label); }
.chegat-cmphub__cat[hidden] { display: none; }
.chegat-cmphub__pair { display: flex; flex-direction: column; gap: 2px; padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-cmphub__pair:hover { border-color: var(--border-strong); }
.chegat-cmphub__more summary { margin: var(--space-3) 0; font-weight: 600; cursor: pointer; }
.chegat-cmphub__tile { position: relative; }
.chegat-cmphub__tile input[type="checkbox"] { position: absolute; top: var(--space-2); right: var(--space-2); width: 18px; height: 18px; margin: 0; accent-color: var(--brand-primary); }
.chegat-cmphub__tile > span:last-child { padding-right: var(--space-6); }

/* Место в шапке: только картинка и заголовок кампании в две строки — по ширине оставшегося места. */
.chegat-header__ad { min-width: 240px; }
.chegat-header__ad .chegat-ad__house { gap: var(--space-3); padding: var(--space-2) var(--space-3); }
.chegat-header__ad .chegat-ad__house img { width: 64px; height: 64px; }
.chegat-header__ad .chegat-ad__body .chegat-meta, .chegat-header__ad .chegat-ad__body .chegat-btn { display: none; }
.chegat-header__ad .chegat-ad__body b { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: var(--fs-small); line-height: 1.3; }

/* Меню телефона: экраны разделов со стрелкой «Назад», системы сеткой 2 × 2 (SiteHeader). */
.chegat-mnav__open { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: var(--touch-min); padding: 0 var(--space-4); border: 0; background: none; color: var(--text-primary); font: inherit; font-weight: 600; text-align: left; cursor: pointer; }
.chegat-mnav__open svg { transform: rotate(-90deg); }
.chegat-mnav__os { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); padding: var(--space-2) var(--space-4); }
.chegat-mnav__os a { display: flex; align-items: center; justify-content: center; min-height: var(--touch-min); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-mnav__back { display: inline-flex; align-items: center; gap: var(--space-1); min-height: var(--touch-min); padding: 0 var(--space-4); border: 0; background: none; color: var(--link); font: inherit; font-weight: 600; cursor: pointer; }
.chegat-mnav__title { padding: var(--space-2) var(--space-4); font-size: var(--fs-h3); font-weight: 700; }
.chegat-mnav [hidden] { display: none !important; }

/* ---------- Сервис: страница (blocks/service-page) ---------- */
.chegat-service-page__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-service-page__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Онлайн-сервис P12 ---------- */
.chegat-svc { display: flex; flex-direction: column; gap: var(--space-8); }
.chegat-svc__head { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: var(--space-4) var(--space-6); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-svc__head h1, .chegat-svc__head p { margin: 0; }
.chegat-svc__icon img { display: block; border-radius: var(--radius-md); }
.chegat-svc__go { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
.chegat-svc__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin: 0; }
.chegat-svc__facts > div { padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-svc__facts dt { font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-svc__facts dd { margin: var(--space-1) 0 0; font-weight: 700; }
.chegat-svc__limits { margin: 0; }
.chegat-svc__limits > div { padding: var(--space-3) 0; border-bottom: 1px solid var(--border); }
.chegat-svc__limits dt { font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-svc__limits dd { margin: var(--space-1) 0 0; }
.chegat-svc-side .chegat-btn { justify-content: center; }
@media (max-width: 767.98px) { .chegat-svc__facts { grid-template-columns: 1fr 1fr; } }

/* ---------- program-watch (blocks/program-watch) ---------- */
.chegat-program-watch__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-program-watch__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- program-cta (blocks/program-cta) ---------- */
.chegat-program-cta__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-program-cta__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Программа P11: галерея, «Следить», характеристики, второй призыв ---------- */
/* Стрелки и счётчик — от рамки снимка, а не от figure: иначе «1 из 3 · увеличить» ложится на подпись под снимком. */
.chegat-gallery__frame { position: relative; }
.chegat-gallery__open { display: block; }
.chegat-gallery__nav { position: absolute; top: 40%; display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); border: 1px solid var(--border); border-radius: 50%; background: var(--bg-surface); color: var(--text-primary); font-size: 24px; cursor: pointer; box-shadow: var(--shadow-sm); }
.chegat-gallery__nav.is-prev { left: var(--space-3); }
.chegat-gallery__nav.is-next { right: var(--space-3); }
.chegat-gallery__count { position: absolute; right: var(--space-3); bottom: var(--space-3); padding: 2px var(--space-2); border-radius: var(--radius-sm); background: var(--bg-surface); font-size: var(--fs-label); }
.chegat-watch { padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-watch__ask { display: flex; align-items: center; gap: var(--space-3); }
.chegat-watch__ask .chegat-btn { margin-left: auto; }
.chegat-watch__form, .chegat-watch__done { display: none; }
.chegat-watch[data-state="open"] .chegat-watch__form { display: flex; flex-direction: column; gap: var(--space-2); margin-top: var(--space-3); }
.chegat-watch[data-state="done"] .chegat-watch__ask, .chegat-watch[data-state="done"] .chegat-watch__form { display: none; }
.chegat-watch[data-state="done"] .chegat-watch__done { display: block; }
.chegat-specs__more { margin-top: var(--space-3); }
.chegat-specs__more summary { list-style: none; display: inline-flex; }
.chegat-specs__more summary::-webkit-details-marker { display: none; }
.chegat-specs__more[open] summary { display: none; }
.chegat-pcta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-rv__awards { display: flex; flex-direction: column; gap: var(--space-2); }
.chegat-rv__awards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--space-2); }
.chegat-rv__award { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-1); padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); opacity: .75; }
.chegat-rv__award.is-on { opacity: 1; border-color: var(--border-strong); }
.chegat-rv__award b { font-size: var(--fs-label); }

/* ---------- Каталог P10: фильтры, строка «Найдено», карточка ---------- */
.chegat-filters { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-filters__form { display: flex; flex-direction: column; gap: var(--space-4); }
.chegat-filters__group { display: flex; flex-direction: column; gap: var(--space-1); margin: 0; padding: 0; border: 0; }
.chegat-filters__link { display: flex; justify-content: space-between; gap: var(--space-2); padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-filters__link span { color: var(--text-secondary); }
.chegat-filters__link.is-current { background: var(--bg-raised); font-weight: 600; }
.chegat-filters__form.is-auto .chegat-filters__apply { display: none; }
.chegat-catbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-3); }
.chegat-catbar__sort { display: flex; align-items: center; gap: var(--space-2); }
.chegat-catbar__sort select { min-height: var(--touch-min); padding: 0 var(--space-3); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); color: var(--text-primary); font: inherit; }
.chegat-pcard__head { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.chegat-pcard__head .chegat-row { gap: var(--space-1); }
.chegat-pcard__head .chegat-chip { height: 22px; }
.chegat-pcard__rate { font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-pcard__rows { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 2px var(--space-3); margin: 0; font-size: var(--fs-label); }
.chegat-pcard__rows dt { color: var(--text-secondary); }
.chegat-pcard__rows dd { margin: 0; }
.chegat-pcard__more { margin-top: auto; font-size: var(--fs-small); font-weight: 600; color: var(--link); }
.chegat-more-wrap { display: flex; justify-content: center; margin: var(--space-4) 0; }

/* Обзор P09: итог с кнопкой, четыре плитки фактов. */
.chegat-verdict .chegat-row { gap: var(--space-4); margin-top: var(--space-2); }
.chegat-svc__facts.is-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 767.98px) { .chegat-svc__facts.is-four { grid-template-columns: 1fr 1fr; } }

/* ---------- Калькулятор дохода автора (blocks/author-calc) ---------- */
.chegat-author-calc__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-author-calc__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- Лендинги P17, P22, P26: плитки, шаги, темы, калькулятор, «Копировать» ---------- */
.chegat-tiles { gap: var(--space-3); }
.chegat-tile { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-tile p { margin: 0; }
.chegat-tile__value { font-size: var(--fs-h2); line-height: var(--lh-h2); font-weight: 700; }
.chegat-cols { align-items: start; gap: var(--space-8); }
.chegat-steps { gap: var(--space-3); }
.chegat-step-card { display: flex; flex-direction: column; gap: var(--space-1); padding-top: var(--space-3); border-top: 3px solid var(--brand-primary); }
.chegat-step-card p { margin: 0; }
.chegat-topic-list { display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); }
.chegat-topic-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; align-items: center; column-gap: var(--space-4); padding: var(--space-3) var(--space-4); border-top: 1px solid var(--border); }
.chegat-topic-row:first-child { border-top: 0; }
.chegat-topic-row p { margin: 0; }
.chegat-topic-row .wp-block-buttons { grid-column: 2; grid-row: 1 / 3; }
.chegat-calc { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--bg-surface); }
.chegat-calc__views { font-size: var(--fs-h2); font-weight: 700; }
.chegat-calc input[type="range"] { width: 100%; accent-color: var(--brand-primary); }
.chegat-calc__scale { justify-content: space-between; font-size: var(--fs-label); color: var(--text-secondary); }
.chegat-calc__box { display: flex; flex-direction: column; padding: var(--space-3); border: 1px solid var(--border); border-radius: var(--radius-md); }
.chegat-calc__box b { font-size: var(--fs-h3); }
.chegat-calc p { margin: 0; }
pre.wp-block-code.has-copy { position: relative; padding-top: var(--space-8); }
.chegat-copy { position: absolute; top: var(--space-2); right: var(--space-2); min-height: 32px; padding: 0 var(--space-3); border: 1px solid var(--border-strong); border-radius: var(--radius-sm); background: var(--bg-surface); color: var(--text-primary); font: inherit; font-size: var(--fs-label); cursor: pointer; }
@media (max-width: 767.98px) { .chegat-steps { grid-template-columns: 1fr 1fr; } .chegat-topic-row { grid-template-columns: 1fr; } .chegat-topic-row .wp-block-buttons { grid-column: 1; grid-row: auto; margin-top: var(--space-2); } }

/* Автор P15: вкладки материалов сегментами. */
.chegat-aposts__head { justify-content: space-between; align-items: center; }
.chegat-aposts__head h2 { margin: 0; }
.chegat-seg { display: inline-flex; border: 1px solid var(--border-strong); border-radius: var(--radius-sm); overflow: hidden; }
.chegat-seg a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 var(--space-4); color: var(--text-primary); font-size: var(--fs-small); text-decoration: none; }
.chegat-seg a + a { border-left: 1px solid var(--border-strong); }
.chegat-seg a[aria-current="page"] { background: var(--brand-primary); color: var(--on-brand); font-weight: 600; }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--text-primary); border: 1px solid var(--border-strong); }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--bg-raised); color: var(--text-primary); }

/* ---------- contact-info (blocks/contact-info) ---------- */
.chegat-contact-info__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-contact-info__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* ---------- team (blocks/team) ---------- */
.chegat-team__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-team__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* Контакты P16, «О сайте» P18. */
.chegat-contact__mail { font-size: var(--fs-h3); }
.chegat-contact .wp-block-separator { margin: var(--space-2) 0; }
.chegat-contact__ads { color: var(--text-primary); text-decoration: none; }
.chegat-owner { gap: var(--space-1); font-size: var(--fs-small); }
.chegat-team { gap: var(--space-3); }
.chegat-team__card { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface); color: var(--text-primary); text-decoration: none; }
.chegat-team__card small { color: var(--text-secondary); font-size: var(--fs-label); }
.chegat-content.is-narrow { max-width: 760px; }

/* ---------- Страница 404 (blocks/not-found) ---------- */
.chegat-not-found__list { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.chegat-not-found__item { display: grid; gap: var(--space-2); padding: var(--space-5); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-lg); }

/* 404 P19. */
.chegat-nf h1, .chegat-nf p { margin: 0; }
.chegat-nf__guess { font-size: var(--fs-h3); font-weight: 700; }
.chegat-nf__tiles { gap: var(--space-3); }
.chegat-nf__report { padding-top: var(--space-4); border-top: 1px solid var(--border); }

/* Скриншоты к отзыву (Reviews): кнопка «+ Скриншот» пунктиром и миниатюры в отзыве. */
.chegat-rv__shots-add { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); }
.chegat-btn.is-dashed { border: 1px dashed var(--border-strong); background: var(--bg-surface); color: var(--text-primary); cursor: pointer; }
.chegat-rv__shots-add input:focus-visible + .chegat-meta, .chegat-rv__shots-add:focus-within .chegat-btn.is-dashed { outline: 2px solid var(--brand-primary); outline-offset: 2px; }
.chegat-rv-item__shots { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.chegat-rv-item__shots a { display: block; width: 96px; height: 72px; border: 1px solid var(--border); border-radius: var(--radius-sm); overflow: hidden; }
.chegat-rv-item__shots img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* Узкий телефон: карточки «Сравниваем» в одну колонку — в две по 150 px описание переносилось на 7–8 строк. */
@media (max-width: 479.98px) {
	.chegat-cmp__cards { grid-template-columns: minmax(0, 1fr); }
	.chegat-cmp__card .chegat-btn { align-self: flex-start; }
}
/* Подвал на телефоне: ссылки документов, «Настройки cookie» и переключатель темы — зона нажатия 44 px (было 36). */
@media (max-width: 767.98px) {
	.chegat-footer__docs a, .chegat-footer__docs button { min-height: var(--touch-min); }
	.chegat-theme-switch button { height: var(--touch-min); } /* у переключателя высота задана жёстко (36), min-height её не поднял бы */
	.chegat-theme-switch { border-radius: 24px; }
	.chegat-theme-switch button { border-radius: 22px; }
}
/* «Копировать» у блока кода на телефоне — зона нажатия 44 px. */
@media (max-width: 767.98px) { .chegat-copy { min-height: var(--touch-min); min-width: var(--touch-min); } }
