/**
 * Typography — 字体体系与标题层级
 *
 * 中文优先系统字体（PingFang SC / Microsoft YaHei），英文同样走 system-ui，
 * 不加载任何来源不明的 Web Font。
 */

body {
	font-family: var(--tc-font-sans);
}

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 var(--tc-space-4);
	font-weight: 700;
	line-height: var(--tc-lh-tight);
	color: var(--tc-text-primary);
	letter-spacing: -0.01em;
}

h1 { font-size: var(--tc-fs-3xl); }
h2 { font-size: var(--tc-fs-2xl); }
h3 { font-size: var(--tc-fs-lg); }
h4 { font-size: var(--tc-fs-md); }
h5, h6 { font-size: var(--tc-fs-base); }

p {
	margin: 0 0 var(--tc-space-4);
}

a {
	color: var(--tc-navy-800);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: rgba(16, 47, 80, 0.35);
}

a:hover {
	color: var(--tc-navy-900);
	text-decoration-color: var(--tc-gold-500);
}

ul, ol {
	margin: 0 0 var(--tc-space-4);
	padding-left: var(--tc-space-5);
}

blockquote {
	margin: 0 0 var(--tc-space-5);
	padding: var(--tc-space-4) var(--tc-space-5);
	border-left: 3px solid var(--tc-gold-500);
	background: var(--tc-gray-050);
	color: var(--tc-text-secondary);
}

code, pre {
	font-family: var(--tc-font-mono);
	font-size: 0.9em;
}

pre {
	padding: var(--tc-space-4);
	overflow-x: auto;
	background: var(--tc-gray-050);
	border: 1px solid var(--tc-gray-200);
	border-radius: var(--tc-radius);
}

hr {
	margin: var(--tc-space-7) 0;
	border: 0;
	border-top: 1px solid var(--tc-gray-200);
}

/* 正文容器（文章 / 长文） */
.tc-prose {
	max-width: var(--tc-article-max);
}

.tc-prose > h2 {
	margin-top: var(--tc-space-7);
	padding-top: var(--tc-space-5);
	border-top: 1px solid var(--tc-gray-100);
}

/* 面包屑式小标签（模块顶部的副标题） */
.tc-eyebrow {
	margin: 0 0 var(--tc-space-2);
	font-size: var(--tc-fs-sm);
	font-weight: 600;
	letter-spacing: 0.08em;
	color: var(--tc-text-secondary);
	text-transform: uppercase;
}
