/* =============================================================================
   MIANZI — PAGE-SPECIFIC STYLES
   Load after common.css
   ============================================================================= */

h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 700; line-height: 1.2; color: var(--ink); }
h4 { font-size: 1rem; font-weight: 700; margin-bottom: var(--space-xs); }
.breadcrumb__list a, .breadcrumb__list span { font-family: var(--font-mono); font-size: 0.65rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--mid); text-decoration: none; }
.article-header__glyph { font-family: var(--font-display); font-size: clamp(5rem, 14vw, 10rem); line-height: 0.9; color: var(--paper-tint); display: block; text-align: center; margin-bottom: var(--space-s); border-bottom: 2px solid var(--rule); padding-bottom: var(--space-m); }
@media (min-width: 960px) { .article-header__glyph { font-size: 8rem; text-align: right; color: rgba(212,207,197,0.5); border-bottom: none; padding-bottom: 0; margin-bottom: 0; } }
.pull-quote p { font-family: var(--font-display); font-size: clamp(1.05rem, 2vw, 1.3rem); font-style: italic; font-weight: 400; line-height: 1.5; color: var(--ink); margin-bottom: 0; }
.concept-comparison { margin-block: var(--space-l); display: grid; grid-template-columns: 1fr; gap: var(--space-s); }
@media (min-width: 560px) { .concept-comparison { grid-template-columns: 1fr 1fr; } }
.concept-comparison__cell { border: 1px solid var(--rule); padding: var(--space-m); }
.concept-comparison__cell--primary { border-top: 3px solid var(--ink); }
.concept-comparison__cell--secondary { border-top: 3px solid var(--rule); background-color: var(--paper-tint); }
.concept-comparison__label { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mid); display: block; margin-bottom: var(--space-xs); }
.concept-comparison__glyph { font-family: var(--font-display); font-size: 1.8rem; color: var(--ink); display: block; line-height: 1; margin-bottom: 0.3rem; }
.concept-comparison__name { font-family: var(--font-display); font-size: 1.05rem; font-weight: 700; color: var(--ink); display: block; margin-bottom: var(--space-xs); }
.concept-comparison__desc { font-size: 0.88rem; color: var(--mid); line-height: 1.6; margin-bottom: 0; }
.scenario-list { margin-block: var(--space-l); }
.scenario-list__item { margin-bottom: var(--space-l); padding-bottom: var(--space-l); border-bottom: 1px solid var(--rule); }
.scenario-list__item:last-child { border-bottom: none; padding-bottom: 0; }
.scenario-list__trigger { font-family: var(--font-display); font-size: 1.05rem; font-style: italic; font-weight: 400; color: var(--ink); display: block; margin-bottom: var(--space-s); padding-left: var(--space-m); border-left: 2px solid var(--gold); line-height: 1.45; }
.scenario-list__grid { display: grid; grid-template-columns: 1fr; gap: var(--space-s); }
@media (min-width: 580px) { .scenario-list__grid { grid-template-columns: repeat(3, 1fr); } }
.scenario-list__col-head { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mid); display: block; margin-bottom: 0.4rem; padding-bottom: 0.3rem; border-bottom: 1px solid var(--rule); }
.scenario-list__col p { font-size: 0.88rem; line-height: 1.6; color: var(--ink); margin-bottom: 0; }
.dimensions-table { width: 100%; border-collapse: collapse; margin-block: var(--space-l); font-size: 0.88rem; }
.dimensions-table caption { font-family: var(--font-mono); font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mid); text-align: left; padding-bottom: var(--space-s); caption-side: top; }
.dimensions-table th { font-family: var(--font-mono); font-size: 0.65rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mid); text-align: left; padding: var(--space-xs) var(--space-s); border-bottom: 2px solid var(--ink); font-weight: 500; }
.dimensions-table td { padding: var(--space-s); border-bottom: 1px solid var(--rule); vertical-align: top; line-height: 1.6; color: var(--ink); }
.dimensions-table tr:last-child td { border-bottom: none; }
.dimensions-table td:first-child { font-weight: 600; white-space: nowrap; font-size: 0.85rem; }
@media (max-width: 560px) {

.dimensions-table thead { display: none; }
.dimensions-table tr { display: block; margin-bottom: var(--space-m); border-bottom: 2px solid var(--rule); padding-bottom: var(--space-s); }
.dimensions-table td { display: block; padding: 0.3rem 0; border: none; }
.dimensions-table td::before { content: attr(data-label); display: block; font-family: var(--font-mono); font-size: 0.58rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--light); margin-bottom: 0.2rem; }
}
.toc-list__num { color: var(--light); margin-right: 0.4em; font-variant-numeric: tabular-nums; }
.sidebar-next { border: 1px solid var(--rule); padding: var(--space-m); text-decoration: none; display: block; }
.sidebar-next:hover { border-color: var(--ink); }
.sidebar-next__label { font-family: var(--font-mono); font-size: 0.58rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mid); display: block; margin-bottom: 0.3rem; }
.sidebar-next__title { font-family: var(--font-display); font-size: 0.95rem; font-weight: 700; color: var(--ink); line-height: 1.3; }
.sidebar-next__pinyin { font-family: var(--font-mono); font-size: 0.62rem; color: var(--light); display: block; margin-top: 0.2rem; }
.sidebar-prev { border: 1px solid var(--rule); padding: var(--space-m); text-decoration: none; display: block; margin-bottom: var(--space-xs); }
.sidebar-prev:hover { border-color: var(--ink); }
.sidebar-prev__label { font-family: var(--font-mono); font-size: 0.58rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mid); display: block; margin-bottom: 0.3rem; }
.sidebar-prev__title { font-family: var(--font-display); font-size: 0.95rem; font-weight: 700; color: var(--ink); line-height: 1.3; }
.sidebar-prev__pinyin { font-family: var(--font-mono); font-size: 0.62rem; color: var(--light); display: block; margin-top: 0.2rem; }

@media print {
  .site-header, .site-nav, .article-sidebar, .site-footer, .breadcrumb { display: none; }
  h1,h2,h3 { page-break-after: avoid; }
  .wrap, .wrap--wide { max-width: 100%; padding: 0; }
}
