/* 温润纸感 · 衬线阅读风 */
:root {
  --mz-bg: #faf7f2;
  --mz-surface: #fffdf9;
  --mz-ink: #2f2b26;
  --mz-ink-soft: #5c554c;
  --mz-ink-mute: #8b8278;
  --mz-line: #e6ded2;
  --mz-accent: #8a6f4e;
  --mz-accent-soft: #b39a78;
}
html, body {
  background-color: var(--mz-bg) !important;
  color: var(--mz-ink) !important;
  font-family: Georgia, "Songti SC", "Noto Serif SC", "Source Han Serif SC", STSong, serif !important;
  font-size: 17px;
  line-height: 1.85;
  -webkit-font-smoothing: antialiased;
}
body { letter-spacing: .01em; }
.site, .ast-container { max-width: 760px !important; margin: 0 auto !important; }
#masthead, .site-header {
  background: transparent !important;
  border-bottom: 1px solid var(--mz-line) !important;
  padding: 1.1rem 0 !important;
}
.site-title, .site-title a {
  font-family: Georgia, "Songti SC", "Noto Serif SC", serif !important;
  font-size: 1.65rem !important;
  font-weight: 500 !important;
  letter-spacing: .06em !important;
  color: var(--mz-ink) !important;
}
.site-description { color: var(--mz-ink-mute) !important; font-size: .88rem !important; letter-spacing: .04em; }
.main-header-menu a, .ast-nav-menu a, nav a {
  font-family: -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: .93rem !important;
  color: var(--mz-ink-soft) !important;
  letter-spacing: .05em;
  transition: color .2s ease;
}
.main-header-menu a:hover, .ast-nav-menu a:hover, nav a:hover { color: var(--mz-accent) !important; }
h1, h2, h3, h4, h5, h6, .entry-title, .entry-title a {
  font-family: Georgia, "Songti SC", "Noto Serif SC", serif !important;
  color: var(--mz-ink) !important;
  letter-spacing: .02em;
  line-height: 1.45;
  font-weight: 500 !important;
}
.entry-title a:hover { color: var(--mz-accent) !important; }
.entry-content, .ast-single-post .entry-content, .entry-content p {
  color: var(--mz-ink-soft) !important;
  font-size: 17px;
  line-height: 1.9;
}
.entry-content p { margin-bottom: 1.35em; }
.entry-content a { color: var(--mz-accent) !important; text-decoration: none; border-bottom: 1px solid var(--mz-accent-soft); }
.entry-content a:hover { color: var(--mz-accent-soft) !important; }
.entry-content img { border-radius: 4px; margin: 1.6em auto; }
blockquote {
  background: var(--mz-surface) !important;
  border-left: 3px solid var(--mz-accent-soft) !important;
  color: var(--mz-ink-soft) !important;
  padding: 1.1em 1.4em !important;
  margin: 1.8em 0 !important;
  font-style: normal;
  border-radius: 0 4px 4px 0;
}
blockquote p { margin: 0 !important; }
code, pre, kbd {
  font-family: "SF Mono", Menlo, Consolas, "Courier New", monospace !important;
  font-size: .88em;
  background: #f2ece2 !important;
  color: #4a3f33 !important;
  border-radius: 3px;
}
code { padding: .15em .42em; }
pre { padding: 1.1em 1.3em !important; overflow-x: auto; border: 1px solid var(--mz-line) !important; }
pre code { background: transparent !important; padding: 0; }
.post, .ast-article-post, article {
  border-bottom: 1px solid var(--mz-line) !important;
  padding-bottom: 2.4em !important;
  margin-bottom: 2.4em !important;
  background: transparent !important;
}
.entry-meta, .posted-on, .ast-post-meta, .entry-meta * {
  font-family: -apple-system, "Segoe UI", "PingFang SC", sans-serif !important;
  color: var(--mz-ink-mute) !important;
  font-size: .8rem !important;
  letter-spacing: .08em !important;
  text-transform: none;
}
.wp-block-post-date, .wp-block-post-author { color: var(--mz-ink-mute) !important; font-size: .8rem !important; }
.entry-content .wp-block-heading:after, h2.wp-block-heading:after { content: none; }
hr, .wp-block-separator {
  border: 0 !important;
  border-top: 1px solid var(--mz-line) !important;
  margin: 2.4em 0 !important;
  max-width: 100% !important;
}
button, input[type=submit], .wp-block-button__link, .ast-button, .button {
  background: var(--mz-ink) !important;
  color: #faf7f2 !important;
  border: none !important;
  border-radius: 3px !important;
  font-family: -apple-system, "PingFang SC", sans-serif !important;
  font-size: .88rem !important;
  letter-spacing: .06em;
  padding: .7em 1.6em !important;
  transition: background .2s ease;
}
button:hover, input[type=submit]:hover, .wp-block-button__link:hover, .ast-button:hover, .button:hover { background: var(--mz-accent) !important; }
input[type=text], input[type=email], input[type=search], textarea {
  background: var(--mz-surface) !important;
  border: 1px solid var(--mz-line) !important;
  border-radius: 3px !important;
  color: var(--mz-ink) !important;
  padding: .62em .9em !important;
  font-family: inherit !important;
}
input:focus, textarea:focus { border-color: var(--mz-accent-soft) !important; outline: none !important; }
.site-footer, #colophon {
  background: transparent !important;
  border-top: 1px solid var(--mz-line) !important;
  color: var(--mz-ink-mute) !important;
  font-size: .82rem !important;
  letter-spacing: .05em;
  padding: 1.8rem 0 !important;
}
.site-footer a { color: var(--mz-ink-soft) !important; }
.sidebar-main, #secondary { display: none !important; }
.widget-title { font-size: .9rem !important; letter-spacing: .08em !important; }
.wp-block-search__input { border-radius: 3px 0 0 3px !important; }
::selection { background: #e8dcc8; color: var(--mz-ink); }
.ast-post-format-, .post-thumb img { border-radius: 4px; }
@media (max-width: 768px) {
  html, body { font-size: 16px; }
  .site, .ast-container { padding-left: 1.15rem !important; padding-right: 1.15rem !important; }
  .site-title, .site-title a { font-size: 1.4rem !important; }
}

/* ===== 首页文章列表 · 纸感卡片 ===== */
.ast-blog-layout-4 .ast-article-post,
.ast-article-post.ast-grid-common-col {
  background: var(--mz-surface) !important;
  border: 1px solid var(--mz-line) !important;
  border-radius: 6px !important;
  padding: 1.9rem 2rem !important;
  margin: 0 0 1.6rem 0 !important;
  box-shadow: 0 1px 2px rgba(120,105,85,.035) !important;
  transition: box-shadow .25s ease, border-color .25s ease, transform .25s ease;
}
.ast-blog-layout-4 .ast-article-post:hover,
.ast-article-post.ast-grid-common-col:hover {
  box-shadow: 0 4px 16px rgba(120,105,85,.09) !important;
  border-color: #dbd0be !important;
  transform: translateY(-1px);
}
.ast-article-post .entry-title,
.entry-title.ast-blog-single-element {
  font-family: Georgia, "Songti SC", "Noto Serif SC", "Source Han Serif SC", STSong, serif !important;
  font-size: 1.42rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: .02em !important;
  margin: 0 0 .7rem 0 !important;
  border-bottom: none !important;
}
.ast-article-post .entry-title a {
  color: var(--mz-ink) !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent;
  transition: color .2s ease, border-color .2s ease;
}
.ast-article-post .entry-title a:hover {
  color: var(--mz-accent) !important;
  border-bottom-color: var(--mz-accent-soft) !important;
}
.ast-article-post .entry-content,
.ast-article-post .entry-summary {
  color: var(--mz-ink-soft) !important;
  font-size: .96rem !important;
  line-height: 1.9 !important;
}
.ast-article-post .entry-content p { margin-bottom: .9em !important; }
/* 元信息弱化 */
.ast-article-post .entry-meta,
.ast-article-post .entry-meta *,
.ast-article-post .posted-by,
.ast-article-post .ast-blog-single-element .posted-on {
  font-family: -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif !important;
  font-size: .78rem !important;
  letter-spacing: .06em !important;
  color: var(--mz-ink-mute) !important;
  text-transform: none !important;
}
.ast-article-post .entry-meta a { color: var(--mz-ink-mute) !important; text-decoration: none !important; }
.ast-article-post .entry-meta a:hover { color: var(--mz-accent) !important; }
.ast-article-post .ast-blog-featured-section { margin-bottom: 1.1rem !important; }
.ast-article-post .post-thumb img { border-radius: 4px !important; }
/* 阅读更多 */
.ast-article-post .ast-read-more,
.ast-article-post a.more-link {
  font-family: -apple-system, "Segoe UI", "PingFang SC", sans-serif !important;
  font-size: .8rem !important;
  letter-spacing: .12em !important;
  color: var(--mz-accent) !important;
  border-bottom: 1px solid var(--mz-accent-soft) !important;
  text-decoration: none !important;
  padding-bottom: 1px;
}
/* 分页 */
.ast-pagination, .navigation.pagination { margin-top: 2.2rem !important; }
.ast-pagination .page-numbers {
  font-family: Georgia, serif !important;
  color: var(--mz-ink-soft) !important;
  border: 1px solid var(--mz-line) !important;
  border-radius: 3px !important;
  padding: .3em .7em !important;
  text-decoration: none !important;
}
.ast-pagination .page-numbers.current {
  background: var(--mz-accent) !important;
  color: #fffdf9 !important;
  border-color: var(--mz-accent) !important;
}
/* 列表页头标题 */
.page-header .page-title, .ast-archive-description {
  font-family: Georgia, "Songti SC", serif !important;
  font-size: 1.1rem !important;
  letter-spacing: .1em !important;
  color: var(--mz-ink-mute) !important;
  border-bottom: 1px solid var(--mz-line) !important;
  padding-bottom: .8rem !important;
}
/* PATCH-V2 */
/* ===== 覆盖 Astra 深色页头遗留配色（浅底适配）===== */
.ast-builder-menu-1 .menu-item > .menu-link,
.ast-builder-menu-1 .menu-item > .ast-menu-toggle,
.main-header-menu .menu-item > .menu-link,
.main-header-menu .menu-item > .ast-menu-toggle,
.ast-nav-menu .menu-item > .menu-link {
  color: var(--mz-ink-soft) !important;
}
.ast-builder-menu-1 .menu-item:hover > .menu-link,
.ast-builder-menu-1 .menu-item:hover > .ast-menu-toggle,
.main-header-menu .menu-item:hover > .menu-link,
.ast-nav-menu .menu-item:hover > .menu-link,
.ast-builder-menu-1 .current-menu-item > .menu-link {
  color: var(--mz-accent) !important;
}
.ast-builder-menu-1 .sub-menu,
.main-header-menu .sub-menu {
  background: var(--mz-surface) !important;
  border: 1px solid var(--mz-line) !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 14px rgba(120,105,85,.10) !important;
}
.ast-builder-menu-1 .sub-menu .menu-link,
.main-header-menu .sub-menu .menu-link { color: var(--mz-ink-soft) !important; }
.ast-builder-menu-1 .sub-menu .menu-link:hover,
.main-header-menu .sub-menu .menu-link:hover { color: var(--mz-accent) !important; }
/* 移动端菜单按钮 */
.main-header-menu .ast-mobile-menu-trigger-minimal,
.ast-mobile-menu-trigger-minimal { color: var(--mz-ink) !important; border-color: var(--mz-line) !important; }
/* 页头背景统一 */
.ast-above-header, .main-header-bar, .ast-below-header, .ast-mobile-header-wrap {
  background: transparent !important;
  border-color: var(--mz-line) !important;
}
/* 站点标题与描述定位 */
.ast-site-identity { padding: .2rem 0 !important; }
.ast-builder-layout-element .site-title a { color: var(--mz-ink) !important; }
/* 去掉 Astra 全局深色底 */
.ast-separate-container, .ast-plain-container, .ast-page-builder-template {
  background-color: var(--mz-bg) !important;
}
body.ast-separate-container .ast-article-post,
body.ast-separate-container .ast-article-single {
  background: transparent !important;
  border-bottom: none !important;
}

/* ===== 页脚备案号 ===== */
.mz-icp-footer {
  text-align: center;
  margin-top: .55rem;
  font-family: -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: .78rem;
  letter-spacing: .05em;
  line-height: 1.7;
}
.mz-icp-footer a,
.mz-icp-footer a:visited {
  color: var(--mz-ink-mute) !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent;
  padding-bottom: 1px;
  transition: color .2s ease, border-color .2s ease;
}
.mz-icp-footer a:hover {
  color: var(--mz-accent) !important;
  border-bottom-color: var(--mz-accent-soft) !important;
}
/* 页脚版权行弱化，与备案号形成层次 */
.site-footer .ast-footer-copyright,
.site-footer .ast-footer-copyright p {
  color: var(--mz-ink-mute) !important;
  font-size: .78rem !important;
  letter-spacing: .05em !important;
}
.site-footer .ast-footer-copyright a { color: var(--mz-ink-soft) !important; text-decoration: none !important; }
.site-footer .ast-footer-copyright a:hover { color: var(--mz-accent) !important; }
@media (max-width: 768px) {
  .mz-icp-footer { font-size: .74rem; }
}
