/* The Data page's enrichment section, using the page's own type and palette. */
#classification .cl-discoveries { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 2.4rem; margin-top: 2rem; }
#classification .cl-homelands { grid-column: 1 / -1; }
#classification .cl-discovery:not(.cl-homelands) { border-top: 1px solid var(--rule); padding-top: 1.5rem; }
#classification .cl-discovery > p { font-size: 0.94rem; }
#classification .cl-discovery figure { margin-top: 1.2rem; }
#classification .cl-discovery figcaption { font-size: 0.8rem; }
#classification blockquote { margin: 1.4rem 0 0; padding-left: 0.85rem; border-left: 1px solid var(--rule); }
#classification blockquote p { margin-bottom: 0.5rem; font: 400 1.08rem/1.45 var(--display); color: var(--text); }
#classification cite { font: 400 0.8rem/1.5 var(--sans); color: var(--dim); }
#classification .cl-quotes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.4rem; }
#classification .cl-mood-head, #classification .cl-moods li { display: grid; grid-template-columns: 8rem repeat(2, minmax(0, 1fr)); align-items: center; gap: 1.2rem; }
#classification .cl-mood-head { padding-bottom: 0.4rem; font-size: 0.75rem; color: var(--dim); }
#classification .cl-moods { margin: 0; padding: 0; list-style: none; }
#classification .cl-moods li { min-height: 40px; font-size: 0.87rem; color: var(--body); }
#classification .cl-mood-cell { display: grid; grid-template-columns: minmax(0, 1fr) 3.2rem; align-items: center; gap: 0.6rem; text-align: right; font-variant-numeric: tabular-nums; }
#classification .cl-mood-cell .cl-track { height: 4px; }
#classification .cl-grim .cl-fill { background: var(--body); }
#classification .cl-compare { margin: 0; padding: 0; list-style: none; }
#classification .cl-compare li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.4rem; font-size: 0.86rem; color: var(--body); }
#classification .cl-compare li + li { margin-top: 1rem; }
#classification .cl-compare b { font-weight: 500; color: var(--text); font-variant-numeric: tabular-nums; }
#classification .cl-compare .cl-track { grid-column: 1 / -1; height: 4px; }
#classification .cl-baseline .cl-fill { background: var(--body); }
#classification .cl-cohort { margin-top: 2rem; }
#classification .cl-tone-story { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--rule); }
#classification .cl-explore { margin: 2rem 0 1rem; padding-top: 1rem; border-top: 1px solid var(--rule); }
#classification .cl-explore > summary, #classification .cl-methodology > summary { width: fit-content; color: var(--gold); font-size: 0.95rem; }
#classification .cl-explore[open] > summary { margin-bottom: 1.7rem; }
#classification .cl-methodology { margin: 1rem 0 1.7rem; }
#classification .cl-method { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; list-style: none; margin: 1.8rem 0 1rem; padding: 0; }
#classification h3 { margin: 0 0 0.6rem; font: 400 1.55rem/1.2 var(--display); color: var(--text); text-wrap: balance; }
#classification .cl-method h3 { padding-top: 0.8rem; border-top: 1px solid var(--rule); font-size: 1.22rem; }
#classification .cl-method p, #classification .cl-note { font-size: 0.88rem; line-height: 1.55; color: var(--dim); }
#classification .cl-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 0.3rem 1.4rem; margin: 1.1rem 0 0; }
#classification .cl-worlds { display: flex; flex-wrap: wrap; gap: 1.4rem; }
#classification .cl-worlds button { position: relative; min-height: 32px; padding: 0.35rem 0; border: 0; background: none; font: 600 0.72rem/1.4 var(--sans); letter-spacing: 0.08em; text-transform: uppercase; color: var(--dim); cursor: pointer; }
#classification .cl-worlds button:hover { color: var(--text); }
#classification .cl-worlds button[aria-pressed="true"] { color: var(--gold); }
#classification .cl-worlds button[aria-pressed="true"]::after { content: ""; position: absolute; inset: auto 0 0; height: 1px; background: var(--gold); }
#classification .cl-worlds small { margin-left: 0.3rem; font-size: 0.65rem; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--dim); }
#classification #cl-coverage { max-width: none; margin: 0; font-size: 0.76rem; }
#classification figure { margin: 1rem 0 0; }
#classification figcaption { max-width: var(--measure); margin-bottom: 1rem; font-size: 0.85rem; line-height: 1.5; color: var(--dim); }
#classification .cl-frequency figure { margin-top: 0.85rem; }
#classification .cl-frequency figcaption { margin-bottom: 1.2rem; font-size: 0.8rem; }
#classification .cl-chart-head, #classification .cl-rank { display: grid; grid-template-columns: 6.6rem minmax(0, 1fr) 6rem; align-items: center; gap: 1rem; }
#classification .cl-chart-head { padding-bottom: 0.5rem; font-size: 0.69rem; color: var(--dim); font-variant-numeric: tabular-nums; }
#classification .cl-scale { display: flex; justify-content: space-between; }
#classification .cl-ranks { margin: 0; padding: 0; list-style: none; }
#classification .cl-rank { width: 100%; min-height: 32px; padding: 0.3rem 0; border: 0; background: none; color: var(--body); text-align: left; font: 400 0.85rem/1.3 var(--sans); cursor: pointer; }
#classification .cl-rank:hover, #classification .cl-rank[aria-pressed="true"] { color: var(--gold); }
#classification .cl-track { display: block; height: 0.35rem; background: var(--track); }
#classification .cl-fill { display: block; height: 100%; width: var(--cl-width); background: var(--gold); opacity: 0.65; }
#classification .cl-rank .cl-track { height: 4px; background: rgba(236, 230, 214, 0.035); }
#classification .cl-rank .cl-fill { opacity: 0.6; }
#classification .cl-rank:hover .cl-fill, #classification .cl-rank[aria-pressed="true"] .cl-fill { opacity: 1; }
#classification .cl-count { display: grid; grid-template-columns: 2.5rem 3rem; justify-content: end; gap: 0.5rem; text-align: right; color: var(--text); font-variant-numeric: tabular-nums; }
#classification .cl-count small { color: var(--dim); font: inherit; }
#classification .cl-chart-head .cl-count { color: inherit; }
#classification .cl-more { margin-top: 0.65rem; }
#classification .cl-more summary { width: fit-content; list-style: none; font-size: 0.82rem; }
#classification .cl-more summary::-webkit-details-marker { display: none; }
#classification .cl-more-open, #classification .cl-more[open] .cl-more-closed { display: none; }
#classification .cl-more[open] .cl-more-open { display: inline; }
#classification .cl-more[open] summary { margin-bottom: 0.4rem; }
#classification .cl-detail { margin-top: 1rem; padding-left: 1rem; border-left: 2px solid var(--gold-dim); }
#classification .cl-detail p { margin: 0 0 0.4rem; font-size: 0.9rem; }
#classification .cl-detail a { display: inline-block; min-height: 24px; font-size: 0.88rem; }
#classification .cl-insight { margin: 1rem 0 0.5rem; font-size: 0.9rem; color: var(--body); }
#classification .cl-tones ul { display: grid; gap: 0.8rem; margin: 0; padding: 0; list-style: none; }
#classification .cl-tones li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.35rem 0.6rem; font-size: 0.85rem; }
#classification .cl-tones .cl-track { grid-column: 1 / -1; }
#classification .cl-tones .cl-unassigned .cl-fill { background: var(--dim); opacity: 0.5; }
#classification .cl-table { margin: 0.7rem 0 1rem; }
#classification summary { min-height: 28px; cursor: pointer; color: var(--gold-dim); font-size: 0.85rem; }
#classification .cl-table > div { overflow-x: auto; }
#classification table { width: 100%; border-collapse: collapse; margin: 0.8rem 0; font-size: 0.82rem; font-variant-numeric: tabular-nums; }
#classification caption { text-align: left; padding-bottom: 0.6rem; color: var(--body); }
#classification th, #classification td { padding: 0.4rem 0.6rem; text-align: right; border-bottom: 1px solid var(--rule); color: var(--body); font-weight: 400; }
#classification th:first-child { text-align: left; }
#classification thead th { color: var(--text); font-weight: 500; }
#classification .cl-limits { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--rule); }
#classification .cl-limits p { font-size: 0.9rem; }
#classification .cl-next { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; font-size: 0.9rem; }
@media (max-width: 600px) {
  #classification .cl-discoveries, #classification .cl-quotes { grid-template-columns: 1fr; gap: 1.6rem; }
  #classification .cl-quotes { gap: 0; }
  #classification .cl-mood-head, #classification .cl-moods li { grid-template-columns: 5.5rem repeat(2, minmax(0, 1fr)); gap: 0.6rem; }
  #classification .cl-mood-cell { grid-template-columns: minmax(0, 1fr) 2.9rem; gap: 0.3rem; font-size: 0.8rem; }
  #classification .cl-method { grid-template-columns: 1fr; gap: 0.7rem; }
  #classification .cl-method p { margin-bottom: 0.3rem; }
  #classification .cl-chart-head, #classification .cl-rank { grid-template-columns: 5.8rem minmax(0, 1fr) 6rem; gap: 0.65rem; }
  #classification .cl-toolbar { row-gap: 0.7rem; }
}
@media (pointer: coarse) { #classification .cl-rank, #classification summary, #classification .cl-worlds button { min-height: 44px; } }
@media (forced-colors: active) {
  #classification .cl-fill { background: Highlight; opacity: 1; }
  #classification .cl-track { border: 1px solid CanvasText; }
  #classification .cl-rank[aria-pressed="true"] { outline: 1px solid Highlight; }
}
