/* ══════════════════════════════════════════════════════════════════════════════════════════════
   1119 SHARED·AUTHORITIES — what each authority says about one topic, side by side, never
   reconciled.
   ──────────────────────────────────────────────────────────────────────────────────────────────
   BUILT 2026-09-10 (lane 110). The second of the three elements all ten guide area specs
   proposed independently. Shape extracted from 1116 TOOLS·APPROACHCARD's `.apc-says` list, moved
   off the weaning overlay's private palette onto app tokens; the stamp on each row is 1118
   SHARED·SOURCESTAMP and is NOT restyled here (see the single-source note at the foot).

   🔴 NOTHING IN THIS FILE CAN MAKE ONE ROW LOUDER, AND THAT IS THE POINT OF THE FILE.
   There is no `.says-row.primary`, no accent border on a first child, no `:first-child` weight,
   no size step, no background on one row. Every authority is drawn identically, and there is no
   modifier at all. If a future change adds a variant that emphasises a row, it has made the app
   endorse an authority, whatever the commit message says.

   A SILENT AUTHORITY HAS NO ROW AND NO STYLE (Andrew, 2026-10-02): it is simply not drawn.

   🔴 THE ROWS SEPARATE WITH A HAIRLINE, NOT A CARD EACH. Two boxed panels invite a comparison of
   the boxes — bigger, brighter, first — which is exactly the ranking the component refuses. One
   list, one rule between rows, is the flattest arrangement available.

   ⚠️ THIS BLOCK IS UNBOXED ON PURPOSE. It carries no background, no border and no radius, so it
   composes inside whatever the guide puts it in (a plain read, 1053's source card, 411's box)
   without two nested containers. The host owns the box; this owns the rows.

   ⚠️ SINGLE SOURCE (check 16 rule 3): the `.stamp` prefix is owned by sourcestamp.css and is not
   styled here — not a size, not an ink, not a margin. The one relationship this file DOES own is
   the gap between the stamp and the line under it, and it owns it from ITS OWN side
   (`.says-row .stamp` would be this file reaching into 1118's prefix), so the margin is on
   `.says-what` instead. Contrast on this card's grounds is 1118's, unchanged: --ink-600 on
   --surface-card 6.65:1 · on --surface-ground 5.36:1 (computed at build time).
   ══════════════════════════════════════════════════════════════════════════════════════════════ */

.says {
  list-style: none;
  margin: var(--space-12) 0 0;
  padding: 0;
}

.says-row {
  border-top: 1px solid var(--border-hairline); /* token-exception: a hairline */
  padding-top: var(--space-12);
  margin-top: var(--space-12);
}

/* the list opens flush — the rule between rows is a separator, not a frame */
.says-row:first-child { border-top: 0; padding-top: 0; margin-top: 0; }

/* their words. Body size, primary ink: a published clinical statement is the most important text
   on the block and is set as such. */
.says-what {
  font-family: var(--font-body);
  font-size: var(--text-body-sm);
  line-height: var(--leading-150);
  color: var(--text-primary);
  margin: var(--space-4) 0 0;
}

/* the authority's OWN side-note, if they printed one. Theirs, so it sits with their line rather
   than at the foot of the block — a note pooled at the bottom loses which authority attached it. */
.says-note {
  font-family: var(--font-body);
  font-size: var(--text-caption);
  line-height: var(--leading-145);
  font-weight: var(--weight-600);
  color: var(--text-secondary);
  margin: var(--space-8) 0 0;
}
