/* ─── Article / Static page ───────────────────────────────── */
.article {
	max-width: 680px;
	width: 100%;
	margin: 0 auto;
	padding: 5rem 2rem 8rem;
}

/* ─── Заголовки ───────────────────────────────────────────── */
.article h1 {
	font-size: clamp(1.6rem, 4vw, 2.2rem);
	font-weight: 700;
	color: var(--text);
	letter-spacing: -0.03em;
	line-height: 1.15;
	margin-bottom: 0.5rem;
	border-left: var(--border);
	padding-left: 1rem;
}

.article h2 {
	font-size: 1rem;
	font-weight: 700;
	color: var(--text);
	letter-spacing: -0.01em;
	margin-top: 2.8rem;
	margin-bottom: 0.9rem;
}

.article h3 {
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, 0.5);
	margin-top: 1.8rem;
	margin-bottom: 0.6rem;
}

/* ─── Мета / дата под h1 ──────────────────────────────────── */
.article h1 + p > strong:only-child,
.article-meta {
	display: block;
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, 0.4);
	margin-bottom: 2.5rem;
	margin-top: 0.4rem;
}

/* ─── Параграфы ───────────────────────────────────────────── */
.article p {
	font-size: 0.875rem;
	color: var(--muted);
	line-height: 1.8;
	margin-bottom: 1rem;
}

.article p strong {
	font-weight: 600;
	color: var(--text);
}

/* ─── Ссылки ──────────────────────────────────────────────── */
.article a {
	color: var(--accent);
	text-decoration: none;
	border-bottom: 1px solid rgba(91, 44, 44, 0.25);
	transition: border-color 0.2s;
}

.article a:hover {
	border-color: var(--accent);
}

/* ─── Списки ──────────────────────────────────────────────── */
.article ul,
.article ol {
	margin: 0.5rem 0 1.2rem;
	padding: 0;
	list-style: none;
}

.article ul li,
.article ol li {
	font-size: 0.875rem;
	color: var(--muted);
	line-height: 1.7;
	padding-left: 1.2rem;
	position: relative;
	margin-bottom: 0.35rem;
}

/* Маркер у ul */
.article ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.65em;
	width: 5px;
	height: 1px;
	background: rgba(91, 44, 44, 0.4);
}

/* Нумерация у ol */
.article ol {
	counter-reset: article-counter;
}

.article ol li {
	counter-increment: article-counter;
}

.article ol li::before {
	content: counter(article-counter) '.';
	position: absolute;
	left: 0;
	top: 0;
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.65rem;
	font-weight: 600;
	color: rgba(91, 44, 44, 0.4);
	letter-spacing: 0.04em;
	line-height: 1.9;
}

/* ─── Горизонтальный разделитель ──────────────────────────── */
.article hr {
	border: none;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
	margin: 2.5rem 0;
}

/* ─── Цитата / blockquote ─────────────────────────────────── */
.article blockquote {
	border-left: var(--border);
	margin: 1.8rem 0;
	padding: 0.8rem 1.2rem;
	background: var(--accent-pale);
}

.article blockquote p {
	margin: 0;
	font-style: italic;
	color: var(--text);
	opacity: 0.75;
}

/* ─── Код ─────────────────────────────────────────────────── */
.article code {
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.78rem;
	background: rgba(91, 44, 44, 0.06);
	color: var(--accent);
	padding: 0.1em 0.4em;
	border-radius: 2px;
}

.article pre {
	background: rgba(17, 24, 39, 0.04);
	border: 1px solid rgba(17, 24, 39, 0.08);
	border-radius: 2px;
	padding: 1.2rem 1.4rem;
	overflow-x: auto;
	margin: 1.4rem 0;
}

.article pre code {
	background: none;
	padding: 0;
	font-size: 0.78rem;
	color: var(--text);
}

/* ─── Таблица ─────────────────────────────────────────────── */
.article table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.4rem 0;
	font-size: 0.82rem;
}

.article th {
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, 0.5);
	padding: 0.6rem 0.8rem;
	border-bottom: 2px solid rgba(17, 24, 39, 0.08);
	text-align: left;
}

.article td {
	padding: 0.6rem 0.8rem;
	border-bottom: 1px solid rgba(17, 24, 39, 0.06);
	color: var(--muted);
	line-height: 1.5;
}

.article tr:last-child td {
	border-bottom: none;
}

/* ─── Навигация назад ─────────────────────────────────────── */
.article-back {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-family: 'JetBrains Mono', monospace;
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(91, 44, 44, 0.45);
	text-decoration: none;
	border: none;
	margin-bottom: 2.5rem;
	transition: color 0.2s;
}

.article-back:hover {
	color: var(--accent);
	border: none;
}

.article-back::before {
	content: '←';
	font-style: normal;
}

/* ─── Mobile ───────────────────────────────────────────────── */
@media (max-width: 768px) {
	.article {
		padding: 5.5rem 1.2rem 5rem;
	}

	.article h1 {
		font-size: clamp(1.3rem, 6vw, 1.8rem);
	}

	.article pre {
		padding: 0.9rem 1rem;
		font-size: 0.72rem;
	}

	.article table {
		display: block;
		overflow-x: auto;
	}
}