/* 全站子页面阅读排版：2026-10-14 用户确认的编辑器参数。 */
#reader {
  --reading-body-size: 14px;
  --reading-section-size: 20px;
  --reading-subheading-size: 22px;
  --reading-title-size: 36px;
  --reading-line-height: 1.75;
  --reading-paragraph-gap: 16px;
  --reading-content-width: 640px;
}

#reader.product-fullscreen {
  position: fixed;
  inset: 0;
  width: 100%;
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#reader.product-fullscreen .reader-scroll { min-height: 0; }
#reader #reader-body .template-catalog {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin: 28px 0;
}
#reader #reader-body .template-catalog .record-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 24px;
  border: 0;
  border-radius: 14px;
  background: color-mix(in srgb, var(--reader-ink, #244358) 5%, var(--reader-paper, #eff6fb));
}
#reader #reader-body .template-catalog .record-item > div {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
#reader #reader-body .template-catalog small {
  color: var(--reader-muted, #6b7e8a);
  font: 11px/1.7 var(--sans);
}
#reader #reader-body .template-catalog h3 {
  margin: 12px 0;
  font-size: 19px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
#reader #reader-body .template-catalog p {
  margin: 0 0 20px;
  color: var(--reader-muted, #6b7e8a);
}
#reader #reader-body .template-catalog .record-item > div > a {
  align-self: flex-start;
  margin-top: auto;
  padding: 8px 14px;
  border: 0;
  border-radius: 7px;
  background: color-mix(in srgb, var(--reader-ink, #244358) 8%, transparent);
  font: 600 12px/1.8 var(--sans);
  text-decoration: none;
}
#reader #reader-body .template-catalog a:focus-visible {
  outline: 2px solid var(--reader-link, #315d76);
  outline-offset: 4px;
}
@media (max-width: 600px) {
  #reader #reader-body .template-catalog { grid-template-columns: 1fr; gap: 16px; }
  #reader #reader-body .template-catalog .record-item { padding: 22px; }
}

/* 两侧各 52px 内边距，正文可用宽度为 640px；窄屏沿用原有内边距。 */
#reader .reading-page {
  width: 100%;
  max-width: calc(var(--reading-content-width) + 104px);
}
@media (max-width: 760px) {
  #reader .reading-page { max-width: calc(var(--reading-content-width) + 46px); }
}
#reader #reader-title { font-size: var(--reading-title-size); }
#reader .reader-return { font-weight: 700; }
#reader .reader-meta[hidden] { display: none; }
/* 关于我三页面隐藏阅读信息，但保留标题与正文之间的细线。 */
#reader #reader-title:has(+ .reader-meta[hidden]) {
  padding-bottom: 24px;
  margin-bottom: 32px;
  border-bottom: 1px solid var(--reader-line, #dedede);
}
#reader .reader-end { font-size: 12px; }
#reader .reading-theme { width: 44px; height: 44px; min-width: 44px; min-height: 44px; flex-shrink: 0; }
#reader #reader-body .reader-table-hint { margin: 8px 0; color: var(--reader-muted, #6b7e8a); font: 12px/1.7 var(--sans); }
#reader #reader-body .reader-table-hint[hidden] { display: none; }
#reader #reader-body table:focus-visible { outline: 2px solid var(--reader-link, #315d76); outline-offset: 3px; }
#reader #reader-body {
  font-size: var(--reading-body-size);
  line-height: var(--reading-line-height);
}
#reader #reader-body p { margin-block: var(--reading-paragraph-gap); }
#reader #reader-body .about-reader-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px;
  align-items: center;
  gap: 36px;
  margin: 8px 0 40px;
}
#reader #reader-body .about-reader-copy { min-width: 0; }
#reader #reader-body .about-reader-copy > p:first-child { margin-top: 0; }
#reader #reader-body .about-reader-copy > p:last-child { margin-bottom: 0; }
#reader #reader-body .about-reader-photo { margin: 0; }
#reader #reader-body .about-reader-photo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  margin: 0;
  border-radius: 6px;
}
@media (max-width: 600px) {
  #reader #reader-body .about-reader-intro { grid-template-columns: 1fr; gap: 24px; margin-bottom: 32px; }
  #reader #reader-body .about-reader-photo { width: min(260px, 100%); justify-self: center; }
}
#reader #reader-body h1,
#reader #reader-body h2 { font-size: var(--reading-section-size); }
#reader #reader-body h3,
#reader #reader-body aside h3,
#reader #reader-body .record-item h3 { font-size: var(--reading-subheading-size); }
#reader #reader-body h4,
#reader #reader-body h5,
#reader #reader-body h6,
#reader #reader-body aside h4 { font-size: var(--reading-body-size); }
#reader #reader-body .reader-section-title { font-size: var(--reading-section-size); }
#reader #reader-body li { margin-block: 7px; }
#reader #reader-body li > p { margin-block: 6px; }
#reader #reader-body aside,
#reader #reader-body blockquote,
#reader #reader-body table,
#reader #reader-body .record-item p {
  font-size: var(--reading-body-size);
  line-height: var(--reading-line-height);
}

/* 栏目内的记录列表仍使用自己的网格与图片布局。 */
#reader #reader-body td p,
#reader #reader-body th p { margin: 0; }
#reader #reader-body blockquote > :first-child,
#reader #reader-body aside > :first-child { margin-top: 0; }
#reader #reader-body blockquote > :last-child,
#reader #reader-body aside > :last-child { margin-bottom: 0; }

/* 价值观与人际关系使用编号和留白，名称与说明连续阅读。 */
#reader #reader-body .principles-numbered-list {
  list-style-type: decimal-leading-zero;
  margin-block: 26px 36px;
  padding-inline-start: 28px;
}
#reader #reader-body .principles-numbered-list > li {
  margin-block: 20px;
  padding-inline-start: 8px;
  line-height: 1.9;
}
#reader #reader-body .principles-numbered-list > li::marker {
  font-family: Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: var(--reader-muted, #6b7e8a);
}
#reader #reader-body .principles-numbered-list > li > strong {
  display: inline-block;
  margin-inline-end: .6em;
  white-space: nowrap;
}
@media (max-width: 600px) {
  #reader #reader-body .principles-numbered-list { padding-inline-start: 24px; }
  #reader #reader-body .principles-numbered-list > li { padding-inline-start: 5px; }
}

#reader.product-reader-page .reader-meta { border: 0; padding-bottom: 0; margin-bottom: 28px; }
#reader.product-reader-page #reader-body { line-height: 1.9; }
#reader.product-reader-page #reader-body h2 { margin: 54px 0 22px; padding: 0; border: 0; font-size: 22px; }
#reader.product-reader-page #reader-body h3 { margin: 32px 0 14px; font-size: 18px; }
#reader.product-reader-page #reader-body h4 { margin: 28px 0 12px; font-size: 16px; }
#reader.product-reader-page #reader-body .product-lead { margin-bottom: 34px; }
#reader.product-reader-page #reader-body .product-lead > p:first-child { font: 600 22px/1.65 var(--serif); margin-top: 0; }
#reader.product-reader-page #reader-body .product-note { margin: 28px 0; padding: 20px 24px; border: 0; background: color-mix(in srgb, var(--reader-ink, #244358) 4%, transparent); border-radius: 8px; }
#reader.product-reader-page #reader-body .product-note > :first-child { margin-top: 0; }
#reader.product-reader-page #reader-body .product-note > :last-child { margin-bottom: 0; }
#reader.product-reader-page #reader-body .product-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 32px; margin: 28px 0; }
#reader.product-reader-page #reader-body .product-columns > div { min-width: 0; }
#reader.product-reader-page #reader-body .product-columns > div > :first-child { margin-top: 0; }
#reader.product-reader-page #reader-body .product-columns > div > :last-child { margin-bottom: 0; }
#reader.product-reader-page #reader-body .product-columns ul { margin: 12px 0; }
#reader.product-reader-page #reader-body .product-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; margin: 28px 0 12px; }
#reader.product-reader-page #reader-body .product-gallery > div { min-width: 0; }
#reader.product-reader-page #reader-body .product-gallery figure { margin: 0; }
#reader.product-reader-page #reader-body .product-gallery > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
#reader.product-reader-page #reader-body .product-gallery img { max-height: 620px; width: 100%; object-fit: contain; object-position: top; }
#reader.product-reader-page #reader-body .product-caption { margin: 10px 0 32px; text-align: center; color: var(--reader-muted, #6b7e8a); font: 12px/1.8 var(--sans); }
#reader.product-reader-page #reader-body figcaption { color: var(--reader-muted, #6b7e8a); }
#reader.product-reader-page #reader-body aside,
#reader.product-reader-page #reader-body .reader-section-title { border: 0; }
@media (max-width: 600px) {
  #reader.product-reader-page #reader-title { font-size: 30px; }
  #reader.product-reader-page #reader-body .product-columns,
  #reader.product-reader-page #reader-body .product-gallery { grid-template-columns: 1fr; gap: 24px; }
  #reader.product-reader-page #reader-body .product-note { padding: 18px; }
  #reader.product-reader-page #reader-body .product-gallery img { max-height: none; }
}
