/* Trust surfaces (Batch 8): Docs, Tools, Status and the designed 404.
   Built to the UX-designer seat (PANEL-UXDESIGNER-2026-10-29.md): §1.2 tokens, §1.3 type scale,
   §1.4 components, §1.6 the receipt, §3 motion (two easings, one duration ladder), §5 a11y floor.
   Token rule: no value outside these sets ships here — tools/trust_token_audit.py enforces it.
   Loaded after site.css; the colour tokens are site.css's (Direction A), unchanged. */
/* Trust + Compare pages (Batch 9): About, Evidence, Security, Compare.
   Built to the UX-designer seat §1 (tokens, the Playfair/Inter duet), §1.5 status chip,
   §1.6 receipt anatomy, §3 motion ladder, §4 390px, §5 accessibility. Colours come from
   site.css; this file adds only the layers §1.2 says are missing. No new colours, radii,
   durations or easings outside §1/§3. */
/* Merged 2026-10-30: one sheet, two batches. Shared tokens below are the foundation (Batch 9 /
   main); Batch 8 adds five tokens. Batch 9 rules first, then Batch 8 rules. */


@font-face {
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("/fonts/playfair-display-latin-wght-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("/fonts/playfair-display-latin-wght-italic.woff2") format("woff2");
}

:root {
  --font-display: "Playfair Display", Georgia, serif;
  --font-ui: var(--font);
  --font-mono: var(--mono);
  --r-sm: 6px; --r-md: 10px; --r-lg: 16px;
  --e-1: 0 1px 2px rgba(18, 32, 25, .06);
  --e-2: 0 1px 0 rgba(18, 32, 25, .04), 0 12px 32px -18px rgba(18, 32, 25, .35);
  --e-3: 0 24px 48px -16px rgba(12, 59, 46, .35);
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px;
  --measure: 68ch;
  --focus: 0 0 0 2px var(--paper), 0 0 0 4px var(--verify-ink);
  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-stamp: cubic-bezier(.34, 1.56, .64, 1);
  --d-1: 120ms; --d-2: 200ms; --d-3: 320ms; --d-4: 640ms;
  --verify-tint: #DFF5E9;
  --bad-tint: #F7E3E1;
  /* Batch 8 (Docs/Tools/Status) tokens on the same ladders */
  --r-full: 999px;
  --focus-dark: 0 0 0 2px var(--ledger), 0 0 0 4px var(--verify);
  --d-acc: 240ms; --d-stamp: 380ms;
  --tint-verified: #DFF5E9;
  --tint-bad: #F7E3E1;
}

/* ===== Batch 9: About, Evidence, Security, Compare ===== */
/* -- §1.3 type scale ---------------------------------------------------------------------------- */
.site .t-display-l { font-family: var(--font-display); font-weight: 600; font-size: clamp(2rem, 4.4vw, 3.25rem); line-height: 1.08; letter-spacing: -.01em; margin: 0 0 var(--s-5); color: var(--ink); text-wrap: balance; }
.site .t-display-m { font-family: var(--font-display); font-weight: 600; font-size: clamp(1.625rem, 3vw, 2.25rem); line-height: 1.12; margin: 0 0 var(--s-4); color: var(--ink); text-wrap: balance; }
.site .t-title { font-family: var(--font-ui); font-weight: 650; font-size: 1.25rem; line-height: 1.25; letter-spacing: -.01em; margin: 0 0 var(--s-3); }
.site .t-lede, .site .t-body-l { font-size: 1.125rem; line-height: 1.55; color: var(--ink-2); max-width: var(--measure); margin: 0 0 var(--s-5); }
.site .t-caption { font-size: .75rem; font-weight: 500; line-height: 1.4; color: var(--ink-3); margin: 0 0 var(--s-3); }
.site .t-eyebrow { font-family: var(--font-ui); font-size: .6875rem; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin: 0 0 var(--s-3); }
.site .t-label { display: block; font-size: .8125rem; font-weight: 600; color: var(--ink); margin: 0 0 6px; }
.vh { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.trust-hero a:not([class]), .article a:not([class]), .trust-col a:not([class]) { color: var(--verify-ink); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.trust-col > * { max-width: 880px; }
.cta-row { display: flex; flex-wrap: wrap; gap: var(--s-3); }

/* One focus ring, everywhere on these pages (§1.2, §5.3). */
.btn-t:focus-visible, .tchip input:focus-visible + span, .stepper2 button:focus-visible, .stepper2 input:focus-visible,
.select2:focus-visible, .rail a:focus-visible, .ccard--link:focus-visible, .article a:focus-visible, .trust-col a:focus-visible,
.trust-hero a:focus-visible, .cmp a:focus-visible { outline: none; box-shadow: var(--focus); border-radius: var(--r-sm); }

/* -- §1.4 buttons: three tiers ------------------------------------------------------------------ */
.btn-t { display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2); min-height: 48px; padding: 0 20px; border-radius: var(--r-sm); font: 600 .9375rem/1 var(--font-ui); text-decoration: none; border: 1px solid transparent; cursor: pointer; transition: background var(--d-1) var(--ease-out), transform var(--d-1) var(--ease-out), border-color var(--d-1) var(--ease-out); }
.btn-t--primary, .site a.btn-t--primary, .site a.btn-t--primary:hover { background: var(--ledger); color: var(--paper); text-decoration: none; }
.site .btn-t--primary:hover { background: var(--ledger-2); transform: translateY(-1px); }
.btn-t--verify, .site a.btn-t--verify, .site a.btn-t--verify:hover { background: var(--verify-ink); color: #fff; text-decoration: none; }
.site .btn-t--verify:hover { background: var(--ledger); transform: translateY(-1px); }
.btn-t--secondary, .site a.btn-t--secondary { background: transparent; color: var(--ink); border-color: var(--rule); text-decoration: none; }
.btn-t--secondary:hover { border-color: var(--ink-3); }
.btn-t:active { transform: translateY(0); }

/* -- origin tag, sample tag ---------------------------------------------------------------------- */
.otag, .rtag, .vtag { display: inline-flex; align-items: center; min-height: 24px; padding: 0 10px; border-radius: 999px; font: 600 .6875rem/1 var(--font-ui); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; background: var(--paper-2); color: var(--ink-2); }
.rtag--sample { background: var(--neutral-bg); color: var(--ink-2); box-shadow: inset 0 0 0 1px var(--rule); }
.specimen-label { font-size: .75rem; font-weight: 600; color: var(--ink-2); margin: var(--s-4) 0 var(--s-2); }

/* -- the Replay receipt (compare.js); the §1.6 receipt itself is ui.receipt (system.css) ---------- */
.rcpt { position: relative; background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-lg); box-shadow: var(--e-2); padding: var(--s-5); max-width: 480px; color: var(--ink); margin: 0 var(--s-5) var(--s-5) 0; }
.rcpt__eyebrow { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); font: 600 .6875rem/1 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin-bottom: var(--s-3); }
.rr { width: 100%; border-collapse: collapse; font-size: .875rem; }
.rr th, .rr td { text-align: left; padding: 6px var(--s-2) 6px 0; vertical-align: top; }
.rr thead th { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); border-bottom: 1px solid var(--rule); }
.rcpt__rule { border-top: 1px dashed var(--rule); margin: var(--s-4) 0; }
.rcpt__verdict { font-family: var(--font-display); font-style: italic; font-size: 1.0625rem; line-height: 1.4; margin: 0 0 var(--s-2); }
.rcpt__checked { font-size: .75rem; font-weight: 500; color: var(--ink-3); margin: 0; padding-right: 72px; }
.rcpt--replay { max-width: none; }
.rr td { font-size: .875rem; }
.rr tbody th { font-weight: 600; font-size: .8125rem; color: var(--ink); }
.rr-src td { padding-top: 0; font-size: .75rem; color: var(--ink-3); border-bottom: 1px solid var(--rule); }
.rr .rr-loss th, .rr .rr-loss td:first-of-type { color: var(--bad); }
.rr .rr-loss { background: var(--bad-tint); }

/* -- ledger tables (§1.4) ----------------------------------------------------------------------- */
.ledger { width: 100%; border-collapse: collapse; font-size: .875rem; margin: 0 0 var(--s-5); font-variant-numeric: tabular-nums; }
.ledger caption { caption-side: top; text-align: left; }
.ledger thead th { text-align: left; font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); padding: var(--s-2) var(--s-3) var(--s-2) 0; border-bottom: 1.5px solid var(--rule); }
.ledger tbody th, .ledger td { text-align: left; vertical-align: top; padding: var(--s-3) var(--s-3) var(--s-3) 0; border-bottom: 1px solid rgba(217, 210, 194, .6); }
.ledger tbody tr:hover { background: rgba(239, 234, 221, .5); }
.ledger code { font-family: var(--font-mono); font-size: .75rem; word-break: break-word; }
.ledger .blank { background: repeating-linear-gradient(135deg, transparent 0 6px, rgba(217, 210, 194, .45) 6px 7px); }
.log__date { white-space: nowrap; font-family: var(--font-mono); font-size: .75rem; color: var(--ink-2); width: 7.5rem; }
.log__tag { width: 9rem; }
.log__ev a { white-space: nowrap; }
.site .log__month { font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; margin: var(--s-6) 0 var(--s-3); }
.log__rules { margin-top: var(--s-6); padding-top: var(--s-4); border-top: 1px solid var(--rule); }

/* -- About ------------------------------------------------------------------------------------- */
.about-grid { display: grid; gap: var(--s-7); }
@media (min-width: 960px) { .about-grid { grid-template-columns: 7fr 5fr; align-items: start; } }
.about-side { display: grid; gap: var(--s-5); }
.operator, .support-panel { background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); box-shadow: var(--e-1); padding: var(--s-5); }
.kv-ledger { display: grid; grid-template-columns: max-content 1fr; gap: var(--s-2) var(--s-4); margin: 0 0 var(--s-4); font-size: .875rem; }
.kv-ledger dt { font-size: .75rem; font-weight: 500; color: var(--ink-3); padding-top: 2px; }
.kv-ledger dd { margin: 0; }
.inline-links { font-size: .875rem; margin: 0; }
.inline-links a { display: inline-block; padding: var(--s-3) 0; }
.support-panel p { margin: 0 0 var(--s-4); }
.usage { margin-bottom: var(--s-6); }
.usage__strip { display: grid; gap: 0; margin: 0; border-top: 1px solid var(--rule); }
.usage__strip > div { display: grid; gap: var(--s-1); padding: var(--s-4) 0; border-bottom: 1px solid var(--rule); }
@media (min-width: 720px) { .usage__strip > div { grid-template-columns: 14rem 1fr; gap: var(--s-5); } }
.usage__strip dt { font-size: .75rem; font-weight: 500; color: var(--ink-3); }
.usage__strip dd { margin: 0; }
.receipt-slot { border: 1px dashed var(--rule); border-radius: var(--r-lg); padding: var(--s-5); background: var(--paper); }
.ledger-entry__text { margin: 0; font-family: var(--font-display); font-style: italic; font-size: 1.0625rem; line-height: 1.45; }
.check-links { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.check-links li { display: grid; gap: var(--s-1); padding: var(--s-3) 0; border-bottom: 1px solid var(--rule); }
@media (min-width: 720px) { .check-links li { grid-template-columns: 10rem 1fr; gap: var(--s-5); align-items: baseline; } }
.check-links a { font-weight: 600; min-height: 44px; display: inline-flex; align-items: center; }
.check-links span { color: var(--ink-2); font-size: .875rem; }
.empty { border: 1px dashed var(--rule); border-radius: var(--r-md); padding: var(--s-6); color: var(--ink-2); }
.evidence-grid { display: grid; gap: var(--s-7); }
@media (min-width: 960px) { .evidence-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* -- Security: the article layout (§2.5) -------------------------------------------------------- */
.sec-head { max-width: 880px; margin-bottom: var(--s-7); }
.status-line { font-size: .875rem; color: var(--ink-2); border-left: 2px solid var(--verify-ink); padding-left: var(--s-3); margin: 0 0 var(--s-6); }
.short { background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); box-shadow: var(--e-1); padding: var(--s-5); }
.short__reviewed { margin: 0 0 var(--s-2); font-size: .9375rem; }
.short dl { display: grid; gap: var(--s-4); margin: var(--s-4) 0; }
@media (min-width: 720px) { .short dl { grid-template-columns: 1fr 1fr; grid-template-rows: auto 1fr; grid-auto-flow: column; column-gap: var(--s-5); row-gap: 0; } }
.short dt { font: 600 .6875rem/1 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin-bottom: var(--s-2); }
.short dd { margin: 0; }
.short ul { margin: 0 0 var(--s-2); padding-left: 1.1em; }
.short li { margin: 0; }
.short li { padding: 3px 0; }
.article { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-6); }
.article__body { min-width: 0; }
@media (min-width: 1000px) { .article { grid-template-columns: 15rem minmax(0, var(--measure)); gap: var(--s-8); } }
.rail { display: none; }
@media (min-width: 1000px) {
  .rail { display: block; position: sticky; top: 96px; align-self: start; }
  .rail ol { list-style: none; margin: 0; padding: 0; }
  .rail a { display: block; padding: 6px 0 6px var(--s-3); border-left: 2px solid transparent; font-size: .75rem; font-weight: 500; line-height: 1.4; color: var(--ink-3); text-decoration: none; transition: color var(--d-1) var(--ease-out), border-color var(--d-1) var(--ease-out); }
  .rail a:hover { color: var(--ink); }
  .rail a[aria-current="true"] { color: var(--verify-ink); border-left-color: var(--verify-ink); }
}
.sec { padding-top: var(--s-6); margin-top: var(--s-6); border-top: 1px solid var(--rule); scroll-margin-top: 80px; }
.sec:first-child { margin-top: 0; }
.sec__n { color: var(--ink-3); font-variant-numeric: tabular-nums; }
.claims { margin: 0 0 var(--s-5); padding-left: 1.1em; }
.claims > li { margin: 0 0 var(--s-3); line-height: 1.55; scroll-margin-top: 96px; }
.claims > li:target { background: rgba(223, 245, 233, .6); box-shadow: -8px 0 0 rgba(223, 245, 233, .6); }
.claims--absent { list-style: none; padding: 0; }
.claims--absent > li { padding-left: 28px; position: relative; }
.claims--absent > li::before { content: "—"; position: absolute; left: 4px; color: var(--ink-3); }
.bound { margin: var(--s-2) 0 0; padding: var(--s-3) var(--s-4); background: var(--paper-2); border-radius: var(--r-sm); font-size: .875rem; color: var(--ink-2); }
.bound__label { font: 600 .6875rem/1 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin-right: var(--s-2); }
.claim-test { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; font-weight: 600; color: var(--verify-ink); }
.headers { list-style: none; padding: 0; margin: var(--s-2) 0; display: grid; gap: var(--s-1); }
.headers code { font-family: var(--font-mono); font-size: .75rem; background: var(--paper-2); padding: 2px 6px; border-radius: 4px; word-break: break-word; }
.scope-line { font-size: .875rem; color: var(--ink-2); margin: 0 0 var(--s-3); }
.callout { border-left: 3px solid var(--ledger); background: var(--sheet); border-radius: 0 var(--r-md) var(--r-md) 0; padding: var(--s-4) var(--s-5); margin: 0 0 var(--s-5); box-shadow: var(--e-1); }
.callout dl { margin: 0; display: grid; gap: var(--s-2); }
.callout dt { font: 600 .6875rem/1 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); }
.callout dd { margin: 0 0 var(--s-2); }
.sec-sub { margin-top: var(--s-6); }
.report, .changes { padding-top: var(--s-6); margin-top: var(--s-6); border-top: 1px solid var(--rule); scroll-margin-top: 80px; }
.changes__list { margin: 0; padding-left: 1.1em; font-size: .875rem; }
.changes__list li { margin: 0 0 var(--s-2); }
.changes__list time { font-family: var(--font-mono); font-size: .75rem; }
.print-only { display: none; }

/* -- Compare ----------------------------------------------------------------------------------- */
.ccards { display: grid; gap: var(--s-5); margin-bottom: var(--s-5); }
@media (min-width: 720px) { .ccards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .ccards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ccard, .site a.ccard { position: relative; display: block; background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); box-shadow: var(--e-1); padding: var(--s-5); color: var(--ink); text-decoration: none; }
.ccard p { margin: 0 0 var(--s-3); color: var(--ink-2); font-size: .9375rem; }
.ccard .outcome { font-size: .875rem; font-weight: 600; color: var(--ink); font-variant-numeric: tabular-nums; }
.ccard--off { background: var(--paper); box-shadow: none; }
.ccard--link { transition: border-color var(--d-1) var(--ease-out); }
.ccard--link:hover { border-color: var(--verify-ink); }
.ccard__go { position: absolute; right: var(--s-5); top: var(--s-5); transition: transform var(--d-1) var(--ease-out); }
.ccard--link:hover .ccard__go { transform: translateX(4px); }
.legend { font-size: .875rem; color: var(--ink-2); margin: 0 0 var(--s-4); }
.cmp { width: 100%; border-collapse: collapse; font-size: .9375rem; margin: 0 0 var(--s-4); }
.cmp thead th { text-align: left; font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); padding: var(--s-2) var(--s-3); border-bottom: 1.5px solid var(--rule); }
.cmp tbody th, .cmp td { text-align: left; vertical-align: top; padding: var(--s-4) var(--s-3); border-bottom: 1px solid rgba(217, 210, 194, .6); }
.cmp tbody th { font-weight: 600; width: 22%; }
.cmp .vcell { width: 8rem; }
.cmp .row--them { background: rgba(251, 235, 204, .35); }
.src-wrap { display: block; margin-top: var(--s-2); }
.src { font-size: .75rem; font-weight: 500; color: var(--ink-3); text-decoration-thickness: 1px; text-underline-offset: 3px; display: inline-block; padding: 4px 0; }
.cell-math { font-family: var(--font-mono); font-size: .75rem; color: var(--ink-2); margin: var(--s-2) 0 0; }
.basis td { font-size: .8125rem; color: var(--ink-2); background: var(--paper-2); padding: var(--s-3); }
.vtag--us { background: var(--verify-tint); color: var(--verify-ink); }
.vtag--them { background: var(--amber-bg); color: var(--amber); }
.vtag--tie { background: var(--neutral-bg); color: var(--ink-2); }
.method { max-width: var(--measure); }
.table-cta { margin-top: var(--s-5); }
.timelines { display: grid; gap: var(--s-6); }
@media (min-width: 900px) { .timelines { grid-template-columns: 1fr 1fr; align-items: start; } }
.tl { background: var(--paper); border: 1px solid var(--rule); border-radius: var(--r-md); padding: var(--s-5); }
.tl--ours { background: var(--sheet); }
.tl__steps { margin: 0 0 var(--s-4); padding-left: 1.4em; }
.tl__steps li { margin: 0 0 var(--s-2); }
.verdicts { display: grid; gap: var(--s-5); }
@media (min-width: 900px) { .verdicts { grid-template-columns: 1fr 1fr; } }
.vcard { background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); box-shadow: var(--e-1); padding: var(--s-5); }
.vcard ul { margin: 0; padding-left: 1.1em; }
.vcard li { margin: 0 0 var(--s-2); }
.tie-line { margin: var(--s-5) 0 0; color: var(--ink-2); font-size: .9375rem; }

/* Replay (§1.4 inputs; no native control reaches the user unstyled). */
.replay2-grid { display: grid; gap: var(--s-7); }
@media (min-width: 1000px) { .replay2-grid { grid-template-columns: 5fr 7fr; align-items: start; } }
.replay2 fieldset { border: 0; padding: 0; margin: 0 0 var(--s-5); }
.replay2__how { color: var(--ink-2); margin: 0 0 var(--s-4); }
.tchips { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.tchip { position: relative; display: inline-flex; }
.tchip input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.tchip > span { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 44px; padding: 0 var(--s-3); border: 1px solid var(--rule); border-radius: var(--r-sm); background: var(--sheet); font-size: .875rem; font-weight: 500; transition: border-color var(--d-1) var(--ease-out), background var(--d-1) var(--ease-out); }
.tchip:hover > span { border-color: var(--ink-3); }
.tchip input:checked + span { border-color: var(--verify-ink); background: var(--verify-tint); box-shadow: inset 0 0 0 1px var(--verify-ink); }
.chip-hint { flex-basis: 100%; font-size: .6875rem; font-weight: 500; color: var(--ink-3); padding-bottom: 6px; margin-top: -4px; }
.logo--blank { display: inline-block; width: 20px; height: 20px; border-radius: 5px; border: 1.5px dashed var(--ink-3); }
.replay2__row { margin: 0 0 var(--s-5); }
.stepper2 { display: inline-flex; align-items: stretch; border: 1px solid var(--field-edge); border-radius: var(--r-sm); background: var(--sheet); overflow: hidden; }
.stepper2 button { width: 48px; min-height: 48px; border: 0; background: transparent; font: 600 1.125rem/1 var(--font-ui); color: var(--ink); cursor: pointer; transition: background var(--d-1) var(--ease-out); }
.stepper2 button:hover { background: var(--paper-2); }
.stepper2 input { width: 4.5rem; border: 0; border-left: 1px solid var(--rule); border-right: 1px solid var(--rule); text-align: center; font: 600 1rem/1 var(--font-ui); font-variant-numeric: tabular-nums; background: transparent; color: var(--ink); -moz-appearance: textfield; appearance: textfield; }
.stepper2 input::-webkit-outer-spin-button, .stepper2 input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.replay2__total { margin: 0 0 var(--s-5); font-weight: 600; }
.replay2__total output { font-variant-numeric: tabular-nums; }
.select2 { appearance: none; -webkit-appearance: none; width: 100%; max-width: 26rem; min-height: 48px; padding: 0 44px 0 14px; border: 1px solid var(--field-edge); border-radius: var(--r-sm); background: var(--sheet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none' stroke='%233D4A43' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E") no-repeat right 14px center; font: 500 .9375rem/1 var(--font-ui); color: var(--ink); cursor: pointer; transition: border-color var(--d-1) var(--ease-out); }
.select2:hover { border-color: var(--ink-3); }
.select2[aria-invalid="true"] { border: 1.5px solid var(--bad); }
.replay2__error { color: var(--bad); font-size: .8125rem; margin: 6px 0 0; }
.replay2__out .rcpt { margin-right: var(--s-5); }

/* Evidence log */
.ev-list { list-style: none; margin: 0; padding: 0; }
.ev { padding: var(--s-5) 0; border-bottom: 1px solid var(--rule); scroll-margin-top: 80px; }
.ev:target { background: rgba(223, 245, 233, .5); }
.ev-sides { display: grid; gap: var(--s-4); margin-bottom: var(--s-3); }
@media (min-width: 720px) { .ev-sides { grid-template-columns: 1fr 1fr; } }
.ev-side p { margin: 0 0 var(--s-1); }
.ev-side a { word-break: break-all; }
.ev-page { margin-bottom: var(--s-8); }

/* -- §4: 390px --------------------------------------------------------------------------------- */
@media (max-width: 719px) {
  .trust-hero { padding: var(--s-7) 0; }
  .rcpt { margin-right: var(--s-4); padding: var(--s-4); }
  /* The comparison table becomes row cards; the verdict tag stays bound to its row. */
  .cmp thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .cmp, .cmp tbody, .cmp tr, .cmp th, .cmp td { display: block; width: auto; }
  .cmp tr.row { position: relative; border: 1px solid var(--rule); border-radius: var(--r-md); background: var(--sheet); margin: 0 0 var(--s-3); padding: var(--s-4); }
  .cmp tr.row--them { background: #FDF8EE; }
  .cmp tbody th { width: auto; padding: 0 7.5rem var(--s-3) 0; border: 0; }
  .cmp td { padding: var(--s-2) 0; border: 0; border-top: 1px solid rgba(217, 210, 194, .6); }
  .cmp td::before { content: attr(data-label); display: block; font: 600 .6875rem/1.4 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin-bottom: var(--s-1); }
  .cmp td.vcell { position: absolute; top: var(--s-4); right: var(--s-4); padding: 0; border: 0; width: auto; }
  .cmp td.vcell::before { display: none; }
  .cmp tr.basis { margin: calc(-1 * var(--s-2)) 0 var(--s-3); }
  .cmp tr.basis td { border: 0; border-radius: var(--r-sm); }
  .ledger.log thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .ledger.log, .ledger.log tbody, .ledger.log tr, .ledger.log td { display: block; width: auto; }
  .ledger.log tr { padding: var(--s-3) 0; border-bottom: 1px solid var(--rule); display: grid; grid-template-columns: auto 1fr; gap: var(--s-1) var(--s-3); }
  .ledger.log td { padding: 0; border: 0; }
  .ledger.log .log__text { grid-column: 1 / -1; grid-row: 2; }
  .ledger.log .log__ev { grid-column: 1 / -1; }
  .ledger.log .log__tag { justify-self: end; }
  .ledger.scopes, .ledger.reliance { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  /* Cross-batch check item (Batch 9 acceptance, via Batch 8): at 390px the reliance table's
     last header ("Completion") sat half outside the table's scroll viewport (table 421px in a
     358px frame). One size step down + tighter right padding fits all five columns at rest;
     the overflow-x above stays as the guard for longer future content. Verified by probe:
     scrollWidth 421 -> 358 (= clientWidth), header fully inside the viewport, no cell overflow. */
  .ledger.scopes, .ledger.reliance { font-size: .8125rem; }
  .ledger.scopes th, .ledger.scopes td, .ledger.reliance th, .ledger.reliance td { padding-right: 6px; }
  .kv-ledger { grid-template-columns: 1fr; gap: 2px; }
  .kv-ledger dd { margin-bottom: var(--s-2); }
}

/* -- §3 motion: reduced-motion final states ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .btn-t, .tchip > span, .ccard--link, .ccard__go, .rail a, .select2, .stepper2 button { transition: none; }
  .btn-t:hover, .ccard--link:hover .ccard__go { transform: none; }
}

/* -- T5 print artifact: the Security page prints as a document of record ------------------------ */
@media print {
  .site-head, .site-foot, .band--close, .rail, .skip, .claim-test, .table-cta, .cta-row, .menu-toggle { display: none !important; }
  .print-only { display: block; }
  .print-head { font-size: 9pt; color: #000; border-bottom: 1px solid #000; padding-bottom: 6pt; margin-bottom: 12pt; }
  .print-head p { margin: 0; }
  body, .band, .band--paper, .band--sheet { background: #fff !important; color: #000; }
  .band { padding: 0 !important; border: 0 !important; }
  .article { display: block; }
  .short, .callout, .operator, .support-panel, .rcpt { box-shadow: none; }
  .sec, .report, .changes { break-inside: auto; }
  .claims > li, .ledger tr, .callout { break-inside: avoid; }
  .site .t-display-l { font-size: 22pt; } .site .t-display-m { font-size: 15pt; }
  .article a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 8pt; }
}
.rtag--sim { background: var(--paper-2); color: var(--ink-2); box-shadow: inset 0 0 0 1px var(--rule); }
.replay2__out.has-result > .specimen-label, .replay2__out.has-result > .rcpt--sample { display: none; }
/* The longer trial label in the header (Compare) wraps to two even lines at 390 instead of crowding. */
@media (max-width: 479px) { .site-actions .login { display: none; } .site-actions .btn--small { line-height: 1.15; text-align: center; max-width: 10.5rem; padding-top: 6px; padding-bottom: 6px; } }

/* ===== Batch 8: Docs, Tools, Status, designed 404 ===== */
/* -- one focus ring (§1.2 / §5.3) -------------------------------------------------------------- */
.trust :focus-visible, .t-focus:focus-visible { outline: none; box-shadow: var(--focus); border-radius: var(--r-sm); }
.on-dark .trust :focus-visible, .trust .on-dark :focus-visible { box-shadow: var(--focus-dark); }

/* -- type scale (§1.3): two voices, one scale -------------------------------------------------- */
.t-display-l { font: 600 clamp(2rem, 4.4vw, 3.25rem)/1.08 var(--font-display); letter-spacing: -0.01em; margin: 0 0 var(--s-4); }
.t-display-m { font: 600 clamp(1.625rem, 3vw, 2.25rem)/1.12 var(--font-display); letter-spacing: -0.01em; margin: 0 0 var(--s-3); }
.t-title { font: 650 1.25rem/1.25 var(--font-ui); letter-spacing: -0.01em; margin: 0 0 var(--s-2); }
.t-body-l { font: 400 1.125rem/1.55 var(--font-ui); margin: 0 0 var(--s-4); max-width: var(--measure); }
.t-body { font: 400 1rem/1.55 var(--font-ui); }
.t-body-s { font: 400 .875rem/1.45 var(--font-ui); }
.t-caption { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
.t-eyebrow { font: 600 .6875rem/1.4 var(--font-ui); text-transform: uppercase; letter-spacing: .14em; color: var(--ink-3); margin: 0 0 var(--s-3); }
.on-dark .t-eyebrow, .on-dark .t-caption { color: var(--paper); }
.t-num { font-family: var(--font-ui); font-weight: 700; font-variant-numeric: tabular-nums; }
.trust code { font: 400 .875rem/1.45 var(--font-mono); background: var(--paper-2); padding: 0 var(--s-1); border-radius: var(--r-sm); overflow-wrap: anywhere; }
.on-dark code { background: var(--ledger-2); color: var(--paper); }

/* -- buttons + inputs (§1.4) ------------------------------------------------------------------- */
.tbtn { display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2); min-height: 48px; padding: 0 20px; border-radius: var(--r-sm); border: 1px solid transparent; font: 600 .9375rem/1.2 var(--font-ui); text-decoration: none; cursor: pointer; transition: transform var(--d-1) var(--ease-out), background-color var(--d-1) var(--ease-out); }
.tbtn:hover { transform: translateY(-1px); }
.tbtn:active { transform: translateY(0); }
.tbtn--primary { background: var(--ledger); color: var(--paper); }
.tbtn--primary:hover { background: var(--ledger-2); color: var(--paper); }
.tbtn--verify { background: var(--verify); color: var(--ink); }
.tbtn--secondary { background: transparent; color: var(--ink); border-color: var(--rule); }
.tbtn--ghost { background: transparent; color: var(--ledger); border-color: transparent; text-decoration: none; }
.tbtn--ghost:hover { text-decoration: underline; }
.tbtn[aria-busy="true"] { cursor: progress; }
.field { display: grid; gap: var(--s-2); }
.field label { font: 600 .8125rem/1.4 var(--font-ui); color: var(--ink); }
.field input { min-height: 48px; width: 100%; padding: 0 14px; border: 1px solid var(--rule); border-radius: var(--r-sm); background: var(--sheet); color: var(--ink); font: 400 1rem/1.4 var(--font-ui); transition: border-color var(--d-1) var(--ease-out); }
.field input:hover { border-color: var(--ink-3); }
.field input:focus { outline: none; box-shadow: var(--focus); }
.field input[aria-invalid="true"] { border: 1.5px solid var(--bad); }
.field__help { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); margin: 0; }
.field__error { font: 500 .875rem/1.45 var(--font-ui); color: var(--bad); margin: 0; display: flex; gap: var(--s-2); align-items: baseline; }
.field__error::before { content: "!"; display: inline-grid; place-items: center; width: 16px; height: 16px; flex: none; border-radius: var(--r-full); background: var(--bad); color: var(--sheet); font: 700 .6875rem/1 var(--font-ui); }
.js .field__error[data-anim] { animation: t-rise var(--d-2) var(--ease-out); }
@keyframes t-rise { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* -- status chip (§1.4: one chip, five variants) ----------------------------------------------- */
.rc-chip { display: inline-flex; align-items: center; gap: var(--s-2); min-height: 24px; padding: 0 10px; border-radius: var(--r-full); font: 600 .6875rem/1 var(--font-ui); text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; border: 1px solid transparent; }
.rc-chip::before { content: ""; width: 8px; height: 8px; border-radius: var(--r-full); background: currentColor; flex: none; }
.rc-chip--verified { background: var(--tint-verified); color: var(--verify-ink); }
.rc-chip--readback { background: var(--tint-verified); color: var(--verify-ink); }
.rc-chip--limited { background: var(--paper); color: var(--ink-2); border-color: var(--rule); }
.rc-chip--limited::before { background: transparent; border: 1.5px solid currentColor; }
.rc-chip--uncertain { background: var(--amber-bg); color: var(--amber); }
.rc-chip--failed { background: var(--tint-bad); color: var(--bad); }
.rc-chip--attested { background: var(--neutral-bg); color: var(--ink-2); }
.tag-proof { display: inline-flex; align-items: center; min-height: 24px; padding: 0 var(--s-2); border: 1px solid var(--rule); border-radius: var(--r-sm); font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-2); background: transparent; white-space: nowrap; }

/* -- SAMPLE label (Home B2 system: one word, before the specimen, in its eyeline) --------------- */
.rc-sample, .sample-word { display: inline-flex; align-items: center; min-height: 24px; padding: 0 var(--s-2); border: 1px dashed var(--ink-3); border-radius: var(--r-sm); font: 600 .6875rem/1 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); background: var(--sheet); }

/* -- the receipt (§1.6): one anatomy, three sizes ---------------------------------------------- */
.rc { position: relative; background: var(--sheet); color: var(--ink); border: 1px solid var(--rule); border-radius: var(--r-lg); box-shadow: var(--e-2); padding: var(--s-5); max-width: 480px; font-family: var(--font-ui); }
.rc-head { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); margin-bottom: var(--s-2); }
.rc-eyebrow { font: 600 .6875rem/1.4 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); }
.rc-title { font: 600 1.5rem/1.2 var(--font-display); letter-spacing: -0.01em; margin: 0 0 var(--s-2); color: var(--ink); }
.rc-platform { display: flex; align-items: center; gap: var(--s-2); font: 600 .875rem/1.45 var(--font-ui); margin: 0 0 var(--s-4); color: var(--ink-2); }
.rc-platform img { width: 20px; height: 20px; }
.rc-perf { position: relative; height: 16px; margin: 0 calc(-1 * var(--s-5)); }
.rc-perf::before { content: ""; position: absolute; left: var(--s-5); right: var(--s-5); top: 50%; border-top: 1px dashed var(--rule); }
.rc--full .rc-perf::after { content: ""; position: absolute; inset: 4px -5px auto; height: 8px; background: radial-gradient(circle 4px at 4px 4px, var(--paper) 3.5px, transparent 4px) left / 16px 8px no-repeat, radial-gradient(circle 4px at 4px 4px, var(--paper) 3.5px, transparent 4px) right / 16px 8px no-repeat; }
.rc-grid { margin: 0; display: grid; gap: 0; }
.rc-grid__row { display: grid; grid-template-columns: minmax(6.5rem, .9fr) 1fr 1.2fr; gap: var(--s-3); padding: var(--s-2) 0; align-items: baseline; }
.rc-grid__row + .rc-grid__row { border-top: 1px solid var(--paper-2); }
.rc-grid dt { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
.rc-grid dd { margin: 0; font: 500 .875rem/1.45 var(--font-ui); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.rc-grid__head dd, .rc-grid__head dt { font: 600 .6875rem/1.4 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); }
.rc-asked { color: var(--ink-2); }
.rc-mark { margin-left: var(--s-2); font-weight: 700; }
.rc-mark--ok { color: var(--verify-ink); }
.rc-mark--bad { color: var(--bad); }
.rc-foot { padding-right: 104px; min-height: 72px; }
.rc-verdict { font: italic 600 1.0625rem/1.4 var(--font-display); margin: 0 0 var(--s-1); color: var(--ink); }
.rc--verified .rc-verdict, .rc--readback .rc-verdict { color: var(--verify-ink); }
.rc--failed .rc-verdict { color: var(--bad); }
.rc--attested .rc-verdict { text-decoration: underline; text-decoration-style: wavy; text-underline-offset: 4px; }
.rc-checked { font: 500 .75rem/1.4 var(--font-mono); color: var(--ink-3); margin: 0; }
.rc-note { font: 400 .875rem/1.45 var(--font-ui); color: var(--ink-2); margin: var(--s-2) 0 0; }
.rc-seal { position: absolute; right: -24px; bottom: -24px; width: 88px; height: 88px; transform: rotate(-8deg); pointer-events: none; }
.rc-seal svg { width: 100%; height: 100%; display: block; }
.rc-observed { position: absolute; right: var(--s-5); bottom: var(--s-5); display: grid; justify-items: center; gap: 2px; padding: var(--s-2) var(--s-3); border: 2px solid var(--verify-ink); border-radius: var(--r-sm); transform: rotate(-4deg); color: var(--verify-ink); background: var(--sheet); }
.rc--readback .rc-observed { position: relative; right: auto; bottom: auto; width: max-content; max-width: 100%; margin: var(--s-3) 0 0 auto; }
.rc--readback .rc-foot { padding-right: 0; min-height: 0; }
.rc-observed__word { font: 700 .875rem/1 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; }
.rc-observed__time { font: 500 .6875rem/1.2 var(--font-mono); }
.rc-tag { position: absolute; right: var(--s-5); bottom: var(--s-5); display: inline-flex; align-items: center; min-height: 32px; padding: 0 var(--s-3); border: 1.5px solid var(--ink-3); border-radius: var(--r-sm); font: 600 .75rem/1 var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--ink-2); }
.rc-travel { position: absolute; left: var(--s-5); right: var(--s-5); bottom: var(--s-3); height: 2px; background: var(--paper-2); overflow: hidden; border-radius: var(--r-full); }
.rc-travel span { display: block; width: 40%; height: 100%; background: var(--amber); }
.rc--compact { max-width: 400px; padding: var(--s-4); }
.rc--compact .rc-title { font-size: 1.25rem; }
.rc--compact .rc-perf { margin: 0 calc(-1 * var(--s-4)); }
.rc--compact .rc-perf::before { left: var(--s-4); right: var(--s-4); }
.rc--compact .rc-seal { width: 56px; height: 56px; right: -16px; bottom: -16px; }
.rc--compact .rc-foot { padding-right: 72px; min-height: 48px; }
.rc-row { display: grid; grid-template-columns: auto 1fr auto auto 24px; gap: var(--s-3); align-items: center; min-height: 52px; padding: 0 var(--s-3); border-bottom: 1px solid var(--paper-2); color: var(--ink); text-decoration: none; }
.rc-row:hover { background: var(--paper-2); }
.rc-row__title { font: 500 .875rem/1.45 var(--font-ui); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rc-row__platform { display: inline-flex; gap: var(--s-2); align-items: center; font: 500 .875rem/1.45 var(--font-ui); color: var(--ink-2); }
.rc-row__time { font: 500 .75rem/1.4 var(--font-mono); color: var(--ink-3); white-space: nowrap; }
.rc-row__seal { width: 24px; height: 24px; border-radius: var(--r-full); border: 2px solid var(--verify-ink); position: relative; }
.rc-row__seal::after { content: ""; position: absolute; left: 7px; top: 3px; width: 5px; height: 10px; border: solid var(--verify-ink); border-width: 0 2px 2px 0; transform: rotate(45deg); }
@media (max-width: 719px) {
  .rc { padding: var(--s-4); }
  .rc-perf { margin: 0 calc(-1 * var(--s-4)); }
  .rc-perf::before { left: var(--s-4); right: var(--s-4); }
  .rc-grid__row { grid-template-columns: 1fr 1fr; gap: var(--s-1) var(--s-3); }
  .rc-grid__row dt { grid-column: 1 / -1; }
  .rc-grid__head dt { display: none; }
  .rc-seal, .rc--compact .rc-seal { right: var(--s-2); bottom: var(--s-2); }
  .rc-observed, .rc-tag { position: static; display: inline-grid; margin-top: var(--s-3); max-width: 100%; }
  .rc--readback .rc-foot, .rc--limited .rc-foot { padding-right: 0; min-height: 0; }
  .rc-row { grid-template-columns: 1fr auto; padding: var(--s-2) var(--s-3); }
  .rc-row__platform, .rc-row__title { grid-column: 1; }
  .rc-row__seal { grid-column: 2; grid-row: 1 / span 2; }
}

/* M2 — the stamp lands (pressure on paper: 1.6 → 1.0, the system's only spring). */
.js .rc-seal[data-land]:not(.is-landed), .js .rc-observed[data-land]:not(.is-landed) { opacity: .001; transform: rotate(-8deg) scale(1.6); }
.js .rc-seal.is-landed, .js .rc-observed.is-landed { transition: opacity var(--d-stamp) var(--ease-stamp), transform var(--d-stamp) var(--ease-stamp); }
.js .rc-observed.is-landed { transform: rotate(-4deg); }
.js .rc.is-pressed { animation: t-press var(--d-1) var(--ease-out); }
@keyframes t-press { 50% { transform: translateY(1px); } }

/* -- code blocks (D5) ---------------------------------------------------------------------------- */
.code { border: 1px solid var(--ledger-2); border-radius: var(--r-md); overflow: hidden; background: var(--ledger); color: var(--paper); margin: 0 0 var(--s-4); max-width: 100%; }
.code__bar { display: flex; align-items: center; gap: var(--s-3); padding: 0 0 0 var(--s-3); min-height: 44px; border-bottom: 1px solid var(--ledger-2); }
.code__lang { font: 600 .6875rem/1 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--paper); opacity: .8; }
.code__label { font: 500 .75rem/1.4 var(--font-ui); color: var(--paper); flex: 1; }
.code .copy { margin-left: auto; min-height: 44px; min-width: 64px; padding: 0 var(--s-4); background: transparent; color: var(--paper); border: 0; border-left: 1px solid var(--ledger-2); font: 600 .75rem/1 var(--font-ui); cursor: pointer; transition: background-color var(--d-1) var(--ease-out); }
.code .copy:hover { background: var(--ledger-2); }
.code .copy.is-copied { color: var(--verify); }
.code pre { margin: 0; padding: var(--s-3) var(--s-4); overflow-x: auto; font: 400 .875rem/1.45 var(--font-mono); white-space: pre; }
.code pre:focus-visible { box-shadow: inset 0 0 0 2px var(--verify); }
.code code { background: none; padding: 0; color: inherit; overflow-wrap: normal; }

/* -- the designed 404 (T1; UX §2.6 T0) ----------------------------------------------------------- */
.nf__wrap { display: grid; gap: var(--s-7); padding: var(--s-8) 0; align-items: center; }
@media (min-width: 960px) { .nf__wrap { grid-template-columns: 7fr 5fr; } }
.nf-path { display: flex; gap: var(--s-2); align-items: baseline; flex-wrap: wrap; }
.nf-near { font: 400 1rem/1.55 var(--font-ui); }
.nf-exits { list-style: none; margin: var(--s-5) 0; padding: 0; display: grid; gap: var(--s-2); max-width: 36rem; }
.nf-exit { display: grid; grid-template-columns: 10rem 1fr; gap: var(--s-3); align-items: baseline; min-height: 52px; padding: var(--s-3) var(--s-4); background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); text-decoration: none; color: var(--ink); transition: border-color var(--d-1) var(--ease-out); }
.nf-exit:hover { border-color: var(--verify-ink); }
.nf-exit__label { font: 650 1rem/1.4 var(--font-ui); color: var(--ledger); }
.nf-exit__why { font: 400 .875rem/1.45 var(--font-ui); color: var(--ink-2); }
@media (max-width: 540px) { .nf-exit { grid-template-columns: 1fr; gap: var(--s-1); } }
.nf-machine { max-width: var(--measure); }
.nf-line { width: 100%; max-width: 360px; justify-self: center; fill: none; stroke: var(--ink-3); stroke-width: 2; }
.nf-line circle:first-child { fill: var(--ledger); stroke: none; }
.nf-line__gap { stroke-dasharray: 2 6; }
.nf-line__ghost { stroke-dasharray: 4 6; }


/* -- Docs (D3, D6, D8, D9, D10) ------------------------------------------------------------------ */
.docs { padding: var(--s-7) 0 var(--s-8); }
.docs-head { margin-bottom: var(--s-6); max-width: var(--measure); }
.machine-line { margin: 0; }
.machine-line a { color: var(--ledger); }
.first-call { background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-lg); padding: var(--s-6); margin-bottom: var(--s-6); box-shadow: var(--e-1); }
.first-call__sub { color: var(--ink-2); margin: 0 0 var(--s-5); }
.first-call__grid { display: grid; gap: var(--s-5); }
@media (min-width: 1000px) { .first-call__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.fc-block { min-width: 0; display: flex; flex-direction: column; gap: var(--s-2); padding-top: var(--s-4); border-top: 2px solid var(--ledger); }
.fc-steps { margin: 0; padding-left: var(--s-5); display: grid; gap: var(--s-2); font: 400 1rem/1.55 var(--font-ui); }
.fc-assistants { list-style: none; margin: 0 0 var(--s-2); padding: 0; display: grid; gap: var(--s-3); font: 400 .875rem/1.45 var(--font-ui); }
.fc-warn { color: var(--ink-2); }
.fc-loop { margin-top: var(--s-5); }
.fc-loop ol { list-style: none; margin: 0 0 var(--s-4); padding: 0; display: grid; gap: var(--s-2); counter-reset: loop; }
@media (min-width: 1000px) { .fc-loop ol { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.fc-loop li { counter-increment: loop; display: grid; gap: var(--s-1); padding: var(--s-3); border: 1px solid var(--rule); border-radius: var(--r-md); background: var(--paper); min-width: 0; }
.fc-loop li::before { content: counter(loop, decimal-leading-zero); font: 600 .6875rem/1 var(--font-ui); letter-spacing: .14em; color: var(--verify-ink); }
.fc-loop li span { font: 400 .875rem/1.45 var(--font-ui); color: var(--ink-2); }
.fc-loop a { text-decoration: none; }
.fc-loop code, .tool__name code, .nowrap code { white-space: nowrap; overflow-wrap: normal; }
.tools-link { margin: 0 0 var(--s-6); padding: var(--s-3) var(--s-4); border-left: 3px solid var(--verify); background: var(--sheet); border-radius: var(--r-sm); }
.tools-link p { margin: 0; }
.tools-link .t-eyebrow { margin: 0 var(--s-2) 0 0; }
.doc-filter { max-width: 32rem; margin-bottom: var(--s-6); }
.doc-group { margin-bottom: var(--s-7); }
.doc-group[hidden] { display: none; }
.doc-group__head { display: grid; gap: var(--s-1); margin-bottom: var(--s-4); padding-bottom: var(--s-3); border-bottom: 1.5px solid var(--rule); }
.doc-group__head p { margin: 0; }
.doc-group__receipt::before { content: "Page receipt · "; font-weight: 600; }
.doc-cards { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-3); }
@media (min-width: 760px) { .doc-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.doc-card[hidden] { display: none; }
.doc-card a { position: relative; display: grid; gap: var(--s-2); height: 100%; padding: var(--s-5); padding-right: var(--s-7); background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); box-shadow: var(--e-1); color: var(--ink); text-decoration: none; transition: border-color var(--d-1) var(--ease-out); }
.doc-card a:hover { border-color: var(--verify-ink); color: var(--ink); }
.doc-card__title { font: 650 1.25rem/1.25 var(--font-ui); letter-spacing: -0.01em; color: var(--ledger); }
.doc-card__desc { font: 400 .875rem/1.45 var(--font-ui); color: var(--ink-2); }
.doc-card__fact { font: 500 .875rem/1.45 var(--font-ui); color: var(--ink); padding-top: var(--s-2); border-top: 1px dashed var(--rule); display: block; }
.doc-card__fact:empty { display: none; }
.gen-proof { display: block; margin-top: var(--s-1); font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
.doc-card__arrow { position: absolute; right: var(--s-5); top: var(--s-5); color: var(--verify-ink); transition: transform var(--d-1) var(--ease-out); }
.doc-card a:hover .doc-card__arrow { transform: translateX(4px); }
.docs-support { max-width: var(--measure); padding-top: var(--s-5); border-top: 1px solid var(--rule); }
.absent { padding: var(--s-3) var(--s-4); border: 1px dashed var(--ink-3); border-radius: var(--r-sm); color: var(--ink-2); }
.page-receipt { margin-top: var(--s-7); padding: var(--s-5); background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); }
.page-receipt ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-2); font: 400 .875rem/1.45 var(--font-ui); }
.pr-k { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); margin-right: var(--s-2); }
.pr-badge { display: inline-flex; align-items: center; gap: var(--s-2); min-height: 24px; padding: 0 10px; border-radius: var(--r-full); background: var(--tint-verified); color: var(--verify-ink); font: 600 .75rem/1.4 var(--font-ui); }
.pr-badge::before { content: "✓"; }
.doc-layout { display: grid; gap: var(--s-6); }
@media (min-width: 1000px) { .doc-layout { grid-template-columns: 15rem minmax(0, 1fr); gap: var(--s-7); } }
.doc-rail ul { list-style: none; margin: 0; padding: 0; }
.doc-rail .rail-group { margin-bottom: var(--s-4); }
.rail-group__title { font: 600 .6875rem/1.4 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); margin: 0 0 var(--s-1); }
.doc-rail a { display: flex; align-items: center; min-height: 44px; padding: 0 var(--s-3); border-radius: var(--r-sm); color: var(--ink); text-decoration: none; font: 400 .875rem/1.45 var(--font-ui); }
.doc-rail a:hover { background: var(--paper-2); }
.doc-rail a[aria-current] { background: var(--sheet); box-shadow: inset 3px 0 0 var(--verify); font-weight: 600; }
@media (max-width: 999px) { .doc-rail { display: none; } }
.doc-article { min-width: 0; max-width: 52rem; }
.doc-head { margin-bottom: var(--s-4); }
.doc-body { font: 400 1rem/1.55 var(--font-ui); }
.doc-body > section { margin-bottom: var(--s-7); }
.doc-body > section:first-child > h2:first-child { font: 600 clamp(2rem, 4.4vw, 3.25rem)/1.08 var(--font-display); letter-spacing: -0.01em; margin: 0 0 var(--s-4); }
.doc-body h2 { font: 600 clamp(1.625rem, 3vw, 2.25rem)/1.12 var(--font-display); margin: var(--s-6) 0 var(--s-3); }
.doc-body h3 { font: 650 1.25rem/1.25 var(--font-ui); margin: var(--s-5) 0 var(--s-2); }
.doc-body p, .doc-body li { max-width: var(--measure); }
.doc-body table { width: 100%; border-collapse: collapse; font: 400 .875rem/1.45 var(--font-ui); }
.doc-body th { text-align: left; font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); border-bottom: 1.5px solid var(--rule); padding: var(--s-2) var(--s-3) var(--s-2) 0; vertical-align: bottom; }
.doc-body td { border-bottom: 1px solid var(--paper-2); padding: var(--s-3) var(--s-3) var(--s-3) 0; vertical-align: top; }
.table-scroll { overflow-x: auto; max-width: 100%; margin-bottom: var(--s-4); }
.nowrap { white-space: nowrap; }
.loop-list { display: grid; gap: var(--s-1); }
.worked-steps { padding-left: var(--s-5); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-5); }
.worked-steps > li { max-width: none; }
.sample-line { display: flex; gap: var(--s-3); align-items: center; font: 400 .875rem/1.45 var(--font-ui); color: var(--ink-2); }
.worked-receipt { padding: var(--s-5) var(--s-6) var(--s-7) 0; }
.worked-limited { margin-top: var(--s-5); padding-top: var(--s-5); border-top: 1px dashed var(--rule); }
.procedure { padding-left: var(--s-5); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--s-5); }
.procedure > li { max-width: none; }
.consent { padding: var(--s-3) var(--s-4); border-left: 3px solid var(--ledger); background: var(--sheet); border-radius: var(--r-sm); }
.delta { margin: var(--s-3) 0; padding: var(--s-3) var(--s-4); border: 1px solid var(--rule); border-radius: var(--r-md); background: var(--sheet); }
.delta p { margin: 0; }
.delta__who { font: 600 .6875rem/1.4 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--amber); margin-bottom: var(--s-1) !important; }
.shared-tag { display: inline-flex; min-height: 24px; align-items: center; padding: 0 var(--s-2); border-radius: var(--r-sm); background: var(--neutral-bg); color: var(--ink-2); font: 500 .75rem/1.4 var(--font-ui); margin-bottom: var(--s-2); }
.directory-line { font: 500 .875rem/1.45 var(--font-ui); color: var(--ink); padding: var(--s-3) 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.task-table th[scope="row"] { font: 650 1rem/1.4 var(--font-ui); color: var(--ink); }
@media (max-width: 719px) {
  .first-call { padding: var(--s-4); }
  .task-table thead { display: none; }
  .task-table tr { display: grid; gap: var(--s-2); padding: var(--s-3) 0; border-bottom: 1px solid var(--rule); }
  .task-table td, .task-table th[scope="row"] { display: block; border: 0; padding: 0; }
  .task-table td::before { content: attr(data-label); display: block; font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
  .worked-receipt { padding-right: var(--s-3); }
}
.tool-group { margin-bottom: var(--s-7); }
.tool { padding: var(--s-5) 0; border-top: 1px solid var(--rule); scroll-margin-top: var(--s-8); }
.tool__head { display: flex; gap: var(--s-3); align-items: center; flex-wrap: wrap; justify-content: space-between; }
.tool__name { margin: 0; font: 650 1.125rem/1.4 var(--font-ui); }
.tool__name a { text-decoration: none; }
.tool__copy { min-height: 44px; }
.tool__job { margin: var(--s-2) 0; }
.ref-inputs td:first-child { min-width: 9rem; }
.alpha { line-height: 2; }


/* -- Tools: the Post Check (T3–T7; motion per §5 Tools) ------------------------------------------ */
.tools { padding: var(--s-7) 0 var(--s-8); }
.tools-head { max-width: var(--measure); margin-bottom: var(--s-6); }
.pc-grid { display: grid; gap: var(--s-6); align-items: start; }
@media (min-width: 1000px) { .pc-grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--s-7); } }
.pc-main { min-width: 0; display: grid; gap: var(--s-6); }
.pc-form { display: grid; gap: var(--s-4); background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); padding: var(--s-5); box-shadow: var(--e-1); }
.pc-form .tbtn { justify-self: start; }
.pc-identify { margin: 0; color: var(--verify-ink); font-weight: 600; min-height: 1.45em; }
.pc-identify:empty { min-height: 0; }
.pc-narration { margin: 0; color: var(--ink-2); display: flex; gap: var(--s-2); align-items: center; }
.pc-narration::before { content: ""; width: 8px; height: 8px; border-radius: var(--r-full); background: var(--amber); flex: none; }
.pc-specimen { display: grid; gap: var(--s-3); min-width: 0; }
.pc-result { display: grid; gap: var(--s-5); }
.pc-result h2 { margin: 0; }
.pc-return { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--s-3); font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
.pc-return__line { height: 2px; background: var(--verify-ink); transform-origin: left center; }
.js .pc-result .pc-return__line { animation: t-draw var(--d-4) var(--ease-out) both; }
@keyframes t-draw { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.js .pc-result .rc-grid__row { animation: t-rise var(--d-3) var(--ease-out) both; }
.js .pc-result .rc-grid__row:nth-child(2) { animation-delay: 640ms; }
.js .pc-result .rc-grid__row:nth-child(3) { animation-delay: 680ms; }
.js .pc-result .rc-grid__row:nth-child(4) { animation-delay: 720ms; }
.js .pc-result .rc-grid__row:nth-child(5) { animation-delay: 760ms; }
.js .pc-result .rc-grid__row:nth-child(6) { animation-delay: 800ms; }
.js .pc-result .rc-grid__row:nth-child(7) { animation-delay: 840ms; }
.js .pc-result .rc-grid__row:nth-child(8) { animation-delay: 880ms; }
.pc-receipt { padding: 0 var(--s-6) var(--s-6) 0; }
.pc-receipt .rc { max-width: 560px; }
.rc-grid--two .rc-grid__row { grid-template-columns: minmax(7rem, .7fr) 2fr; }
.rc-reserve { font-style: italic; color: var(--ink); margin-top: var(--s-3); }
.pc-keep { display: flex; flex-wrap: wrap; gap: var(--s-3); }
.pc-offer { padding: var(--s-5); border-radius: var(--r-md); background: var(--sheet); border: 1px solid var(--rule); display: grid; gap: var(--s-2); justify-items: start; }
.pc-offer p { margin: 0; }
.cap-table { width: 100%; border-collapse: collapse; font: 400 .875rem/1.45 var(--font-ui); background: var(--sheet); }
.cap-table caption { text-align: left; padding: 0 0 var(--s-2); }
.cap-table th, .cap-table td { text-align: left; padding: var(--s-3); border-bottom: 1px solid var(--paper-2); vertical-align: top; }
.cap-table thead th { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); border-bottom: 1.5px solid var(--rule); }
.ch { display: inline-flex; gap: var(--s-2); align-items: center; white-space: nowrap; font-weight: 600; }
@media (max-width: 719px) {
  .pc-form { padding: var(--s-4); }
  .pc-receipt { padding: 0 var(--s-3) var(--s-5) 0; }
  .rc-grid--two .rc-grid__row { grid-template-columns: 1fr; }
  .cap-table thead { display: none; }
  .cap-table tr { display: grid; gap: var(--s-1); padding: var(--s-3); border-bottom: 1px solid var(--rule); }
  .cap-table th, .cap-table td { padding: 0; border: 0; }
}


/* -- Status (S1–S9, Layer 1; M9 the pulse) -------------------------------------------------------- */
.st-hero { padding: var(--s-7) 0 var(--s-6); }
.st-hero .t-eyebrow { color: var(--paper); }
.st-head { display: grid; grid-template-columns: auto 1fr; gap: var(--s-4); align-items: start; }
.st-hero .st-headline { color: var(--paper); margin: 0 0 var(--s-2); }
.st-hero .st-sub { color: var(--paper); margin: 0; }
.st-scope, .st-pulse-line { font: 400 1rem/1.55 var(--font-ui); color: var(--paper); max-width: var(--measure); margin: var(--s-4) 0 0; }
.st-scope { padding-left: var(--s-3); border-left: 2px solid var(--verify); }
.st-reduced { display: none; }
.st-small { font: italic 600 1.0625rem/1.4 var(--font-display); color: var(--paper); margin: var(--s-5) 0 var(--s-2); }
.st-pulse { position: relative; display: inline-block; width: 12px; height: 12px; margin-top: var(--s-4); border-radius: var(--r-full); background: var(--verify); }
.st-pulse span { position: absolute; inset: 0; border-radius: var(--r-full); background: var(--verify); opacity: 0; }
.st-pulse--still { background: var(--paper); opacity: .6; }
.st-pulse.is-beat span { animation: t-pulse 2.4s var(--ease-out) 1; }
@keyframes t-pulse { from { opacity: .45; transform: scale(1); } to { opacity: 0; transform: scale(2.2); } }
.st-counters { list-style: none; margin: var(--s-3) 0 0; padding: 0; display: grid; gap: 1px; background: var(--rule-dark); border: 1px solid var(--rule-dark); border-radius: var(--r-md); overflow: hidden; }
@media (min-width: 900px) { .st-counters { grid-template-columns: 1.2fr repeat(4, 1fr); } }
.st-counter a { display: grid; gap: var(--s-1); height: 100%; padding: var(--s-4) var(--s-5); background: var(--ledger-2); color: var(--paper); text-decoration: none; transition: background-color var(--d-1) var(--ease-out); }
.st-counter a:hover { background: var(--ledger-3); color: var(--paper); }
.st-counter--destinations a { background: var(--ledger-3); }
.st-n { font-size: clamp(2rem, 4.4vw, 3.25rem); line-height: 1.08; }
.st-l { font: 500 .875rem/1.45 var(--font-ui); }
.st-rate { font: 500 .75rem/1.4 var(--font-ui); }
.st-window, .st-median, .st-caption { font: 400 .875rem/1.45 var(--font-ui); color: var(--paper); margin: var(--s-3) 0 0; }
.st-hero .t-caption { color: var(--paper); opacity: .85; }
.st-reconcile { font-family: var(--font-mono); margin-left: var(--s-2); }
.st-hero a { color: var(--paper); }
.st-exits { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0 0; }
.st-exits .tbtn--ghost { color: var(--paper); border-color: var(--rule-dark); padding: 0 var(--s-4); min-height: 44px; }
.st-recent-band { padding: var(--s-6) 0 0; }
.st-recent__list { background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); overflow: hidden; margin: var(--s-2) 0 var(--s-3); }
.st-recent__list .rc-row:last-child { border-bottom: 0; }
.st-empty { padding: var(--s-4); border: 1px dashed var(--rule); border-radius: var(--r-md); color: var(--ink-2); }
.st-channels { padding: var(--s-7) 0; }
.st-taxonomy { list-style: none; margin: 0 0 var(--s-5); padding: 0; display: grid; gap: var(--s-2); font: 400 .875rem/1.45 var(--font-ui); max-width: var(--measure); }
.st-taxonomy .rc-chip { margin-right: var(--s-2); }
.st-table { width: 100%; border-collapse: collapse; background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); font: 400 .875rem/1.45 var(--font-ui); }
.st-table thead th { text-align: left; font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); padding: var(--s-3); border-bottom: 1.5px solid var(--rule); }
.st-row th, .st-row td { text-align: left; padding: var(--s-3); border-top: 1px solid var(--paper-2); vertical-align: middle; min-height: 52px; }
.st-row th { display: grid; gap: var(--s-1); justify-items: start; }
.st-row td.t-num { font-variant-numeric: tabular-nums; }
.st-row { scroll-margin-top: 88px; } /* Fix 9: an anchored row lands below the sticky site header */
.st-quiet { color: var(--ink-3); }
.st-divider th { text-align: left; padding: var(--s-3); background: var(--paper-2); font: 600 .6875rem/1.4 var(--font-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); }
.st-toggle { min-height: 44px; padding: 0 var(--s-3); background: transparent; border: 1px solid var(--rule); border-radius: var(--r-sm); color: var(--ledger); font: 600 .75rem/1.2 var(--font-ui); cursor: pointer; display: inline-flex; align-items: center; gap: var(--s-2); }
.st-toggle::after { content: ""; width: 8px; height: 8px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); transition: transform var(--d-acc) var(--ease-out); }
.st-toggle[aria-expanded="true"]::after { transform: rotate(-135deg); }
.st-toggle--group { border: 0; padding: 0; letter-spacing: .14em; text-transform: uppercase; font: 600 .6875rem/1.4 var(--font-ui); color: var(--ink-2); }
.st-exp { text-align: right; }
.st-meaning-row td { padding: 0 var(--s-3); }
.st-meaning { padding: 0 0 var(--s-3); max-width: var(--measure); color: var(--ink-2); }
.st-meaning p { margin: 0; }
.js .is-closed { display: none; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.st-banner { margin-bottom: var(--s-5); padding: var(--s-4) var(--s-5); border-radius: var(--r-md); border: 1px solid var(--rule); background: var(--sheet); }
.st-banner p { margin: 0; max-width: none; }
.st-banner--amber { background: var(--amber-bg); border-color: var(--amber-line); color: var(--ink); }
.st-banner--bad { background: var(--tint-bad); border-color: var(--bad); }
.st-banner--note { border-left: 3px solid var(--amber); }
.st-incidents { padding: var(--s-7) 0; }
.st-disclosures { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); font: 500 .875rem/1.45 var(--font-ui); color: var(--ink-2); padding: var(--s-3) 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.st-empty-log { padding: var(--s-5); border: 1px dashed var(--rule); border-radius: var(--r-md); margin: var(--s-4) 0; }
.st-empty-log p { margin: 0; }
.incident { padding: var(--s-5); margin: var(--s-4) 0; background: var(--sheet); border: 1px solid var(--rule); border-radius: var(--r-md); }
.incident--sample { border-style: dashed; background: var(--paper); }
.incident__meta { margin: 0 0 var(--s-1); display: flex; gap: var(--s-2); align-items: center; }
.incident__body { margin: var(--s-3) 0 0; display: grid; gap: var(--s-3); }
.incident__body dt { font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
.incident__body dd { margin: 0; max-width: var(--measure); }
.incident__updates { margin: var(--s-3) 0 0; padding-left: var(--s-4); }
.st-method { padding: var(--s-7) 0; }
.st-classes { max-width: var(--measure); display: grid; gap: var(--s-2); }
.st-receipts { padding: var(--s-7) 0 var(--s-8); }
.st-receipt-view .rc { max-width: 560px; }
@media (max-width: 719px) {
  .st-head { grid-template-columns: 1fr; }
  .st-pulse { margin-top: 0; }
  .st-counter a { grid-template-columns: auto 1fr; align-items: baseline; gap: var(--s-3); padding: var(--s-3) var(--s-4); }
  .st-counter--destinations a { grid-template-columns: 1fr; }
  .st-rate { grid-column: 1 / -1; }
  .st-n { font-size: clamp(1.625rem, 3vw, 2.25rem); }
  .st-table thead { display: none; }
  .st-table, .st-table tbody { display: block; }
  .st-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-2); padding: var(--s-3); border-top: 1px solid var(--rule); }
  .st-row th { grid-column: 1 / -1; border: 0; padding: 0; }
  .st-row td { border: 0; padding: 0; display: grid; gap: var(--s-1); }
  .st-row td[data-label]::before { content: attr(data-label); font: 500 .75rem/1.4 var(--font-ui); color: var(--ink-3); }
  .st-row td.st-exp { grid-column: 1 / -1; text-align: left; }
  .st-meaning-row, .st-divider { display: block; }
  .st-meaning-row td, .st-divider th { display: block; }
}

/* -- reduced motion: every state renders final (§3) --------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .st-reduced { display: inline; }
  .st-pulse span { animation: none !important; }
  .js .rc-seal[data-land]:not(.is-landed) { opacity: 1; transform: rotate(-8deg); }
  .js .rc-observed[data-land]:not(.is-landed) { opacity: 1; transform: rotate(-4deg); }
  .trust *, .trust *::before, .trust *::after { transition-duration: 0ms !important; animation-duration: 0ms !important; animation-iteration-count: 1 !important; }
}
