/* Source and answer blocks, 2026-11-02. */
.answer-summary p { max-width: 78ch; }
.answer-summary h2 { font-size: clamp(1.25rem, 2.6vw, 1.65rem); }
.review-note { color: var(--muted, #46546a); font-size: .92rem; line-height: 1.6; }
.source-facts { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--border, #d9e2ef); }
.source-facts h2 { font-size: 1.2rem; }
.fact-table { width: 100%; border-collapse: collapse; font-size: 1rem; line-height: 1.5; }
.fact-table th, .fact-table td { padding: .8rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--border, #d9e2ef); }
.fact-table th { font-weight: 650; }
table caption { padding: .75rem .25rem; color: var(--muted, #46546a); text-align: left; font-size: .9rem; line-height: 1.5; }
.data-dictionary dt { margin-top: .9rem; font-weight: 700; }
.data-dictionary dd { margin-left: 0; max-width: 75ch; line-height: 1.65; }
.article-body p, .article-body li { line-height: 1.7; }
.answer-summary + .calc-layout { margin-top: 1.5rem; }
@media (max-width: 640px) { .fact-table { min-width: 580px; } .fact-table th, .fact-table td { padding: .7rem; } }
@media print { .answer-summary, .source-facts { break-inside: avoid; } .fact-table { min-width: 0; font-size: .85rem; } }

/* Readable guides and amount comparisons, reviewed 2026-11-03. */
.article-body > section { margin-top: 1.8rem; }
.article-body > section:first-child { margin-top: 0; }
.article-body h2 { margin-top: .6rem; }
.article-body h3 { margin-top: 1.25rem; }
.article-body p { max-width: 80ch; }
.article-body li { margin-bottom: .45rem; }
.article-toc { border-left: 3px solid #d3e1f5; padding: .8rem 1.25rem; margin: 1.5rem 0; background: #f7faff; }
.article-toc ul { margin-bottom: 0; }
.download-grid, .cola-input-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin: 1.2rem 0 1.8rem; }
.download-grid > div { padding: 1.2rem; border: 1px solid var(--border, #d9e2ef); border-radius: 10px; }
.cola-input-grid label { display: block; font-weight: 650; margin-bottom: .6rem; }
.cola-input-grid input { width: 100%; min-height: 48px; font-size: 1.1rem; }
.cola-result-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin-top: 1.2rem; }
.cola-result-grid > div { padding: 1rem; border-radius: 10px; background: #f0f6ff; }
.cola-result-grid span { display: block; color: #46546a; font-size: .9rem; }
.cola-result-grid strong { display: block; font-size: 1.5rem; margin-top: .5rem; overflow-wrap: anywhere; }
.article-body section, .article-body h2 { scroll-margin-top: 90px; }
.navlinks { gap: 12px; flex-wrap: nowrap; }
.navlinks a { white-space: nowrap; padding-left: 9px; padding-right: 9px; }
@media (max-width: 1100px) {
  .navlinks { display: none; }
  .mobile-menu { display: block; position: relative; flex-shrink: 0; }
  .mobile-menu summary { font-size: 14px; font-weight: 650; color: #355b8b; cursor: pointer; padding: 6px; list-style: none; min-height: 44px; min-width: 60px; display: flex; align-items: center; justify-content: center; }
  .mobile-menu[open] nav { position: absolute; right: 0; top: 43px; width: 240px; display: flex; flex-direction: column; background: #fff; border: 1px solid #d6e0ee; border-radius: 12px; box-shadow: 0 8px 25px #1b355221; padding: 9px; }
  .mobile-menu nav a { font-size: 15px; padding: 10px 12px; text-decoration: none; color: #355b8b; }
}
@media (max-width: 720px) {
  .responsive-calendar tbody th[scope="row"] { display: block; grid-column: 1 / -1; padding: 0 0 10px; border: 0; border-bottom: 1px solid #e3eaf4; font-size: 17px; line-height: 1.5; }
}
@media (max-width: 640px) {
  .download-grid, .cola-input-grid { grid-template-columns: 1fr; gap: 1rem; }
  .cola-result-grid { grid-template-columns: 1fr; }
  .article-toc { padding-left: 1rem; }
  .breadcrumbs { overflow-wrap: anywhere; }
}
