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

body { background-color: var(--paper); color: var(--ink); font-family: var(--font-body); font-size: 1rem; line-height: 1.75; }
h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 700; line-height: 1.2; color: var(--ink); }
.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; } }
.context-spectrum { margin-block: var(--space-xl); }
.context-spectrum__title { font-family: var(--font-mono); font-size: 0.62rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--mid); display: block; margin-bottom: var(--space-m); padding-bottom: var(--space-xs); border-bottom: 1px solid var(--rule); }
.spectrum-bar { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: var(--space-l); padding-bottom: var(--space-s); border-bottom: 2px solid var(--ink); }
.spectrum-bar__end { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mid); }
.spectrum-bar__end:last-child { text-align: right; }
.spectrum-row { display: grid; grid-template-columns: 160px 1fr; gap: var(--space-m); padding-block: var(--space-m); border-bottom: 1px solid var(--rule); align-items: center; }
.spectrum-row:last-child { border-bottom: none; }
@media (max-width: 560px) {
.spectrum-row { grid-template-columns: 1fr; gap: var(--space-s); }
}
.spectrum-row__context { display: flex; flex-direction: column; gap: 0.2rem; }
.spectrum-row__industry { font-family: var(--font-mono); font-size: 0.65rem; letter-spacing: 0.08em; font-weight: 500; color: var(--ink); }
.spectrum-row__example { font-family: var(--font-mono); font-size: 0.58rem; letter-spacing: 0.04em; color: var(--light); line-height: 1.4; }
.spectrum-row__right { display: flex; flex-direction: column; gap: var(--space-xs); }
.tolerance-track { height: 6px; background-color: var(--paper-tint); border: 1px solid var(--rule); position: relative; overflow: visible; }
.tolerance-track__fill { height: 100%; background-color: var(--ink); width: var(--fill, 50%); display: block; }
.tolerance-track--strict .tolerance-track__fill  { background-color: var(--ink); }
.tolerance-track--moderate .tolerance-track__fill { background-color: var(--mid); }
.tolerance-track--high .tolerance-track__fill     { background-color: var(--light); }
.spectrum-row__verdict { font-size: 0.85rem; line-height: 1.6; color: var(--ink); margin-bottom: 0; }
.verdict-label { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.1em; text-transform: uppercase; margin-right: 0.5em; }
.verdict-label--strict   { color: var(--ink); }
.verdict-label--moderate { color: var(--mid); }
.verdict-label--high     { color: var(--light); }
.annotation-stack { margin-block: var(--space-l); display: grid; grid-template-columns: 1fr; gap: var(--space-s); }
@media (min-width: 600px) {
.annotation-stack { grid-template-columns: repeat(2, 1fr); }
}
.annotation-card { border: 1px solid var(--rule); padding: var(--space-m); display: flex; flex-direction: column; gap: 0.4rem; }
.annotation-card--warning { border-color: var(--red); border-left-width: 3px; }
.annotation-card--safe    { border-left: 3px solid var(--ink); }
.annotation-card__who { font-family: var(--font-mono); font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mid); }
.annotation-card__signal { font-family: var(--font-display); font-size: 1rem; font-weight: 700; color: var(--ink); line-height: 1.3; }
.annotation-card p { font-size: 0.85rem; color: var(--mid); line-height: 1.6; margin-bottom: 0; }

@media print {
  .site-header, .site-nav, .article-sidebar, .site-footer, .breadcrumb { display: none; }
  h1,h2,h3 { page-break-after: avoid; }
  .pull-quote, .field-example, .key-fact, .context-spectrum { page-break-inside: avoid; }
  .wrap, .wrap--wide { max-width: 100%; padding: 0; }
  .tolerance-track__fill { background-color: black !important; }
}
