/* next-thg-listing.css (prx v1 wave 3, 2026-10-24): LISTING CHECK (next-thg-listing.js). S3 build plan sections 3.15 and 4.
   Tokens only (next-v89.css names, live values from next-v96-kit.css): no hex, no literal font size, weights 400, 500 and 600.
   Desktop: the captured text at 55%, the facts and lines at 45%. Phone: one column, lines read-only, no sideways scroll. */
.thl .thl-meta { margin: calc(-1 * var(--s-2)) 0 var(--s-4); color: var(--gray-500); font-size: var(--t-small-size); line-height: var(--t-small-lh); }
.thl .thl-grid { display: grid; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: var(--s-4); align-items: start; }
.thl .thl-grid > .card { margin: 0; min-width: 0; }
.thl .thl-text { margin: 0; max-height: 70vh; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; font-family: var(--font-mono); font-size: var(--t-small-size); line-height: var(--t-small-lh); color: var(--gray-900); user-select: text; cursor: text; }
.thl .thl-mark { background: var(--gray-100); color: inherit; border-radius: var(--r-chip); padding: 0 2px; box-shadow: inset 0 -1px 0 var(--gray-300); }   /* a marked quote is neutral: colour means a difference, never a mark */
.thl .thl-mark-form { display: grid; gap: var(--s-3); padding-bottom: var(--s-4); margin-bottom: var(--s-4); border-bottom: 1px solid var(--gray-100); }
.thl .thl-mark-form .form { margin: 0; }
.thl .thl-sel { margin: 0; color: var(--gray-700); font-size: var(--t-small-size); line-height: var(--t-small-lh); overflow-wrap: anywhere; }
.thl .thl-acts { display: flex; gap: var(--s-2); }
.thl .thl-phone { display: none; margin: 0 0 var(--s-3); color: var(--gray-500); font-size: var(--t-small-size); line-height: var(--t-small-lh); }
.thl .thl-none { margin: 0; color: var(--gray-500); font-size: var(--t-body-size); line-height: var(--t-body-lh); }
.thl .thl-lines { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
/* the design pass (2026-10-25): a fact is a record line: the fact, what is printed and what the source says, the meta line, one chip */
.thl .thl-line { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 var(--s-3); padding: var(--s-3) 0; border-top: 1px solid var(--gray-100); cursor: pointer; }
.thl .thl-line:first-child { border-top: 0; padding-top: 0; }
.thl .thl-line:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: var(--r-ctl); }
.thl .thl-lm { display: grid; gap: 0; min-width: 0; }
.thl .thl-l1 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px var(--s-2); }
.thl .thl-l1 b { font-weight: var(--w-medium); color: var(--gray-900); font-size: var(--t-body-size); line-height: var(--t-body-lh); }
.thl .thl-q, .thl .thl-s { color: var(--gray-700); font-size: var(--t-body-size); line-height: var(--t-body-lh); overflow-wrap: anywhere; font-variant-numeric: normal; }
.thl .thl-q { color: var(--gray-900); }
.thl .thl-src { margin-top: 2px; color: var(--gray-500); font-size: var(--t-small-size); line-height: var(--t-small-lh); overflow-wrap: anywhere; font-variant-numeric: normal; }
.thl .thl-st { padding-top: 1px; }
.thl .thl-d { grid-column: 1 / -1; display: grid; gap: var(--s-2); margin-top: var(--s-2); padding: var(--s-3) var(--s-4); border-radius: var(--r-ctl); background: var(--gray-50); color: var(--gray-700); font-size: var(--t-small-size); line-height: var(--t-small-lh); cursor: default; }
.thl .thl-d p { margin: 0; overflow-wrap: anywhere; }
.thl .thl-retire { font-size: var(--t-small-size); }
.thl .thl-side .card-h .sub { font-variant-numeric: normal; }
.thl .thg-fda { margin-top: var(--s-6); }
.thl-dlg fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: var(--s-2); }
@media (max-width: 1100px) { .thl .thl-grid { grid-template-columns: minmax(0, 1fr); } .thl .thl-text { max-height: 40vh; } }
@media (max-width: 699px) {
  .thl .thl-mark-form { display: none; }
  .thl .thl-phone { display: block; }
  .thl .thl-line { grid-template-columns: minmax(0, 1fr); }
  .thl .thl-st { padding-top: var(--s-1); }
}
@media (max-width: 699px) { .thl .thl-retire { display: none; } }
