/* Сканер 152-ФЗ/168-ФЗ и его посадочная страница.
   Система из DESIGN.md: галерейный монохром — чернила #141414 на белом,
   лестница оттенков f3/f0/e0 вместо теней, каждая интерактивная вещь —
   стадионная пилюля. Единственный акцент — зелёный #54c138 (меняется в Настройки → «Проверка сайтов»):
   главные CTA, значок «в порядке», один бейдж на страницу. */

.egerpro-checker,
.egerpro-chk-hero, .egerpro-chk-section, .egerpro-chk-fines, .egerpro-chk-cta {
	--chk-ink: #141414;
	--chk-ink-soft: #262626;
	--chk-muted: #707070;
	--chk-faint: #adadad;
	--chk-canvas: #ffffff;
	--chk-soft: #f3f3f3;
	--chk-field: #f0f0f0;
	--chk-hairline-soft: #f0f0f0;
	--chk-hairline: #e0e0e0;
	--chk-accent: #54c138;
}

/* ── Виджет сканера ──────────────────────────────────────────────── */
.egerpro-checker { display: flex; flex-direction: column; gap: 1rem; }

.egerpro-checker__form { display: flex; gap: .625rem; flex-wrap: wrap; }
.egerpro-checker__input {
	flex: 1 1 16rem; height: 3.5rem; padding: 0 1.25rem;
	background: var(--chk-field); border: 0; border-radius: 9999px;
	color: var(--chk-ink); font: inherit; outline: none;
}
.egerpro-checker__input::placeholder { color: var(--chk-faint); }
.egerpro-checker__input:focus { box-shadow: inset 0 0 0 2px var(--chk-ink); }
.egerpro-checker__submit {
	height: 3.5rem; padding: 0 2rem; border: 0; border-radius: 9999px;
	background: var(--chk-accent); color: var(--chk-ink);
	font: inherit; font-weight: 650; cursor: pointer;
}
.egerpro-checker__submit:hover { filter: brightness(.95); }
.egerpro-checker__note { margin: 0; font-size: .75rem; color: var(--chk-faint); }

.egerpro-checker__bar { height: .5rem; border-radius: 9999px; overflow: hidden; background: var(--chk-field); }
.egerpro-checker__bar span { display: block; height: 100%; width: 0; background: var(--chk-accent); transition: width .3s ease; }
.egerpro-checker__progress p { margin: .5rem 0 0; font-size: .875rem; color: var(--chk-muted); }
.egerpro-checker__error { color: #b42318; font-size: .9375rem; }

.egerpro-checker__report { text-align: left; }
.egerpro-checker__heading { margin: 0; font-weight: 650; font-size: 1.5rem; line-height: 1.13; color: var(--chk-ink); }
.egerpro-checker__summary { margin: .375rem 0 0; font-size: .9375rem; color: var(--chk-muted); }
.egerpro-checker__rows { list-style: none; margin: 1.25rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .625rem; }
.egerpro-checker__row {
	padding: 1.125rem 1.25rem; border-radius: 16px;
	background: var(--chk-canvas); border: 1px solid var(--chk-hairline-soft);
}
.egerpro-checker__row-head { margin: 0; font-weight: 650; color: var(--chk-ink); display: flex; align-items: center; gap: .625rem; flex-wrap: wrap; }
.egerpro-checker__badge {
	font-size: .75rem; font-weight: 600; line-height: 1;
	padding: .3125rem .75rem; border-radius: 9999px;
}
.is-fail .egerpro-checker__badge { background: var(--chk-ink); color: #fff; }
.is-warn .egerpro-checker__badge { background: transparent; border: 1px solid var(--chk-hairline); color: var(--chk-ink-soft); }
.is-ok .egerpro-checker__badge { background: var(--chk-accent); color: var(--chk-ink); }
.is-manual .egerpro-checker__badge { background: var(--chk-field); color: var(--chk-muted); }
.egerpro-checker__law { font-size: .75rem; font-weight: 400; color: var(--chk-faint); margin-left: auto; }
.egerpro-checker__advice { margin: .5rem 0 0; font-size: .875rem; line-height: 1.5; color: var(--chk-ink-soft); }
.egerpro-checker__findings { margin: .375rem 0 0; font-size: .8125rem; color: var(--chk-muted); word-break: break-word; }
.egerpro-checker__pages { font-size: .75rem; color: var(--chk-faint); word-break: break-word; }
.egerpro-checker__cta { margin-top: 1rem; padding: 1.25rem; border-radius: 16px; background: var(--chk-soft); color: var(--chk-ink); }
.egerpro-checker__cta p { margin: 0 0 .875rem; }
.egerpro-checker__cta-btn {
	height: 2.875rem; padding: 0 1.75rem; border: 0; border-radius: 9999px;
	background: var(--chk-ink); color: #fff; font: inherit; font-weight: 600; cursor: pointer;
}

/* ── Посадочная страница (создаётся плагином) ────────────────────── */
.egerpro-chk-wrap { max-width: 1080px; margin: 0 auto; padding: 0 1.5rem; }

.egerpro-chk-hero { color: var(--chk-ink); padding: 5rem 0 2rem; text-align: center; }
.egerpro-chk-hero .egerpro-checker { max-width: 35rem; margin: 2.25rem auto 0; }
.egerpro-chk-hero .egerpro-checker__report,
.egerpro-chk-hero .egerpro-checker__progress { text-align: left; }

.egerpro-chk-badge {
	display: inline-flex; background: var(--chk-accent); color: var(--chk-ink);
	border-radius: 9999px; padding: .375rem .875rem;
	font-size: .75rem; font-weight: 600; margin: 0 0 1.5rem;
}
.egerpro-chk-h1 { font-size: clamp(2.375rem, 6.5vw, 4.5rem); font-weight: 650; line-height: 1.0; letter-spacing: -.01em; margin: 0; color: var(--chk-ink); }
.egerpro-chk-lead { font-size: 1.25rem; font-weight: 300; line-height: 1.38; color: var(--chk-muted); max-width: 35rem; margin: 1.5rem auto 0; }

.egerpro-chk-chips { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; max-width: 45rem; margin: 1.75rem auto 0; padding: 0; list-style: none; }
.egerpro-chk-chips li { background: var(--chk-soft); border-radius: 9999px; padding: .5rem 1rem; font-size: .875rem; color: var(--chk-ink-soft); }

.egerpro-chk-section { padding: 3.5rem 0; color: var(--chk-ink); }
.egerpro-chk-h2 { font-size: clamp(1.875rem, 4vw, 2.75rem); font-weight: 650; line-height: 1.13; margin: 0; color: var(--chk-ink); }
.egerpro-chk-sub { color: var(--chk-muted); max-width: 40rem; margin: .75rem 0 0; }

.egerpro-chk-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: .75rem; margin-top: 2.5rem; }
.egerpro-chk-fine { border: 1px solid var(--chk-hairline-soft); border-radius: 24px; padding: 1.75rem 1.5rem; background: var(--chk-canvas); }
.egerpro-chk-fine.is-featured { background: var(--chk-soft); border-color: transparent; }
.egerpro-chk-fine-badge {
	display: inline-flex; background: var(--chk-accent); color: var(--chk-ink);
	border-radius: 9999px; padding: .25rem .75rem; font-size: .75rem; font-weight: 600; margin: 0 0 .75rem;
}
.egerpro-chk-num { font-size: clamp(1.75rem, 3.2vw, 2.375rem); font-weight: 650; line-height: 1.0; white-space: nowrap; margin: 0; color: var(--chk-ink); }
.egerpro-chk-fine p:not(.egerpro-chk-num):not(.egerpro-chk-fine-badge) { font-size: .875rem; color: var(--chk-muted); margin: .625rem 0 0; }

.egerpro-chk-steps { display: grid; gap: .625rem; margin-top: 2.5rem; counter-reset: chk-step; }
.egerpro-chk-step { display: flex; gap: 1.125rem; align-items: center; background: var(--chk-soft); border-radius: 16px; padding: 1.125rem 1.375rem; }
.egerpro-chk-step::before {
	counter-increment: chk-step; content: counter(chk-step, decimal-leading-zero);
	flex: none; width: 2.5rem; height: 2.5rem;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--chk-ink); color: #fff; border-radius: 9999px;
	font-weight: 650; font-size: .875rem;
}
.egerpro-chk-step p { margin: 0; color: var(--chk-muted); }
.egerpro-chk-step strong { color: var(--chk-ink); font-weight: 650; }

.egerpro-chk-faq { margin-top: 2.5rem; display: grid; gap: .625rem; }
.egerpro-chk-faq .wp-block-details, .egerpro-chk-faq details {
	background: var(--chk-soft); border: 0; border-radius: 16px; padding: 1.125rem 1.375rem; margin: 0;
}
.egerpro-chk-faq summary {
	font-weight: 600; cursor: pointer; list-style: none; color: var(--chk-ink);
	display: flex; justify-content: space-between; align-items: center; gap: .75rem;
}
.egerpro-chk-faq summary::-webkit-details-marker { display: none; }
.egerpro-chk-faq summary::after { content: "⌄"; color: var(--chk-muted); font-size: 1.125rem; transition: transform .2s; }
.egerpro-chk-faq details[open] summary::after { transform: rotate(180deg); }
.egerpro-chk-faq details p { color: var(--chk-muted); margin: .625rem 0 0; max-width: 45rem; }

.egerpro-chk-cta {
	margin-top: 3rem; background: var(--chk-ink); color: #fff;
	border-radius: 24px; padding: 5.5rem 1rem; text-align: center;
}
.egerpro-chk-cta .egerpro-chk-h2 { color: #fff; font-size: clamp(2.125rem, 5vw, 3.5rem); line-height: 1.0; }
.egerpro-chk-cta .egerpro-chk-h2 em { font-style: normal; color: var(--chk-accent); }
.egerpro-chk-cta p { color: var(--chk-faint); max-width: 30rem; margin: 1.25rem auto 2.25rem; }
.egerpro-chk-cta .wp-block-button__link {
	display: inline-flex; align-items: center; height: 3.5rem; padding: 0 2rem;
	background: var(--chk-accent); color: var(--chk-ink);
	border-radius: 9999px; font-weight: 650; text-decoration: none;
}

@media (max-width: 719px) {
	.egerpro-chk-hero { padding-top: 6rem; }
	.egerpro-checker__form { flex-wrap: wrap; }
	.egerpro-checker__submit { width: 100%; }
}

.egerpro-checker__off {
	margin: 0; padding: 1.125rem 1.375rem; border-radius: 16px;
	background: var(--chk-soft); color: var(--chk-muted); font-size: .9375rem;
}
