/* ─── Audit page — стиль сайта enotit.space ─────────────── */
/* Использует те же CSS-переменные и паттерны что и main.css  */

/* ─── Дополнительные переменные (не переопределяют main) ── */
.au-page {
	--line: 1px solid rgba(17, 24, 39, 0.08);
}

/* ─── Layout ─────────────────────────────────────────────── */
.au-page {
	padding-top: 4rem; /* отступ под site-header */
}

.au-wrap {
	max-width: 900px;
	margin: 0 auto;
	padding: 3rem 2rem 8rem;
}

/* ─── Sticky sub-nav (под site-header) ──────────────────── */
.au-nav {
	position: sticky;
	top: 52px; /* высота site-header */
	z-index: 80;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: .5rem;
	padding: .65rem 2rem;
	background: rgba(231, 229, 228, .95);
	backdrop-filter: blur(10px);
	border-bottom: var(--line);
}

.au-nav-left {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.au-nav-site {
	font-family: 'JetBrains Mono', monospace;
	font-size: .68rem;
	font-weight: 600;
	color: var(--accent);
	letter-spacing: .06em;
}

.au-nav-run {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	color: var(--muted);
	letter-spacing: .04em;
}

.au-nav-links {
	display: flex;
	gap: .15rem;
	flex-wrap: wrap;
}

.au-nav-link {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .4);
	text-decoration: none;
	padding: .25rem .55rem;
	border-radius: 2px;
	border: 1px solid transparent;
	transition: color .2s, border-color .2s;
	white-space: nowrap;
}

.au-nav-link:hover {
	color: var(--accent);
	border-color: rgba(91, 44, 44, .2);
}

/* ─── Error ──────────────────────────────────────────────── */
.au-error {
	padding: 1.2rem 1.4rem;
	background: var(--accent-pale);
	border-left: var(--border);
	font-family: 'JetBrains Mono', monospace;
	font-size: .78rem;
	color: var(--accent);
	margin: 2rem 0;
	line-height: 1.6;
}

.au-error code {
	background: rgba(91, 44, 44, .08);
	padding: .1em .35em;
	border-radius: 2px;
}

/* ─── Section ────────────────────────────────────────────── */
.au-section {
	margin-top: 3.5rem;
}

.au-section-head {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	margin-bottom: 1.4rem;
	padding-bottom: .6rem;
	border-bottom: var(--line);
}

.au-section-label {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	font-weight: 600;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .5);
}

.au-section-sub {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	color: var(--muted);
}

/* ─── Stat cards (как sol-card но меньше) ────────────────── */
.au-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	gap: 1px;
	background: rgba(17, 24, 39, 0.08);
	border: 1px solid rgba(17, 24, 39, 0.08);
	margin-bottom: 1.2rem;
}

.au-card {
	background: var(--bg);
	padding: 1.2rem 1rem;
	position: relative;
	transition: background .25s;
}

.au-card:hover {
	background: rgba(255, 255, 255, .55);
}

.au-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 2px;
	background: var(--accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.au-card:hover::before {
	transform: scaleX(1);
}

.au-card-lbl {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
	margin-bottom: .4rem;
}

.au-card-val {
	font-family: 'JetBrains Mono', monospace;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -.02em;
	color: var(--text);
}

.au-card-val--sm { font-size: .85rem; line-height: 1.4; }

/* Цвета значений */
.au--red    { color: #B54242; }
.au--orange { color: #9A6A2A; }
.au--green  { color: #2E7D55; }
.au--blue   { color: var(--accent); }

/* ─── Health / info cards ────────────────────────────────── */
.au-health-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: rgba(17, 24, 39, 0.08);
	border: 1px solid rgba(17, 24, 39, 0.08);
	margin-bottom: 1rem;
}

.au-hcard {
	background: var(--bg);
	padding: 1rem 1.1rem;
	display: flex;
	flex-direction: column;
	gap: .35rem;
}

.au-hcard-title {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
	margin-bottom: .1rem;
}

.au-hcard-meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	color: var(--muted);
	margin-top: .1rem;
}

/* ─── Pill ───────────────────────────────────────────────── */
.au-pill {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .18rem .5rem;
	border-radius: 2px;
	border: 1px solid;
}

.au-pill::before {
	content: '';
	width: 4px; height: 4px;
	border-radius: 50%;
	background: currentColor;
}

.au-pill--ok {
	color: #2E7D55;
	background: rgba(46, 125, 85, .07);
	border-color: rgba(46, 125, 85, .2);
}

.au-pill--err {
	color: #B54242;
	background: rgba(181, 66, 66, .07);
	border-color: rgba(181, 66, 66, .2);
}

.au-pill--warn {
	color: #9A6A2A;
	background: rgba(154, 106, 42, .07);
	border-color: rgba(154, 106, 42, .2);
}

/* ─── Badge ──────────────────────────────────────────────── */
.au-badge {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: .15rem .4rem;
	border-radius: 2px;
}

.au-badge--crit {
	color: #B54242;
	background: rgba(181, 66, 66, .08);
	border: 1px solid rgba(181, 66, 66, .2);
}

.au-badge--warn {
	color: #9A6A2A;
	background: rgba(154, 106, 42, .08);
	border: 1px solid rgba(154, 106, 42, .2);
}

.au-badge--info {
	color: var(--accent);
	background: var(--accent-pale);
	border: 1px solid rgba(91, 44, 44, .2);
}

.au-badge--accent {
	color: var(--accent);
	background: var(--accent-pale);
	border: 1px solid rgba(91, 44, 44, .2);
}

/* ─── Score ──────────────────────────────────────────────── */
.au-score {
	font-family: 'JetBrains Mono', monospace;
	font-size: .75rem;
	font-weight: 600;
}

.au-score small { font-size: .6rem; opacity: .45; margin-left: .1rem; }
.au-score--good { color: #2E7D55; }
.au-score--mid  { color: #9A6A2A; }
.au-score--bad  { color: #B54242; }
.au-scores { display: flex; gap: .4rem; align-items: center; flex-shrink: 0; }

/* ─── Top-5 ──────────────────────────────────────────────── */
.au-top-row {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: .45rem 0;
	border-bottom: var(--line);
	font-size: .8rem;
}

.au-top-row:last-child { border-bottom: none; }

.au-top-n {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	color: rgba(91, 44, 44, .3);
	width: 1.4rem;
	flex-shrink: 0;
}

.au-top-url {
	font-family: 'JetBrains Mono', monospace;
	font-size: .7rem;
	color: var(--accent);
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* ─── Table ──────────────────────────────────────────────── */
.au-tbl-wrap {
	overflow-x: auto;
	border: 1px solid rgba(17, 24, 39, 0.08);
}

.au-tbl {
	width: 100%;
	border-collapse: collapse;
	font-size: .78rem;
	white-space: nowrap;
}

.au-tbl thead th {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
	padding: .6rem .85rem;
	text-align: left;
	background: rgba(255, 255, 255, .4);
	border-bottom: var(--line);
}

.au-tbl tbody td {
	padding: .5rem .85rem;
	border-bottom: var(--line);
	color: var(--text);
	vertical-align: middle;
}

.au-tbl tbody tr:last-child td { border-bottom: none; }
.au-tbl tbody tr:hover { background: rgba(255, 255, 255, .5); }

.au-td-url {
	font-family: 'JetBrains Mono', monospace;
	font-size: .68rem;
	color: var(--accent);
	max-width: 200px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.au-td-url a { color: inherit; text-decoration: none; border-bottom: 1px solid rgba(91, 44, 44, .2); }
.au-td-url a:hover { border-color: var(--accent); }

.au-td-title {
	max-width: 180px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: .75rem;
	color: var(--muted);
}

.au-td-n { font-family: 'JetBrains Mono', monospace; font-size: .7rem; text-align: right; }
.au-td-c { text-align: center; }
.au-td--red    { color: #B54242; }
.au-td--orange { color: #9A6A2A; }

/* ─── Collapse (как experience steps) ───────────────────── */
.au-collapse {
	border: 1px solid rgba(17, 24, 39, .08);
	margin-bottom: .5rem;
	transition: background .2s;
}

.au-collapse-head {
	display: flex;
	align-items: center;
	gap: .8rem;
	padding: .75rem 1rem;
	cursor: pointer;
	user-select: none;
	flex-wrap: wrap;
	background: var(--bg);
	transition: background .2s;
	position: relative;
}

/* Accent line — как у sol-card */
.au-collapse-head::before {
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 2px;
	background: var(--accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.au-collapse:hover .au-collapse-head::before,
.au-collapse.open  .au-collapse-head::before {
	transform: scaleX(1);
}

.au-collapse-head:hover { background: rgba(255, 255, 255, .55); }

.au-collapse-name {
	font-family: 'JetBrains Mono', monospace;
	font-size: .7rem;
	font-weight: 600;
	color: var(--text);
	flex: 1;
}

.au-collapse-url {
	font-family: 'JetBrains Mono', monospace;
	font-size: .7rem;
	color: var(--accent);
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.au-chevron {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	color: rgba(91, 44, 44, .3);
	flex-shrink: 0;
	transition: transform .2s;
}

.au-collapse.open .au-chevron { transform: rotate(90deg); }

.au-collapse-body {
	padding: .9rem 1rem 1.1rem;
	border-top: var(--line);
	display: none;
	background: rgba(255, 255, 255, .3);
}

.au-collapse.open .au-collapse-body { display: block; }

.au-collapse-msg {
	font-size: .8rem;
	color: var(--muted);
	margin-bottom: .6rem;
	line-height: 1.6;
}

.au-collapse-url {
	font-family: 'JetBrains Mono', monospace;
	font-size: .68rem;
	color: var(--accent);
	margin-bottom: .2rem;
	display: block;
}

/* ─── AI fields ──────────────────────────────────────────── */
.au-ai-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.au-ai-field { display: flex; flex-direction: column; gap: .3rem; }
.au-ai-field--full { grid-column: 1 / -1; }

.au-ai-lbl {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
}

.au-ai-old {
	font-size: .75rem;
	color: var(--muted);
	text-decoration: line-through;
	opacity: .6;
}

.au-ai-new {
	font-size: .8rem;
	color: var(--text);
	background: var(--accent-pale);
	border-left: var(--border);
	padding: .35rem .65rem;
	line-height: 1.55;
}

.au-ai-summary {
	font-size: .8rem;
	color: var(--muted);
	line-height: 1.7;
	margin-top: .9rem;
	padding-top: .9rem;
	border-top: var(--line);
}

/* ─── Wordstat clusters ──────────────────────────────────── */
.au-clusters { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .6rem; }

.au-cluster {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	font-weight: 600;
	color: var(--accent);
	background: var(--accent-pale);
	border: 1px solid rgba(91, 44, 44, .2);
	padding: .22rem .55rem;
	border-radius: 2px;
	letter-spacing: .04em;
}

.au-cluster-n   { color: var(--muted); font-size: .6rem; font-weight: 400; }
.au-cluster-use { color: rgba(91, 44, 44, .35); font-size: .58rem; }

/* ─── Tech blocks ────────────────────────────────────────── */
.au-tblock {
	border: 1px solid rgba(17, 24, 39, .08);
	margin-bottom: .8rem;
}

.au-tblock-title {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
	padding: .7rem 1rem .5rem;
	border-bottom: var(--line);
	background: rgba(255, 255, 255, .35);
}

.au-trow {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: .45rem 1rem;
	border-bottom: var(--line);
	font-size: .78rem;
}

.au-trow:last-child { border-bottom: none; }

.au-trow-url {
	font-family: 'JetBrains Mono', monospace;
	font-size: .7rem;
	color: var(--accent);
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.au-trow-meta {
	font-family: 'JetBrains Mono', monospace;
	font-size: .65rem;
	color: var(--muted);
	flex-shrink: 0;
	display: flex;
	align-items: center;
	gap: .35rem;
}

.au-trow-chain {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	color: var(--muted);
	padding: 0 1rem .5rem;
	opacity: .6;
}

/* ─── Security grid ──────────────────────────────────────── */
.au-sec-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 1px;
	background: rgba(17, 24, 39, .08);
	padding: 0;
}

.au-sec-item {
	display: flex;
	flex-direction: column;
	gap: .35rem;
	padding: .8rem 1rem;
	background: var(--bg);
}

.au-sec-lbl {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	color: rgba(91, 44, 44, .45);
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* ─── Dim ────────────────────────────────────────────────── */
.au-dim { color: rgba(17, 24, 39, .25); }
.au-mono { font-family: 'JetBrains Mono', monospace; }

/* ─── Mobile ─────────────────────────────────────────────── */
@media (max-width: 768px) {
	.au-wrap { padding: 2rem 1.2rem 5rem; }
	.au-cards { grid-template-columns: repeat(2, 1fr); }
	.au-health-grid { grid-template-columns: 1fr; }
	.au-ai-grid { grid-template-columns: 1fr; }
	.au-nav-links { display: none; }
	.au-nav { top: 48px; }
	.au-tbl { font-size: .72rem; }
}

/* ─── Spacing utilities ──────────────────────────────────── */
.au-mt-1  { margin-top: 1rem; }
.au-mt-08 { margin-top: .8rem; }
.au-ml-xs { margin-left: .4rem; }

/* ─── Text & flex utilities ──────────────────────────────── */
.au-text-xs       { font-size: .72rem; }
.au-flex-1        { flex: 1; }
.au-flex-shrink-0 { flex-shrink: 0; }
.au-text-wrap     { white-space: normal; overflow: visible; }

/* ─── Body text in monospace context ────────────────────── */
.au-body-text {
	color: var(--text);
	font-family: 'Manrope', sans-serif;
	font-size: .8rem;
}

/* ─── Empty result row ───────────────────────────────────── */
.au-empty-result { padding: .6rem 1rem; }

/* ─── Collapse detail small text ────────────────────────── */
.au-collapse-msg--sm { font-size: .72rem; }

/* ─── Page hero ──────────────────────────────────────────── */
.au-page-hero {
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	border-bottom: var(--line);
}

.au-page-hero .au-section-label { display: block; margin-bottom: .4rem; }

.au-page-title {
	font-family: 'Manrope', sans-serif;
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--text);
	line-height: 1.25;
	margin-bottom: .75rem;
	letter-spacing: -.02em;
}

.au-page-pills { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }

/* ─── Static collapse (no toggle) ───────────────────────── */
.au-collapse--static .au-collapse-head { cursor: default; }
.au-collapse--static .au-collapse-head:hover { background: var(--bg); }
.au-collapse--static:hover .au-collapse-head::before,
.au-collapse--static .au-collapse-head::before { transform: scaleX(0); }

/* ─── Meta table ─────────────────────────────────────────── */
.au-meta-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid rgba(17, 24, 39, .08);
}

.au-meta-table tr { border-bottom: 1px solid rgba(17, 24, 39, .06); }
.au-meta-table tr:last-child { border-bottom: none; }
.au-meta-table td { padding: .55rem .9rem; vertical-align: middle; }
.au-meta-table td:first-child { width: 110px; background: rgba(255, 255, 255, .4); }

.au-meta-key {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	font-weight: 600;
	letter-spacing: .08em;
	color: rgba(91, 44, 44, .6);
	background: none;
	padding: 0;
}

.au-meta-val-cell {
	color: var(--text);
	font-size: .78rem;
	line-height: 1.5;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .5rem;
}

.au-meta-len {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	flex-shrink: 0;
	opacity: .85;
}

/* ─── Tooltip ─────────────────────────────────────────────── */
.au-tip { position: relative; }

.au-tip::after {
	content: attr(data-tip);
	position: absolute;
	bottom: calc(100% + 6px);
	left: 50%;
	transform: translateX(-50%);
	background: rgba(17, 24, 39, .88);
	color: #fff;
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	line-height: 1.55;
	padding: .35rem .6rem;
	border-radius: 3px;
	width: max-content;
	max-width: 220px;
	white-space: normal;
	pointer-events: none;
	opacity: 0;
	transition: opacity .2s;
	z-index: 20;
}

.au-tip:hover::after { opacity: 1; }

@media print {
	.au-tip::after {
		opacity: 1;
		position: static;
		transform: none;
		background: none;
		color: var(--muted);
		display: block;
		font-size: .58rem;
	}
}

/* ─── Keywords bar chart ─────────────────────────────────── */
.au-kw-list { padding: .3rem 0; }

.au-kw-row {
	display: flex;
	align-items: center;
	gap: .8rem;
	padding: .35rem 1rem;
	border-bottom: 1px solid rgba(17, 24, 39, .05);
}

.au-kw-row:last-child { border-bottom: none; }

.au-kw-word {
	font-family: 'JetBrains Mono', monospace;
	font-size: .68rem;
	color: var(--text);
	min-width: 90px;
	flex-shrink: 0;
}

.au-kw-bar-wrap {
	flex: 1;
	height: 4px;
	background: rgba(91, 44, 44, .08);
	border-radius: 2px;
	overflow: hidden;
}

.au-kw-bar {
	height: 100%;
	background: var(--accent);
	border-radius: 2px;
}

.au-kw-freq {
	font-family: 'JetBrains Mono', monospace;
	font-size: .62rem;
	color: var(--muted);
	min-width: 2rem;
	text-align: right;
	flex-shrink: 0;
}

/* ─── Screenshots grid ───────────────────────────────────── */
.au-screens {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
	gap: 1rem;
}

.au-screen-card {
	display: flex;
	flex-direction: column;
	background: rgba(255, 255, 255, .3);
	border: 1px solid rgba(17, 24, 39, .08);
	overflow: hidden;
	transition: box-shadow .2s, transform .2s;
}

.au-screen-card:hover {
	box-shadow: 0 4px 16px rgba(17, 24, 39, .12);
	transform: translateY(-2px);
}

.au-screen-link {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: rgba(17, 24, 39, .04);
}

.au-screen-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
	display: block;
	transition: transform .35s ease;
}

.au-screen-card:hover .au-screen-img { transform: scale(1.04); }

.au-screen-lbl {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
	padding: .45rem .7rem .55rem;
}

/* ─── Clickable stat card ────────────────────────────────── */
.au-card--link {
	text-decoration: none;
	display: block;
	color: inherit;
}

.au-card--link:hover .au-card-val { color: var(--accent); }

/* ─── Exposed issues list ────────────────────────────────── */
.au-exposed-list { display: flex; flex-direction: column; }

.au-exposed-list-item {
	font-family: 'JetBrains Mono', monospace;
	font-size: .65rem;
	color: var(--accent);
	padding: .25rem .65rem;
	border-left: 2px solid rgba(91, 44, 44, .15);
	margin-bottom: .15rem;
}

/* ─── Evolution chain (section E) ───────────────────────── */
.au-evo {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: .6rem;
}

.au-evo-field {
	display: flex;
	flex-direction: column;
	gap: .4rem;
}

.au-evo-lbl {
	font-family: 'JetBrains Mono', monospace;
	font-size: .58rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .45);
}

.au-evo-chain {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: .4rem;
}

.au-evo-step {
	font-size: .78rem;
	line-height: 1.5;
	padding: .3rem .65rem;
	border-radius: 2px;
	max-width: 100%;
	word-break: break-word;
}

.au-evo-step--cur {
	color: var(--muted);
	background: rgba(17, 24, 39, .04);
	border: 1px solid rgba(17, 24, 39, .08);
	text-decoration: line-through;
	opacity: .7;
}

.au-evo-step--ai {
	color: var(--text);
	background: rgba(91, 44, 44, .05);
	border: 1px solid rgba(91, 44, 44, .15);
}

.au-evo-step--ws {
	color: var(--text);
	background: var(--accent-pale);
	border: 1px solid rgba(91, 44, 44, .25);
	font-weight: 600;
}

.au-evo-arrow {
	font-family: 'JetBrains Mono', monospace;
	font-size: .75rem;
	color: rgba(91, 44, 44, .3);
	line-height: 2;
	flex-shrink: 0;
}

/* ─── Print button ───────────────────────────────────────── */
.au-print-btn {
	font-family: 'JetBrains Mono', monospace;
	font-size: .6rem;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .5);
	background: none;
	border: 1px solid rgba(91, 44, 44, .2);
	border-radius: 2px;
	padding: .3rem .7rem;
	cursor: pointer;
	transition: color .2s, border-color .2s;
	display: flex;
	align-items: center;
	gap: .4rem;
	flex-shrink: 0;
}

.au-print-btn:hover {
	color: var(--accent);
	border-color: rgba(91, 44, 44, .4);
}

/* ─── Nav about label ────────────────────────────────────── */
.au-nav-about {
	font-family: 'JetBrains Mono', monospace;
	font-size: .52rem;
	letter-spacing: .06em;
	color: rgba(91, 44, 44, .3);
}

@media (max-width: 768px) {
	.au-nav-about { display: none; }
}

/* ─── Infra / Geo / Analytics sections ──────────────────── */

.au-infra-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1rem;
}

.au-sec-grid--sm { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .5rem; }

.au-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: .35rem;
	margin-top: .4rem;
}

.au-tag {
	display: inline-block;
	font-family: 'JetBrains Mono', monospace;
	font-size: .56rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, .6);
	background: rgba(91, 44, 44, .06);
	padding: .2rem .55rem;
}

.au-tag--accent { color: var(--accent); background: rgba(91, 44, 44, .1); }

.au-tracker-list { display: flex; flex-direction: column; gap: .4rem; margin-top: .4rem; }

.au-tracker-row { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }

.au-mt-xs { margin-top: .4rem; }
.au-mt-08 { margin-top: .8rem; }

/* ─── Page group tree (section B) ───────────────────────── */
.au-pg-groups { display: flex; flex-direction: column; gap: .35rem; }

.au-pg-group {
	border: 1px solid rgba(17, 24, 39, .08);
}

.au-pg-group--sub {
	border: none;
	border-top: 1px solid rgba(17, 24, 39, .06);
	margin: 0;
}

.au-pg-group-head {
	display: flex;
	align-items: center;
	gap: .75rem;
	padding: .65rem 1rem;
	cursor: pointer;
	user-select: none;
	background: rgba(255, 255, 255, .3);
	transition: background .15s;
	flex-wrap: wrap;
}

.au-pg-group--sub .au-pg-group-head {
	padding: .5rem 1rem .5rem 1.6rem;
	background: transparent;
}

.au-pg-group-head:hover { background: rgba(255, 255, 255, .6); }
.au-pg-group--sub .au-pg-group-head:hover { background: rgba(255, 255, 255, .4); }

.au-pg-group-path {
	font-family: 'JetBrains Mono', monospace;
	font-size: .68rem;
	font-weight: 600;
	color: var(--accent);
	flex: 1;
}

.au-pg-group--sub .au-pg-group-path {
	font-size: .62rem;
	color: rgba(91, 44, 44, .6);
}

.au-pg-group-body { display: none; }
.au-pg-group.open > .au-pg-group-body { display: block; }

.au-pg-group .au-chevron { transition: transform .2s; }
.au-pg-group.open > .au-pg-group-head .au-chevron { transform: rotate(90deg); }

.au-pg-group .au-tbl-wrap { border: none; border-top: 1px solid rgba(17, 24, 39, .06); }
.au-pg-group--sub .au-tbl-wrap { border: none; }

/* ─── Section group (D+E wrapper) ───────────────────────── */
.au-section--group .au-section-group-head {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	padding-bottom: .6rem;
	border-bottom: var(--line);
	cursor: pointer;
	user-select: none;
}
.au-section--group .au-section-group-head:hover { background: rgba(255, 255, 255, .3); }
.au-section--group .au-chevron { margin-left: auto; transition: transform .2s; }
.au-section--group.open .au-section-group-head .au-chevron { transform: rotate(90deg); }

.au-section-group-body { display: none; padding-top: 1.2rem; }
.au-section--group.open .au-section-group-body { display: block; }

.au-subsection { margin-top: 2.2rem; }
.au-subsection:first-child { margin-top: 0; }
.au-subsection-head {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	margin-bottom: 1.2rem;
	padding-bottom: .4rem;
	border-bottom: 1px solid rgba(17, 24, 39, .05);
}

/* ─── Print styles ───────────────────────────────────────── */
@media print {
	@page { size: A4 landscape; margin: .8cm 1cm; }

	/* Hide chrome */
	.site-header,
	.au-nav,
	.au-print-btn,
	.fcta,
	.fcookie { display: none !important; }

	.au-page { padding-top: 0; }
	.au-wrap { padding: .4cm 0; max-width: 100%; }

	/* Open all collapsibles */
	.au-collapse-body { display: block !important; }
	.au-collapse .au-chevron { display: none; }
	.au-pg-group-body { display: block !important; }
	.au-pg-group .au-chevron { display: none; }
	.au-section-group-body { display: block !important; }
	.au-section--group .au-chevron { display: none; }

	/* Table: no overflow, full width, compact */
	.au-tbl-wrap {
		overflow: visible !important;
		border: none;
	}
	.au-tbl {
		font-size: .62rem;
		white-space: normal;
		word-break: break-word;
		table-layout: fixed;
		width: 100%;
	}
	.au-tbl thead th,
	.au-tbl tbody td { padding: .3rem .45rem; }
	.au-tbl thead th:first-child,
	.au-tbl tbody td:first-child { width: 28%; }
	.au-tbl thead th:nth-child(3),
	.au-tbl tbody td:nth-child(3) { width: 28%; }

	/* Hide secondary columns */
	.au-td--opt { display: none !important; }
	th.au-td--opt { display: none !important; }

	/* Section flow */
	.au-section { margin-top: 1.2rem; page-break-inside: avoid; }
	.au-section-head { page-break-after: avoid; }
	.au-cards,
	.au-health-grid,
	.au-collapse { page-break-inside: avoid; }
	.au-tbl tbody tr { page-break-inside: avoid; }

	/* Evolution chain: vertical layout */
	.au-evo-chain { flex-direction: column; }
	.au-evo-arrow { transform: rotate(90deg); margin-left: .3rem; line-height: 1; }

	/* Colours on paper */
	.au--red    { color: #B00 !important; -webkit-print-color-adjust: exact; }
	.au--orange { color: #840 !important; -webkit-print-color-adjust: exact; }
	.au--green  { color: #060 !important; -webkit-print-color-adjust: exact; }

	/* Group headers */
	.au-pg-group-head { background: rgba(0,0,0,.04) !important; padding: .3rem .6rem; }
	.au-pg-groups { gap: .15rem; }
}