/* ========================================
   SAYTK Tech Blog - Clean Blocksy Overrides
   ======================================== */

@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap");

:root {
  --saytk-page-bg: #fbfaf7;
  --saytk-surface: #ffffff;
  --saytk-surface-alt: #f3f0ea;
  --saytk-border: #ddd6cb;
  --saytk-text: #1a1a1a;
  --saytk-text-soft: #5f5b55;
  --saytk-text-muted: #8a847b;
  --saytk-accent: #e85d04;
  --saytk-accent-strong: #c2410c;
  --saytk-accent-glow: rgba(232, 93, 4, 0.18);
  --saytk-code-bg: #18181b;
  --saytk-code-text: #f8fafc;
  --saytk-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
  /* 侧栏小卡片：细边框 + 轻阴影（避免「窗口感」过重） */
  --saytk-sidebar-card-border: color-mix(in srgb, var(--saytk-border) 52%, var(--saytk-page-bg));
  --saytk-sidebar-card-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 1px 6px rgba(15, 23, 42, 0.035);
}

html[data-theme="dark"] {
  --saytk-page-bg: #0f0f17;
  --saytk-surface: #181825;
  --saytk-surface-alt: #202033;
  --saytk-border: #313244;
  --saytk-text: #d4d4d8;
  --saytk-text-soft: #b3b3bf;
  --saytk-text-muted: #8f90a6;
  --saytk-accent: #fb923c;
  --saytk-accent-strong: #fdba74;
  --saytk-accent-glow: rgba(251, 146, 60, 0.2);
  --saytk-code-bg: #11111b;
  --saytk-code-text: #e4e4e7;
  --saytk-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
  --saytk-sidebar-card-border: color-mix(in srgb, var(--saytk-border) 55%, var(--saytk-page-bg));
  --saytk-sidebar-card-shadow: 0 1px 2px rgba(0, 0, 0, 0.35), 0 1px 5px rgba(0, 0, 0, 0.2);
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Serif SC", Georgia, serif !important;
  font-size: 17px !important;
  line-height: 1.9 !important;
  color: var(--saytk-text) !important;
  background: radial-gradient(circle at top, rgba(232, 93, 4, 0.05), transparent 28%), var(--saytk-page-bg) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

html[data-theme="dark"] body {
  background: radial-gradient(circle at top, rgba(251, 146, 60, 0.08), transparent 30%), var(--saytk-page-bg) !important;
}

a {
  color: var(--saytk-accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
  transition: color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}

a:hover {
  color: var(--saytk-accent-strong);
}

img {
  border-radius: 12px;
}

pre,
code,
kbd,
samp {
  font-family: "JetBrains Mono", monospace !important;
}

#reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  height: 2px;
  width: 0;
  background: linear-gradient(90deg, var(--saytk-accent), #ffb36b);
  box-shadow: 0 0 18px var(--saytk-accent-glow);
}

#back-to-top {
  position: fixed;
  right: 24px;
  bottom: 28px;
  z-index: 9997;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: var(--saytk-surface);
  color: var(--saytk-text);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

#back-to-top.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.ct-header,
header.ct-header {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  background: color-mix(in srgb, var(--saytk-page-bg) 88%, transparent) !important;
  border-bottom: 1px solid var(--saytk-border) !important;
  box-shadow: none !important;
}

/* 压缩主导航行高（主题默认 ~120px），避免遮挡侧栏/固定目录 */
.ct-header [data-row*="middle"],
.ct-header [data-row="middle"] {
  --height: 56px !important;
  min-height: 56px !important;
}

.ct-header [data-row],
.ct-header [class*="ct-row"] {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.ct-header .ct-container,
.ct-header [data-row] > div {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  padding-top: 0.35rem !important;
  padding-bottom: 0.35rem !important;
}

/*
 * 页眉 Logo：Blocksy 的 data-id 经 shorten_id() 常为 6 位短 id，不会是字面 "logo"；
 * data-id 与 .site-branding 在同一节点上，勿用 [data-id="logo"] .site-branding（永不匹配）。
 */
.ct-header .site-branding .site-title,
.ct-header .site-title,
.ct-header .site-logo-container {
  font-family: "JetBrains Mono", monospace !important;
  letter-spacing: -0.03em;
}

.ct-header .site-branding .site-title a,
.ct-header .site-title a {
  color: var(--saytk-text) !important;
}

/* 页眉 Logo 容器：单行对齐，避免 Logo + 标题叠成过高块 */
.ct-header .site-branding {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0.5rem 0.75rem !important;
  min-width: 0 !important;
}

/*
 * Customizer 里「Logo 位置 = 在标题上方」时，主题会写 [data-logo="top"] { flex-direction: column }，
 * 上传图后之前的 :not(:has(img)) 无法覆盖，会一直上下叠。此处强制横排（保留 data-logo=left/right 的左右顺序由主题决定）。
 */
.ct-header .site-branding[data-logo='top'] {
  flex-direction: row !important;
  align-items: center !important;
}

.ct-header .site-branding .site-logo-container {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  max-height: 3rem !important;
  line-height: 0 !important;
}

/* 站点标题与 Logo 左右排列（左：图标 / 右：标题） */
.ct-header .site-branding .site-title-container {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

.ct-header .site-branding .site-title-container .site-title {
  margin: 0 !important;
  font-size: clamp(1.05rem, 2.1vw, 1.25rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}

/*
 * 上传图：左侧小图 + 右侧标题；尺寸与顶栏行高协调
 */
.ct-header .site-branding .site-logo-container img,
.ct-header .site-branding .site-logo-container svg[role="img"],
.ct-header .site-branding .site-logo-container svg.default-logo {
  display: block !important;
  width: auto !important;
  max-width: min(3rem, 14vw) !important;
  max-height: 2.5rem !important;
  height: auto !important;
  object-fit: contain !important;
  vertical-align: middle;
}

/* 包裹 logo 区块的外层（仅对含 .site-branding 的 primary；:has(.site-branding) 兼容非直接子节点） */
.ct-header [data-items="primary"]:has(.site-branding) {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0.5rem 0.65rem !important;
  min-height: 0 !important;
}

/* 无图时不要用 data-logo=top 的纵向叠放（与左侧 ::before 图标冲突） */
.ct-header .site-branding:not(:has(img)):not(:has(svg)) {
  flex-direction: row !important;
}

/* 无上传图：在 .site-branding 上放 ::before，避免依赖错误的 [data-id="logo"] */
.ct-header .site-branding:not(:has(img)):not(:has(svg))::before {
  content: '' !important;
  width: 2.35rem !important;
  height: 2.35rem !important;
  flex-shrink: 0 !important;
  border-radius: 9px !important;
  background: url('site-logo.svg') center / contain no-repeat !important;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12) !important;
}

html[data-theme='dark'] .ct-header .site-branding:not(:has(img)):not(:has(svg))::before {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.45) !important;
}

.ct-header [data-id="menu"] > ul > li > a,
.ct-header .menu > li > a,
.ct-header .ct-header-search,
.ct-header button,
.ct-header [data-id="trigger"] {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  color: var(--saytk-text-soft) !important;
}

.ct-header [data-id="menu"] > ul > li > a:hover,
.ct-header .menu > li > a:hover,
.ct-header .current-menu-item > a,
.ct-header .current-menu-ancestor > a,
.ct-header .ct-header-search:hover,
#theme-toggle-btn:hover {
  color: var(--saytk-accent) !important;
}

/* 头部搜索弹层：半透明 + 轻模糊（优先 #search-modal；全屏层勿选到顶栏内联小块） */
#search-modal,
#search-modal.ct-panel {
  background: color-mix(in srgb, var(--saytk-surface) 76%, transparent) !important;
  backdrop-filter: saturate(115%) blur(12px);
  -webkit-backdrop-filter: saturate(115%) blur(12px);
}

/* 下拉型搜索展开层（非顶栏条本身） */
.ct-header .ct-search-dropdown:where(:not(.ct-toggle)) {
  background: color-mix(in srgb, var(--saytk-surface) 76%, transparent) !important;
  backdrop-filter: saturate(115%) blur(12px);
  -webkit-backdrop-filter: saturate(115%) blur(12px);
}

#search-modal .ct-panel-inner,
#search-modal .ct-search-form,
#search-modal form[data-live-search-form],
.ct-header .ct-search-dropdown .ct-search-form {
  background: color-mix(in srgb, var(--saytk-surface) 88%, transparent) !important;
}

#search-modal input[type='search'],
#search-modal .ct-search-form input[type='search'],
.ct-header .ct-search-dropdown input[type='search'] {
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  color: var(--saytk-text) !important;
  border-color: var(--saytk-border) !important;
}

#theme-toggle-btn {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  color: var(--saytk-text-soft);
  background: transparent;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

#theme-toggle-btn:hover {
  background: color-mix(in srgb, var(--saytk-accent) 12%, transparent);
  transform: translateY(-1px);
}

.site-main {
  padding: 32px 0 64px;
}

.single-post .site-main,
.single .site-main {
  padding-top: 16px !important;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main > .ct-container,
:is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container[data-vertical-spacing] {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 280px;
  column-gap: 32px;
  row-gap: 2rem;
  align-items: start;
}

/* 列表页顶部留白收紧：避免导航下方与首卡片之间空出过大区域 */
:is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main {
  padding-top: 1.75rem !important;
  padding-bottom: 48px !important;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container[data-vertical-spacing] {
  padding-top: 0 !important;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container > section,
:is(.home, .blog, .archive, .search, .author, .category, .tag) .content-area {
  min-width: 0;
  width: 100%;
  max-width: none;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main article {
  min-width: 0;
  width: 100%;
  max-width: none;
}

/* 显式两栏占位，避免与其它样式争抢自动排列 */
:is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main > .ct-container > section {
  grid-column: 1;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main > .ct-container > aside#sidebar {
  grid-column: 2;
}

/* 独立页面（关于 / 联系等）：主题 data-sidebar="left" 时仍与归档一致 — 主内容左、侧栏右 */
body.page .site-main > .ct-container[data-sidebar="left"] {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 280px !important;
  column-gap: 32px;
  row-gap: 2rem;
  align-items: start;
}

body.page .site-main > .ct-container[data-sidebar="left"] > article {
  grid-column: 1 !important;
  order: 1;
  min-width: 0;
  width: 100%;
  max-width: none;
}

body.page .site-main > .ct-container[data-sidebar="left"] > aside#sidebar {
  grid-column: 2 !important;
  order: 2;
  min-width: 0;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entries {
  display: flex !important;
  flex-direction: column;
  gap: 1.75rem !important;
}

.entry-card,
article.post,
article.type-post {
  padding: 0 0 2.35rem !important;
  margin: 0 0 2.35rem !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-bottom: 1px solid var(--saytk-border) !important;
  border-radius: 0 !important;
}

.entry-card:last-child,
article.post:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.entry-card .entry-meta[data-id="meta_1"],
.archive .page-description,
.search .page-description {
  margin-bottom: 0.45rem !important;
}

.entry-card .entry-meta,
.entry-card .entry-meta a,
.entry-card .meta-date,
.entry-card .meta-author,
.entry-card time {
  color: var(--saytk-text-muted) !important;
  font-size: 13px !important;
}

.entry-card .entry-title,
.archive .page-title,
.search .page-title {
  margin: 0 0 0.8rem !important;
  font-size: 30px !important;
  line-height: 1.24 !important;
  letter-spacing: -0.03em;
  color: var(--saytk-text) !important;
}

/* 固定页（关于等 body.page）、首页/博客索引：hero 主标题 — 非 single-post，需单独压 Blocksy 默认深蓝 */
body.page .hero-section .entry-header .page-title,
body.page .entry-header .page-title,
:is(.home, .blog) .hero-section .entry-header .page-title,
:is(.home, .blog) .entry-header .page-title {
  color: var(--saytk-text) !important;
}

/* 归档/分类/搜索：Blocksy 标题前缀「分类：」等，暗色下勿用主题默认深蓝 */
html[data-theme="dark"] .ct-title-label,
[data-theme="dark"] .ct-title-label {
  color: var(--saytk-text-soft) !important;
}

.entry-card .entry-title a {
  color: var(--saytk-text) !important;
  text-decoration: none !important;
}

.entry-card .entry-title a:hover {
  color: var(--saytk-accent) !important;
}

.entry-card .entry-excerpt,
.entry-card .entry-excerpt p,
.entry-summary {
  margin: 0 !important;
  color: var(--saytk-text-soft) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
}

.entry-card .entry-excerpt .span-reading-time,
.entry-card .entry-excerpt .rt-reading-time {
  display: inline-flex !important;
  gap: 0.3em;
  align-items: center;
  margin: 0 0 1rem !important;
  padding: 0.18rem 0.65rem;
  border: 1px solid var(--saytk-border);
  border-radius: 999px;
  color: var(--saytk-text-muted) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

/* 列表卡片：阅读量并入 meta_bottom（custom-script 插入 li），与作者/日期同一条 meta 行 */
.entry-card .entry-meta li.saytk-entry-views {
  color: var(--saytk-text-muted) !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  list-style: none !important;
}

/*
 * 文章页：宽屏下 hero 摘要（含阅读时间）可见，隐藏正文顶部的重复阅读时间；
 * 窄屏下 hero 常为 ct-hidden-sm 折叠，需保留正文内这一份以免读者看不到估算时长
 */
@media (min-width: 690px) {
  .single-post .entry-content > .span-reading-time.rt-reading-time,
  .single-post .entry-content > .rt-reading-time.span-reading-time,
  .single .entry-content > .span-reading-time.rt-reading-time,
  .single-post .entry-content > .saytk-view-count,
  .single .entry-content > .saytk-view-count {
    display: none !important;
  }
}

/* hero 内阅读量（原阅读时间位）：与列表卡片同款胶囊 */
.single-post .hero-section .span-reading-time.rt-reading-time,
.single .hero-section .span-reading-time.rt-reading-time,
.single-post .hero-section .saytk-view-count,
.single .hero-section .saytk-view-count {
  display: inline-flex !important;
  gap: 0.35em;
  align-items: center;
  margin: 0.35rem 0 0 !important;
  padding: 0.2rem 0.68rem;
  border: 1px solid var(--saytk-border);
  border-radius: 999px;
  color: var(--saytk-text-muted) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  max-width: 100%;
  box-sizing: border-box;
}

/* 固定页面正文顶部阅读量（无 hero 时） */
body.page .entry-content > .saytk-view-count {
  display: inline-flex !important;
  gap: 0.35em;
  align-items: center;
  margin: 0 0 0.75rem !important;
  padding: 0.2rem 0.68rem;
  border: 1px solid var(--saytk-border);
  border-radius: 999px;
  color: var(--saytk-text-muted) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

/* 列表页：左右卡片（左缩略图 + 右侧元信息/标题/摘要） */
:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card {
  display: grid !important;
  grid-template-columns: minmax(0, 36%) minmax(0, 1fr);
  grid-template-areas:
    "media title"
    "media excerpt"
    "media meta-bottom";
  column-gap: 1.35rem;
  row-gap: 0.45rem;
  align-items: start;
  padding: 0 0 1.75rem !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--saytk-border) !important;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-meta[data-id="meta_1"] {
  display: none !important;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-title {
  grid-area: title;
  margin: 0 !important;
  font-size: clamp(1.15rem, 2.2vw, 1.45rem) !important;
  line-height: 1.3 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .ct-media-container {
  grid-area: media;
  display: block !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
  border-radius: 14px;
  overflow: hidden;
  align-self: stretch;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .ct-media-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 10;
  display: block;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-excerpt {
  grid-area: excerpt;
  margin: 0 !important;
  min-height: auto;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-excerpt p {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-meta:not([data-id="meta_1"]) {
  grid-area: meta-bottom;
  margin-top: 0.25rem !important;
}

/* 若主题包裹一层 .entry-media，则用 contents 让内层图参与上方 grid */
:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .entry-media,
:is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card .post-thumbnail {
  display: contents;
}

@media (max-width: 689.98px) {
  :is(.home, .blog, .archive, .search, .author, .category, .tag) .entry-card {
    grid-template-columns: 1fr;
    grid-template-areas:
      "media"
      "meta-top"
      "title"
      "excerpt"
      "meta-bottom";
    row-gap: 0.55rem;
  }
}

.ct-sidebar {
  display: block !important;
  width: 280px !important;
  min-width: 280px !important;
  margin: 0 !important;
  background: transparent !important;
}

.ct-sidebar .widget,
.ct-sidebar .ct-widget {
  margin-bottom: 0 !important;
  padding: 0.45rem 0.55rem !important;
  background: color-mix(in srgb, var(--saytk-surface) 92%, transparent) !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
}

.ct-sidebar a,
.ct-sidebar li,
.ct-sidebar p,
.ct-sidebar span {
  color: var(--saytk-text-soft) !important;
}

.ct-sidebar ul {
  margin: 0;
  padding-left: 0.85rem;
}

.ct-sidebar input,
.ct-sidebar select,
.ct-sidebar textarea,
.search-form input {
  width: 100%;
  border: 1px solid var(--saytk-border) !important;
  border-radius: 12px !important;
  background: var(--saytk-surface) !important;
  color: var(--saytk-text) !important;
}

.single-post .site-main > .ct-container,
.single .site-main > .ct-container,
.single-post .ct-container[data-vertical-spacing],
.single .ct-container[data-vertical-spacing] {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  display: block !important;
  box-sizing: border-box !important;
}

.single-post .site-main > .ct-container-full,
.single .site-main > .ct-container-full {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  display: block !important;
  box-sizing: border-box !important;
  position: relative;
  z-index: 0 !important;
  overflow: visible !important;
}

/* 收窄 Blocksy data-vertical-spacing 带来的文章区上下空白 */
.single-post .site-main > .ct-container-full[data-vertical-spacing],
.single .site-main > .ct-container-full[data-vertical-spacing] {
  padding-top: 0.35rem !important;
  padding-bottom: 1.25rem !important;
}

.single-post .ct-sidebar,
.single .ct-sidebar,
.single-post aside,
.single aside {
  display: none !important;
}

/* 与 ct-container-full 内容区同宽（不再 756 居中窄栏） */
.single-post .ct-container-full > article,
.single .ct-container-full > article {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: visible !important;
}

.single-post .ct-container-full .entry-content.is-layout-constrained,
.single .ct-container-full .entry-content.is-layout-constrained {
  max-width: none !important;
}

.single-post .hero-section,
.single .hero-section {
  margin-bottom: 0 !important;
}

/* hero + 标题区与 ct-container-full 同宽（去掉 Blocksy narrow / is-width-constrained） */
.single-post .ct-container-full .hero-section,
.single .ct-container-full .hero-section,
.single-post .ct-container-full .hero-section.is-width-constrained,
.single .ct-container-full .hero-section.is-width-constrained {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.single-post .ct-container-full .hero-section .entry-header,
.single .ct-container-full .hero-section .entry-header {
  max-width: none !important;
  width: 100% !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* 仅当「编辑」仍为 entry-header 直接子节点时保留右上角绝对定位（JS 已优先移入 ul.entry-meta） */
.single-post .ct-container-full .hero-section .entry-header:has(> .post-edit-link),
.single .ct-container-full .hero-section .entry-header:has(> .post-edit-link) {
  padding-inline-end: clamp(4rem, 11vw, 7rem) !important;
}

.single-post .ct-container-full .hero-section .entry-header > .post-edit-link,
.single .ct-container-full .hero-section .entry-header > .post-edit-link {
  position: absolute !important;
  inset-block-start: 0 !important;
  inset-inline-end: 0 !important;
  inset-inline-start: auto !important;
  float: none !important;
  margin: 0 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

/* Hero 元信息行内「编辑」（JS 插入 li.saytk-post-edit） */
.single-post .hero-section .entry-header ul.entry-meta li.saytk-post-edit,
.single .hero-section .entry-header ul.entry-meta li.saytk-post-edit {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-post .hero-section .entry-header ul.entry-meta li.saytk-post-edit .post-edit-link,
.single .hero-section .entry-header ul.entry-meta li.saytk-post-edit .post-edit-link {
  position: static !important;
  display: inline !important;
  inset: auto !important;
  float: none !important;
  margin: 0 !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  line-height: inherit !important;
  white-space: nowrap !important;
  color: var(--saytk-accent) !important;
}

.single-post .hero-section .entry-header ul.entry-meta li.saytk-post-edit .post-edit-link:hover,
.single .hero-section .entry-header ul.entry-meta li.saytk-post-edit .post-edit-link:hover {
  color: var(--saytk-accent-strong) !important;
}

/*
 * Blocksy/Gutenberg 常在标题外包一层 is-width-constrained，编辑链接在同层或内层时
 * 会跟着窄栏错位；拉满宽度并把 .post-edit-link 贴容器右上（与 entry-header 逻辑一致）
 */
.single-post .ct-container-full .is-width-constrained:has(.post-edit-link),
.single .ct-container-full .is-width-constrained:has(.post-edit-link) {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  position: relative !important;
  padding-inline-end: clamp(4rem, 11vw, 7rem) !important;
  box-sizing: border-box !important;
}

.single-post .ct-container-full .is-width-constrained .post-edit-link,
.single .ct-container-full .is-width-constrained .post-edit-link {
  position: absolute !important;
  inset-block-start: 0 !important;
  inset-inline-end: 0 !important;
  inset-inline-start: auto !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

/* 编辑链接位置修正：统一在标题下方行内显示，避免绝对定位错位 */
.single-post .ct-container-full .hero-section .entry-header:has(.post-edit-link),
.single .ct-container-full .hero-section .entry-header:has(.post-edit-link),
.single-post .ct-container-full .is-width-constrained:has(.post-edit-link),
.single .ct-container-full .is-width-constrained:has(.post-edit-link) {
  padding-inline-end: 0 !important;
}

.single-post .ct-container-full .hero-section .entry-header > .post-edit-link,
.single .ct-container-full .hero-section .entry-header > .post-edit-link,
.single-post .ct-container-full .is-width-constrained.post-edit-link,
.single .ct-container-full .is-width-constrained.post-edit-link,
.single-post .ct-container-full .is-width-constrained .post-edit-link,
.single .ct-container-full .is-width-constrained .post-edit-link {
  position: static !important;
  inset: auto !important;
  float: none !important;
  clear: none !important;
  display: inline-flex !important;
  align-items: center;
  margin: 0.45rem 0 0 !important;
  padding: 0.18rem 0.55rem;
  border: 1px solid var(--saytk-sidebar-card-border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--saytk-surface) 92%, transparent);
  color: var(--saytk-accent) !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

.single-post .ct-container-full .hero-section .entry-header > .post-edit-link:hover,
.single .ct-container-full .hero-section .entry-header > .post-edit-link:hover,
.single-post .ct-container-full .is-width-constrained.post-edit-link:hover,
.single .ct-container-full .is-width-constrained.post-edit-link:hover,
.single-post .ct-container-full .is-width-constrained .post-edit-link:hover,
.single .ct-container-full .is-width-constrained .post-edit-link:hover {
  color: var(--saytk-accent-strong) !important;
  border-color: var(--saytk-accent) !important;
}

.single-post .ct-container-full .hero-section .ct-container,
.single .ct-container-full .hero-section .ct-container {
  max-width: none !important;
  width: 100% !important;
}

.single-post .entry-header,
.single .entry-header {
  margin-bottom: 2.2rem !important;
  padding-bottom: 1.6rem !important;
  border-bottom: 1px solid var(--saytk-border) !important;
}

/* ct-container-full + hero：标题区已有一条底边线，首节 h2 再有顶线会成「双线」；收紧中间空白 */
.single-post .ct-container-full .hero-section .entry-header,
.single .ct-container-full .hero-section .entry-header {
  margin-bottom: 1rem !important;
  padding-bottom: 1rem !important;
}

.single-post .ct-container-full article .entry-content > h2:first-of-type,
.single .ct-container-full article .entry-content > h2:first-of-type {
  border-top: none !important;
  margin-top: 0.35rem !important;
  padding-top: 0 !important;
}

.single-post .entry-header .page-title,
.single .entry-header .page-title,
.single-post .entry-title,
.single .entry-title {
  font-size: clamp(2rem, 4vw, 2.85rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.04em;
  margin-bottom: 0.7rem !important;
}

.single-post .entry-header .entry-meta,
.single .entry-header .entry-meta {
  color: var(--saytk-text-muted) !important;
}

/* hero 元信息行：整行 flex 垂直居中，避免点赞（zoom）与「阅读量」文字上下错位 */
.single-post .hero-section .entry-header ul.entry-meta,
.single .hero-section .entry-header ul.entry-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.single-post .hero-section .entry-header ul.entry-meta > li,
.single .hero-section .entry-header ul.entry-meta > li {
  display: inline-flex !important;
  align-items: center !important;
}

/* 点赞在「阅读量」右侧：略增左间距，与 meta 项之间节奏接近 */
.single-post .hero-section .entry-header ul.entry-meta li.meta-votes,
.single .hero-section .entry-header ul.entry-meta li.meta-votes {
  margin: 0 !important;
  margin-inline-start: 0.5rem !important;
}

/* 阅读量并入 entry-meta（由 custom-script 插入 li.saytk-entry-views），与作者/日期/分类同一行节奏 */
.single-post .entry-header .entry-meta li.saytk-entry-views,
.single .entry-header .entry-meta li.saytk-entry-views {
  color: var(--saytk-text-muted) !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  list-style: none !important;
}

/* 点赞插件（默认 WP ULike）：由 saytk_blocksy_entry_meta_append_votes 注入 li.meta-votes，与 meta 同一行 */
.single-post .entry-header .entry-meta li.meta-votes,
.single .entry-header .entry-meta li.meta-votes {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 0.35rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  color: var(--saytk-text-muted) !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike,
.single .entry-header .entry-meta li.meta-votes .wpulike {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

/*
 * WP ULike：插件默认 ~53px 高；普通覆盖仍可能被内联/后载样式赢。zoom 会缩小布局盒（Chromium/Safari/Firefox 128+）。
 * functions.php 另有 wp_add_inline_style 兜底。0.50×53≈26px；较 0.48 再放大一档。
 */
.single-post .entry-header ul.entry-meta li.meta-votes .wpulike.wpulike-default,
.single .entry-header ul.entry-meta li.meta-votes .wpulike.wpulike-default {
  zoom: 0.5 !important;
}

/*
 * WP ULike：插件样式常在主题之后加载；已在 functions.php 中依赖 wp-ulike(-custom) 并延后 enqueue。
 * 默认 .count-box line-height:30px、按钮 min-height:30px、padding:1em → 整块 ~53px；改为与 meta 行 ~16px 对齐。
 */
.single-post .entry-header .entry-meta li.meta-votes .wpulike.wpulike-default,
.single .entry-header .entry-meta li.meta-votes .wpulike.wpulike-default {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  line-height: 1 !important;
  font-size: 0.88em !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike .wp_ulike_general_class,
.single .entry-header .entry-meta li.meta-votes .wpulike .wp_ulike_general_class {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.15em !important;
  min-height: 0 !important;
  line-height: 1 !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_btn,
.single .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_btn {
  min-height: 0 !important;
  min-width: 0 !important;
  max-height: 20px !important;
  padding: 0 2px !important;
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  border-radius: 3px !important;
  box-sizing: border-box !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_btn.wp_ulike_put_image,
.single .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_btn.wp_ulike_put_image {
  width: 20px !important;
  height: 16px !important;
  min-width: 20px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  padding: 0 !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_put_text,
.single .entry-header .entry-meta li.meta-votes .wpulike-default button.wp_ulike_put_text {
  min-width: 0 !important;
  max-height: 20px !important;
  padding: 0 5px !important;
  line-height: 1.2 !important;
  font-size: 12px !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike-default .wp_ulike_put_image:after,
.single .entry-header .entry-meta li.meta-votes .wpulike-default .wp_ulike_put_image:after {
  width: 11px !important;
  height: 11px !important;
}

.single-post .entry-header .entry-meta li.meta-votes .wpulike-default .count-box,
.single .entry-header .entry-meta li.meta-votes .wpulike-default .count-box {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 12px !important;
  height: 16px !important;
  min-height: 16px !important;
  max-height: 16px !important;
  padding: 0 5px !important;
  margin-left: 3px !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
}

html[data-theme='dark'] .single-post .entry-header .entry-meta li.meta-votes .wpulike-default .count-box,
html[data-theme='dark'] .single .entry-header .entry-meta li.meta-votes .wpulike-default .count-box {
  background-color: var(--saytk-surface-alt) !important;
  color: var(--saytk-text-soft) !important;
  box-shadow: 0 0 0 1px var(--saytk-border) inset !important;
}

/* Posts Like Dislike：与 meta 行对齐（类名来自插件 template / pld-*） */
.single-post .entry-header .entry-meta li.meta-votes .pld-like-dislike-wrap,
.single .entry-header .entry-meta li.meta-votes .pld-like-dislike-wrap {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0.35rem !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  font-size: inherit !important;
  color: var(--saytk-text-muted) !important;
}

.single-post .entry-header .entry-meta li.meta-votes a.pld-like-dislike-trigger,
.single .entry-header .entry-meta li.meta-votes a.pld-like-dislike-trigger {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.single-post .entry-header .entry-meta li.meta-votes span.pld-count-wrap,
.single .entry-header .entry-meta li.meta-votes span.pld-count-wrap {
  font-size: inherit !important;
  line-height: 1.2 !important;
  color: inherit !important;
}

/* PLD 模板若外层类名不同，兜底：直接子级包裹层 */
.single-post .hero-section .entry-header ul.entry-meta li.meta-votes:not(:has(.wpulike)) > div:first-child,
.single .hero-section .entry-header ul.entry-meta li.meta-votes:not(:has(.wpulike)) > div:first-child {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 0.35rem !important;
}

/* Posts Like Dislike：AddToAny 上方、作者框上方（saytk-pld-before-share 由 custom-script 添加；after-share 为旧类名兼容） */
.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-before-share,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-before-share,
.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-after-share,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-after-share,
.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-at-author,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-at-author {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.4rem !important;
  margin: 0.65rem 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  color: var(--saytk-text-muted) !important;
  font-size: 0.95em !important;
  line-height: 1.45 !important;
}

.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-before-share a.pld-like-dislike-trigger,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-before-share a.pld-like-dislike-trigger,
.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-after-share a.pld-like-dislike-trigger,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-after-share a.pld-like-dislike-trigger,
.single-post .entry-content .pld-like-dislike-wrap.saytk-pld-at-author a.pld-like-dislike-trigger,
.single .entry-content .pld-like-dislike-wrap.saytk-pld-at-author a.pld-like-dislike-trigger {
  display: inline-flex !important;
  align-items: center !important;
}

/* 文章页标题与摘要：明确使用主题字色（暗色下避免偏灰/偏淡看不清） */
.single-post .entry-header .page-title,
.single-post .entry-header .entry-title,
.single .entry-header .page-title {
  color: var(--saytk-text) !important;
}

.single-post .hero-section .page-description,
.single-post .page-description,
.single-post .hero-section .page-description p,
.single .hero-section .page-description,
.single .page-description p {
  color: var(--saytk-text-soft) !important;
}

.single-post .hero-section .page-description .rt-label,
.single-post .page-description .rt-label,
.single-post .hero-section .span-reading-time .rt-label {
  color: var(--saytk-text-muted) !important;
}

html[data-theme="dark"] .single-post .entry-header .page-title,
html[data-theme="dark"] .single-post .entry-header .entry-title,
html[data-theme="dark"] .single .entry-header .page-title,
html[data-theme="dark"] .single-post .hero-section h1.page-title,
[data-theme="dark"] .single-post .entry-header .page-title,
[data-theme="dark"] .single-post .entry-header .entry-title,
[data-theme="dark"] .single .entry-header .page-title {
  color: var(--saytk-text) !important;
}

html[data-theme="dark"] .single-post .hero-section .page-description,
html[data-theme="dark"] .single-post .page-description,
html[data-theme="dark"] .single-post .hero-section .page-description p,
html[data-theme="dark"] .single .hero-section .page-description p,
[data-theme="dark"] .single-post .hero-section .page-description,
[data-theme="dark"] .single-post .page-description,
[data-theme="dark"] .single-post .hero-section .page-description p {
  color: var(--saytk-text-soft) !important;
}

html[data-theme="dark"] .single-post .hero-section .page-description .rt-label,
html[data-theme="dark"] .single-post .page-description .rt-label,
[data-theme="dark"] .single-post .page-description .rt-label {
  color: var(--saytk-text-muted) !important;
}

.entry-content,
.entry-content p,
.entry-content li,
.entry-content blockquote {
  color: var(--saytk-text) !important;
}

.entry-content {
  font-size: 17px !important;
  line-height: 1.9 !important;
}

.entry-content > * {
  max-width: 100%;
}

/* 评论区与正文同宽（对齐 ct-container-full 1100 + 左右 12px） */
.single-post .ct-comments-container,
.single .ct-comments-container {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  box-sizing: border-box !important;
}

.single-post .ct-comments-container .ct-container-narrow,
.single .ct-comments-container .ct-container-narrow {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 评论表单：紧凑布局（ct-container-narrow 内） */
.single-post .ct-comments-container .comment-respond,
.single .ct-comments-container .comment-respond {
  margin-top: 0.5rem !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

.single-post .ct-comments-container .comment-reply-title,
.single .ct-comments-container .comment-reply-title {
  margin: 0 0 0.4rem !important;
  padding-bottom: 0 !important;
  font-size: 1.125rem !important;
  line-height: 1.35 !important;
}

.single-post .ct-comments-container .comment-reply-title small,
.single .ct-comments-container .comment-reply-title small {
  font-size: 0.82em !important;
  font-weight: 500 !important;
}

.single-post .ct-comments-container .comment-notes,
.single-post .ct-comments-container .logged-in-as,
.single-post .ct-comments-container .must-log-in,
.single .ct-comments-container .comment-notes,
.single .ct-comments-container .logged-in-as,
.single .ct-comments-container .must-log-in {
  font-size: 13px !important;
  line-height: 1.42 !important;
  margin: 0 0 0.35rem !important;
  color: var(--saytk-text-soft) !important;
}

.single-post .ct-comments-container .comment-form > p,
.single .ct-comments-container .comment-form > p {
  margin-top: 0 !important;
  margin-bottom: 0.45rem !important;
}

.single-post .ct-comments-container .comment-form label,
.single .ct-comments-container .comment-form label {
  display: block !important;
  margin: 0 0 0.2rem !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
}

.single-post .ct-comments-container .comment-form input[type='text'],
.single-post .ct-comments-container .comment-form input[type='email'],
.single-post .ct-comments-container .comment-form input[type='url'],
.single .ct-comments-container .comment-form input[type='text'],
.single .ct-comments-container .comment-form input[type='email'],
.single .ct-comments-container .comment-form input[type='url'] {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0.4rem 0.55rem !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

.single-post .ct-comments-container .comment-form textarea,
.single .ct-comments-container .comment-form textarea {
  width: 100% !important;
  margin: 0 !important;
  padding: 0.45rem 0.6rem !important;
  min-height: 5.75rem !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  box-sizing: border-box !important;
}

.single-post .ct-comments-container .comment-form .comment-form-cookies-consent,
.single .ct-comments-container .comment-form .comment-form-cookies-consent {
  margin-bottom: 0.2rem !important;
}

.single-post .ct-comments-container .comment-form .comment-form-cookies-consent label,
.single .ct-comments-container .comment-form .comment-form-cookies-consent label {
  display: inline !important;
  margin: 0 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  vertical-align: middle !important;
}

.single-post .ct-comments-container .comment-form .comment-form-cookies-consent input,
.single .ct-comments-container .comment-form .comment-form-cookies-consent input {
  margin-right: 0.35rem !important;
  vertical-align: middle !important;
}

.single-post .ct-comments-container .comment-form .form-submit,
.single .ct-comments-container .comment-form .form-submit {
  margin-top: 0.3rem !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

.single-post .ct-comments-container .comment-form .form-submit input[type='submit'],
.single .ct-comments-container .comment-form .form-submit input[type='submit'] {
  padding: 0.42rem 1rem !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
}

@media (min-width: 640px) {
  .single-post .ct-comments-container .comment-form,
  .single .ct-comments-container .comment-form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 0.75rem !important;
    row-gap: 0.35rem !important;
  }

  .single-post .ct-comments-container .comment-form > .comment-notes,
  .single-post .ct-comments-container .comment-form > .logged-in-as,
  .single-post .ct-comments-container .comment-form > .must-log-in,
  .single-post .ct-comments-container .comment-form > .comment-form-comment,
  .single-post .ct-comments-container .comment-form > .comment-form-cookies-consent,
  .single-post .ct-comments-container .comment-form > .form-submit,
  .single .ct-comments-container .comment-form > .comment-notes,
  .single .ct-comments-container .comment-form > .logged-in-as,
  .single .ct-comments-container .comment-form > .must-log-in,
  .single .ct-comments-container .comment-form > .comment-form-comment,
  .single .ct-comments-container .comment-form > .comment-form-cookies-consent,
  .single .ct-comments-container .comment-form > .form-submit {
    grid-column: 1 / -1 !important;
  }
}

/* 评论列表区域也略收紧，与表单视觉一致 */
.single-post .ct-comments-container .comments-title,
.single .ct-comments-container .comments-title {
  margin-bottom: 0.5rem !important;
  font-size: 1.125rem !important;
}

.single-post .ct-comments-container .comment-list,
.single .ct-comments-container .comment-list {
  margin-bottom: 0.75rem !important;
}

.single-post .ct-comments-container .comment-body,
.single .ct-comments-container .comment-body {
  margin-bottom: 0.65rem !important;
  padding-bottom: 0.65rem !important;
}

/* wpDiscuz：与 Blocksy 评论区同宽、避免挤出版心 */
.single-post .ct-comments-container #wpdcom,
.single .ct-comments-container #wpdcom {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.single-post .ct-comments-container #comments,
.single .ct-comments-container #comments {
  max-width: 100% !important;
}

html[data-theme='dark'] .single-post .ct-comments-container #wpdcom .wpd-thread-head,
html[data-theme='dark'] .single .ct-comments-container #wpdcom .wpd-thread-head {
  border-color: var(--saytk-border) !important;
}

html[data-theme="dark"] .single-post .ct-comments-container #wpdcom .wpd-sbs-title,
html[data-theme="dark"] .single .ct-comments-container #wpdcom .wpd-sbs-title {
  color: var(--saytk-text-soft) !important;
}

html[data-theme="dark"] .single-post .ct-comments-container #wpdcom button.ql-spoiler,
html[data-theme="dark"] .single .ct-comments-container #wpdcom button.ql-spoiler {
  color: var(--saytk-text) !important;
  border-color: var(--saytk-border) !important;
  background: var(--saytk-surface-alt) !important;
}

/* 正文已有 AddToAny 时隐藏 SAYTK 分享条（与 JS 跳过注入一致；兜底缓存旧 HTML） */
.single-post .entry-content:has(.addtoany_share_save_container) .saytk-social-share,
.single .entry-content:has(.addtoany_share_save_container) .saytk-social-share {
  display: none !important;
}

/* 分享条：压行内灰底，改 SAYTK 卡片色系 */
.single-post .entry-content .social-share,
.single .entry-content .social-share {
  margin: 1.25rem 0 !important;
  padding: 0.75rem 1rem !important;
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
  border-radius: 8px !important;
  color: var(--saytk-text) !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
}

/* 默认分享链接色不作用于 SAYTK 胶囊按钮（避免与按钮配色冲突） */
.single-post .entry-content .social-share:not(.saytk-social-share) a,
.single .entry-content .social-share:not(.saytk-social-share) a {
  color: var(--saytk-accent) !important;
}

.single-post .entry-content .social-share:not(.saytk-social-share) a:hover,
.single .entry-content .social-share:not(.saytk-social-share) a:hover {
  color: var(--saytk-accent-strong) !important;
}

/* 分享条：中文标签 + SVG 图标按钮（由 custom-script.js 输出） */
.single-post .entry-content .saytk-social-share,
.single .entry-content .saytk-social-share {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.65rem 1rem !important;
}

.single-post .entry-content .saytk-share-label,
.single .entry-content .saytk-share-label {
  font-weight: 600 !important;
  margin: 0 !important;
  color: var(--saytk-text) !important;
  flex-shrink: 0 !important;
}

.single-post .entry-content .saytk-share-buttons,
.single .entry-content .saytk-share-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

.single-post .entry-content .saytk-share-btn,
.single .entry-content .saytk-share-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  padding: 0.4rem 0.72rem !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: var(--saytk-text) !important;
  background: color-mix(in srgb, var(--saytk-surface) 92%, var(--saytk-surface-alt)) !important;
  border: 1px solid var(--saytk-border) !important;
  box-shadow: none !important;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    transform 0.15s ease,
    box-shadow 0.15s ease !important;
}

.single-post .entry-content .saytk-share-btn:hover,
.single .entry-content .saytk-share-btn:hover {
  filter: none !important;
  transform: translateY(-1px) !important;
  border-color: color-mix(in srgb, var(--saytk-accent) 45%, var(--saytk-border)) !important;
  background: color-mix(in srgb, var(--saytk-accent) 9%, var(--saytk-surface)) !important;
  color: var(--saytk-accent-strong) !important;
  box-shadow: 0 2px 10px var(--saytk-accent-glow) !important;
}

.single-post .entry-content .saytk-share-btn .saytk-share-icon,
.single .entry-content .saytk-share-btn .saytk-share-icon {
  flex-shrink: 0 !important;
  opacity: 0.95 !important;
}

/* 平台色仅落在图标上，整体与 SAYTK 面片统一 */
.single-post .entry-content .share-twitter .saytk-share-icon,
.single .entry-content .share-twitter .saytk-share-icon {
  color: #1d9bf0 !important;
}

.single-post .entry-content .share-linkedin .saytk-share-icon,
.single .entry-content .share-linkedin .saytk-share-icon {
  color: #0a66c2 !important;
}

.single-post .entry-content .share-reddit .saytk-share-icon,
.single .entry-content .share-reddit .saytk-share-icon {
  color: #ff4500 !important;
}

.single-post .entry-content .share-copy .saytk-share-icon,
.single .entry-content .share-copy .saytk-share-icon {
  color: var(--saytk-accent) !important;
  stroke: currentColor !important;
}

.single-post .entry-content .saytk-share-btn:hover .saytk-share-icon,
.single .entry-content .saytk-share-btn:hover .saytk-share-icon {
  color: inherit !important;
  opacity: 1 !important;
}

/* AddToAny：与 SAYTK 分享卡片同系（插件含微博/微信/QQ空间/豆瓣等） */
.single-post .entry-content .addtoany_share_save_container,
.single .entry-content .addtoany_share_save_container {
  margin: 1.25rem 0 !important;
  padding: 0.75rem 1rem !important;
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
}

.single-post .entry-content .addtoany_header,
.single .entry-content .addtoany_header {
  font-weight: 600 !important;
  margin: 0 0 0.55rem !important;
  color: var(--saytk-text) !important;
  font-size: 1rem !important;
}

.single-post .entry-content .addtoany_content .a2a_kit,
.single .entry-content .addtoany_content .a2a_kit {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.45rem !important;
}

.single-post .entry-content .addtoany_content a.a2a_button,
.single .entry-content .addtoany_content a.a2a_button {
  border-radius: 999px !important;
  padding: 0.35rem !important;
  border: 1px solid var(--saytk-border) !important;
  background: color-mix(in srgb, var(--saytk-surface) 92%, var(--saytk-surface-alt)) !important;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    transform 0.15s ease !important;
}

.single-post .entry-content .addtoany_content a.a2a_button:hover,
.single .entry-content .addtoany_content a.a2a_button:hover {
  transform: translateY(-1px) !important;
  border-color: color-mix(in srgb, var(--saytk-accent) 45%, var(--saytk-border)) !important;
}

/* 手机：分享图标扩大至约 44px 触控区（WCAG 2.5.5 参考） */
@media (max-width: 689.98px) {
  .single-post .entry-content .addtoany_content a.a2a_button,
  .single .entry-content .addtoany_content a.a2a_button {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.45rem !important;
    box-sizing: border-box !important;
  }
}

.entry-content p,
.entry-content ul,
.entry-content ol,
.entry-content pre,
.entry-content blockquote,
.entry-content table,
.entry-content .wp-block-image,
.entry-content .wp-block-embed,
.entry-content .wp-block-group {
  margin-bottom: 1.7rem !important;
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
  color: var(--saytk-text) !important;
  letter-spacing: -0.02em;
}

.entry-content h2 {
  margin-top: 3rem !important;
  margin-bottom: 0.75rem !important;
  padding-top: 0.9rem;
  font-size: 28px !important;
  border-top: 1px solid var(--saytk-border);
}

.entry-content h3 {
  margin-top: 2.2rem !important;
  margin-bottom: 0.8rem !important;
  font-size: 23px !important;
}

.entry-content h4 {
  margin-top: 1.8rem !important;
  margin-bottom: 0.6rem !important;
  font-size: 19px !important;
}

.entry-content blockquote {
  margin-left: 0 !important;
  padding: 1.1rem 1.35rem !important;
  background: color-mix(in srgb, var(--saytk-accent) 8%, var(--saytk-surface));
  border-left: 4px solid var(--saytk-accent) !important;
  border-radius: 14px;
}

.entry-content hr {
  margin: 2.5rem 0 !important;
  border-color: var(--saytk-border) !important;
}

.entry-content a {
  color: var(--saytk-accent) !important;
}

.entry-content strong,
.entry-content em {
  color: var(--saytk-text) !important;
}

.entry-content pre,
.entry-content code,
.entry-content kbd,
.entry-content samp,
.enlighter-default,
.EnlighterJS {
  font-family: "JetBrains Mono", monospace !important;
}

.entry-content pre,
.enlighter-default,
.EnlighterJS {
  position: relative;
  overflow: auto;
  padding: 1.2rem 1.2rem 1.1rem !important;
  background: var(--saytk-code-bg) !important;
  color: var(--saytk-code-text) !important;
  border: 1px solid color-mix(in srgb, var(--saytk-code-bg) 70%, #ffffff 30%) !important;
  border-radius: 16px !important;
  box-shadow: var(--saytk-shadow);
}

.entry-content :not(pre) > code {
  padding: 0.18rem 0.45rem;
  background: color-mix(in srgb, var(--saytk-accent) 10%, var(--saytk-surface));
  color: var(--saytk-accent-strong) !important;
  border-radius: 8px;
}

.copy-btn {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  padding: 0.3rem 0.7rem !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  color: #f8fafc !important;
  font-size: 12px !important;
  opacity: 0 !important;
  transform: translateY(-4px);
  transition:
    opacity 0.18s ease,
    transform 0.18s ease,
    background 0.18s ease,
    color 0.2s ease !important;
}

pre:hover .copy-btn,
.enlighter-default:hover .copy-btn,
.EnlighterJS:hover .copy-btn {
  opacity: 1 !important;
  transform: translateY(0);
}

.copy-btn:hover {
  background: var(--saytk-accent) !important;
  color: #fff !important;
}

/* 宽表格：块外包一层横向滚动，避免撑破小屏（Gutenberg figure.wp-block-table） */
.entry-content .wp-block-table,
.entry-content figure.wp-block-table:has(> table) {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
}

.entry-content table,
.wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  background: var(--saytk-surface);
  border: 1px solid var(--saytk-border);
  border-radius: 14px;
}

/* 列多时可宽于容器，由上方 .wp-block-table 包层横向滚动 */
.entry-content .wp-block-table > table {
  width: max-content;
  min-width: 100%;
}

.entry-content th,
.entry-content td,
.wp-block-table th,
.wp-block-table td {
  padding: 0.85rem 1rem;
  border-bottom: 1px solid var(--saytk-border);
  border-right: 1px solid var(--saytk-border);
  color: var(--saytk-text) !important;
}

.entry-content tr:last-child td {
  border-bottom: 0;
}

.entry-content th,
.wp-block-table th {
  background: color-mix(in srgb, var(--saytk-accent) 10%, var(--saytk-surface));
  text-align: left;
}

#ez-toc-container {
  margin: 1.25rem 0 2rem !important;
  padding: 0.75rem 0.9rem !important;
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  border: 1px solid var(--saytk-border) !important;
  border-radius: 16px !important;
  box-shadow: var(--saytk-shadow);
}

#ez-toc-container .ez-toc-title-container {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.35 !important;
}

#ez-toc-container .ez-toc-title-toggle {
  margin: 0 !important;
  padding: 0 !important;
}

#ez-toc-container .ez-toc-title {
  margin: 0 0 0.45rem 0 !important;
  padding: 0 !important;
  color: var(--saytk-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: none;
  letter-spacing: 0.02em;
}

#ez-toc-container nav ul,
#ez-toc-container ul {
  margin: 0.35rem 0 0 !important;
  padding-left: 1.05rem !important;
}

#ez-toc-container li:empty,
#ez-toc-container p:empty,
#ez-toc-container ul:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}

#ez-toc-container li,
#ez-toc-container a {
  color: var(--saytk-text-soft) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

#ez-toc-container a:hover {
  color: var(--saytk-accent) !important;
}

/*
 * 固定页面（联系页等 post_type=page）：body 无 single-post，原先 TOC 规则只看单篇文章，
 * 插件 float/固定宽仍会落成 ~160px 窄条。页面不作视口 fixed，整段与正文块对齐。
 */
body.page .entry-content #ez-toc-container,
.page .entry-content #ez-toc-container {
  position: static !important;
  float: none !important;
  clear: both !important;
  left: auto !important;
  top: auto !important;
  width: 100% !important;
  max-width: min(42rem, 100%) !important;
  margin: 0 0 1.25rem !important;
  margin-inline-start: 0 !important;
  margin-inline-end: auto !important;
  z-index: auto !important;
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
  align-self: stretch !important;
}

/*
 * 联系页 / 关于页侧栏布局：块内仅少量 h2/h3，EZ TOC 与标题重复；
 * 插件 float + 窄主栏易错位 → 直接隐藏（与单篇长文目录用途不同）。
 */
body.page .entry-content .contact-page #ez-toc-container,
.entry-content .contact-page #ez-toc-container,
body.page .entry-content .about-skill #ez-toc-container,
.entry-content .about-skill #ez-toc-container,
/* /about/ post-6：与插件 display:table!important 争优先级 */
html body.wp-singular.page-id-6 .entry-content #ez-toc-container,
html body.page-id-6 .entry-content div#ez-toc-container,
article#post-6 .entry-content #ez-toc-container {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: none !important;
  clip: rect(0, 0, 0, 0) !important;
  position: absolute !important;
  width: 1px !important;
  min-height: 0 !important;
}

/* 联系 / 关于页不展示阅读量（/contact/ post-46、/about/ post-6） */
body.page-id-46 .entry-content .saytk-view-count,
body.page-id-6 .entry-content .saytk-view-count {
  display: none !important;
}

/* 关于页「联系方式」.about-contact：卡片 + 行内链接胶囊，与正文层次区分 */
body.page-id-6 .entry-content .about-contact,
.entry-content .about-contact {
  margin: 1.35rem 0 0 !important;
  padding: 1rem 1.15rem !important;
  max-width: min(42rem, 100%) !important;
  box-sizing: border-box !important;
  background: color-mix(in srgb, var(--saytk-surface-alt) 92%, var(--saytk-page-bg)) !important;
  border: 1px solid var(--saytk-border) !important;
  border-radius: 14px !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
  color: var(--saytk-text-soft) !important;
}

body.page-id-6 .entry-content .about-contact p,
.entry-content .about-contact p {
  margin: 0 !important;
  line-height: 1.65 !important;
  color: var(--saytk-text) !important;
  font-size: 1rem !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.5rem 0.75rem !important;
}

body.page-id-6 .entry-content .about-contact p + p,
.entry-content .about-contact p + p {
  margin-top: 0.65rem !important;
}

body.page-id-6 .entry-content .about-contact a,
.entry-content .about-contact a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  margin: 0 !important;
  padding: 0.42rem 0.9rem !important;
  color: var(--saytk-accent-strong) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
  border-radius: 999px !important;
  border: 1px solid color-mix(in srgb, var(--saytk-accent) 42%, var(--saytk-border)) !important;
  background: color-mix(in srgb, var(--saytk-accent) 9%, var(--saytk-surface)) !important;
  box-shadow: none !important;
  transition:
    color 0.18s ease,
    border-color 0.18s ease,
    background 0.18s ease,
    transform 0.18s ease !important;
}

body.page-id-6 .entry-content .about-contact a:hover,
.entry-content .about-contact a:hover {
  color: var(--saytk-accent-strong) !important;
  text-decoration: none !important;
  border-color: var(--saytk-accent) !important;
  background: color-mix(in srgb, var(--saytk-accent) 16%, var(--saytk-surface)) !important;
  transform: translateY(-1px);
}

html[data-theme='dark'] body.page-id-6 .entry-content .about-contact,
html[data-theme='dark'] .entry-content .about-contact,
[data-theme='dark'] body.page-id-6 .entry-content .about-contact,
[data-theme='dark'] .entry-content .about-contact {
  background: color-mix(in srgb, var(--saytk-surface-alt) 96%, var(--saytk-page-bg)) !important;
  border-color: var(--saytk-border) !important;
}

html[data-theme='dark'] body.page-id-6 .entry-content .about-contact p,
html[data-theme='dark'] .entry-content .about-contact p,
[data-theme='dark'] body.page-id-6 .entry-content .about-contact p,
[data-theme='dark'] .entry-content .about-contact p {
  color: var(--saytk-text) !important;
}

html[data-theme='dark'] body.page-id-6 .entry-content .about-contact a,
html[data-theme='dark'] .entry-content .about-contact a,
[data-theme='dark'] body.page-id-6 .entry-content .about-contact a,
[data-theme='dark'] .entry-content .about-contact a {
  color: var(--saytk-accent) !important;
  border-color: color-mix(in srgb, var(--saytk-accent) 38%, var(--saytk-border)) !important;
  background: color-mix(in srgb, var(--saytk-accent) 12%, var(--saytk-surface)) !important;
}

html[data-theme='dark'] body.page-id-6 .entry-content .about-contact a:hover,
html[data-theme='dark'] .entry-content .about-contact a:hover,
[data-theme='dark'] body.page-id-6 .entry-content .about-contact a:hover,
[data-theme='dark'] .entry-content .about-contact a:hover {
  color: var(--saytk-accent-strong) !important;
  border-color: var(--saytk-accent) !important;
  background: color-mix(in srgb, var(--saytk-accent) 20%, var(--saytk-surface)) !important;
}

.ct-footer {
  width: 100%;
  margin: 0 0 0 15px !important;
  border-top: 1px solid var(--saytk-border) !important;
  background: color-mix(in srgb, var(--saytk-surface-alt) 88%, transparent) !important;
}

.ct-footer [data-row],
.ct-footer [data-row] > div {
  background: transparent !important;
  border: 0 !important;
}

.ct-footer [data-row] > div {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.ct-footer,
.ct-footer a,
.ct-footer p,
.ct-footer span,
.ct-footer li {
  color: var(--saytk-text-soft) !important;
}

.ct-footer a:hover {
  color: var(--saytk-accent) !important;
}

html[data-theme="dark"] .ct-header,
html[data-theme="dark"] .ct-footer,
html[data-theme="dark"] .ct-sidebar .widget,
html[data-theme="dark"] .ct-sidebar .ct-widget,
html[data-theme="dark"] #ez-toc-container,
html[data-theme="dark"] .entry-content table,
html[data-theme="dark"] .wp-block-table table,
html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background: var(--saytk-surface) !important;
}

html[data-theme="dark"] .entry-content blockquote,
html[data-theme="dark"] .entry-content :not(pre) > code,
html[data-theme="dark"] .ct-footer {
  background: color-mix(in srgb, var(--saytk-surface-alt) 86%, transparent) !important;
}

html[data-theme="dark"] .entry-card .entry-title a,
html[data-theme="dark"] .ct-header .site-branding .site-title a,
html[data-theme="dark"] .ct-header .site-title a {
  color: var(--saytk-text) !important;
}

html[data-theme="dark"] .copy-btn {
  border-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.05) !important;
}

html[data-theme="dark"] #ez-toc-container .ez-toc-title,
[data-theme="dark"] #ez-toc-container .ez-toc-title {
  color: var(--saytk-text) !important;
}

html[data-theme="dark"] #ez-toc-container li,
html[data-theme="dark"] #ez-toc-container a,
[data-theme="dark"] #ez-toc-container li,
[data-theme="dark"] #ez-toc-container a {
  color: var(--saytk-text-soft) !important;
}

html[data-theme="dark"] #ez-toc-container a:hover,
[data-theme="dark"] #ez-toc-container a:hover {
  color: var(--saytk-accent) !important;
}

/*
 * 固定 TOC：left = 50vw - 774px 需在视口内放在文章左缘左侧；若用 max(12px, …) 在较窄桌面会退化为 12px，
 * 则 220px 宽 TOC 会与文章重叠。故仅 ≥1572px（2×(774−12)）时启用 fixed；更窄时 TOC 走文档流，不挡正文。
 * z-index 高于主内容区，低于页眉/侧栏抽屉（主题通常更高）
 */
@media (min-width: 1572px) {
  .single-post #ez-toc-container {
    position: fixed !important;
    top: calc(env(safe-area-inset-top, 0px) + 123px);
    left: max(12px, calc(50vw - 774px));
    width: 220px;
    z-index: 150 !important;
    max-height: calc(100vh - 139px);
    overflow: auto;
    margin-top: 0 !important;
  }
}

/* 低于 fixed 断点：目录在正文流中占一行；限宽与正文左缘对齐，避免 100% 通栏像「错位条」 */
@media (max-width: 1571.98px) {
  .single-post .entry-content #ez-toc-container,
  .single .entry-content #ez-toc-container,
  body.page .entry-content #ez-toc-container,
  .page .entry-content #ez-toc-container {
    position: static !important;
    float: none !important;
    clear: both !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    max-width: min(42rem, 100%) !important;
    margin: 0 0 1.35rem !important;
    margin-inline-start: 0 !important;
    margin-inline-end: auto !important;
    z-index: auto !important;
    box-sizing: border-box !important;
  }

  /* 单篇 ct-container-full：低于 fixed 断点时不再显示文内流式目录（仅占高、易顶开版心） */
  .single-post .ct-container-full .entry-content #ez-toc-container,
  .single .ct-container-full .entry-content #ez-toc-container {
    display: none !important;
  }
}

@media (max-width: 1024px) {
  :is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main > .ct-container,
  :is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container[data-vertical-spacing] {
    gap: 36px;
    grid-template-columns: minmax(0, 1fr) 260px;
  }

  body.page .site-main > .ct-container[data-sidebar="left"] {
    column-gap: 36px;
    grid-template-columns: minmax(0, 1fr) 260px !important;
  }

  .ct-sidebar {
    width: 260px !important;
    min-width: 260px !important;
  }
}

@media (max-width: 999.98px) {
  .ct-header .ct-container,
  .ct-header [data-row] > div,
  .site-main > .ct-container,
  .ct-footer [data-row] > div {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  :is(.home, .blog, .archive, .search, .author, .category, .tag) .site-main > .ct-container,
  :is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container[data-vertical-spacing] {
    display: block !important;
  }

  body.page .site-main > .ct-container[data-sidebar="left"] {
    display: block !important;
  }

  body.page .site-main > .ct-container[data-sidebar="left"] > article,
  body.page .site-main > .ct-container[data-sidebar="left"] > aside#sidebar {
    grid-column: auto !important;
    max-width: none;
  }

  :is(.home, .blog, .archive, .search, .author, .category, .tag) .ct-container > section,
  :is(.home, .blog, .archive, .search, .author, .category, .tag) .content-area {
    max-width: none;
  }

  .ct-sidebar {
    width: auto !important;
    min-width: 0 !important;
    margin-top: 2rem !important;
  }

  #ez-toc-container {
    position: static !important;
    width: auto !important;
    max-height: none !important;
  }
}

@media (max-width: 689.98px) {
  body {
    font-size: 16px !important;
  }

  .site-main {
    padding-top: 24px;
  }

  .entry-card,
  article.post,
  article.type-post {
    padding-bottom: 2rem !important;
    margin-bottom: 1.25rem !important;
  }

  .entry-card .entry-title,
  .single-post .entry-title,
  .single .entry-title {
    font-size: 25px !important;
  }

  .entry-content h2 {
    font-size: 24px !important;
  }

  .entry-content h3 {
    font-size: 20px !important;
  }

  #back-to-top {
    right: 16px;
    bottom: 18px;
    width: 44px;
    height: 44px;
  }
}

/* === Sidebar Light/Dark Theme Support === */

/* About Me widget */
.ct-sidebar .widget_custom_html:first-child {
  background: linear-gradient(135deg, color-mix(in srgb, var(--saytk-accent) 10%, transparent), var(--saytk-surface)) !important;
}

/* 关于我（custom_html-3）等：行内 GitHub 深灰底与亮色 SAYTK 侧栏不协调 → 主题色胶囊按钮 */
.ct-sidebar #custom_html-3 a[href*='github.com'],
.ct-sidebar .widget_custom_html a[href*='github.com'] {
  display: inline-block !important;
  padding: 0.35rem 0.75rem !important;
  background: color-mix(in srgb, var(--saytk-accent) 12%, var(--saytk-surface)) !important;
  color: var(--saytk-accent-strong) !important;
  border: 1px solid color-mix(in srgb, var(--saytk-accent) 38%, var(--saytk-border)) !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
}

.ct-sidebar #custom_html-3 a[href*='github.com']:hover,
.ct-sidebar .widget_custom_html a[href*='github.com']:hover {
  background: color-mix(in srgb, var(--saytk-accent) 20%, var(--saytk-surface)) !important;
  color: var(--saytk-accent-strong) !important;
  border-color: var(--saytk-accent) !important;
}

/* Popular Posts widget */
.ct-sidebar .widget-popular-posts li {
  transition: background 0.2s ease;
}

/* Categories widget */
.ct-sidebar .widget_categories li {
  padding: 8px 0;
  border-bottom: 1px solid var(--saytk-border);
}

.ct-sidebar .widget_categories li:last-child {
  border-bottom: none;
}

/* Tags widget */
.ct-sidebar .tagcloud a {
  display: inline-block;
  padding: 4px 10px;
  background: var(--saytk-surface-alt);
  border: 1px solid var(--saytk-border);
  border-radius: 20px;
  font-size: 12px !important;
  margin: 2px;
  color: var(--saytk-text-soft) !important;
  text-decoration: none;
  transition: all 0.2s ease;
}

.ct-sidebar .tagcloud a:hover {
  background: var(--saytk-accent);
  border-color: var(--saytk-accent);
  color: #fff !important;
}

/* Search widget */
.ct-sidebar .search-form input {
  background: var(--saytk-surface-alt) !important;
  border: 1px solid var(--saytk-border) !important;
  color: var(--saytk-text) !important;
  border-radius: 8px;
  padding: 10px 14px;
}

.ct-sidebar .search-form input:focus {
  border-color: var(--saytk-accent) !important;
  box-shadow: 0 0 0 2px var(--saytk-accent-glow);
}

/* Latest Posts：默认样式由 aside#sidebar #recent-posts-2 与通用 ul li 规则覆盖，此处不重复定义 */

/* Dark theme specific adjustments */
html[data-theme=dark] .ct-sidebar .widget_custom_html:first-child {
  background: linear-gradient(135deg, rgba(251, 146, 60, 0.1), var(--saytk-surface)) !important;
}


/* === Sidebar Improvements (Gemini Review) === */
/* 注：侧栏卡片 padding/背景已与上文 .ct-sidebar .widget 合并；标题与列表强化见下 */

/* 侧栏小工具标题（含 Blocksy 区块标题） */
.ct-sidebar .widget-title,
.ct-sidebar .wp-block-heading {
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin-bottom: 0.3rem !important;
  padding-bottom: 0.22rem;
  color: var(--saytk-text) !important;
  border-bottom: 1px solid var(--saytk-accent);
}

/* 3. 列表行高和字号 */
.ct-sidebar ul li {
  line-height: 1.45 !important;
  font-size: 0.92rem !important;
}

/* 4. 分隔线 - 半透明自适应 */
.ct-sidebar ul li:not(:last-child) {
  border-bottom: 1px solid rgba(128, 128, 128, 0.15) !important;
}

html[data-theme="dark"] .ct-sidebar ul li:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* 5. 交互 - 平滑过渡 */
.ct-sidebar a {
  transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out, transform 0.2s ease-in-out !important;
}

/* 6. 扩大可点击区域 */
.ct-sidebar .widget_recent_entries li a,
.ct-sidebar .widget_categories li a,
.ct-sidebar .widget-popular-posts li a {
  display: block;
  padding: 0.28rem 0;
}

/* 7. Popular Posts hover 效果 */
.ct-sidebar .widget-popular-posts li {
  transition: background 0.2s ease, transform 0.2s ease;
  border-radius: 8px;
  margin: 0 -4px;
  padding: 3px 4px !important;
}

.ct-sidebar .widget-popular-posts li:hover {
  background: var(--saytk-surface-alt);
  transform: translateX(4px);
}

/* 8. Subscribe 按钮动效 */
.ct-sidebar .widget_custom_html button[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 9. 暗色模式优化（订阅 #custom_html-5 由下方主题色规则单独处理） */
html[data-theme="dark"] .ct-sidebar .widget_custom_html:last-child:not(#custom_html-5) {
  background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%) !important;
}

/* 10. 标签云 hover */
.ct-sidebar .tagcloud a:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* 11. 响应式 - 移动端 */
@media (max-width: 768px) {
  .ct-sidebar .widget,
  .ct-sidebar .ct-widget {
    margin-bottom: 0 !important;
    padding: 0.45rem 0.55rem !important;
  }
  
  .ct-sidebar .widget-title {
    font-size: 1.02rem !important;
    margin-bottom: 0.55rem !important;
  }
  
  .ct-sidebar .tagcloud a {
    font-size: 0.85rem !important;
    padding: 3px 8px !important;
  }
}


/* === Additional UI Improvements === */

/* 文章卡片优化 */
.entry-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.entry-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1) !important;
}

/* 文章标题 hover */
.entry-card .entry-title a:hover {
  color: var(--saytk-accent) !important;
}

/* 阅读进度条增强 */
#reading-progress {
  transition: width 0.1s ease-out;
}

/* 返回顶部按钮优化（与 #ct-theme-switcher 一致） */
#back-to-top {
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

#back-to-top.visible:hover {
  transform: translateY(0) scale(1.06);
}

#back-to-top:hover {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.18);
}

/* 代码块优化 */
pre:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* 导航菜单优化 */
.ct-header-menu a {
  position: relative;
}

.ct-header-menu a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background: var(--saytk-accent);
  transition: width 0.3s ease, left 0.3s ease;
}

.ct-header-menu a:hover::after {
  width: 100%;
  left: 0;
}

/* 分页优化 */
.pagination a,
.pagination span {
  transition: all 0.2s ease !important;
}

.pagination a:hover {
  background: var(--saytk-accent) !important;
  color: #fff !important;
  transform: translateY(-2px);
}

/* 搜索框优化 */
.search-form input:focus {
  border-color: var(--saytk-accent) !important;
  box-shadow: 0 0 0 3px var(--saytk-accent-glow) !important;
}

/* 暗色模式全局优化 */
html[data-theme=dark] .entry-card:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3) !important;
}

/* === Dark Theme Improvements (Gemini Review) === */
/* 暗色变量与侧栏卡片面片：见文件顶部 html[data-theme="dark"] 与 html[data-theme="dark"] .ct-sidebar … */


/* 1. 微调静音文字亮度 */
[data-theme=dark] {
  --saytk-text-muted: #9899ae;
}

/* 2. 搜索框暗色适配 */
[data-theme=dark] .search-form input,
[data-theme=dark] .ct-sidebar input[type=search],
[data-theme=dark] .ct-sidebar input[type=email] {
  background-color: var(--saytk-surface-alt) !important;
  border: 1px solid var(--saytk-border) !important;
  color: var(--saytk-text) !important;
}

[data-theme=dark] .search-form input::placeholder,
[data-theme=dark] .ct-sidebar input::placeholder {
  color: var(--saytk-text-muted) !important;
}

/* 3. 文章卡片 hover 效果 */
[data-theme=dark] .entry-card:hover {
  border-color: var(--saytk-accent) !important;
  background-color: var(--saytk-surface-alt) !important;
  box-shadow: 0 0 20px 2px rgba(251, 146, 60, 0.1) !important;
}

/* 4. 代码块暗色优化 */
[data-theme=dark] pre,
[data-theme=dark] code {
  background-color: #0a0a12 !important;
  border: 1px solid var(--saytk-border) !important;
}

[data-theme=dark] pre {
  border-left: 3px solid var(--saytk-accent) !important;
}

/* 5. FAB / 返回顶部暗色：见「Blocksy theme FAB + back-to-top stack」一节 */

/* 6. 滚动条暗色 */
[data-theme=dark] ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

[data-theme=dark] ::-webkit-scrollbar-track {
  background: var(--saytk-page-bg);
}

[data-theme=dark] ::-webkit-scrollbar-thumb {
  background: var(--saytk-surface-alt);
  border-radius: 4px;
}

[data-theme=dark] ::-webkit-scrollbar-thumb:hover {
  background: var(--saytk-border);
}

/* 7. 引用块暗色 */
[data-theme=dark] blockquote {
  background-color: var(--saytk-surface) !important;
  border-left: 4px solid var(--saytk-accent) !important;
  color: var(--saytk-text-soft) !important;
  padding: 1rem 1.25rem !important;
  margin: 1.5rem 0 !important;
  border-radius: 0 8px 8px 0 !important;
}

/* 8. 表格暗色 */
[data-theme=dark] table,
[data-theme=dark] th,
[data-theme=dark] td {
  border-color: var(--saytk-border) !important;
}

[data-theme=dark] th {
  background-color: var(--saytk-surface-alt) !important;
  color: var(--saytk-text) !important;
}

[data-theme=dark] td {
  color: var(--saytk-text) !important;
}

/* 9. 水平分割线暗色 */
[data-theme=dark] hr {
  border-color: var(--saytk-border) !important;
}

/* 10. 导航菜单暗色 */
[data-theme=dark] .ct-header-menu a {
  color: var(--saytk-text) !important;
}

[data-theme=dark] .ct-header-menu a:hover {
  color: var(--saytk-accent) !important;
}

/* 文章页可读性增强：段落节奏、层级标题、代码块 */
.single-post .entry-content > * + * {
  margin-top: 1.05rem;
}

.single-post .entry-content h2,
.single-post .entry-content h3 {
  line-height: 1.35;
  letter-spacing: 0.01em;
}

.single-post .entry-content h2 {
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
  padding-left: 0.6rem;
  border-left: 3px solid var(--saytk-accent);
}

.single-post .entry-content h3 {
  margin-top: 1.2rem;
  margin-bottom: 0.5rem;
}

.single-post .entry-content pre,
.single-post .entry-content code {
  border-radius: 8px;
}

.single-post .entry-content pre {
  overflow-x: auto;
  padding: 0.85rem 1rem;
}

.single-post .entry-content :not(pre) > code {
  padding: 0.12rem 0.35rem;
  background: color-mix(in srgb, var(--saytk-surface-alt) 78%, transparent);
  border: 1px solid var(--saytk-border);
}

.single-post .entry-content .saytk-article-summary {
  margin: 0 0 1rem;
  padding: 0.9rem 1rem;
  border-radius: 10px;
  border: 1px solid var(--saytk-sidebar-card-border);
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent);
}

.single-post .entry-content .saytk-article-summary .saytk-article-summary-title {
  margin: 0 0 0.45rem;
  padding: 0;
  border: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--saytk-accent);
}

.single-post .entry-content .saytk-article-summary p {
  margin: 0;
  color: var(--saytk-text-soft);
}

/* 11. 分页暗色 */
[data-theme=dark] .pagination a,
[data-theme=dark] .pagination span {
  background: var(--saytk-surface) !important;
  color: var(--saytk-text) !important;
  border-color: var(--saytk-border) !important;
}

[data-theme=dark] .pagination a:hover {
  background: var(--saytk-accent) !important;
  color: #fff !important;
}

/* 11.1 Blocksy 列表分页（ct-pagination）亮/暗主题适配 */
.ct-pagination[data-pagination="simple"] a,
.ct-pagination[data-pagination="simple"] span,
.ct-pagination[data-pagination="simple"] .page-numbers {
  color: var(--saytk-text-soft) !important;
  border-color: var(--saytk-sidebar-card-border) !important;
  background: color-mix(in srgb, var(--saytk-surface) 92%, transparent) !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}

.ct-pagination[data-pagination="simple"] a:hover,
.ct-pagination[data-pagination="simple"] .next:hover,
.ct-pagination[data-pagination="simple"] .prev:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--saytk-accent), var(--saytk-accent-strong)) !important;
  border-color: transparent !important;
}

.ct-pagination[data-pagination="simple"] .current,
.ct-pagination[data-pagination="simple"] .page-numbers.current {
  color: #fff !important;
  background: linear-gradient(135deg, var(--saytk-accent), var(--saytk-accent-strong)) !important;
  border-color: transparent !important;
  box-shadow: 0 6px 16px var(--saytk-accent-glow) !important;
}

/* 12. Footer 暗色 */
[data-theme=dark] .ct-footer {
  background-color: #0a0a10 !important;
}

[data-theme=dark] .ct-footer a {
  color: var(--saytk-text-soft) !important;
}

[data-theme=dark] .ct-footer a:hover {
  color: var(--saytk-accent) !important;
}

/* 13. 侧边栏链接暗色 */
[data-theme=dark] .ct-sidebar a:hover {
  color: var(--saytk-accent) !important;
}

/* 14. 分类标签暗色 */
[data-theme=dark] .entry-meta a,
[data-theme=dark] .meta-categories a {
  color: var(--saytk-accent) !important;
}

/* === SAYTK: sidebar Blocksy search + categories + FAB stack (2026-03-29) === */
/* 读屏区 / aria-live：见下文「侧栏布局与样式整理」中合并规则 */

.ct-sidebar .widget_search form.ct-search-form,
.ct-sidebar #search-2 form.ct-search-form {
  margin-top: 0;
  width: 100%;
}

.ct-sidebar form.ct-search-form {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  width: 100% !important;
  gap: 3px;
}

.ct-sidebar form.ct-search-form > input[type='search'] {
  flex: 1 1 0%;
  min-width: 0 !important;
  margin: 0 !important;
  border-radius: 8px !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
}

.ct-sidebar form.ct-search-form .ct-search-form-controls {
  flex: 0 0 auto;
  display: flex;
  align-items: stretch;
  position: relative;
  z-index: 2;
}

.ct-sidebar form.ct-search-form .wp-element-button {
  border-radius: 8px !important;
  min-height: 40px;
  min-width: 40px;
  align-self: stretch;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
}

html[data-theme='dark'] .ct-sidebar form.ct-search-form > input[type='search'],
[data-theme='dark'] .ct-sidebar form.ct-search-form > input[type='search'] {
  background-color: var(--saytk-surface-alt) !important;
  border-color: var(--saytk-sidebar-card-border) !important;
  color: var(--saytk-text) !important;
}

/* Categories: capped height + cleaner list (reduces 600px+ sidebar stretch) */
.ct-sidebar .widget_categories#categories-2 ul,
.ct-sidebar #categories-2 ul {
  margin: 0.35rem 0 0 !important;
  padding-left: 0 !important;
  list-style: none !important;
}

.ct-sidebar #categories-2 ul li {
  line-height: 1.45 !important;
  padding: 0.22rem 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--saytk-border) 70%, transparent) !important;
}

.ct-sidebar #categories-2 ul li:last-child {
  border-bottom: none !important;
}

html[data-theme='dark'] .ct-sidebar #categories-2 ul li {
  border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}

.ct-sidebar #categories-2 ul li a {
  display: inline !important;
  padding: 0 !important;
}

/* #recent-posts-2：见文件尾部 aside#sidebar 高优先级规则 */

/* Blocksy theme FAB + back-to-top stack (theme above, back-to-top below) */
#ct-theme-switcher {
  position: fixed !important;
  right: 24px !important;
  bottom: 88px !important;
  z-index: 9998 !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

#ct-theme-switcher:hover {
  transform: scale(1.06) !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.18) !important;
}

html[data-theme='dark'] #ct-theme-switcher,
html[data-theme='dark'] #back-to-top,
[data-theme='dark'] #ct-theme-switcher,
[data-theme='dark'] #back-to-top {
  background-color: var(--saytk-surface-alt) !important;
  color: var(--saytk-accent) !important;
  border: 1px solid var(--saytk-border) !important;
}

#back-to-top {
  position: fixed !important;
  right: 24px !important;
  bottom: 28px !important;
  z-index: 9997 !important;
}

@media (max-width: 689.98px) {
  #ct-theme-switcher {
    right: 16px !important;
    bottom: 78px !important;
    width: 44px !important;
    height: 44px !important;
  }

  #back-to-top {
    right: 16px !important;
    bottom: 22px !important;
  }
}

/* === SAYTK: 侧栏布局与样式整理（2026-03-30）=== */

/* 侧栏容器：仅 flex gap 分隔顶层卡片；padding 归零，避免「外框与卡片」双层留白 */
aside#sidebar .ct-sidebar {
  display: flex !important;
  flex-direction: column;
  gap: 6px;
  width: 280px !important;
  min-width: 280px !important;
  max-width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start;
  background: transparent !important;
}

/* 顶层小工具：一张卡一层皮（直接子级） */
aside#sidebar .ct-sidebar > .widget,
aside#sidebar .ct-sidebar > .ct-widget {
  margin: 0 !important;
  padding: 0.45rem 0.55rem !important;
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
  min-width: 0;
}

/* 任意层级：清掉 Blocksy/历史 CSS 的 margin-bottom，嵌套小工具不再撑出巨大空隙 */
aside#sidebar .ct-sidebar .widget,
aside#sidebar .ct-sidebar .ct-widget {
  margin-block: 0 !important;
  margin-inline: 0 !important;
}

/* Custom HTML 内误嵌套的小工具：不要第二张卡片（避免边距/双边框叠加） */
aside#sidebar .ct-sidebar .widget .widget,
aside#sidebar .ct-sidebar .widget .ct-widget,
aside#sidebar .ct-sidebar .ct-widget .widget,
aside#sidebar .ct-sidebar .ct-widget .ct-widget {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
}

aside#sidebar .ct-sidebar .textwidget {
  margin: 0 !important;
  padding: 0 !important;
}

aside#sidebar .ct-sidebar .widget > .widget-title:first-child,
aside#sidebar .ct-sidebar .ct-widget > .widget-title:first-child {
  margin-top: 0 !important;
}

/* 桌面端：仅粘性定位，不限制高度，避免出现侧栏内部滚动条 */
@media (min-width: 1000px) {
  aside#sidebar .ct-sidebar {
    position: sticky;
    top: 1.25rem;
    background: transparent !important;
  }
}

/* 搜索：Blocksy 在读屏区输出「无结果」，禁止在侧栏里露出为正文 */
.ct-sidebar .widget_search .screen-reader-text,
.ct-sidebar .ct-search-form .screen-reader-text,
.ct-sidebar .widget_search [role="status"],
.ct-sidebar .widget_search [aria-live="polite"],
.ct-sidebar .ct-search-form [role="status"],
.ct-sidebar .ct-search-form [aria-live="polite"] {
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  border: 0 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
}

/* 标签云：自然换行增高，不在此区域生成滚动条 */
.ct-sidebar .widget_tag_cloud .tagcloud {
  line-height: 1.65;
}

/* 「关于我」等自定义 HTML 内嵌列表去缩进，与侧栏对齐 */
.ct-sidebar .widget_custom_html .textwidget ul {
  margin: 0.35rem 0 0;
  padding-left: 0;
  list-style: none;
}

@media (max-width: 999.98px) {
  aside#sidebar .ct-sidebar {
    width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    max-height: none !important;
    overflow: visible !important;
    background: transparent !important;
  }
}

/* === SAYTK: 搜索小工具标题留白 === */
aside#sidebar .ct-sidebar > #search-2 .widget-title {
  margin-bottom: 0.35rem !important;
}

/* === SAYTK: 订阅 #custom_html-5 — 压内联样式，与侧栏其它卡片同款 surface / 边框 / 字色 === */
aside#sidebar .ct-sidebar > #custom_html-5 {
  padding: 0 !important;
}

aside#sidebar #custom_html-5 .textwidget,
aside#sidebar #custom_html-5 .custom-html-widget,
aside#sidebar #custom_html-5 .textwidget.custom-html-widget {
  margin: 0 !important;
  padding: 0 !important;
}

aside#sidebar #custom_html-5 .textwidget > div,
aside#sidebar #custom_html-5 .custom-html-widget > div,
aside#sidebar #custom_html-5 .textwidget.custom-html-widget > div,
aside#sidebar #custom_html-5 .textwidget div[style],
aside#sidebar .ct-sidebar #custom_html-5 [style*="667eea"],
aside#sidebar .ct-sidebar #custom_html-5 [style*="764ba2"],
aside#sidebar .ct-sidebar #custom_html-5 [style*="linear-gradient"],
#custom_html-5 .textwidget > div,
#custom_html-5 div.textwidget.custom-html-widget > div,
#custom_html-5 .textwidget div[style*="linear-gradient"] {
  background: color-mix(in srgb, var(--saytk-surface) 94%, transparent) !important;
  background-image: none !important;
  padding: 0.45rem 0.55rem !important;
  border-radius: 8px !important;
  color: var(--saytk-text) !important;
  text-align: center !important;
  border: 1px solid var(--saytk-sidebar-card-border) !important;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
}

aside#sidebar #custom_html-5 .textwidget > div a,
aside#sidebar #custom_html-5 .custom-html-widget > div a,
#custom_html-5 .textwidget > div a {
  color: var(--saytk-accent) !important;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

aside#sidebar #custom_html-5 .textwidget > div a:hover,
aside#sidebar #custom_html-5 .custom-html-widget > div a:hover,
#custom_html-5 .textwidget > div a:hover {
  color: var(--saytk-accent-strong) !important;
}

aside#sidebar #custom_html-5 button,
aside#sidebar #custom_html-5 input[type="submit"],
aside#sidebar #custom_html-5 .wp-element-button,
#custom_html-5 button,
#custom_html-5 input[type="submit"] {
  background: linear-gradient(135deg, var(--saytk-accent), var(--saytk-accent-strong)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 0.35rem 0.75rem !important;
  font-weight: 600 !important;
  cursor: pointer;
  box-shadow: var(--saytk-sidebar-card-shadow) !important;
}

html[data-theme="dark"] aside#sidebar #custom_html-5 button,
html[data-theme="dark"] aside#sidebar #custom_html-5 input[type="submit"],
[data-theme="dark"] aside#sidebar #custom_html-5 button,
[data-theme="dark"] aside#sidebar #custom_html-5 input[type="submit"],
html[data-theme="dark"] #custom_html-5 button,
[data-theme="dark"] #custom_html-5 button {
  background: linear-gradient(
    135deg,
    var(--saytk-accent),
    color-mix(in srgb, var(--saytk-accent-strong) 90%, var(--saytk-surface))
  ) !important;
  color: #fff !important;
}

/* 订阅小工具内联 h3（📬 订阅）：暗色勿保留内联深蓝 */
html[data-theme="dark"] aside#sidebar #custom_html-5 h3,
html[data-theme="dark"] #custom_html-5 h3,
[data-theme="dark"] aside#sidebar #custom_html-5 h3,
[data-theme="dark"] #custom_html-5 h3 {
  color: var(--saytk-text) !important;
}

/* SAYTK: 订阅卡片（Brevo shortcode 容器）微调 */
#custom_html-5 .saytk-subscribe-card {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

#custom_html-5 .saytk-subscribe-card h3 {
  margin: 0 !important;
  font-size: 1rem;
  line-height: 1.35;
}

#custom_html-5 .saytk-subscribe-card p {
  margin: 0 !important;
  font-size: 0.85rem;
  color: var(--saytk-text-soft);
}

#custom_html-5 .saytk-subscribe-card small {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.75rem;
  color: var(--saytk-text-muted);
}

#custom_html-5 .saytk-subscribe-card .sib_signup_form {
  margin-top: 0.15rem;
}

#custom_html-5 .saytk-subscribe-card .sib_signup_box_inside_1 {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

#custom_html-5 .saytk-subscribe-card .sib_signup_form p {
  margin: 0 !important;
}

#custom_html-5 .saytk-subscribe-card .sib_signup_form .sib-email-area {
  margin: 0 !important;
}

#custom_html-5 .saytk-subscribe-card .sib_signup_form input[type="email"] {
  height: 38px;
  padding: 0.55rem 0.75rem;
  border-radius: 10px !important;
}

#custom_html-5 .saytk-subscribe-card .sib_signup_form .sib-default-btn {
  height: 38px;
  margin-top: 0 !important;
  border-radius: 10px !important;
}

html[data-theme='dark'] .ct-sidebar form.ct-search-form .wp-element-button,
[data-theme='dark'] .ct-sidebar form.ct-search-form .wp-element-button {
  border-color: var(--saytk-sidebar-card-border) !important;
}

/*
 * #recent-posts-2：标题与列表链接左缘对齐（全局 .ct-sidebar ul 有 padding-left:0.85rem，仅 ul 吃缩进，h3 不吃）
 * 高优先级 + 置底，压过 block 样式或晚加载表。
 */
aside#sidebar .ct-sidebar > .widget.widget_recent_entries#recent-posts-2 > ul,
aside#sidebar .ct-sidebar > .ct-widget.widget_recent_entries#recent-posts-2 > ul,
aside#sidebar .ct-sidebar .widget_recent_entries#recent-posts-2 > ul {
  margin: 0 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-inline: 0 !important;
  padding-inline-start: 0 !important;
  padding-inline-end: 0 !important;
  margin-inline: 0 !important;
  list-style: none !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 .widget-title {
  text-align: start !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 > ul > li {
  padding: 0 !important;
  margin: 0 !important;
  padding-inline: 0 !important;
  margin-inline: 0 !important;
  list-style: none !important;
  text-align: start !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 > ul > li > a {
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: start !important;
}

/* ul 非 .widget 直接子级时（间层 wrapper） */
aside#sidebar .ct-sidebar #recent-posts-2 ul:not(.sub-menu) {
  padding-left: 0 !important;
  padding-inline-start: 0 !important;
  margin-inline-start: 0 !important;
}

/* Blocksy / 小工具：ul 外包 div 时缩进加在 wrapper 上，h3 与列表左缘才会差 ~0.85rem */
aside#sidebar .ct-sidebar #recent-posts-2 > div:has(> ul) {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-inline: 0 !important;
  margin-left: 0 !important;
  margin-inline-start: 0 !important;
}

/* 侧栏：热门文章（#custom_html-4）+ 最新文章 — 紧凑行距 */
aside#sidebar .ct-sidebar #custom_html-4 .widget-title {
  margin-bottom: 0.2rem !important;
  padding-bottom: 0.1rem !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget {
  line-height: 1.28 !important;
  font-size: 0.9rem !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget p,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget p {
  margin: 0.12rem 0 !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget p:first-child,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget p:first-child {
  margin-top: 0 !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget p:last-child,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget p:last-child {
  margin-bottom: 0 !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget a,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget a {
  line-height: 1.25 !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget ul,
aside#sidebar .ct-sidebar #custom_html-4 .textwidget ol,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget ul,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget ol {
  margin: 0 !important;
  padding-left: 0 !important;
  list-style: none !important;
}

aside#sidebar .ct-sidebar #custom_html-4 .textwidget li,
aside#sidebar .ct-sidebar #custom_html-4 .custom-html-widget li {
  margin: 0 !important;
  padding: 0.08rem 0 !important;
  line-height: 1.25 !important;
}

/* 最新文章：行间线（对齐热门文章 / 分类列表的细分隔） */
aside#sidebar .ct-sidebar #recent-posts-2 > ul > li:not(:last-child) {
  border-bottom: 1px solid color-mix(in srgb, var(--saytk-border) 72%, transparent) !important;
  padding-bottom: 0.45rem !important;
  margin-bottom: 0.45rem !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 > ul > li:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

html[data-theme='dark'] aside#sidebar .ct-sidebar #recent-posts-2 > ul > li:not(:last-child),
[data-theme='dark'] aside#sidebar .ct-sidebar #recent-posts-2 > ul > li:not(:last-child) {
  border-bottom-color: rgba(255, 255, 255, 0.09) !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 > ul > li > a {
  line-height: 1.22 !important;
}

aside#sidebar .ct-sidebar #recent-posts-2 .widget-title {
  margin-bottom: 0.18rem !important;
  padding-bottom: 0.12rem !important;
}

/* JS 负 margin 拉回列表时避免被卡片 overflow 裁切 */
aside#sidebar .ct-sidebar > #recent-posts-2.ct-widget,
aside#sidebar .ct-sidebar > #recent-posts-2.widget_recent_entries,
aside#sidebar .ct-sidebar #recent-posts-2 {
  overflow: visible !important;
}

