/* Proof — page-unique material only, loaded after site.css.
   Act I (what proof isn't, dark, scrubbed), the case-file index, Act II
   (the attribution forensic, lit, pinned), the twelve-market study (reuses
   the shared .scanrow chart), the named client, close. */

/* ============ THE FILE INDEX ============ */

.files { display: grid; margin-top: var(--space-4); max-width: 900px; }
.file { display: grid; grid-template-columns: auto 1fr auto; gap: var(--space-5);
  align-items: baseline; padding: var(--space-5) 0; border-top: 1px solid rgba(14,19,24,0.12); }
.file__n { font-family: var(--font-label); font-size: var(--text-caption); font-weight: 600;
  color: var(--logo); font-variant-numeric: tabular-nums; }
.file__t strong { display: block; color: var(--ink); font-size: var(--text-body); font-weight: 700; }
.file__t span { display: block; color: var(--body-ink); font-size: var(--text-small); margin-top: 2px; max-width: 56ch; }
.file__status { font-family: var(--font-label); font-size: 10px; font-weight: 600;
  letter-spacing: var(--tracking-wide); text-transform: uppercase;
  border: 1px solid currentColor; border-radius: var(--radius-round);
  padding: 3px var(--space-3); white-space: nowrap; }
.file__status--published { color: var(--good); }
.file__status--progress { color: var(--mid); }
.file__status--named { color: var(--logo); }

/* ============ ACT II · THE ATTRIBUTION FORENSIC (lit, pinned) ============ */

/* The definition ledger: what the event meant, and what it came to mean. */
.defledger { display: grid; gap: var(--space-3); max-width: 720px; margin-top: var(--space-2); }
.defrow { display: grid; grid-template-columns: auto 1fr; gap: var(--space-4); align-items: baseline;
  padding: var(--space-4) var(--space-5); border-radius: 10px;
  background: var(--card); border: 1px solid rgba(14,19,24,0.1);
  font-family: var(--font-label); font-size: var(--text-small); }
.defrow__tag { font-size: 10px; font-weight: 700; letter-spacing: var(--tracking-wide);
  text-transform: uppercase; border: 1px solid currentColor; border-radius: var(--radius-round);
  padding: 2px var(--space-3); white-space: nowrap; }
.defrow--before .defrow__tag { color: var(--good); }
.defrow--after .defrow__tag { color: var(--bad); }
.defrow__code { color: var(--ink); font-variant-numeric: tabular-nums; }
.defrow__code .arrow { color: var(--slate); margin-inline: var(--space-2); }
.defrow--after .defrow__code strong { color: var(--bad); }
.defrow--before .defrow__code strong { color: var(--ink); }

/* The two CPAs: reported vs actual. Actual carries the note — it is the truth. */
.cpa { display: grid; gap: var(--space-8); margin-top: var(--space-6); max-width: 720px; }
@media (min-width: 640px) { .cpa { grid-template-columns: 1fr 1fr; } }
.cpa .pair__side { padding-top: var(--space-4); border-top: 1px solid rgba(14,19,24,0.18); }
.cpa .pair__fig { font-size: clamp(2.2rem, 1.6rem + 2.4vw, 3.6rem); min-width: 0; }

.act--forensic .sec-head--act p { max-width: 58ch; }
.forensic__found { margin-top: var(--space-6); max-width: 62ch; font-size: var(--text-small); color: var(--body-ink); }
.forensic__found strong { color: var(--ink); }

/* ============ THE STUDY ============ */

.scanrow__rank { font-family: var(--font-label); font-size: var(--text-caption); font-weight: 700;
  color: var(--ink); font-variant-numeric: tabular-nums; }
.scanrow__rank span { color: var(--label-ink); font-weight: 500; }

.studystatus { margin-top: var(--space-8); padding: var(--space-6); border-radius: 12px;
  background: var(--card); border: 1px solid rgba(14,19,24,0.1); max-width: 860px; }
.studystatus__k { font-family: var(--font-label); font-size: var(--text-caption); font-weight: 600;
  letter-spacing: var(--tracking-wider); text-transform: uppercase; color: var(--label-ink); }
.studystatus h3 { margin-top: var(--space-2); font-size: var(--text-h4); color: var(--ink); }
.studystatus p { margin-top: var(--space-3); font-size: var(--text-small); color: var(--body-ink); max-width: 68ch; }
.studystatus__strip { margin-top: var(--space-4); font-family: var(--font-label); font-size: var(--text-caption);
  letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--logo); }

.method { display: grid; gap: var(--space-6); margin-top: var(--space-10); }
@media (min-width: 760px) { .method { grid-template-columns: 1fr 1fr; } }
.method__item { padding-top: var(--space-4); border-top: 1px solid rgba(14,19,24,0.14); }
.method__tag { font-family: var(--font-label); font-size: var(--text-caption); font-weight: 600;
  letter-spacing: var(--tracking-wider); text-transform: uppercase; color: var(--logo); }
.method__item h4 { margin-top: var(--space-2); font-size: var(--text-h4); color: var(--ink); }
.method__item p { margin-top: var(--space-2); font-size: var(--text-small); color: var(--body-ink); }

/* ============ THE NAMED CLIENT ============ */

.named { display: grid; gap: var(--space-12); margin-top: var(--space-4); }
@media (min-width: 900px) { .named { grid-template-columns: minmax(0,7fr) minmax(0,5fr); } }

.quote { border-left: 2px solid var(--logo); padding-left: var(--space-8); }
.quote blockquote { font-size: clamp(1.3rem, 1.05rem + 1.2vw, 1.9rem); font-weight: 600;
  color: var(--ink); line-height: var(--leading-snug); letter-spacing: -0.01em; max-width: 24ch; }
.quote figcaption { margin-top: var(--space-6); }
.quote__who { font-family: var(--font-label); font-size: var(--text-small); font-weight: 700; color: var(--ink); }
.quote__meta { font-family: var(--font-label); font-size: var(--text-caption);
  letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--label-ink); margin-top: var(--space-1); }

.named__aside { display: grid; gap: var(--space-6); align-content: start; }
.named__aside .stat { border-top-color: rgba(14,19,24,0.18); }
.named__note { font-size: var(--text-small); color: var(--body-ink); max-width: 44ch; }
.named__note strong { color: var(--ink); }
