/* GENERATED by marketing/build-tool-partials.py — DO NOT EDIT.
   Source of truth: marketing/tools/governance-score.html */
/* Tool-local layout only. Every colour is a token or a color-mix of one —
     the shared design system owns the palette (tools-core.css BRAND RULES). */

  /* ---- the headline: the BAND is the hero, the number is a footnote -------
     Contract §3 rule 8: "the band is the headline and is authoritative." The
     shared `.hero-read .pct` puts a 38px MONO NUMBER first, which is the exact
     emphasis this tool must not have — so the Score inverts it: the band takes
     the display face at hero size, and the rounded-5 number renders in the
     muted mono `.verdict-num` beneath it. Nothing here is a new instrument;
     it is the shared verdict card with its two elements' weights swapped. */
  .ist-tool.ist-tool.ist-tool.ist-tool .band-head {
    font: 400 33px/1.15 var(--font-display);
    letter-spacing: -.01em;
    margin: 0 0 var(--sp-1);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .band-head.tone-ok { color: var(--positive); }
  .ist-tool.ist-tool.ist-tool.ist-tool .band-head.tone-crit { color: var(--alarm-ink); }
  .ist-tool.ist-tool.ist-tool.ist-tool .band-sub { display: flex; align-items: baseline; gap: var(--sp-2); flex-wrap: wrap; }

  /* ---- the provenance ledger — where each component came from ------------ */
  .ist-tool.ist-tool.ist-tool.ist-tool .prov { display: grid; gap: var(--sp-2); }
  .ist-tool.ist-tool.ist-tool.ist-tool .prow {
    display: grid; grid-template-columns: 1fr auto; gap: var(--sp-2); align-items: baseline;
    padding: var(--seam-y) 0; border-bottom: 1px solid var(--line);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .prow:last-child { border-bottom: none; }
  .ist-tool.ist-tool.ist-tool.ist-tool .prow .pn { font: 500 14px/1.35 var(--font-ui); }
  .ist-tool.ist-tool.ist-tool.ist-tool .prow .ps { display: block; margin-top: 3px; font-size: 12px; line-height: 1.5; color: var(--muted); }
  .ist-tool.ist-tool.ist-tool.ist-tool .prow .pv {
    font: 600 13px/1.2 var(--font-mono); font-variant-numeric: tabular-nums;
    text-align: right; white-space: nowrap;
  }

  /* ---- one-of-N answer cards (the margin question) ----------------------
     Same primitive the quiz uses, so a reader who met it there meets it again
     rather than a second control that nearly matches. */
  .ist-tool.ist-tool.ist-tool.ist-tool .picks { display: grid; gap: var(--sp-2); margin-top: var(--sp-3); }
  .ist-tool.ist-tool.ist-tool.ist-tool .pick {
    display: block; width: 100%; text-align: left;
    padding: var(--row-y) var(--pad-x);
    border: 1px solid var(--line); border-radius: var(--r);
    background: transparent; color: var(--text);
    font: 400 14px/1.45 var(--font-ui);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .pick:hover { border-color: color-mix(in srgb, var(--accent) 60%, transparent); }
  .ist-tool.ist-tool.ist-tool.ist-tool .pick[aria-pressed="true"] {
    border-color: var(--accent);
    background: color-mix(in srgb, var(--accent) 10%, transparent);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .pick small {
    display: block; margin-top: 3px; font-size: 12px; line-height: 1.5; color: var(--muted);
  }

  /* ---- the weight ledger + the published bands --------------------------- */
  .ist-tool.ist-tool.ist-tool.ist-tool .ledger { font-family: var(--font-mono); font-variant-numeric: tabular-nums; }
  .ist-tool.ist-tool.ist-tool.ist-tool .ledger .kv.total { border-bottom: none; border-top: 1px solid var(--line); margin-top: var(--sp-1); }
  .ist-tool.ist-tool.ist-tool.ist-tool .ledger .kv.total .k { color: var(--text); }
  .ist-tool.ist-tool.ist-tool.ist-tool .ledger .kv.total .v { font-size: 19px; }

  .ist-tool.ist-tool.ist-tool.ist-tool .bands { font-family: var(--font-mono); font-variant-numeric: tabular-nums; }
  .ist-tool.ist-tool.ist-tool.ist-tool .brow {
    display: grid; grid-template-columns: 1fr auto; gap: var(--sp-2);
    padding: var(--seam-y) 0; border-bottom: 1px solid var(--line); font-size: 13px;
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .brow:last-child { border-bottom: none; }
  .ist-tool.ist-tool.ist-tool.ist-tool .brow.here {
    background: color-mix(in srgb, var(--accent) 10%, transparent);
    border-radius: 6px; padding-left: var(--sp-2); padding-right: var(--sp-2);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .brow.here .bn { color: var(--text); font-weight: 600; }
  .ist-tool.ist-tool.ist-tool.ist-tool .brow .bn { color: var(--muted); }

  /* ---- the published formula, as it is written in the policy file -------- */
  .ist-tool.ist-tool.ist-tool.ist-tool .formula { margin: 0; padding-left: 1.15em; }
  .ist-tool.ist-tool.ist-tool.ist-tool .formula li { font-size: 13px; line-height: 1.6; color: var(--muted); margin-bottom: var(--sp-2); }
  .ist-tool.ist-tool.ist-tool.ist-tool .formula li:last-child { margin-bottom: 0; }

  /* CA1 — the null option is RENDERED, equally weighted, never implied. */
  .ist-tool.ist-tool.ist-tool.ist-tool .null-option {
    margin-top: var(--card-gap); padding: var(--row-y) var(--pad-x);
    border: 1px solid color-mix(in srgb, var(--positive) 40%, transparent);
    border-radius: var(--r);
    background: color-mix(in srgb, var(--positive) 7%, transparent);
  }
  .ist-tool.ist-tool.ist-tool.ist-tool .null-option p:last-child { margin: 0; }

  /* ---- the upgrade card — the one place a tool names the paid app -------- */
  .ist-tool.ist-tool.ist-tool.ist-tool .upgrade { border-color: color-mix(in srgb, var(--accent) 45%, transparent); }