/*
Theme Name: 暖墨 Warm Ink
Theme URI: https://example.com/warm-ink
Author: Timothy
Author URI: https://example.com
Description: 一个温暖、整洁、经典的个人博客主题。以米白与陶土色为主调，衬线字体排布长文，专为神学、牧养、解经与信仰反思类写作而设计。不花哨，重阅读。
Version: 1.1.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: warm-ink
Tags: blog, one-column, two-columns, custom-menu, featured-images, translation-ready, block-styles, wide-blocks
*/

/* ==========================================================================
   1. 设计变量
   ========================================================================== */
:root {
	/* 色彩：暖色系，低饱和，不刺眼 */
	--wi-bg:            #FBF7F0;
	--wi-bg-alt:        #F4EDE1;
	--wi-surface:       #FFFFFF;
	--wi-text:          #33291F;
	--wi-text-soft:     #6B5B4A;
	--wi-text-mute:     #9A8A7C;
	--wi-border:        #E7DDCE;
	--wi-border-soft:   #F1EADF;

	--wi-accent:        #A34A28;
	--wi-accent-hover:  #86391B;
	--wi-accent-tint:   #F7E9DF;
	--wi-gold:          #C08A3E;
	--wi-gold-tint:     #F9F0DD;

	/* 字体：标题与正文用衬线，界面元素用无衬线 */
	--wi-serif: "Noto Serif SC", "Source Han Serif SC", "Source Han Serif CN",
	            "Songti SC", "STSong", "SimSun", Georgia, "Times New Roman", serif;
	--wi-sans:  -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
	            "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC",
	            "Noto Sans CJK SC", "Helvetica Neue", Arial, sans-serif;
	--wi-mono:  ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

	/* 尺寸 */
	--wi-wide:   1140px;
	--wi-read:   748px;
	--wi-radius: 10px;
	--wi-radius-sm: 6px;

	/* 阴影：极轻，只在需要层次感时使用 */
	--wi-shadow:    0 1px 2px rgba(51, 41, 31, .04), 0 6px 22px rgba(51, 41, 31, .055);
	--wi-shadow-lg: 0 2px 6px rgba(51, 41, 31, .05), 0 14px 40px rgba(51, 41, 31, .08);

	--wi-ease: cubic-bezier(.22, .61, .36, 1);
}

/* ==========================================================================
   2. 基础重置
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background-color: var(--wi-bg);
	/* 极淡的暖色纹理，避免大面积纯色的呆板 */
	background-image:
		radial-gradient(circle at 12% 8%, rgba(192, 138, 62, .05), transparent 42%),
		radial-gradient(circle at 88% 2%, rgba(163, 74, 40, .045), transparent 38%);
	background-attachment: fixed;
	color: var(--wi-text);
	font-family: var(--wi-sans);
	font-size: var(--wi-body-size, 17px);
	line-height: 1.85;
	font-weight: 400;
	letter-spacing: .01em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img, svg, video, iframe { max-width: 100%; height: auto; }
figure { margin: 0; }

a {
	color: var(--wi-accent);
	text-decoration: none;
	transition: color .18s var(--wi-ease);
}
a:hover, a:focus { color: var(--wi-accent-hover); }

hr {
	border: 0;
	height: 1px;
	background: var(--wi-border);
	margin: 2.4em 0;
}

::selection { background: var(--wi-accent-tint); color: var(--wi-text); }

:focus-visible {
	outline: 2px solid var(--wi-accent);
	outline-offset: 3px;
	border-radius: 3px;
}

/* 无障碍：屏幕阅读器专用 */
.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; width: 1px; margin: -1px; padding: 0;
	overflow: hidden; position: absolute !important; word-wrap: normal !important;
}
.screen-reader-text:focus {
	background: var(--wi-surface); border-radius: var(--wi-radius-sm);
	box-shadow: var(--wi-shadow-lg); clip: auto !important; clip-path: none;
	color: var(--wi-accent); display: block; font-size: 15px; font-weight: 600;
	height: auto; left: 24px; top: 24px; line-height: normal; padding: 14px 20px;
	text-decoration: none; width: auto; z-index: 100000;
}

/* ==========================================================================
   3. 版式骨架
   ========================================================================== */
.wi-container {
	width: 100%;
	max-width: var(--wi-wide);
	margin: 0 auto;
	padding: 0 28px;
}
.wi-container--read { max-width: calc(var(--wi-read) + 56px); }
.wi-container--narrow { max-width: calc(var(--wi-read) + 56px); }

.wi-main { min-height: 40vh; padding-bottom: 88px; }

/* ==========================================================================
   4. 页头
   ========================================================================== */
.wi-header {
	background: rgba(251, 247, 240, .88);
	backdrop-filter: saturate(140%) blur(10px);
	-webkit-backdrop-filter: saturate(140%) blur(10px);
	border-bottom: 1px solid var(--wi-border-soft);
	position: sticky;
	top: 0;
	z-index: 50;
}

.wi-header__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding-top: 26px;
	padding-bottom: 0;
	text-align: center;
}

.wi-brand { display: flex; flex-direction: column; align-items: center; gap: 4px; }

.wi-brand__title {
	margin: 0;
	font-family: var(--wi-serif);
	font-size: clamp(24px, 3.4vw, 31px);
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
}
.wi-brand__title a { color: var(--wi-text); }
.wi-brand__title a:hover { color: var(--wi-accent); }

.wi-brand__tagline {
	margin: 0;
	font-size: 13.5px;
	color: var(--wi-text-mute);
	letter-spacing: .12em;
}

/* 自定义 Logo 时的约束 */
.custom-logo { max-height: 56px; width: auto; }

/* ==========================================================================
   5. 主导航
   ========================================================================== */
.wi-nav { width: 100%; }

.wi-nav__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 2px;
	list-style: none;
	margin: 14px 0 0;
	padding: 0;
}

.wi-nav__list li { margin: 0; }

.wi-nav__list a {
	display: inline-block;
	padding: 9px 15px 11px;
	color: var(--wi-text-soft);
	font-size: 14.5px;
	font-weight: 500;
	letter-spacing: .06em;
	position: relative;
	transition: color .18s var(--wi-ease);
}

.wi-nav__list a::after {
	content: "";
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 4px;
	height: 2px;
	background: var(--wi-accent);
	border-radius: 2px;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform .24s var(--wi-ease);
}

.wi-nav__list a:hover { color: var(--wi-accent); }
.wi-nav__list a:hover::after { transform: scaleX(1); }

.wi-nav__list .current-menu-item > a,
.wi-nav__list .current_page_item > a { color: var(--wi-accent); font-weight: 600; }
.wi-nav__list .current-menu-item > a::after,
.wi-nav__list .current_page_item > a::after { transform: scaleX(1); }

/* 下拉子菜单 */
.wi-nav__list .sub-menu {
	display: none;
	position: absolute;
	list-style: none;
	margin: 0;
	padding: 8px;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius);
	box-shadow: var(--wi-shadow-lg);
	min-width: 180px;
}
.wi-nav__list li { position: relative; }
.wi-nav__list li:hover > .sub-menu { display: block; }
.wi-nav__list .sub-menu a { display: block; padding: 8px 14px; text-align: left; }
.wi-nav__list .sub-menu a::after { display: none; }

/* ==========================================================================
   6. 页面标题区（分类 / 搜索 / 归档）
   ========================================================================== */
.wi-page-head {
	padding: 58px 0 34px;
	text-align: center;
	border-bottom: 1px solid var(--wi-border-soft);
	margin-bottom: 52px;
}

.wi-page-head__eyebrow {
	margin: 0 0 12px;
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--wi-gold);
}

.wi-page-head__title {
	margin: 0;
	font-family: var(--wi-serif);
	font-size: clamp(26px, 4vw, 36px);
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: .02em;
}

.wi-page-head__desc {
	max-width: 620px;
	margin: 16px auto 0;
	color: var(--wi-text-soft);
	font-size: 16px;
	line-height: 1.8;
}

.wi-page-head__desc p:last-child { margin-bottom: 0; }

/* 装饰性分隔：一条细线加中央的小菱形 */
.wi-ornament {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin: 22px auto 0;
	max-width: 190px;
	color: var(--wi-gold);
}
.wi-ornament::before, .wi-ornament::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--wi-border), transparent);
}
.wi-ornament span { font-size: 11px; line-height: 1; }

/* ==========================================================================
   7. 头图文章（首页置顶）
   ========================================================================== */
.wi-hero {
	position: relative;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius);
	box-shadow: var(--wi-shadow);
	overflow: hidden;
	margin-bottom: 44px;
	display: grid;
	grid-template-columns: 1fr;
	transition: box-shadow .3s var(--wi-ease), transform .3s var(--wi-ease);
}
.wi-hero:hover { box-shadow: var(--wi-shadow-lg); transform: translateY(-2px); }

.wi-hero__media { display: block; overflow: hidden; }
.wi-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 340px;
	object-fit: cover;
	transition: transform .6s var(--wi-ease);
}
.wi-hero:hover .wi-hero__media img { transform: scale(1.025); }

.wi-hero__text { padding: 42px 44px 46px; }

.wi-hero__title {
	margin: 14px 0 0;
	font-family: var(--wi-serif);
	font-size: clamp(25px, 3.6vw, 33px);
	font-weight: 600;
	line-height: 1.42;
	letter-spacing: .015em;
}
.wi-hero__title a { color: var(--wi-text); }
.wi-hero__title a:hover { color: var(--wi-accent); }

.wi-hero__excerpt {
	margin: 18px 0 0;
	color: var(--wi-text-soft);
	font-size: 16.5px;
	line-height: 1.9;
}

.wi-hero__meta { margin: 16px 0 0; }

/* 有图时并排 */
@media (min-width: 900px) {
	.wi-hero--media { grid-template-columns: 1.05fr .95fr; }
	.wi-hero--media .wi-hero__media { order: 2; }
	.wi-hero--media .wi-hero__text { order: 1; display: flex; flex-direction: column; justify-content: center; }
	.wi-hero--media .wi-hero__media img { max-height: none; height: 100%; min-height: 320px; }
}

/* ==========================================================================
   8. 文章列表（卡片网格）
   ========================================================================== */
.wi-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 30px;
}

.wi-card {
	display: flex;
	flex-direction: column;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius);
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(51, 41, 31, .035);
	transition: box-shadow .3s var(--wi-ease), transform .3s var(--wi-ease), border-color .3s var(--wi-ease);
}
.wi-card:hover {
	box-shadow: var(--wi-shadow-lg);
	transform: translateY(-3px);
	border-color: #DCCFBB;
}

.wi-card__media { display: block; overflow: hidden; background: var(--wi-bg-alt); }
.wi-card__media img {
	display: block; width: 100%; height: 196px; object-fit: cover;
	transition: transform .6s var(--wi-ease);
}
.wi-card:hover .wi-card__media img { transform: scale(1.04); }

.wi-card__body { padding: 26px 28px 30px; display: flex; flex-direction: column; flex: 1; }

.wi-card__title {
	margin: 12px 0 0;
	font-family: var(--wi-serif);
	font-size: 20.5px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .012em;
}
.wi-card__title a { color: var(--wi-text); }
.wi-card__title a:hover { color: var(--wi-accent); }

.wi-card__excerpt {
	margin: 12px 0 0;
	color: var(--wi-text-soft);
	font-size: 15px;
	line-height: 1.82;
	flex: 1;
}

.wi-card__meta { margin: 14px 0 0; }

/* 列表式（分类归档可选） */
.wi-list { display: flex; flex-direction: column; gap: 0; }
.wi-list .wi-card {
	border: 0; border-bottom: 1px solid var(--wi-border-soft);
	border-radius: 0; box-shadow: none; background: transparent;
}
.wi-list .wi-card:hover { transform: none; box-shadow: none; border-color: var(--wi-border); }
.wi-list .wi-card__body { padding: 30px 0 34px; }
.wi-list .wi-card__media { display: none; }

/* ==========================================================================
   9. 分类徽标与元信息
   ========================================================================== */
.wi-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	/* 关键：卡片正文是 flex 纵向容器，不加这句徽标会被拉成整行宽 */
	align-self: flex-start;
	font-family: var(--wi-sans);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .09em;
	padding: 4px 11px 5px;
	border-radius: 100px;
	line-height: 1.5;
	white-space: nowrap;
	transition: background .2s var(--wi-ease);
}
.wi-badge::before {
	content: "";
	width: 6px; height: 6px; border-radius: 50%;
	background: currentColor; opacity: .85;
	flex: none;
}

.wi-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-family: var(--wi-sans);
	font-size: 13.5px;
	color: var(--wi-text-mute);
	letter-spacing: .03em;
}
/* 分隔符挂在「后一项」的前面，换行时不会孤零零留在行尾 */
.wi-meta__item + .wi-meta__item::before {
	content: "·";
	margin: 0 12px;
	color: #D9CDBB;
}
.wi-meta a { color: var(--wi-text-mute); }
.wi-meta a:hover { color: var(--wi-accent); }

/* 元信息在不同容器里的间距 */
.wi-hero .wi-meta { margin-top: 18px; }
.wi-card .wi-meta { margin-top: 14px; }
.wi-list .wi-card .wi-meta { margin-top: 12px; }

/* 区块小标题（首页「近期文章」等） */
.wi-section-label {
	display: flex;
	align-items: center;
	gap: 18px;
	margin: 0 0 30px;
	font-family: var(--wi-sans);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--wi-gold);
}
.wi-section-label::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, var(--wi-border), transparent);
}

/* 多页文章的页码链接 */
.wi-link-pages {
	margin-top: 2em;
	font-family: var(--wi-sans);
	font-size: 14.5px;
	color: var(--wi-text-mute);
}
.wi-link-pages a {
	display: inline-block;
	margin: 0 3px;
	padding: 4px 11px;
	background: var(--wi-bg-alt);
	border-radius: var(--wi-radius-sm);
	text-decoration: none;
}

/* 评论分页（复用分页外观） */
.wi-comments .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	margin: 0 3px;
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius-sm);
	background: var(--wi-surface);
	color: var(--wi-text-soft);
	font-size: 14px;
}
.wi-comments .page-numbers.current { background: var(--wi-accent); border-color: var(--wi-accent); color: #fff; }

.wi-comments__closed {
	margin-top: 40px;
	padding: 16px 20px;
	background: var(--wi-bg-alt);
	border-radius: var(--wi-radius-sm);
	font-size: 15px;
	color: var(--wi-text-mute);
	text-align: center;
}

/* ==========================================================================
   10. 按钮
   ========================================================================== */
.wi-btn {
	display: inline-block;
	margin-top: 26px;
	padding: 11px 24px;
	background: var(--wi-accent);
	color: #fff;
	border-radius: 100px;
	font-family: var(--wi-sans);
	font-size: 14.5px;
	font-weight: 500;
	letter-spacing: .08em;
	align-self: flex-start;
	transition: background .2s var(--wi-ease), transform .2s var(--wi-ease);
}
.wi-btn:hover { background: var(--wi-accent-hover); color: #fff; transform: translateY(-1px); }

.wi-btn--ghost {
	background: transparent;
	color: var(--wi-accent);
	border: 1px solid var(--wi-border);
}
.wi-btn--ghost:hover { background: var(--wi-accent-tint); color: var(--wi-accent-hover); }

/* ==========================================================================
   11. 分页
   ========================================================================== */
.wi-pagination { margin: 62px 0 0; }

.wi-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.wi-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 13px;
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius-sm);
	background: var(--wi-surface);
	color: var(--wi-text-soft);
	font-size: 15px;
	transition: all .2s var(--wi-ease);
}
.wi-pagination .page-numbers:hover { border-color: var(--wi-accent); color: var(--wi-accent); }
.wi-pagination .page-numbers.current {
	background: var(--wi-accent); border-color: var(--wi-accent);
	color: #fff; font-weight: 600;
}
.wi-pagination .page-numbers.dots { border-color: transparent; background: transparent; }

/* ==========================================================================
   12. 单篇文章
   ========================================================================== */
.wi-post { margin-top: 54px; }

.wi-post__header { text-align: center; margin-bottom: 40px; }

.wi-post__title {
	margin: 16px 0 0;
	font-family: var(--wi-serif);
	font-size: clamp(28px, 4.6vw, 40px);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .012em;
}

.wi-post__meta { justify-content: center; margin-top: 20px; }

.wi-post__thumb {
	margin: 0 0 44px;
	border-radius: var(--wi-radius);
	overflow: hidden;
	box-shadow: var(--wi-shadow);
}
.wi-post__thumb img { display: block; width: 100%; }

/* ==========================================================================
   13. 正文排版（核心）
   ========================================================================== */
.wi-entry {
	font-family: var(--wi-serif);
	font-size: var(--wi-entry-size, 18px);
	line-height: 2.05;
	color: #3B3025;
	letter-spacing: .012em;
}

.wi-entry > *:first-child { margin-top: 0; }

.wi-entry p { margin: 0 0 1.55em; }

.wi-entry h2, .wi-entry h3, .wi-entry h4, .wi-entry h5, .wi-entry h6 {
	font-family: var(--wi-serif);
	font-weight: 600;
	line-height: 1.5;
	color: var(--wi-text);
	letter-spacing: .015em;
	scroll-margin-top: 96px;
}

.wi-entry h2 {
	margin: 2.3em 0 .85em;
	font-size: 25px;
	padding-bottom: .42em;
	border-bottom: 1px solid var(--wi-border-soft);
}
.wi-entry h3 { margin: 2em 0 .7em; font-size: 21px; }
.wi-entry h4 { margin: 1.8em 0 .6em; font-size: 18.5px; }
.wi-entry h5, .wi-entry h6 { margin: 1.6em 0 .5em; font-size: 17px; color: var(--wi-text-soft); }

.wi-entry a {
	color: var(--wi-accent);
	text-decoration: underline;
	text-decoration-color: rgba(163, 74, 40, .32);
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
	transition: text-decoration-color .2s var(--wi-ease), color .18s var(--wi-ease);
}
.wi-entry a:hover { color: var(--wi-accent-hover); text-decoration-color: currentColor; }

.wi-entry strong { font-weight: 700; color: var(--wi-text); }
.wi-entry em { font-style: italic; }

.wi-entry ul, .wi-entry ol { margin: 0 0 1.55em; padding-left: 1.5em; }
.wi-entry li { margin-bottom: .5em; }
.wi-entry li::marker { color: var(--wi-gold); }
.wi-entry ul ul, .wi-entry ol ol, .wi-entry ul ol, .wi-entry ol ul { margin-bottom: 0; margin-top: .5em; }

/* 引用：左侧暖色竖线 + 浅底 */
.wi-entry blockquote {
	margin: 2em 0;
	padding: 22px 28px 22px 30px;
	background: linear-gradient(90deg, var(--wi-accent-tint), rgba(247, 233, 223, .35));
	border-left: 3px solid var(--wi-accent);
	border-radius: 0 var(--wi-radius-sm) var(--wi-radius-sm) 0;
	color: #4A3B2C;
	font-style: normal;
}
.wi-entry blockquote p:last-child { margin-bottom: 0; }
.wi-entry blockquote cite {
	display: block;
	margin-top: .8em;
	font-family: var(--wi-sans);
	font-size: 14px;
	font-style: normal;
	color: var(--wi-text-mute);
	letter-spacing: .04em;
}
.wi-entry blockquote cite::before { content: "— "; }

/* 经文引用样式
   在编辑器里给「引文」块选择「经文引用」样式即可（生成 .is-style-wi-verse 类） */
.wi-entry blockquote.is-style-wi-verse {
	margin: 2.2em 0;
	padding: 26px 30px;
	background: var(--wi-gold-tint);
	border: 1px solid #EFE0C4;
	border-left: 1px solid #EFE0C4;
	border-radius: var(--wi-radius);
	font-size: 17.5px;
	line-height: 1.95;
	color: #4A3B2C;
	text-align: center;
}
.wi-entry blockquote.is-style-wi-verse p { margin-bottom: .55em; }
.wi-entry blockquote.is-style-wi-verse p:last-of-type { margin-bottom: 0; }
.wi-entry blockquote.is-style-wi-verse cite {
	display: block;
	margin-top: .7em;
	font-family: var(--wi-sans);
	font-size: 14px;
	font-style: normal;
	color: var(--wi-gold);
	letter-spacing: .08em;
}
.wi-entry blockquote.is-style-wi-verse cite::before { content: "—— "; }

/* 导语样式（编辑器里给「段落」块选择「导语」） */
.wi-entry p.is-style-wi-lead {
	font-size: 19px;
	line-height: 1.95;
	color: var(--wi-text-soft);
	padding-left: 20px;
	border-left: 2px solid var(--wi-gold);
	margin-bottom: 1.8em;
}

.wi-entry img { border-radius: var(--wi-radius-sm); }

.wi-entry figure { margin: 2em 0; }
.wi-entry figcaption {
	margin-top: 12px;
	font-family: var(--wi-sans);
	font-size: 13.5px;
	color: var(--wi-text-mute);
	text-align: center;
	line-height: 1.7;
}

.wi-entry code {
	font-family: var(--wi-mono);
	font-size: .88em;
	background: var(--wi-bg-alt);
	padding: .16em .42em;
	border-radius: 4px;
	color: #7A4A22;
}

.wi-entry pre {
	margin: 2em 0;
	padding: 20px 24px;
	background: #2E2720;
	color: #EFE6DA;
	border-radius: var(--wi-radius);
	overflow-x: auto;
	font-family: var(--wi-mono);
	font-size: 14.5px;
	line-height: 1.75;
}
.wi-entry pre code { background: none; color: inherit; padding: 0; font-size: inherit; }

.wi-entry table {
	width: 100%;
	margin: 2em 0;
	border-collapse: collapse;
	font-family: var(--wi-sans);
	font-size: 15.5px;
}
.wi-entry th, .wi-entry td {
	padding: 12px 16px;
	border-bottom: 1px solid var(--wi-border);
	text-align: left;
}
.wi-entry th {
	background: var(--wi-bg-alt);
	font-weight: 600;
	color: var(--wi-text);
	border-bottom-color: #DFD3C1;
}
.wi-entry tbody tr:hover { background: rgba(244, 237, 225, .45); }

/* 分隔线：居中短横线，克制不抢眼
   注：hr 是空元素，伪元素支持不可靠，故只用背景做样式 */
.wi-entry hr {
	border: 0;
	height: 1px;
	width: 120px;
	margin: 2.8em auto;
	background: linear-gradient(90deg, transparent, var(--wi-border), transparent);
}

.wi-entry .wp-block-separator {
	border: 0;
	max-width: 120px;
	margin: 2.8em auto;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--wi-border), transparent);
}

/* 正文中的装饰分隔符（需在编辑器里用自定义 HTML 手动放置） */
.wi-entry .wi-divider {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin: 2.8em auto;
	max-width: 200px;
	color: var(--wi-gold);
	font-size: 12px;
	line-height: 1;
}
.wi-entry .wi-divider::before,
.wi-entry .wi-divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--wi-border), transparent);
}

/* 首段稍微放大，经典报刊做法 */
.wi-entry > p:first-of-type {
	font-size: calc(var(--wi-entry-size, 18px) + 0.5px);
	color: #33291F;
}

/* ==========================================================================
   14. 文章页脚（标签）与前后篇导航
   ========================================================================== */
.wi-post__footer {
	margin-top: 56px;
	padding-top: 30px;
	border-top: 1px solid var(--wi-border-soft);
}

.wi-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 9px;
	font-family: var(--wi-sans);
	font-size: 13.5px;
	color: var(--wi-text-mute);
}
.wi-tags a {
	padding: 5px 13px;
	background: var(--wi-bg-alt);
	border-radius: 100px;
	color: var(--wi-text-soft);
	transition: all .2s var(--wi-ease);
}
.wi-tags a:hover { background: var(--wi-accent-tint); color: var(--wi-accent); }

.wi-post-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-top: 34px;
}
.wi-post-nav__item {
	display: flex;
	flex-direction: column;
	gap: 7px;
	padding: 20px 24px;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius);
	transition: all .25s var(--wi-ease);
}
.wi-post-nav__item:hover { border-color: var(--wi-accent); box-shadow: var(--wi-shadow); }
.wi-post-nav__item--next { text-align: right; }
.wi-post-nav__label {
	font-family: var(--wi-sans);
	font-size: 12px;
	letter-spacing: .16em;
	color: var(--wi-text-mute);
	text-transform: uppercase;
}
.wi-post-nav__title {
	font-family: var(--wi-serif);
	font-size: 16.5px;
	font-weight: 600;
	line-height: 1.55;
	color: var(--wi-text);
}
.wi-post-nav__item:hover .wi-post-nav__title { color: var(--wi-accent); }
.wi-post-nav__item--empty { visibility: hidden; }

/* ==========================================================================
   15. 评论
   ========================================================================== */
.wi-comments { margin-top: 66px; }

.wi-comments__title,
.comment-reply-title {
	font-family: var(--wi-serif);
	font-size: 21px;
	font-weight: 600;
	margin: 0 0 26px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--wi-border-soft);
}

.wi-comments .comment-list { list-style: none; margin: 0 0 40px; padding: 0; }
.wi-comments .comment-list .children { list-style: none; margin: 0; padding-left: 26px; }

.wi-comments .comment-body {
	padding: 24px 0;
	border-bottom: 1px solid var(--wi-border-soft);
}
.wi-comments .comment-author {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: var(--wi-sans);
	font-size: 15px;
	font-weight: 600;
	color: var(--wi-text);
}
.wi-comments .comment-author .avatar {
	border-radius: 50%;
	width: 40px; height: 40px;
}
.wi-comments .comment-author .says { display: none; }
.wi-comments .comment-meta {
	margin-top: 6px;
	font-family: var(--wi-sans);
	font-size: 13px;
	color: var(--wi-text-mute);
}
.wi-comments .comment-content { margin-top: 14px; font-size: 16px; line-height: 1.9; }
.wi-comments .comment-content p:last-child { margin-bottom: 0; }
.wi-comments .reply { margin-top: 12px; font-family: var(--wi-sans); font-size: 13.5px; }

.wi-comments .comment-respond {
	margin-top: 34px;
	padding: 32px 34px 36px;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius);
}

.wi-comments .comment-form p { margin: 0 0 18px; }
.wi-comments .comment-form label {
	display: block;
	margin-bottom: 7px;
	font-family: var(--wi-sans);
	font-size: 14px;
	font-weight: 500;
	color: var(--wi-text-soft);
}
.wi-comments .comment-form input[type="text"],
.wi-comments .comment-form input[type="email"],
.wi-comments .comment-form input[type="url"],
.wi-comments .comment-form textarea {
	width: 100%;
	padding: 12px 15px;
	background: var(--wi-bg);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius-sm);
	font-family: var(--wi-sans);
	font-size: 15.5px;
	color: var(--wi-text);
	transition: border-color .2s var(--wi-ease), box-shadow .2s var(--wi-ease);
}
.wi-comments .comment-form textarea { min-height: 150px; resize: vertical; line-height: 1.85; }
.wi-comments .comment-form input:focus,
.wi-comments .comment-form textarea:focus {
	outline: none;
	border-color: var(--wi-accent);
	box-shadow: 0 0 0 3px var(--wi-accent-tint);
}
.wi-comments .comment-form .form-submit { margin-bottom: 0; }
.wi-comments .comment-form input[type="submit"],
.wi-comments .comment-form .submit {
	padding: 12px 30px;
	background: var(--wi-accent);
	color: #fff;
	border: 0;
	border-radius: 100px;
	font-family: var(--wi-sans);
	font-size: 15px;
	font-weight: 500;
	letter-spacing: .08em;
	cursor: pointer;
	transition: background .2s var(--wi-ease), transform .2s var(--wi-ease);
}
.wi-comments .comment-form input[type="submit"]:hover,
.wi-comments .comment-form .submit:hover { background: var(--wi-accent-hover); transform: translateY(-1px); }

.wi-comments .comment-notes,
.wi-comments .logged-in-as,
.wi-comments .comment-form-cookies-consent {
	font-family: var(--wi-sans);
	font-size: 13.5px;
	color: var(--wi-text-mute);
}
.wi-comments .comment-form-cookies-consent label { display: inline; margin-left: 6px; }

/* ==========================================================================
   16. 页面（独立页面）
   ========================================================================== */
.wi-page { margin-top: 54px; }
.wi-page__title {
	margin: 0 0 34px;
	font-family: var(--wi-serif);
	font-size: clamp(26px, 4vw, 36px);
	font-weight: 600;
	text-align: center;
	line-height: 1.4;
}
.wi-page__title::after {
	content: "";
	display: block;
	width: 52px;
	height: 2px;
	margin: 20px auto 0;
	background: var(--wi-gold);
	border-radius: 2px;
}

/* ==========================================================================
   17. 搜索
   ========================================================================== */
.wi-search-form { display: flex; gap: 10px; max-width: 520px; margin: 0 auto; }
.wi-search-form input[type="search"] {
	flex: 1;
	padding: 12px 16px;
	background: var(--wi-surface);
	border: 1px solid var(--wi-border);
	border-radius: var(--wi-radius-sm);
	font-family: var(--wi-sans);
	font-size: 15.5px;
	color: var(--wi-text);
}
.wi-search-form input[type="search"]:focus {
	outline: none;
	border-color: var(--wi-accent);
	box-shadow: 0 0 0 3px var(--wi-accent-tint);
}
.wi-search-form button {
	padding: 12px 24px;
	background: var(--wi-accent);
	color: #fff;
	border: 0;
	border-radius: var(--wi-radius-sm);
	font-family: var(--wi-sans);
	font-size: 15px;
	cursor: pointer;
	transition: background .2s var(--wi-ease);
}
.wi-search-form button:hover { background: var(--wi-accent-hover); }

/* ==========================================================================
   18. 空状态与 404
   ========================================================================== */
.wi-empty {
	padding: 80px 30px;
	text-align: center;
	background: var(--wi-surface);
	border: 1px dashed var(--wi-border);
	border-radius: var(--wi-radius);
}
.wi-empty__title {
	margin: 0 0 12px;
	font-family: var(--wi-serif);
	font-size: 23px;
	font-weight: 600;
}
.wi-empty p { color: var(--wi-text-soft); margin: 0 0 24px; }

.wi-404__code {
	margin: 0;
	font-family: var(--wi-serif);
	font-size: clamp(64px, 14vw, 108px);
	font-weight: 600;
	line-height: 1;
	color: var(--wi-accent);
	letter-spacing: .04em;
	opacity: .9;
}

/* ==========================================================================
   19. 页脚
   ========================================================================== */
.wi-footer {
	margin-top: 40px;
	background: var(--wi-bg-alt);
	border-top: 1px solid var(--wi-border);
	padding: 62px 0 34px;
}

.wi-footer__cols {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr;
	gap: 46px;
}

.wi-footer__col h3 {
	margin: 0 0 18px;
	font-family: var(--wi-sans);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--wi-gold);
}

.wi-footer__about {
	margin: 0;
	font-size: 15.5px;
	line-height: 1.9;
	color: var(--wi-text-soft);
	max-width: 38ch;
}

.wi-footer__name {
	font-family: var(--wi-serif);
	font-size: 20px;
	font-weight: 600;
	color: var(--wi-text);
	margin: 0 0 10px;
}

.wi-footer__list { list-style: none; margin: 0; padding: 0; }
.wi-footer__list li { margin-bottom: 10px; }
.wi-footer__list a {
	color: var(--wi-text-soft);
	font-size: 15px;
	transition: color .18s var(--wi-ease);
}
.wi-footer__list a:hover { color: var(--wi-accent); }
.wi-footer__list .count { color: var(--wi-text-mute); font-size: 13px; }

.wi-footer__bottom {
	margin-top: 50px;
	padding-top: 26px;
	border-top: 1px solid var(--wi-border);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	font-family: var(--wi-sans);
	font-size: 13.5px;
	color: var(--wi-text-mute);
	letter-spacing: .03em;
}
.wi-footer__bottom a { color: var(--wi-text-mute); }
.wi-footer__bottom a:hover { color: var(--wi-accent); }

/* ==========================================================================
   20. WordPress 核心类兼容
   ========================================================================== */
.alignleft { float: left; margin: .5em 1.6em 1.2em 0; }
.alignright { float: right; margin: .5em 0 1.2em 1.6em; }
.aligncenter { display: block; margin: 1.6em auto; }
.alignwide { margin-left: -60px; margin-right: -60px; max-width: calc(100% + 120px); }
.alignfull { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; width: 100vw; }

.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { font-size: 13.5px; color: var(--wi-text-mute); text-align: center; }
.bypostauthor { display: block; }
.sticky .wi-card__title a::after {
	content: "置顶";
	display: inline-block;
	margin-left: 10px;
	padding: 2px 9px;
	background: var(--wi-gold-tint);
	color: var(--wi-gold);
	font-family: var(--wi-sans);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .08em;
	border-radius: 100px;
	vertical-align: middle;
}

.wi-entry .wp-block-quote { border-left: 3px solid var(--wi-accent); }
.wi-entry .wp-block-quote.is-style-large { padding: 28px 32px; }
.wi-entry .wp-block-quote.is-style-large p { font-size: 21px; line-height: 1.8; }
.wi-entry .wp-block-pullquote { border: 0; padding: 2em 0; text-align: center; }
.wi-entry .wp-block-pullquote blockquote { background: none; border: 0; padding: 0; }
.wi-entry .wp-block-pullquote p { font-size: 23px; line-height: 1.75; font-family: var(--wi-serif); }
.wi-entry .wp-block-image figcaption { font-family: var(--wi-sans); }

/* ==========================================================================
   21. 响应式
   ========================================================================== */
@media (max-width: 900px) {
	.wi-footer__cols { grid-template-columns: 1fr 1fr; gap: 36px; }
	.wi-footer__col:first-child { grid-column: 1 / -1; }
	.alignwide { margin-left: 0; margin-right: 0; max-width: 100%; }
}

@media (max-width: 720px) {
	body { font-size: calc(var(--wi-body-size, 17px) - 0.5px); }
	.wi-container { padding: 0 20px; }

	.wi-header__inner { padding-top: 20px; }
	.wi-brand__tagline { font-size: 12.5px; letter-spacing: .08em; }

	.wi-nav__list { gap: 0; margin-top: 10px; flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
	.wi-nav__list::-webkit-scrollbar { display: none; }
	/* 收紧到 6 个分类能在一屏内排下；排不下时可横向滑动 */
	.wi-nav__list a { padding: 9px 9px 11px; font-size: 13.5px; letter-spacing: .02em; white-space: nowrap; }
	.wi-nav__list a::after { left: 9px; right: 9px; }

	.wi-page-head { padding: 40px 0 26px; margin-bottom: 36px; }
	.wi-hero__text { padding: 30px 26px 34px; }
	.wi-card__body { padding: 22px 22px 26px; }
	.wi-post { margin-top: 36px; }
	.wi-entry { font-size: calc(var(--wi-entry-size, 18px) - 1px); line-height: 1.98; }
	.wi-entry h2 { font-size: 22px; }
	.wi-entry h3 { font-size: 19.5px; }
	.wi-entry > p:first-of-type { font-size: calc(var(--wi-entry-size, 18px) - 0.5px); }
	.wi-post-nav { grid-template-columns: 1fr; }
	.wi-post-nav__item--next { text-align: left; }
	.wi-comments .comment-respond { padding: 24px 20px 28px; }
	.wi-comments .comment-list .children { padding-left: 14px; }
	.wi-footer { padding: 44px 0 28px; }
	.wi-footer__cols { grid-template-columns: 1fr; gap: 32px; }
	.wi-footer__bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 420px) {
	.wi-grid { grid-template-columns: 1fr; }
	.wi-card__media img { height: 176px; }
}

/* ==========================================================================
   22. 打印（打印讲章与文章用）
   ========================================================================== */
@media print {
	body { background: #fff; color: #000; font-size: 11.5pt; }
	.wi-header, .wi-footer, .wi-post-nav, .wi-comments, .wi-pagination, .wi-badge, .wi-post__meta { display: none !important; }
	.wi-container, .wi-container--read { max-width: 100%; padding: 0; }
	.wi-post__title { font-size: 20pt; }
	.wi-entry { font-size: 11.5pt; line-height: 1.7; }
	.wi-entry a { color: #000; text-decoration: none; }
	.wi-entry h2, .wi-entry h3 { page-break-after: avoid; }
	.wi-entry blockquote { background: none; border-left: 2px solid #999; }
}
