﻿:root {
	--PxTbbt: #faf9f5;
	--RJiW-Y: #ffffff;
	--djzcYq: #f5f4ed;
	--TxpV3k: #e8e6dc;
	--bezvi4: #d8d5c5;
	--mC2ePr: #1f1e1c;
	--VNk0iB: #6f6c64;
	--rXoM6j: #8a8780;
	--o6fwU6: #c96442;
	--aElIvI: #b15534;
	--zt--pG: #f0e3dc;
	--mxBkTZ: #f3f1e8;
	--NV1CGW: #e2dfd3;
	--C7CdgG: 0 1px 2px rgba(31, 30, 28, 0.04), 0 2px 8px rgba(31, 30, 28, 0.04);
	--mBl5oi: 8px;
	--y2aWao: 12px;
	--uQIlfU: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--XSyn7D: "Iowan Old Style", "Apple Garamond", Baskerville, "Times New Roman", "Droid Serif", Times, serif;
	--At7ZJE: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
	--ohy3pn: 280px;
	--IXVG2q: 760px;
}

* {
	box-sizing: border-box;
}

html,
body {
	margin: 0;
	padding: 0;
	background: var(--PxTbbt);
	color: var(--mC2ePr);
	font-family: var(--uQIlfU);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color: var(--o6fwU6);
	text-decoration: none;
}

a:hover {
	color: var(--aElIvI);
	text-decoration: underline;
}

.HcWuW2 {
	display: grid;
	grid-template-columns: var(--ohy3pn) 1fr;
	min-height: 100vh;
}

/* Sidebar */
.KsoMaP {
	background: var(--djzcYq);
	border-right: 1px solid var(--TxpV3k);
	padding: 28px 20px;
	position: sticky;
	top: 0;
	height: 100vh;
	overflow-y: auto;

	.NZjOb5 {
		width: 128px;
	}
}

.BKn7ov {
	display: block;
	font-family: var(--XSyn7D);
	font-size: 22px;
	font-weight: 500;
	color: var(--mC2ePr);
	margin-bottom: 28px;
	letter-spacing: -0.01em;
}

.BKn7ov:hover {
	color: var(--o6fwU6);
	text-decoration: none;
}

.q8pN6d {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.mdc1_M {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.N7dUmw {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: var(--VNk0iB);
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 4px 8px;
	border-radius: 6px;
}

.N7dUmw:hover {
	color: var(--mC2ePr);
	text-decoration: none;
	background: var(--zt--pG);
}

.N7dUmw.loeWEW {
	color: var(--o6fwU6);
	background: var(--zt--pG);
}

.WgK4j0 {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.R3vw_N {
	display: block;
	padding: 6px 10px;
	border-radius: 6px;
	color: var(--VNk0iB);
	font-size: 14px;
	line-height: 1.4;
}

.R3vw_N:hover {
	background: var(--RJiW-Y);
	color: var(--mC2ePr);
	text-decoration: none;
}

.R3vw_N.loeWEW {
	background: var(--zt--pG);
	color: var(--o6fwU6);
	font-weight: 500;
}

/* Content */
.dXACtD {
	padding: 56px 64px;
	max-width: calc(var(--IXVG2q) + 128px);
	width: 100%;
}

.zamc46 {
	margin-bottom: 40px;
}

.xtxrXr {
	font-size: 13px;
	color: var(--rXoM6j);
	margin-bottom: 16px;

	a,
	span {
		margin-left: 4px;
		margin-right: 4px;
	}
}

.xtxrXr a {
	color: var(--VNk0iB);
}

.xtxrXr span {
	color: var(--mC2ePr);
}

h1 {
	font-family: var(--XSyn7D);
	font-weight: 500;
	font-size: 40px;
	line-height: 1.15;
	letter-spacing: -0.02em;
	margin: 0 0 12px;
	color: var(--mC2ePr);
}

h2 {
	font-family: var(--XSyn7D);
	font-weight: 500;
	font-size: 28px;
	line-height: 1.25;
	letter-spacing: -0.01em;
	margin: 40px 0 12px;
	color: var(--mC2ePr);
}

h3 {
	font-weight: 600;
	font-size: 18px;
	line-height: 1.4;
	margin: 28px 0 8px;
	color: var(--mC2ePr);
}

p {
	margin: 0 0 16px;
}

.a0Vrwf {
	font-size: 18px;
	color: var(--VNk0iB);
	line-height: 1.55;
	margin: 0;
}

/* Section grid (home) */
.sLJi4l {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 16px;
}

.xKzNIx {
	display: block;
	background: var(--RJiW-Y);
	border: 1px solid var(--TxpV3k);
	border-radius: var(--y2aWao);
	padding: 24px;
	color: var(--mC2ePr);
	transition:
		border-color 0.15s ease,
		transform 0.15s ease,
		box-shadow 0.15s ease;
}

.xKzNIx:hover {
	border-color: var(--bezvi4);
	box-shadow: var(--C7CdgG);
	text-decoration: none;
	color: var(--mC2ePr);
}

.xKzNIx h2 {
	font-size: 20px;
	margin: 0 0 6px;
}

.xKzNIx p {
	margin: 0;
	color: var(--rXoM6j);
	font-size: 14px;
}

/* Article list (section) */
.bVS_gE {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.bVS_gE li > a {
	display: block;
	background: var(--RJiW-Y);
	border: 1px solid var(--TxpV3k);
	border-radius: var(--mBl5oi);
	padding: 18px 20px;
	color: var(--mC2ePr);
	transition:
		border-color 0.15s ease,
		box-shadow 0.15s ease;
}

.bVS_gE li > a:hover {
	border-color: var(--bezvi4);
	box-shadow: var(--C7CdgG);
	text-decoration: none;
}

.bVS_gE h3 {
	margin: 0 0 4px;
	font-size: 16px;
}

.bVS_gE p {
	margin: 0;
	color: var(--VNk0iB);
	font-size: 14px;
}

/* Article action buttons */
.vSeull {
	display: flex;
	gap: 8px;
	margin-top: 20px;
	flex-wrap: wrap;
}

.Lb3Ja5 {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 14px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--RJiW-Y);
	background: var(--o6fwU6);
	border: 1px solid var(--o6fwU6);
	border-radius: var(--mBl5oi);
	transition:
		background-color 0.15s ease,
		border-color 0.15s ease,
		color 0.15s ease;
}

.Lb3Ja5:hover {
	background: var(--aElIvI);
	border-color: var(--aElIvI);
	color: var(--RJiW-Y);
	text-decoration: none;
}

.hJ7NfT {
	background: var(--RJiW-Y);
	color: var(--mC2ePr);
	border-color: var(--bezvi4);
}

.hJ7NfT:hover {
	background: var(--djzcYq);
	color: var(--mC2ePr);
	border-color: var(--VNk0iB);
}

/* Article body (markdown output) */
.fAr3Mx {
	font-size: 16px;
	line-height: 1.7;

	p,
	li {
		strong,
		b,
		i,
		u,
		a,
		code {
			margin-left: 4px;
			margin-right: 4px;
		}
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		a {
			color: var(--mC2ePr);
		}
	}
}

.fAr3Mx img {
	max-width: 100%;
	border-radius: var(--mBl5oi);
	border: 1px solid var(--TxpV3k);
}

.fAr3Mx ul,
.fAr3Mx ol {
	padding-left: 24px;
	margin: 0 0 16px;
}

.fAr3Mx li {
	margin: 4px 0;
}

.fAr3Mx blockquote {
	margin: 16px 0;
	padding: 8px 16px;
	border-left: 3px solid var(--o6fwU6);
	background: var(--zt--pG);
	color: var(--mC2ePr);
	border-radius: 0 var(--mBl5oi) var(--mBl5oi) 0;
}

.fAr3Mx code {
	font-family: var(--At7ZJE);
	font-size: 0.92em;
	background: var(--mxBkTZ);
	border: 1px solid var(--NV1CGW);
	padding: 1px 5px;
	border-radius: 4px;
}

.fAr3Mx pre {
	background: var(--mxBkTZ);
	border: 1px solid var(--NV1CGW);
	padding: 14px 16px;
	border-radius: var(--mBl5oi);
	overflow-x: auto;
	margin: 16px 0;
	line-height: 1.5;
}

.fAr3Mx pre code {
	background: transparent;
	border: none;
	padding: 0;
	font-size: 14px;
}

.fAr3Mx table {
	border-collapse: collapse;
	width: 100%;
	margin: 16px 0;
	font-size: 14px;
}

.fAr3Mx th,
.fAr3Mx td {
	border: 1px solid var(--TxpV3k);
	padding: 8px 12px;
	text-align: left;
}

.fAr3Mx th {
	background: var(--djzcYq);
	font-weight: 600;
}

.fAr3Mx hr {
	border: none;
	border-top: 1px solid var(--TxpV3k);
	margin: 32px 0;
}

@media (max-width: 900px) {
	.HcWuW2 {
		grid-template-columns: 1fr;
	}

	.KsoMaP {
		position: static;
		height: auto;
		border-right: none;
		border-bottom: 1px solid var(--TxpV3k);
	}

	.dXACtD {
		padding: 32px 24px;
	}

	h1 {
		font-size: 32px;
	}
}
