/* ==========================================================================
   bangmindp.com · 天美影院
   纸本课堂式影像编辑台：暖白纸感、深青正文、琥珀标注、浅蓝分区
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. base · 变量、重置、排版基础
   -------------------------------------------------------------------------- */
:root {
  --paper: #F8F6EF;
  --paper-card: #FFFFFF;
  --ink: #1D2A2E;
  --ink-soft: #536267;
  --teal: #1F5C57;
  --teal-dark: #164743;
  --mint: #DCEBE6;
  --blue-band: #E8F0F3;
  --amber: #C77A2A;
  --line: #D8D2C4;
  --line-soft: #E7E2D6;
  --radius: 6px;
  --radius-sm: 4px;
  --shadow-card: 0 1px 2px rgba(29, 42, 46, 0.05);
  --shadow-lift: 0 8px 22px rgba(29, 42, 46, 0.09);
  --font-stack: -apple-system, BlinkMacSystemFont, "PingFang SC",
    "Noto Sans SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  --shell: 1120px;
  --article: 860px;
  --header-h: 68px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.site-body {
  margin: 0;
  background-color: var(--paper);
  color: var(--ink);
  font-family: var(--font-stack);
  font-size: 16px;
  line-height: 1.75;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variant-numeric: tabular-nums;
}

h1,
h2,
h3,
h4,
p,
figure,
dl,
dd,
blockquote {
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  color: var(--teal);
  text-decoration: none;
  transition: color 0.18s ease, border-color 0.18s ease;
}

a:hover {
  color: var(--teal-dark);
}

a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 3px;
  border-radius: 2px;
}

strong {
  font-weight: 600;
}

/* --------------------------------------------------------------------------
   2. layout · 全站骨架：页头 / 主导航 / 主容器 / 面包屑 / 页标题 / 页脚
   -------------------------------------------------------------------------- */

/* --- 页头 --- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 60;
  background-color: var(--paper);
  border-bottom: 1px solid var(--line);
}

.site-header__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
  height: var(--header-h);
  display: flex;
  align-items: center;
  gap: 24px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  color: var(--ink);
}

.brand:hover {
  color: var(--ink);
}

.brand__mark {
  display: inline-block;
  padding: 4px 10px;
  background-color: var(--teal);
  color: #FFFFFF;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
  border-radius: var(--radius-sm);
}

.brand__slogan {
  font-size: 12px;
  color: var(--ink-soft);
  line-height: 1.4;
  max-width: 12em;
}

/* --- 主导航 --- */
.primary-nav {
  margin-left: auto;
}

.primary-nav__list {
  display: flex;
  align-items: center;
  gap: 4px;
}

.primary-nav__item {
  display: block;
}

.primary-nav__link {
  display: inline-block;
  padding: 8px 11px;
  font-size: 14.5px;
  line-height: 1.5;
  color: var(--ink);
  border-radius: var(--radius-sm);
  border-bottom: 2px solid transparent;
  white-space: nowrap;
}

.primary-nav__link:hover {
  color: var(--teal);
  border-bottom-color: var(--teal);
}

.primary-nav__link.is-current {
  background-color: var(--teal);
  color: #FFFFFF;
  border-bottom-color: var(--teal);
}

.primary-nav__link.is-current:hover {
  color: #FFFFFF;
}

/* --- 汉堡按钮（桌面隐藏） --- */
.nav-toggle {
  display: none;
  margin-left: auto;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background-color: var(--paper-card);
  cursor: pointer;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.nav-toggle__bar {
  display: block;
  width: 20px;
  height: 2px;
  background-color: var(--ink);
  border-radius: 2px;
}

/* --- 主容器 --- */
.site-main {
  display: block;
}

.inner-main {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px 8px;
}

/* --- 面包屑 --- */
.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 20px 0 4px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--ink-soft);
}

.breadcrumb a {
  color: var(--ink-soft);
  border-bottom: 1px solid transparent;
}

.breadcrumb a:hover {
  color: var(--teal);
  border-bottom-color: var(--teal);
}

.breadcrumb-sep {
  color: var(--line);
}

.breadcrumb-current {
  color: var(--ink);
}

/* --- 页标题（全站统一） --- */
.page-header {
  padding: 10px 0 0;
}

.page-title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 700;
  line-height: 1.25;
  color: var(--ink);
  max-width: 22em;
}

/* --- 页标题区（浅蓝底，各页 class 变体共用视觉） --- */
.page-title-band,
.page-title-block,
.page-title,
.page-title-section {
  display: block;
  margin: 18px 0 0;
  background-color: var(--blue-band);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.page-title-band__inner,
.page-title-block__inner,
.page-title__inner,
.page-title-section__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 22px 24px 24px;
}

.page-title-band__eyebrow,
.page-title-block__eyebrow,
.page-title__eyebrow,
.page-eyebrow {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 8px;
}

.page-title-band__lead,
.page-title-block__lead,
.page-title__lead,
.page-lead {
  font-size: 16px;
  line-height: 1.75;
  color: var(--ink-soft);
  max-width: 46em;
}

/* --- 页脚 --- */
.site-footer {
  margin-top: 64px;
  background-color: var(--teal-dark);
  color: #E6EEEA;
}

.site-footer__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 48px 24px 32px;
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 40px;
}

.site-footer__brand-name {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  color: #FFFFFF;
  margin-bottom: 10px;
}

.site-footer__brand-desc {
  font-size: 14px;
  line-height: 1.75;
  color: #C4D5D0;
  max-width: 34em;
}

.site-footer__nav {
  display: block;
}

.site-footer__heading {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: #FFFFFF;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.site-footer__links {
  display: grid;
  gap: 9px;
}

.site-footer__links a {
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  color: #C4D5D0;
  border-bottom: 1px solid transparent;
}

.site-footer__links a:hover {
  color: #FFFFFF;
  border-bottom-color: rgba(255, 255, 255, 0.5);
}

.site-footer__meta {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 16px 24px 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.site-footer__meta p {
  font-size: 13px;
  line-height: 1.7;
  color: #9FB6B0;
}

/* --------------------------------------------------------------------------
   3. components · 通用组件
   -------------------------------------------------------------------------- */

/* --- 通用文字链接 --- */
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
  padding-bottom: 1px;
}

.text-link::after {
  content: "→";
  font-size: 14px;
}

.text-link:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 按钮 --- */
.btn,
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 22px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
  border-radius: var(--radius);
  border: 1px solid transparent;
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.btn--primary,
.button--primary {
  background-color: var(--teal);
  color: #FFFFFF;
  border-color: var(--teal);
}

.btn--primary:hover,
.button--primary:hover {
  background-color: var(--teal-dark);
  border-color: var(--teal-dark);
  color: #FFFFFF;
}

.btn--ghost,
.button--ghost {
  background-color: transparent;
  color: var(--teal);
  border-color: var(--teal);
}

.btn--ghost:hover,
.button--ghost:hover {
  background-color: var(--mint);
  color: var(--teal-dark);
  border-color: var(--teal-dark);
}

/* --- 分组标题（首页 section-head） --- */
.section-head {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
}

.section-head__title {
  font-size: clamp(22px, 2.6vw, 29px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.section-head__desc {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  max-width: 44em;
}

/* --- 分组标题（内页 section-heading / section-title / section-desc） --- */
.section-heading {
  margin-bottom: 20px;
}

.section-title {
  font-size: clamp(21px, 2.4vw, 27px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.section-desc,
.section-heading__desc,
.section-intro,
.section-lead {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  max-width: 46em;
}

.section-intro {
  margin-bottom: 22px;
}

.section-lead {
  margin-bottom: 20px;
}

/* --- 标签 --- */
.tag {
  display: inline-block;
  padding: 2px 9px;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.7;
  color: var(--teal-dark);
  background-color: var(--mint);
  border-radius: var(--radius-sm);
  white-space: nowrap;
}

/* --- 图片容器通用约束 --- */
.media-figure,
.media-frame,
.article-figure,
.hero-visual,
.topic-card__media,
.channel-aside__figure {
  margin: 0;
  background-color: var(--blue-band);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
}

.media-figure img,
.media-frame img,
.article-figure img,
.topic-card__media img,
.channel-aside__figure img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.media-figure figcaption,
.media-frame figcaption,
.article-figure__caption,
.channel-aside__caption {
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.65;
  color: var(--ink-soft);
  border-top: 1px solid var(--line-soft);
  background-color: var(--paper-card);
}

/* --- 折叠问答（首页与观看指南共用） --- */
.faq-item {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background-color: var(--paper-card);
  box-shadow: var(--shadow-card);
}

.faq-item + .faq-item {
  margin-top: 10px;
}

.faq-item__summary {
  position: relative;
  display: block;
  padding: 15px 46px 15px 18px;
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.65;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.faq-item__summary::-webkit-details-marker {
  display: none;
}

.faq-item__summary::after {
  content: "+";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  color: var(--amber);
}

.faq-item[open] .faq-item__summary::after {
  content: "−";
}

.faq-item[open] .faq-item__summary {
  border-bottom: 1px solid var(--line-soft);
}

.faq-item__body {
  padding: 14px 18px 18px;
  font-size: 15px;
  line-height: 1.8;
  color: var(--ink-soft);
}

.faq-item__body p + p {
  margin-top: 10px;
}

/* 观看指南四段式问答 */
.faq-item__cause,
.faq-item__solution,
.faq-item__check {
  font-size: 15px;
  line-height: 1.8;
  color: var(--ink-soft);
}

.faq-item__cause + .faq-item__solution,
.faq-item__solution + .faq-item__check {
  margin-top: 10px;
}

.faq-item__cause strong,
.faq-item__solution strong,
.faq-item__check strong {
  color: var(--ink);
}

/* --- 归档提示块 --- */
.archive-hint {
  padding: 20px 22px;
  background-color: var(--mint);
  border: 1px solid var(--line);
  border-left: 4px solid var(--teal);
  border-radius: var(--radius);
}

.archive-hint__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--teal-dark);
  margin-bottom: 8px;
}

.archive-hint__text {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.archive-hint__text + .archive-hint__text {
  margin-top: 8px;
}

/* --- 上下文条 --- */
.context-strip {
  display: block;
  margin-top: 48px;
  background-color: var(--blue-band);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.context-strip__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 18px 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 24px;
}

.context-strip__path,
.context-strip__text {
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.context-strip__link,
.context-strip__links {
  font-size: 14px;
  line-height: 1.7;
}

.context-strip__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
}

.context-strip__link,
.context-strip__links a {
  font-weight: 600;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
  padding-bottom: 1px;
}

.context-strip__link:hover,
.context-strip__links a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 表格通用 --- */
.table-scroll {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background-color: var(--paper-card);
}

.compare-table,
.record-table,
.prep-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14.5px;
  line-height: 1.7;
}

.compare-table__caption,
.record-table__caption,
.prep-table__caption {
  caption-side: top;
  padding: 12px 16px;
  text-align: left;
  font-size: 13px;
  color: var(--ink-soft);
  border-bottom: 1px solid var(--line-soft);
}

.compare-table th,
.compare-table td,
.record-table th,
.record-table td,
.prep-table th,
.prep-table td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line-soft);
}

.compare-table thead th,
.record-table thead th,
.prep-table thead th {
  background-color: var(--blue-band);
  color: var(--ink);
  font-weight: 600;
  white-space: nowrap;
}

.compare-table tbody th,
.record-table tbody th,
.prep-table tbody th {
  color: var(--ink);
  font-weight: 600;
  background-color: #FBF9F3;
  white-space: nowrap;
}

.compare-table tbody tr:last-child th,
.compare-table tbody tr:last-child td,
.record-table tbody tr:last-child th,
.record-table tbody tr:last-child td,
.prep-table tbody tr:last-child th,
.prep-table tbody tr:last-child td {
  border-bottom: 0;
}

.compare-table td,
.record-table td,
.prep-table td {
  color: var(--ink-soft);
}

/* --- 双栏主布局（主内容在前，侧栏在后） --- */
.page-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 44px;
  align-items: start;
  margin-top: 40px;
}

.page-layout__main {
  min-width: 0;
}

.page-layout__aside {
  min-width: 0;
}

/* --------------------------------------------------------------------------
   4. pages · 首页
   -------------------------------------------------------------------------- */
.home-main {
  display: block;
}

/* --- 首屏 --- */
.hero-focus {
  padding: 44px 0 56px;
  border-bottom: 1px solid var(--line);
}

.hero-focus__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
}

.hero-copy {
  min-width: 0;
}

.eyebrow {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 14px;
}

.hero-copy__title {
  font-size: clamp(30px, 4.4vw, 46px);
  font-weight: 700;
  line-height: 1.22;
  color: var(--ink);
  margin-bottom: 18px;
}

.hero-copy__lead {
  font-size: 16.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  max-width: 32em;
  margin-bottom: 26px;
}

.hero-copy__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-visual {
  position: relative;
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.hero-visual img {
  width: 100%;
  aspect-ratio: 16 / 11;
  object-fit: cover;
}

.hero-visual__caption {
  padding: 12px 16px;
  font-size: 13px;
  line-height: 1.65;
  color: var(--ink-soft);
  border-top: 1px solid var(--line-soft);
  background-color: var(--paper-card);
}

.hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 14px 16px 16px;
  background-color: var(--paper-card);
  border-top: 1px dashed var(--line);
}

.hero-tags__item {
  padding: 4px 11px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal-dark);
  background-color: var(--mint);
  border-radius: 20px;
}

/* --- 三条浏览路径 --- */
.browse-path {
  padding: 56px 0 8px;
}

.browse-path__grid {
  max-width: var(--shell);
  margin: 26px auto 0;
  padding: 0 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.path-card {
  padding: 22px 22px 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-top: 3px solid var(--teal);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.path-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-lift);
  border-color: var(--teal);
}

.path-card__name {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.45;
  color: var(--ink);
  margin-bottom: 14px;
}

.path-card__list {
  display: grid;
  gap: 4px;
}

.path-card__list dt {
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
}

.path-card__list dd {
  margin: 0 0 10px;
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.path-card__list dd:last-child {
  margin-bottom: 0;
}

.path-card__list dd a {
  font-weight: 600;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
}

.path-card__list dd a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 频道导航预览 --- */
.channel-preview {
  padding: 56px 0 8px;
}

.channel-preview__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
  gap: 40px;
  align-items: start;
}

.channel-preview__intro {
  min-width: 0;
  padding: 24px;
  background-color: var(--mint);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.channel-preview__intro p {
  font-size: 14.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  margin: 12px 0 18px;
}

.channel-preview__list {
  min-width: 0;
  border-top: 1px solid var(--line);
}

.channel-row {
  display: grid;
  grid-template-columns: minmax(0, 120px) minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 15px 4px;
  border-bottom: 1px solid var(--line);
  transition: background-color 0.18s ease;
}

.channel-row:hover {
  background-color: #FCFAF4;
}

.channel-row__name {
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--ink);
}

.channel-row__desc {
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.channel-row__link {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  white-space: nowrap;
  border-bottom: 1px solid transparent;
}

.channel-row__link:hover {
  border-bottom-color: var(--teal);
}

/* --- 专题片单预览 --- */
.topic-preview {
  padding: 56px 0 8px;
}

.topic-preview__grid {
  max-width: var(--shell);
  margin: 26px auto 0;
  padding: 0 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.topic-card {
  display: flex;
  flex-direction: column;
  padding: 0 0 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.topic-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-lift);
  border-color: var(--teal);
}

.topic-card__media {
  border: 0;
  border-bottom: 1px solid var(--line-soft);
  border-radius: 0;
  background-color: var(--blue-band);
}

.topic-card__media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.topic-card__name,
.topic-card__title {
  padding: 0 20px;
  margin: 16px 0 8px;
  font-size: 17.5px;
  font-weight: 700;
  line-height: 1.45;
  color: var(--ink);
}

.topic-card__desc {
  padding: 0 20px;
  margin: 0 0 14px;
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.topic-card__order {
  padding: 0 20px;
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.topic-card > .text-link {
  margin: auto 20px 0;
  align-self: flex-start;
}

/* --- 观看路线四步 --- */
.viewing-route {
  padding: 56px 0 8px;
}

.viewing-route__steps {
  max-width: var(--shell);
  margin: 26px auto 0;
  padding: 0 24px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.route-step {
  position: relative;
  padding: 22px 20px 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.route-step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.route-step__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 8px;
}

.route-step__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.viewing-route__more {
  max-width: var(--shell);
  margin: 22px auto 0;
  padding: 0 24px;
}

/* --- 入口核验摘要 --- */
.entry-check-summary {
  padding: 56px 0 8px;
}

.entry-check-summary__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: 40px;
  align-items: start;
}

.entry-check-summary__list-wrap {
  min-width: 0;
  padding: 26px 26px 24px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.entry-check-summary__lead {
  font-size: 14.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  margin: 0 0 16px;
}

.check-list {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}

.check-list__item {
  position: relative;
  padding-left: 26px;
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink);
}

.check-list__item::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--teal);
}

.entry-check-summary__anomaly {
  min-width: 0;
  padding: 26px 26px 24px;
  background-color: var(--blue-band);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.entry-check-summary__anomaly-title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 14px;
}

.anomaly-list {
  display: grid;
  gap: 12px;
}

.anomaly-list__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding-bottom: 12px;
  border-bottom: 1px dashed var(--line);
}

.anomaly-list__item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.anomaly-list__name {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.anomaly-list__item a {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  white-space: nowrap;
  border-bottom: 1px solid transparent;
}

.anomaly-list__item a:hover {
  border-bottom-color: var(--teal);
}

/* --- 内容边界 --- */
.content-boundary {
  padding: 56px 0 8px;
}

.content-boundary__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 26px 26px 24px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.content-boundary__text {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 32px;
  margin: 16px 0 20px;
}

.content-boundary__text p {
  font-size: 15px;
  line-height: 1.8;
  color: var(--ink-soft);
}

.boundary-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 20px;
}

.boundary-points__item {
  padding: 14px 16px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink);
  background-color: var(--mint);
  border-radius: var(--radius-sm);
  border-left: 3px solid var(--amber);
}

.content-boundary__more {
  margin: 0;
}

/* --- 常见问题摘要 --- */
.faq-summary {
  padding: 56px 0 0;
}

.faq-summary__list {
  max-width: var(--shell);
  margin: 24px auto 0;
  padding: 0 24px;
}

/* --------------------------------------------------------------------------
   5. pages · 频道导航
   -------------------------------------------------------------------------- */
.page-layout.sidebar-left,
.sidebar-left .page-layout {
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 40px;
}

.channel-layout {
  margin-top: 40px;
}

/* --- 左侧索引栏 --- */
.channel-aside {
  min-width: 0;
  padding: 22px 20px 24px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.channel-aside__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 10px;
}

.channel-aside__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 16px;
}

.channel-aside__figure {
  margin-bottom: 16px;
}

.channel-aside__figure img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.channel-aside__subtitle {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--teal-dark);
  margin-bottom: 6px;
}

.channel-aside__note {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--ink-soft);
  margin-bottom: 14px;
}

.letter-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 0 14px;
  border-top: 1px solid var(--line-soft);
  border-bottom: 1px solid var(--line-soft);
  margin-bottom: 14px;
}

.letter-index__item a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  color: var(--teal-dark);
  background-color: var(--mint);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
}

.letter-index__item a:hover {
  background-color: var(--teal);
  color: #FFFFFF;
}

.channel-aside__tip {
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-soft);
  padding-left: 12px;
  border-left: 3px solid var(--amber);
}

/* --- 频道主列表 --- */
.channel-main {
  min-width: 0;
}

.channel-main__title {
  font-size: clamp(21px, 2.4vw, 27px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.channel-main__lead {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 26px;
  max-width: 44em;
}

.channel-group {
  margin-bottom: 26px;
  scroll-margin-top: calc(var(--header-h) + 16px);
}

.channel-group__title {
  position: sticky;
  top: var(--header-h);
  z-index: 5;
  padding: 9px 14px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--teal-dark);
  background-color: var(--blue-band);
  border-left: 4px solid var(--teal);
  border-radius: var(--radius-sm);
  margin-bottom: 12px;
}

.channel-list {
  display: grid;
  gap: 10px;
}

.channel-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.channel-item:hover {
  border-color: var(--teal);
  box-shadow: var(--shadow-lift);
}

.channel-item__body {
  min-width: 0;
}

.channel-item__name {
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 4px;
}

.channel-item__desc {
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.channel-item__link {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  white-space: nowrap;
  border-bottom: 1px solid transparent;
}

.channel-item__link:hover {
  border-bottom-color: var(--teal);
}

/* --- 频道对照表 --- */
.channel-compare {
  margin-top: 48px;
  padding: 32px 0 8px;
  border-top: 1px solid var(--line);
}

.channel-compare__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
}

.channel-compare__title {
  font-size: clamp(21px, 2.4vw, 27px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.channel-compare__lead {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  max-width: 46em;
  margin-bottom: 20px;
}

/* --- 从频道进入专题的路径 --- */
.channel-path {
  margin-top: 44px;
  padding: 32px 0 0;
  border-top: 1px solid var(--line);
}

.channel-path__inner {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
}

.channel-path__title {
  font-size: clamp(21px, 2.4vw, 27px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.channel-path__lead {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  max-width: 46em;
  margin-bottom: 22px;
}

.channel-path__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 26px;
}

.channel-path__step {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.channel-path__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-bottom: 10px;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--amber);
  border-radius: 50%;
}

.channel-path__name {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.channel-path__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

/* --------------------------------------------------------------------------
   6. pages · 专题片单
   -------------------------------------------------------------------------- */
.page-shell {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 24px;
}

/* --- 专题阅读说明 --- */
.topic-intro {
  margin-top: 40px;
}

.intro-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.intro-steps__item {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.intro-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-bottom: 10px;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.intro-steps__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.intro-steps__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

/* --- 专题目录 --- */
.topic-catalog {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid var(--line);
}

.topic-catalog__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.topic-card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 0 0 20px;
}

.topic-card__tag {
  padding: 0 20px;
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.topic-card__link {
  margin: auto 20px 0;
  align-self: flex-start;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
}

.topic-card__link:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 片单条目 --- */
.playlist-list {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid var(--line);
}

.playlist-list__items {
  display: grid;
  gap: 12px;
}

.playlist-row {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto auto;
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.playlist-row:hover {
  border-color: var(--teal);
  box-shadow: var(--shadow-lift);
}

.playlist-row__num {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  color: var(--amber);
  font-variant-numeric: tabular-nums;
}

.playlist-row__main {
  min-width: 0;
}

.playlist-row__title {
  font-size: 15.5px;
  font-weight: 600;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 4px;
}

.playlist-row__desc {
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.playlist-row__topic {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.7;
  color: var(--teal-dark);
  background-color: var(--mint);
  padding: 3px 10px;
  border-radius: var(--radius-sm);
  white-space: nowrap;
}

.playlist-row__link {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  white-space: nowrap;
  border-bottom: 1px solid transparent;
}

.playlist-row__link:hover {
  border-bottom-color: var(--teal);
}

/* --- 归档提示（专题页三栏） --- */
.topic-list .archive-hint,
.archive-hint__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.topic-list .archive-hint {
  margin-top: 48px;
  padding: 0;
  background-color: transparent;
  border: 0;
  border-radius: 0;
}

.archive-hint__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.archive-hint__item {
  padding: 20px 18px;
  background-color: var(--mint);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.archive-hint__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin: 6px 0 12px;
}

.archive-hint__link {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
}

.archive-hint__link:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 相关内容导航 --- */
.related-links {
  max-width: var(--shell);
  margin: 32px auto 0;
  padding: 0 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
}

.related-links-label {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--ink-soft);
}

.related-links-item {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
  padding-bottom: 1px;
}

.related-links-item:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --------------------------------------------------------------------------
   7. pages · 观看指南
   -------------------------------------------------------------------------- */
.page-layout--with-aside {
  grid-template-columns: minmax(0, 1fr) 300px;
}

.preparation-list,
.viewing-steps,
.faq-solutions,
.checkpoint-summary {
  margin-top: 40px;
}

.preparation-list .media-figure {
  margin-bottom: 22px;
}

.preparation-list .media-figure img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* --- 准备清单 --- */
.prep-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.prep-checklist__item {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.prep-checklist__index {
  display: inline-block;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 6px;
}

.prep-checklist__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.prep-checklist__reason {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 8px;
}

.prep-checklist__standard {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-left: 12px;
  border-left: 3px solid var(--mint);
}

/* --- 浏览步骤路线 --- */
.step-route {
  display: grid;
  gap: 14px;
}

.step-route__item {
  position: relative;
  padding: 18px 20px 18px 62px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.step-route__num {
  position: absolute;
  left: 18px;
  top: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.step-route__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 4px;
}

.step-route__text {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.step-route__link {
  margin-top: 6px;
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal);
}

.step-route__link a {
  font-weight: 600;
  border-bottom: 1px solid var(--teal);
}

.step-route__link a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 问答解决方案 --- */
.faq-list {
  display: grid;
  gap: 10px;
}

.faq-list .faq-item {
  margin: 0;
}

/* --- 检查点汇总 --- */
.checkpoint-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.checkpoint-list__item {
  padding: 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-top: 3px solid var(--amber);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.checkpoint-list__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.checkpoint-list__confirm {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 6px;
}

.checkpoint-list__next {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal);
}

/* --- 结论侧栏（观看指南） --- */
.conclusion-aside {
  min-width: 0;
  padding: 24px 22px;
  background-color: var(--blue-band);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  position: sticky;
  top: calc(var(--header-h) + 20px);
}

.conclusion-aside__title {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.conclusion-aside__list {
  display: grid;
  gap: 14px;
}

.conclusion-aside__item {
  padding-bottom: 14px;
  border-bottom: 1px dashed var(--line);
}

.conclusion-aside__item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.conclusion-aside__heading {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--teal-dark);
  margin-bottom: 4px;
}

.conclusion-aside__item p {
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.conclusion-aside__nav {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.conclusion-aside__links {
  display: grid;
  gap: 8px;
}

.conclusion-aside__links a {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid transparent;
}

.conclusion-aside__links a:hover {
  border-bottom-color: var(--teal);
}

/* --------------------------------------------------------------------------
   8. pages · 入口核验
   -------------------------------------------------------------------------- */
.layout-main-aside {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 44px;
  align-items: start;
  margin-top: 40px;
}

.check-intro,
.check-list,
.anomaly-path,
.verify-record {
  margin-bottom: 40px;
}

.check-intro .media-frame {
  margin: 20px 0 22px;
}

.check-intro .media-frame img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.stop-conditions {
  padding: 20px 22px;
  background-color: var(--mint);
  border: 1px solid var(--line);
  border-left: 4px solid var(--amber);
  border-radius: var(--radius);
}

.subheading {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 10px;
}

.check-list-plain {
  display: grid;
  gap: 8px;
}

.check-list-plain li {
  position: relative;
  padding-left: 22px;
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.check-list-plain li::before {
  content: "!";
  position: absolute;
  left: 0;
  top: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  margin-top: 4px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--amber);
  border-radius: 50%;
}

/* --- 四项核验清单 --- */
.check-items {
  display: grid;
  gap: 14px;
}

.check-item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 16px;
  padding: 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.check-item__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.check-item__body {
  min-width: 0;
}

.check-item__label {
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 2px;
}

.check-item__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.check-item__desc {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 6px;
}

.check-item__meta {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-left: 12px;
  border-left: 3px solid var(--mint);
}

/* --- 异常情况处理 --- */
.anomaly-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.anomaly-card {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-top: 3px solid var(--amber);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.anomaly-card__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 8px;
}

.anomaly-card__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 10px;
}

.anomaly-card__action {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-top: 10px;
  border-top: 1px dashed var(--line);
}

.anomaly-path__note {
  margin-top: 18px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.anomaly-path__note a {
  font-weight: 600;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
}

.anomaly-path__note a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 核验记录表 --- */
.record-table {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background-color: var(--paper-card);
}

.verify-record__link {
  margin-top: 14px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.verify-record__link a {
  font-weight: 600;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
  margin-right: 14px;
}

.verify-record__link a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --- 核验结论侧栏 --- */
.aside-heading {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 8px;
}

.aside-lead {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--ink-soft);
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.conclusion-list {
  display: grid;
  gap: 14px;
}

.conclusion-item {
  padding: 14px 16px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-left: 3px solid var(--teal);
  border-radius: var(--radius-sm);
}

.conclusion-item__title {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 4px;
}

.conclusion-item__desc {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--ink-soft);
  margin-bottom: 6px;
}

.conclusion-item__link {
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
  padding-bottom: 1px;
}

.conclusion-item__link:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

.aside-note {
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px dashed var(--line);
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* --------------------------------------------------------------------------
   9. pages · 内容说明
   -------------------------------------------------------------------------- */
.layout-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 44px;
  align-items: start;
  margin-top: 40px;
}

.layout-shell--article {
  grid-template-columns: minmax(0, var(--article)) 280px;
  justify-content: space-between;
}

.article-body {
  min-width: 0;
  max-width: var(--article);
}

.article-figure {
  margin-bottom: 28px;
}

.article-figure img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.principle-sections,
.editorial-method,
.boundary-list,
.related-reading {
  margin-bottom: 40px;
}

.article-body .section-title {
  font-size: clamp(21px, 2.4vw, 27px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 10px;
}

.article-body .section-intro {
  font-size: 15.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  margin-bottom: 20px;
}

/* --- 三段组织原则 --- */
.principle-list {
  display: grid;
  gap: 14px;
}

.principle-item {
  padding: 20px 22px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.principle-item__label {
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 4px;
}

.principle-item__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 8px;
}

.principle-item__text {
  font-size: 14.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  margin-bottom: 10px;
}

.principle-item__check {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-left: 12px;
  border-left: 3px solid var(--mint);
}

/* --- 编选方法 --- */
.method-steps {
  display: grid;
  gap: 12px;
  margin-bottom: 20px;
}

.method-step {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 16px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.method-step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.method-step__body {
  min-width: 0;
}

.method-step__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 4px;
}

.method-step__text {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

.editorial-method .archive-hint {
  margin-top: 4px;
}

/* --- 内容边界 --- */
.boundary-list__items {
  display: grid;
  gap: 12px;
}

.boundary-item {
  padding: 18px 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-left: 3px solid var(--amber);
  border-radius: var(--radius);
}

.boundary-item__label {
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 4px;
}

.boundary-item__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.boundary-item__text {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 8px;
}

.boundary-item__verify {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-left: 12px;
  border-left: 3px solid var(--mint);
}

/* --- 相关阅读 --- */
.related-reading__list {
  display: grid;
  gap: 14px;
}

.related-reading__item {
  padding: 16px 18px;
  background-color: var(--blue-band);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.related-reading__link {
  display: inline-block;
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--teal-dark);
  border-bottom: 1px solid var(--teal-dark);
  margin-bottom: 6px;
}

.related-reading__link:hover {
  color: var(--teal);
  border-bottom-color: var(--teal);
}

.related-reading__text {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

/* --- 术语与归档窄栏 --- */
.aside-term-archive {
  min-width: 0;
  display: grid;
  gap: 20px;
  align-content: start;
  position: sticky;
  top: calc(var(--header-h) + 20px);
}

.aside-block {
  padding: 20px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.aside-block__title {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line-soft);
}

.term-list {
  display: grid;
  gap: 10px;
}

.term-list__row {
  display: grid;
  gap: 2px;
}

.term-list__term {
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--teal-dark);
}

.term-list__desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: var(--ink-soft);
}

.aside-links {
  display: grid;
  gap: 8px;
}

.aside-links__item {
  display: block;
}

.aside-links__link {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal);
  border-bottom: 1px solid transparent;
}

.aside-links__link:hover {
  border-bottom-color: var(--teal);
}

/* --------------------------------------------------------------------------
   10. pages · 问题反馈
   -------------------------------------------------------------------------- */
.page-layout--single {
  display: block;
  max-width: var(--shell);
  margin: 40px auto 0;
  padding: 0 24px;
}

.feedback-selfcheck,
.feedback-categories,
.info-preparation,
.feedback-process,
.result-check {
  margin-bottom: 44px;
}

.feedback-selfcheck .media-figure--wide {
  margin-bottom: 22px;
}

.feedback-selfcheck .media-figure--wide img {
  width: 100%;
  aspect-ratio: 21 / 9;
  object-fit: cover;
}

/* --- 反馈前自查 --- */
.selfcheck-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.selfcheck-list__item {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-top: 3px solid var(--teal);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.selfcheck-list__question {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.55;
  color: var(--ink);
  margin-bottom: 8px;
}

.selfcheck-list__judge {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
  padding-left: 12px;
  border-left: 3px solid var(--mint);
}

/* --- 可反馈问题分类 --- */
.category-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.category-card {
  padding: 20px 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.category-card__title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 8px;
}

.category-card__desc {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin-bottom: 10px;
}

.category-card__focus {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--teal-dark);
  padding-top: 10px;
  border-top: 1px dashed var(--line);
}

/* --- 反馈信息准备表 --- */
.prep-table {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background-color: var(--paper-card);
}

/* --- 处理流程 --- */
.process-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.process-steps__item {
  padding: 20px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.process-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: var(--teal);
  border-radius: 50%;
}

.process-steps__title {
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ink);
  margin-bottom: 6px;
}

.process-steps__desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink-soft);
}

/* --- 结果查看 --- */
.result-list {
  display: grid;
  gap: 10px;
}

.result-list__row {
  display: grid;
  grid-template-columns: minmax(0, 200px) minmax(0, 1fr);
  gap: 18px;
  padding: 14px 18px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.result-list__row dt {
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.7;
  color: var(--teal-dark);
}

.result-list__row dd {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--ink-soft);
}

/* --- 反馈页上下文条（aside 变体） --- */
.feedback-guide .context-strip,
aside.context-strip {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 20px 24px;
  display: grid;
  gap: 8px;
  background-color: var(--blue-band);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

aside.context-strip .context-strip__text,
aside.context-strip .context-strip__link {
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink-soft);
}

aside.context-strip .context-strip__text a,
aside.context-strip .context-strip__link a {
  font-weight: 600;
  color: var(--teal);
  border-bottom: 1px solid var(--teal);
}

aside.context-strip .context-strip__text a:hover,
aside.context-strip .context-strip__link a:hover {
  color: var(--teal-dark);
  border-bottom-color: var(--teal-dark);
}

/* --------------------------------------------------------------------------
   11. pages · 404
   -------------------------------------------------------------------------- */
.error-main {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 64px 24px 24px;
}

.error-panel {
  max-width: 640px;
  padding: 36px 32px;
  background-color: var(--paper-card);
  border: 1px solid var(--line);
  border-top: 4px solid var(--amber);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
}

.error-panel__code {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--amber);
  margin-bottom: 10px;
}

.error-panel__title {
  font-size: clamp(26px, 3.6vw, 36px);
  font-weight: 700;
  line-height: 1.3;
  color: var(--ink);
  margin-bottom: 12px;
}

.error-panel__lead {
  font-size: 15.5px;
  line-height: 1.8;
  color: var(--ink-soft);
  margin-bottom: 24px;
}

.error-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.error-routes {
  margin-top: 40px;
}

.error-routes__title {
  font-size: clamp(20px, 2.2vw, 25px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
  margin-bottom: 16px;
}

.error-routes__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.error-routes__item a {
  display: flex;
  align-items: center;
  min-height: 48px;
  padding: 12px 16px;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.6;
  color: var(--teal-dark);
  background-color: var(--mint);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.error-routes__item a:hover {
  background-color: var(--teal);
  border-color: var(--teal);
  color: #FFFFFF;
}

/* --------------------------------------------------------------------------
   12. responsive · 1024px 与 768px 断点
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
  .site-header__inner {
    gap: 16px;
  }

  .brand__slogan {
    display: none;
  }

  .primary-nav__link {
    padding: 8px 8px;
    font-size: 14px;
  }

  .hero-focus__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }

  .channel-preview__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  .entry-check-summary__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  .browse-path__grid,
  .topic-preview__grid,
  .topic-catalog__grid,
  .channel-path__steps,
  .intro-steps,
  .archive-hint__grid,
  .anomaly-grid,
  .selfcheck-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .viewing-route__steps,
  .process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .boundary-points {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-layout,
  .page-layout--with-aside,
  .layout-main-aside,
  .layout-shell,
  .layout-shell--article {
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 32px;
  }

  .page-layout.sidebar-left,
  .sidebar-left .page-layout {
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 28px;
  }

  .error-routes__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  :root {
    --header-h: 60px;
  }

  .site-header__inner {
    padding: 0 16px;
    height: var(--header-h);
    gap: 12px;
  }

  .brand__mark {
    font-size: 16px;
    padding: 3px 9px;
  }

  /* 移动导航：仅收起列表本身，展开后覆盖为面板 */
  .nav-toggle {
    display: inline-flex;
  }

  .primary-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: var(--header-h);
    margin-left: 0;
    background-color: var(--paper);
    border-bottom: 1px solid var(--line);
    box-shadow: 0 10px 24px rgba(29, 42, 46, 0.1);
    padding: 8px 16px 14px;
    display: none;
  }

  .primary-nav.is-open {
    display: block;
  }

  .primary-nav__list {
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
  }

  .primary-nav__link {
    display: block;
    min-height: 44px;
    padding: 11px 12px;
    font-size: 15px;
    border-bottom: 1px solid var(--line-soft);
    border-radius: var(--radius-sm);
  }

  .primary-nav__link.is-current {
    border-bottom-color: var(--teal);
  }

  /* 主容器与标题 */
  .inner-main {
    padding: 0 16px 8px;
  }

  .breadcrumb {
    padding: 16px 0 2px;
    font-size: 12.5px;
  }

  .page-header {
    padding: 8px 0 0;
  }

  .page-title {
    font-size: clamp(24px, 6.4vw, 32px);
    line-height: 1.3;
  }

  .page-title-band__inner,
  .page-title-block__inner,
  .page-title__inner,
  .page-title-section__inner {
    padding: 18px 16px 20px;
  }

  .page-title-band,
  .page-title-block,
  .page-title,
  .page-title-section {
    margin-top: 14px;
  }

  .page-lead,
  .page-title-band__lead,
  .page-title-block__lead,
  .page-title__lead {
    font-size: 15px;
  }

  /* 首页 */
  .hero-focus {
    padding: 28px 0 36px;
  }

  .hero-focus__inner {
    padding: 0 16px;
    gap: 26px;
  }

  .hero-copy__title {
    font-size: clamp(26px, 7.4vw, 34px);
    line-height: 1.28;
    margin-bottom: 14px;
  }

  .hero-copy__lead {
    font-size: 15.5px;
    margin-bottom: 22px;
  }

  .hero-copy__actions .btn {
    flex: 1 1 160px;
  }

  .section-head {
    padding: 0 16px;
  }

  .section-head__title {
    font-size: 22px;
  }

  .browse-path,
  .channel-preview,
  .topic-preview,
  .viewing-route,
  .entry-check-summary,
  .content-boundary,
  .faq-summary {
    padding-top: 40px;
  }

  .browse-path__grid,
  .topic-preview__grid,
  .viewing-route__steps,
  .channel-preview__inner,
  .entry-check-summary__inner,
  .content-boundary__text,
  .boundary-points,
  .topic-catalog__grid,
  .channel-path__steps,
  .intro-steps,
  .archive-hint__grid,
  .anomaly-grid,
  .selfcheck-list,
  .category-grid,
  .process-steps,
  .prep-checklist,
  .checkpoint-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .browse-path__grid,
  .topic-preview__grid,
  .viewing-route__steps,
  .channel-preview__inner,
  .entry-check-summary__inner,
  .faq-summary__list {
    margin-top: 20px;
    padding: 0 16px;
  }

  .channel-preview__intro,
  .entry-check-summary__list-wrap,
  .entry-check-summary__anomaly,
  .content-boundary__inner {
    padding: 20px 18px;
  }

  .channel-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 12px;
    padding: 13px 2px;
  }

  .channel-row__name {
    grid-column: 1;
  }

  .channel-row__link {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
  }

  .channel-row__desc {
    grid-column: 1;
  }

  .viewing-route__more,
  .viewing-route__steps {
    padding: 0 16px;
  }

  .viewing-route__more {
    margin-top: 18px;
  }

  .anomaly-list__item {
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
  }

  .content-boundary__text {
    gap: 12px;
    margin: 12px 0 16px;
  }

  /* 内页双栏统一堆叠，正文在前 */
  .page-layout,
  .page-layout--with-aside,
  .layout-main-aside,
  .layout-shell,
  .layout-shell--article,
  .page-layout.sidebar-left,
  .sidebar-left .page-layout {
    display: block;
    margin-top: 28px;
  }

  .page-layout.sidebar-left .channel-aside,
  .sidebar-left .page-layout .channel-aside {
    margin-bottom: 26px;
  }

  .article-body {
    max-width: none;
  }

  .conclusion-aside,
  .aside-term-archive {
    position: static;
    margin-top: 32px;
  }

  .aside-term-archive {
    gap: 16px;
  }

  .channel-main__title,
  .channel-compare__title,
  .channel-path__title,
  .article-body .section-title,
  .section-title {
    font-size: 21px;
  }

  .channel-main__lead,
  .channel-compare__lead,
  .channel-path__lead,
  .section-desc,
  .section-heading__desc,
  .section-intro,
  .section-lead {
    font-size: 15px;
  }

  .channel-group__title {
    position: static;
    padding: 8px 12px;
    font-size: 14.5px;
  }

  .channel-item {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 14px 16px;
  }

  .channel-item__link {
    justify-self: start;
  }

  .channel-compare,
  .channel-path,
  .topic-catalog,
  .playlist-list {
    margin-top: 34px;
    padding-top: 26px;
  }

  .channel-compare__inner,
  .channel-path__inner,
  .page-shell {
    padding: 0 16px;
  }

  .topic-intro {
    margin-top: 28px;
  }

  .playlist-row {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 6px 14px;
    padding: 14px 16px;
  }

  .playlist-row__num {
    grid-row: 1 / span 2;
    font-size: 18px;
    align-self: start;
    padding-top: 2px;
  }

  .playlist-row__topic {
    grid-column: 2;
    justify-self: start;
    font-size: 12.5px;
  }

  .playlist-row__link {
    grid-column: 2;
    justify-self: start;
  }

  .related-links {
    padding: 0 16px;
    margin-top: 26px;
  }

  .preparation-list,
  .viewing-steps,
  .faq-solutions,
  .checkpoint-summary,
  .check-intro,
  .check-list,
  .anomaly-path,
  .verify-record {
    margin-top: 32px;
    margin-bottom: 32px;
  }

  .step-route__item {
    padding: 16px 16px 16px 56px;
  }

  .step-route__num {
    left: 14px;
    top: 16px;
    width: 28px;
    height: 28px;
    font-size: 13px;
  }

  .check-item {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
    padding: 16px;
  }

  .check-item__num {
    width: 32px;
    height: 32px;
    font-size: 14px;
  }

  .stop-conditions {
    padding: 16px 18px;
  }

  .method-step {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    padding: 14px 16px;
  }

  .method-step__num {
    width: 28px;
    height: 28px;
    font-size: 13px;
  }

  .principle-item,
  .boundary-item {
    padding: 16px 18px;
  }

  .page-layout--single {
    padding: 0 16px;
    margin-top: 28px;
  }

  .feedback-selfcheck,
  .feedback-categories,
  .info-preparation,
  .feedback-process,
  .result-check {
    margin-bottom: 34px;
  }

  .result-list__row {
    grid-template-columns: minmax(0, 1fr);
    gap: 4px;
    padding: 12px 16px;
  }

  .prep-table,
  .record-table,
  .compare-table {
    font-size: 13.5px;
  }

  .compare-table th,
  .compare-table td,
  .record-table th,
  .record-table td,
  .prep-table th,
  .prep-table td {
    padding: 10px 12px;
  }

  .table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .context-strip {
    margin-top: 36px;
  }

  .context-strip__inner {
    padding: 16px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  aside.context-strip {
    margin: 0 16px;
    padding: 16px;
  }

  .faq-item__summary {
    padding: 13px 42px 13px 16px;
    font-size: 15px;
  }

  .faq-item__body {
    padding: 12px 16px 16px;
    font-size: 14.5px;
  }

  /* 页脚 */
  .site-footer {
    margin-top: 44px;
  }

  .site-footer__inner {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
    padding: 34px 16px 24px;
  }

  .site-footer__meta {
    padding: 14px 16px 24px;
  }

  .site-footer__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 16px;
  }

  .site-footer__links a {
    display: flex;
    align-items: center;
    min-height: 36px;
  }

  /* 404 */
  .error-main {
    padding: 36px 16px 16px;
  }

  .error-panel {
    padding: 26px 20px;
  }

  .error-panel__actions .button {
    flex: 1 1 150px;
  }

  .error-routes__list {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 390px) {
  .site-header__inner {
    padding: 0 14px;
  }

  .hero-focus__inner,
  .section-head,
  .browse-path__grid,
  .topic-preview__grid,
  .viewing-route__steps,
  .channel-preview__inner,
  .entry-check-summary__inner,
  .faq-summary__list,
  .viewing-route__more,
  .inner-main,
  .channel-compare__inner,
  .channel-path__inner,
  .page-shell,
  .related-links,
  .page-layout--single {
    padding-left: 14px;
    padding-right: 14px;
  }

  .hero-copy__title {
    font-size: 25px;
  }

  .path-card,
  .route-step,
  .topic-card__name,
  .topic-card__title,
  .topic-card__desc,
  .topic-card__order,
  .topic-card__tag {
    padding-left: 16px;
    padding-right: 16px;
  }

  .topic-card > .text-link,
  .topic-card__link {
    margin-left: 16px;
    margin-right: 16px;
  }

  .site-footer__inner,
  .site-footer__meta {
    padding-left: 14px;
    padding-right: 14px;
  }

  .site-footer__links {
    grid-template-columns: minmax(0, 1fr);
  }

  .channel-aside,
  .entry-check-summary__list-wrap,
  .entry-check-summary__anomaly,
  .content-boundary__inner,
  .conclusion-aside {
    padding: 16px;
  }
}

/* 减少动效偏好 */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }

  .path-card:hover,
  .topic-card:hover {
    transform: none;
  }
}
