/* xChk design tokens (3 Oct 2026) — one home for the palette. House style is maclawran.ca: paper, one green,
 * Charter for the rare serif heading, the system font for everything else. The four verdict hues keep their meaning
 * everywhere. Consumed by our own rules (--x-*) and mapped onto the design system's variables below. */
/* Poppins, for the header's "TVP | Agents" as on the old wall, and then as the body font too (Sean, 8 Oct 2026: "and load
   poppins" · "try poppins as the default font as well"). Loaded the way
   pewpew.html and seven other pages already load it; the site's policy allows this one outside source for styles and
   fonts. An @import has to come before every rule, which is why it sits up here. */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap');
:root {
  /* WARM PAPER (3 Oct 2026). The atmosphere Sean pointed at — warm off-white, near-black ink, hairlines — with our
   * own green and our own faces. Not a brand's palette: a temperature. */
  /* 4 Oct 2026, Sean, testing: the hard blacks — ink, the logo box, the mode square — read as grey in light */
  --x-ink: #4f4f4a; --x-ink-soft: #5c5c57; --x-muted: #6f6e68; --x-line: #e6e4dd;
  --x-paper: #ffffff; --x-surface: #faf9f5; --x-surface-2: #f1efe8;
  --x-accent: #39594d; --x-accent-soft: #e7ecea; --x-logo-box: #5a5a55;   /* the serious green: nav, links, emphasis — the verdict green stays brighter so 'accounted' still reads as go */
  /* text on a button or chip filled with one of the colours below (10 Oct 2026): white on the light sheet's deep
     colours, dark ink on the dark sheet's bright ones, where white was under 3 to 1 */
  --x-on-solid: #fff;
  --x-green: #1c7a52; --x-amber: #b7791f; --x-magenta: #a63fc0; --x-red: #c2362f; --x-grey: #8a948d; --x-blue: #2f6fb7;
  --x-green-bg: #e2efe8; --x-amber-bg: #fbf3e3; --x-magenta-bg: #f6e8f8; --x-red-bg: #fbeceb;
  --x-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --x-serif: Charter, Georgia, "Times New Roman", serif;
  --x-sans: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;   /* Poppins first: a trial, 8 Oct 2026; delete the first name to go back to the system font */
}
/* HEADERS, ONE FACE SITEWIDE (Sean, 4 Oct 2026: "use the Reviews & Approvals font sitewide for headers"): the system
 * sans at 600 with tight tracking, three sizes. Loaded before every page's own sheet, so a page keeps a size it sets
 * on purpose; the face and the weight it inherits from here. */
h1, h2, h3 { font-family: var(--x-sans); font-weight: 600; letter-spacing: -0.02em; line-height: 1.25; }
h1 { font-size: 22px; } h2 { font-size: 18px; } h3 { font-size: 15px; }
:root {
}

/* GitHub Primer CSS 21 (css/vendor/primer), themed. Primer defines its light theme on these attribute selectors;
 * the same selector here, loaded after it, wins. Everything not listed keeps Primer's light default. */
/* 4 Oct 2026: auto on a light OS had no house block at all — Primer's own light, a transparent header. The dark
 * @media block below is the same specificity and later, so auto + dark OS still wins. */
[data-color-mode=light][data-light-theme=light], [data-color-mode=auto][data-light-theme=light] {
  --color-canvas-default: var(--x-paper);
  --color-canvas-subtle: var(--x-surface);
  --color-canvas-inset: var(--x-surface);
  --color-border-default: var(--x-line);
  --color-border-muted: #efede6;
  --color-fg-default: var(--x-ink);
  --color-fg-muted: var(--x-muted);
  --color-fg-subtle: #8f8e87;
  --color-accent-fg: var(--x-accent);
  --color-accent-emphasis: var(--x-accent);
  --color-accent-subtle: var(--x-accent-soft);
  --color-accent-muted: #c5d0cb;
  --color-success-fg: var(--x-green);  --color-success-emphasis: var(--x-green);  --color-success-subtle: var(--x-green-bg);  --color-success-muted: #bcd8c9;
  --color-attention-fg: var(--x-amber); --color-attention-emphasis: var(--x-amber); --color-attention-subtle: var(--x-amber-bg); --color-attention-muted: #ecd9b0;
  --color-danger-fg: var(--x-red);     --color-danger-emphasis: var(--x-red);     --color-danger-subtle: var(--x-red-bg);     --color-danger-muted: #e8b9b6;
  --color-done-fg: var(--x-magenta);   --color-done-emphasis: var(--x-magenta);   --color-done-subtle: var(--x-magenta-bg);   --color-done-muted: #e0bfe6;
  --color-open-emphasis: var(--x-green); --color-closed-emphasis: var(--x-red);
  --color-header-bg: var(--x-paper); --color-header-text: var(--x-ink-soft); --color-header-logo: var(--x-ink);
  --color-btn-primary-bg: var(--x-accent); --color-btn-primary-hover-bg: #2f4b40; --color-btn-primary-border: rgba(0,0,0,.12);
  --color-sidenav-selected-bg: var(--x-paper);
  /* Primer 21.5 reads the NEW token family in most rules; the legacy --color-* above is kept for the rest */
  --bgColor-default: var(--x-paper); --bgColor-muted: var(--x-surface); --bgColor-inset: var(--x-surface);
  --borderColor-default: var(--x-line); --borderColor-muted: #efede6;
  --fgColor-default: var(--x-ink); --fgColor-muted: var(--x-muted); --fgColor-onEmphasis: #fff;
  --fgColor-accent: var(--x-accent); --bgColor-accent-emphasis: var(--x-accent); --bgColor-accent-muted: var(--x-accent-soft); --borderColor-accent-emphasis: var(--x-accent); --borderColor-accent-muted: #c5d0cb;
  --fgColor-success: var(--x-green); --bgColor-success-emphasis: var(--x-green); --bgColor-success-muted: var(--x-green-bg); --borderColor-success-muted: #bcd8c9; --borderColor-success-emphasis: var(--x-green); --borderColor-open-emphasis: var(--x-green);
  --fgColor-attention: var(--x-amber); --bgColor-attention-emphasis: var(--x-amber); --bgColor-attention-muted: var(--x-amber-bg); --borderColor-attention-muted: #ecd9b0; --borderColor-attention-emphasis: var(--x-amber);
  --fgColor-danger: var(--x-red); --bgColor-danger-emphasis: var(--x-red); --bgColor-danger-muted: var(--x-red-bg); --borderColor-danger-muted: #e8b9b6; --borderColor-danger-emphasis: var(--x-red); --borderColor-closed-emphasis: var(--x-red);
  --fgColor-done: var(--x-magenta); --bgColor-done-emphasis: var(--x-magenta); --bgColor-done-muted: var(--x-magenta-bg); --borderColor-done-emphasis: var(--x-magenta);
  --focus-outlineColor: var(--x-accent); --header-fgColor-default: var(--x-ink-soft); --header-bgColor: var(--x-paper);
  --button-primary-bgColor-rest: var(--x-accent); --button-primary-bgColor-hover: #2f4b40;
  /* 9 Oct 2026: the danger button's colours were never set, so Forget me was close to invisible on the light sheet (Sean) */
  --button-danger-fgColor-rest: var(--x-red); --button-danger-fgColor-hover: #fff; --button-danger-bgColor-hover: var(--x-red); --button-danger-borderColor-hover: var(--x-red);
  --button-danger-fgColor-active: #fff; --button-danger-bgColor-active: var(--x-red); --button-danger-borderColor-active: var(--x-red); --button-danger-fgColor-disabled: var(--x-grey);
}

/* DARK (3 Oct 2026). Our palette for a dark canvas — the verdict hues lifted so they read on near-black, the green
 * kept as the one accent. Primer carries its own dark theme on the same selectors; this recolours it the same way
 * the light block does. --x-* switch too, so our own rules follow the mode. */
[data-color-mode=dark][data-dark-theme=dark], [data-color-mode=auto][data-light-theme=dark] {
  --x-ink: #e6e9f0; --x-ink-soft: #c9d1d9; --x-muted: #8b949e; --x-line: #30363d;
  --x-paper: #161b22; --x-surface: #0d1117; --x-surface-2: #21262d;
  --x-accent: #3fb77f; --x-accent-soft: #12351f;
  --x-on-solid: #10151c;
  --x-green: #3fb77f; --x-amber: #e3b341; --x-magenta: #d78cf0; --x-red: #f47067; --x-grey: #8b949e; --x-blue: #6cb6ff;
  --x-green-bg: #12351f; --x-amber-bg: #3a2d10; --x-magenta-bg: #3a1a45; --x-red-bg: #4a1c1c;
  --color-canvas-default: var(--x-paper); --color-canvas-subtle: var(--x-surface); --color-canvas-inset: var(--x-surface);
  --color-border-default: var(--x-line); --color-border-muted: #21262d;
  --color-fg-default: var(--x-ink); --color-fg-muted: var(--x-muted); --color-fg-subtle: #6e7681;
  --color-accent-fg: var(--x-accent); --color-accent-emphasis: #2ea36a; --color-accent-subtle: var(--x-accent-soft); --color-accent-muted: #1f5a3a;
  --color-success-fg: var(--x-green);  --color-success-emphasis: #2ea36a;  --color-success-subtle: var(--x-green-bg);  --color-success-muted: #1f5a3a;
  --color-attention-fg: var(--x-amber); --color-attention-emphasis: #b08020; --color-attention-subtle: var(--x-amber-bg); --color-attention-muted: #5a4414;
  --color-danger-fg: var(--x-red);     --color-danger-emphasis: #c93c37;     --color-danger-subtle: var(--x-red-bg);     --color-danger-muted: #6b2a2a;
  --color-done-fg: var(--x-magenta);   --color-done-emphasis: #a35fc0;   --color-done-subtle: var(--x-magenta-bg);   --color-done-muted: #5a2a6b;
  --color-open-emphasis: #2ea36a; --color-closed-emphasis: #c93c37;
  --color-header-bg: var(--x-paper); --color-header-text: var(--x-ink-soft); --color-header-logo: var(--x-ink);
  --color-btn-primary-bg: #2ea36a; --color-btn-primary-hover-bg: #3fb77f;
  --color-sidenav-selected-bg: var(--x-paper);
  --bgColor-default: var(--x-paper); --bgColor-muted: var(--x-surface); --bgColor-inset: var(--x-surface);
  --borderColor-default: var(--x-line); --borderColor-muted: #21262d;
  --fgColor-default: var(--x-ink); --fgColor-muted: var(--x-muted); --fgColor-onEmphasis: #fff;
  --fgColor-accent: var(--x-accent); --bgColor-accent-emphasis: #2ea36a; --bgColor-accent-muted: var(--x-accent-soft); --borderColor-accent-emphasis: #2ea36a; --borderColor-accent-muted: #1f5a3a;
  --fgColor-success: var(--x-green); --bgColor-success-emphasis: #2ea36a; --bgColor-success-muted: var(--x-green-bg); --borderColor-success-muted: #1f5a3a; --borderColor-success-emphasis: #2ea36a; --borderColor-open-emphasis: #2ea36a;
  --fgColor-attention: var(--x-amber); --bgColor-attention-emphasis: #b08020; --bgColor-attention-muted: var(--x-amber-bg); --borderColor-attention-muted: #5a4414; --borderColor-attention-emphasis: #b08020;
  --fgColor-danger: var(--x-red); --bgColor-danger-emphasis: #c93c37; --bgColor-danger-muted: var(--x-red-bg); --borderColor-danger-muted: #6b2a2a; --borderColor-danger-emphasis: #c93c37; --borderColor-closed-emphasis: #c93c37;
  --fgColor-done: var(--x-magenta); --bgColor-done-emphasis: #a35fc0; --bgColor-done-muted: var(--x-magenta-bg); --borderColor-done-emphasis: #a35fc0;
  --focus-outlineColor: var(--x-accent); --header-fgColor-default: var(--x-ink-soft); --header-bgColor: var(--x-paper);
  --button-primary-bgColor-rest: #2ea36a; --button-primary-bgColor-hover: #3fb77f;
  --button-danger-fgColor-rest: var(--x-red); --button-danger-fgColor-hover: #fff; --button-danger-bgColor-hover: #c93c37; --button-danger-borderColor-hover: #c93c37;
  --button-danger-fgColor-active: #fff; --button-danger-bgColor-active: #c93c37; --button-danger-borderColor-active: #c93c37; --button-danger-fgColor-disabled: var(--x-grey);
}
@media (prefers-color-scheme: dark) {
  [data-color-mode=auto][data-dark-theme=dark] {
    --x-ink: #e6e9f0; --x-ink-soft: #c9d1d9; --x-muted: #8b949e; --x-line: #30363d;
    --x-paper: #161b22; --x-surface: #0d1117; --x-surface-2: #21262d;
    --x-accent: #3fb77f; --x-accent-soft: #12351f;
    --x-on-solid: #10151c;
  --x-green: #3fb77f; --x-amber: #e3b341; --x-magenta: #d78cf0; --x-red: #f47067; --x-grey: #8b949e; --x-blue: #6cb6ff;
    --x-green-bg: #12351f; --x-amber-bg: #3a2d10; --x-magenta-bg: #3a1a45; --x-red-bg: #4a1c1c;
    --color-canvas-default: var(--x-paper); --color-canvas-subtle: var(--x-surface); --color-canvas-inset: var(--x-surface);
    --color-border-default: var(--x-line); --color-border-muted: #21262d;
    --color-fg-default: var(--x-ink); --color-fg-muted: var(--x-muted); --color-fg-subtle: #6e7681;
    --color-accent-fg: var(--x-accent); --color-accent-emphasis: #2ea36a; --color-accent-subtle: var(--x-accent-soft); --color-accent-muted: #1f5a3a;
    --color-success-fg: var(--x-green);  --color-success-emphasis: #2ea36a;  --color-success-subtle: var(--x-green-bg);  --color-success-muted: #1f5a3a;
    --color-attention-fg: var(--x-amber); --color-attention-emphasis: #b08020; --color-attention-subtle: var(--x-amber-bg); --color-attention-muted: #5a4414;
    --color-danger-fg: var(--x-red);     --color-danger-emphasis: #c93c37;     --color-danger-subtle: var(--x-red-bg);     --color-danger-muted: #6b2a2a;
    --color-done-fg: var(--x-magenta);   --color-done-emphasis: #a35fc0;   --color-done-subtle: var(--x-magenta-bg);   --color-done-muted: #5a2a6b;
    --color-open-emphasis: #2ea36a; --color-closed-emphasis: #c93c37;
    --color-header-bg: var(--x-paper); --color-header-text: var(--x-ink-soft); --color-header-logo: var(--x-ink);
    --color-btn-primary-bg: #2ea36a; --color-btn-primary-hover-bg: #3fb77f;
    --color-sidenav-selected-bg: var(--x-paper);
    --bgColor-default: var(--x-paper); --bgColor-muted: var(--x-surface); --bgColor-inset: var(--x-surface);
    --borderColor-default: var(--x-line); --borderColor-muted: #21262d;
    --fgColor-default: var(--x-ink); --fgColor-muted: var(--x-muted); --fgColor-onEmphasis: #fff;
    --fgColor-accent: var(--x-accent); --bgColor-accent-emphasis: #2ea36a; --bgColor-accent-muted: var(--x-accent-soft); --borderColor-accent-emphasis: #2ea36a; --borderColor-accent-muted: #1f5a3a;
    --fgColor-success: var(--x-green); --bgColor-success-emphasis: #2ea36a; --bgColor-success-muted: var(--x-green-bg); --borderColor-success-muted: #1f5a3a; --borderColor-success-emphasis: #2ea36a; --borderColor-open-emphasis: #2ea36a;
    --fgColor-attention: var(--x-amber); --bgColor-attention-emphasis: #b08020; --bgColor-attention-muted: var(--x-amber-bg); --borderColor-attention-muted: #5a4414; --borderColor-attention-emphasis: #b08020;
    --fgColor-danger: var(--x-red); --bgColor-danger-emphasis: #c93c37; --bgColor-danger-muted: var(--x-red-bg); --borderColor-danger-muted: #6b2a2a; --borderColor-danger-emphasis: #c93c37; --borderColor-closed-emphasis: #c93c37;
    --fgColor-done: var(--x-magenta); --bgColor-done-emphasis: #a35fc0; --bgColor-done-muted: var(--x-magenta-bg); --borderColor-done-emphasis: #a35fc0;
    --focus-outlineColor: var(--x-accent); --header-fgColor-default: var(--x-ink-soft); --header-bgColor: var(--x-paper);
    --button-primary-bgColor-rest: #2ea36a; --button-primary-bgColor-hover: #3fb77f;
  --button-danger-fgColor-rest: var(--x-red); --button-danger-fgColor-hover: #fff; --button-danger-bgColor-hover: #c93c37; --button-danger-borderColor-hover: #c93c37;
  --button-danger-fgColor-active: #fff; --button-danger-bgColor-active: #c93c37; --button-danger-borderColor-active: #c93c37; --button-danger-fgColor-disabled: var(--x-grey);
  }
}

/* THE CARD WALL'S GREYS (5 Oct 2026). In dark, a page laid out as a wall of cards (the desk, the wall, history) sits
 * on neutral greys sampled from the card wall Sean showed (page #1c1c1c, card #252527) instead of the house navy.
 * The class goes on the page's content area; the header and the rail keep the house palette. One home: this was
 * written twice (css/desk.css, css/wall.css) before history needed it. Light mode is the house palette as it is. */
[data-color-mode=dark] .card-wall, [data-color-mode=auto][data-light-theme=dark] .card-wall,
[data-color-mode=dark] .skin-shell, [data-color-mode=auto][data-light-theme=dark] .skin-shell {
  --color-canvas-default: #1c1c1c; --color-canvas-subtle: #252527; --color-border-default: #393b3d; --color-border-muted: #303234;
  --bgColor-default: #1c1c1c; --bgColor-muted: #252527; --borderColor-default: #393b3d; --borderColor-muted: #303234; }
@media (prefers-color-scheme: dark) {
  [data-color-mode=auto][data-dark-theme=dark] .card-wall, [data-color-mode=auto][data-dark-theme=dark] .skin-shell {
    --color-canvas-default: #1c1c1c; --color-canvas-subtle: #252527; --color-border-default: #393b3d; --color-border-muted: #303234;
    --bgColor-default: #1c1c1c; --bgColor-muted: #252527; --borderColor-default: #393b3d; --borderColor-muted: #303234; }
}
.card-wall, .skin-shell { background: var(--color-canvas-default); }
/* THE SHADE ON EVERY SECOND ROW (7 Oct 2026). One value for every table in the console family; the rules that use it
 * are with their tables (css/console.css for .tbl and the plate list, css/site-admin.css for the admin tables). */
:root { --x-row-shade: color-mix(in srgb, var(--color-fg-default) 4%, transparent); }
/* EVERY PAGE ON THE SAME GREYS (7 Oct 2026; Sean: "history has a different background - check that we're consistent" ·
 * "do it"). The wall, the desk and History were on the neutral greys and everything else on the house navy. The
 * pages built on .skin-shell (about thirty) take the greys here, in one place, on the shell itself, because their
 * <main> is often a centred column and a grey column on a navy page is worse than either. The rail sits inside that
 * shell and keeps the house palette, as the header does, so it is given the navy back. */
[data-color-mode=dark] .skin-shell > .rail, [data-color-mode=auto][data-light-theme=dark] .skin-shell > .rail {
  --color-canvas-default: var(--x-paper); --color-canvas-subtle: var(--x-surface); --color-border-default: var(--x-line); --color-border-muted: #21262d;
  --bgColor-default: var(--x-paper); --bgColor-muted: var(--x-surface); --borderColor-default: var(--x-line); --borderColor-muted: #21262d; }
@media (prefers-color-scheme: dark) {
  [data-color-mode=auto][data-dark-theme=dark] .skin-shell > .rail {
    --color-canvas-default: var(--x-paper); --color-canvas-subtle: var(--x-surface); --color-border-default: var(--x-line); --color-border-muted: #21262d;
    --bgColor-default: var(--x-paper); --bgColor-muted: var(--x-surface); --borderColor-default: var(--x-line); --borderColor-muted: #21262d; }
}

/* THE WORDMARK IN THE HEADER, AND "TVP |" BESIDE IT (7 Oct 2026; Sean: "I like the xchk logo from the old wall, xChk TVP |
 * Agent Dashcam - can we adapt that to the new layout" · "the xchk logo may need a transparent background with a green
 * border and 'chk' changed to a color that works on light and dark surfaces (some sort of green or grey maybe)").
 * One home for every page's header brand; css/console.css and css/skin.css each had a copy of the grey box.
 *
 * The mark is no longer a white picture in a grey box. It is its two shapes (images/xchk-mark-x.png and
 * images/xchk-mark-chk.png, cut from images/xchk-logo.png) used as masks and filled with a colour each, so the x and
 * the "chk" can be tuned to the surface: the mint x on dark and a deeper green on light, where mint washes out; a
 * grey "chk" that reads on both. The box is clear with a green outline. The <img> stays in the markup, hidden, so it
 * still gives the box its size and its alt text; no page's HTML changes.
 *
 * Beside it, as on the old wall: TVP, a thin rule, then the page family's name at a lighter weight. */
/* "chk" in green (Sean, 8 Oct 2026: "can we try a green for chk"); the grey it replaced was #59626c on light and #a9b2bc on dark.
   A calmer green than the x, so the x still leads: on dark the house green under the mint, on light a deep sage under the brighter x. */
:root { --x-logo-edge: #2f8f66; --x-logo-x: #0f9a66; --x-logo-chk: #2c6e52; }
[data-color-mode=dark][data-dark-theme=dark], [data-color-mode=auto][data-light-theme=dark] { --x-logo-edge: #2f9e72; --x-logo-x: #00feb4; --x-logo-chk: #3fb77f; }
@media (prefers-color-scheme: dark) {
  [data-color-mode=auto][data-dark-theme=dark] { --x-logo-edge: #2f9e72; --x-logo-x: #00feb4; --x-logo-chk: #3fb77f; }
}
.brand-box { position: relative; display: inline-flex; align-items: center; background: transparent; border: 1.5px solid var(--x-logo-edge); border-radius: 6px; padding: 4px 9px; }
.brand-box img { height: 18px; width: auto; display: block; visibility: hidden; }
.brand-box::before, .brand-box::after { content: ''; position: absolute; inset: 4px 9px; -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat; }
.brand-box::before { background: var(--x-logo-x); -webkit-mask-image: url(../images/xchk-mark-x.png); mask-image: url(../images/xchk-mark-x.png); }
.brand-box::after { background: var(--x-logo-chk); -webkit-mask-image: url(../images/xchk-mark-chk.png); mask-image: url(../images/xchk-mark-chk.png); }
.brand-mode { margin-left: 10px; font-family: 'Poppins', var(--x-sans); font-size: 15px; font-weight: 200; letter-spacing: .2px; color: var(--color-fg-muted); white-space: nowrap; }
.brand-mode::before { content: 'TVP'; font-weight: 200; color: var(--color-fg-default); margin-right: 9px; padding-right: 9px; border-right: 1px solid var(--color-border-default); }   /* the old wall's weights: both regular, the name quieter by colour */
@media (max-width: 860px) { .brand-mode::before { content: none; } }   /* a phone's header has no room for it, as the old wall's did not */
/* POPPINS LIGHT AS THE BODY WEIGHT, ON TRIAL (Sean, 8 Oct 2026: "could we try poppins extra light?", then "try 300").
   Everything that does not ask for a weight of its own takes 300; headings, pills, plates and anything marked bold
   keep theirs. Extra Light was 200. Delete this rule to go back to regular. */
body { font-weight: 300; }
/* WORDING A PERSON AGREES TO IS NEVER THIN (8 Oct 2026). The text-message consent under a phone field is small and grey
   already; at the trial's weight it was the hardest text on Quick Setup to read. It keeps the regular weight whatever
   the body does. */
label.consent, #smsConsentBoxText { font-weight: 400 !important; }   /* !important since 8 Oct 2026, to outrank the no-bold rule below on a page marked .no-bold */

/* NO BOLD ON THE CONSOLE PAGES (8 Oct 2026; Sean, of the Console: "can we remove bold from the console", then
   "Default agent still heavy and get rid of bold on plates too", then "do the same for all pages. it's nice").
   Everything in a console page's own area is set in the body weight, 300: names, column heads, titles, tabs, labels,
   buttons, the plate picture. What is selected is still told by its underline or its shaded row. Two things read
   heavy at 300 because they are large or monospaced, a page's title and a plate code in a list, so they go one step
   lighter (Poppins 200 is loaded; a monospace face without a 200 falls back to its lightest).
   Which pages: those whose content sits in .card-wall (Console, History, Audit log, Checks, Wall, Desk, Me, Org) and
   those whose <main> is marked .no-bold (Admin desk, Candidates; later the same day the approval page, Developer,
   and the Enrollment form that floats over any page). NOT the sign-in, interview, phone, receipt and
   verify pages: wording a person agrees to is never thin (the rule above). !important because Primer's classes and
   some inline styles set their own weights. Delete this block to get the weights back. */
.card-wall, .card-wall *, .no-bold, .no-bold * { font-weight: 300 !important; }
.card-wall :is(h1, h2), .no-bold :is(h1, h2) { font-weight: 200 !important; }   /* plate codes were here too until they left the monospace (below) */
/* WHAT STILL READ AS BOLD WAS THE MONOSPACE (later on 8 Oct 2026; Sean, after the rule above was live: "bold on
   AUDIT-LOG", "bold on dates" on History, and the plate codes before them). Each was already weight 300; a monospaced
   face has no stroke as thin as Poppins Light, so a date, an event name or a plate code set in it looked bold beside
   everything else. On the console pages those labels take the body face, with figures of equal width so columns of
   dates still line up. Code a person reads character by character keeps the monospace: pre, code, textarea, and the
   boxes that show a command or raw metadata. Only inside .card-wall; an approval page keeps its monospace so the
   command a person approves is never ambiguous. */
.card-wall :is(.mono, .h-when, .h-ans, .prow .plate):not(pre, code, textarea, .aud-meta, .cmd-out) { font-family: inherit !important; font-variant-numeric: tabular-nums; letter-spacing: 0; }
/* THE FRAME AND THE LAST PAGES (later still on 8 Oct 2026; Sean: "do them", of the phone page, sign-in, receipt and
   verify pages, and the header bar and rail). The header and the rail are light on every page that has them; the
   word beside the mark keeps its own, lighter, weight. The phone page (mobile.html), sign-in (index.html), the
   receipt pages (receipt.html, verify-receipt.html) and the verify pages (verify.html, v.html) carry .no-bold on
   <body>, since much of what they show sits outside <main>. */
:is(.Header, .skin-header, .rail), :is(.Header, .skin-header, .rail) :not(.brand-mode) { font-weight: 300 !important; }
/* the install line a person copies (js/add-machine.js), on whichever page carries the card: here because Quick Setup
   does not load console.css */
.add-machine pre { font-family: var(--x-mono); font-size: 12px; margin: 2px 0 0; padding: 8px 10px; border-radius: 6px; background: var(--color-canvas-subtle); border: 1px solid var(--color-border-muted); overflow-x: auto; white-space: pre; user-select: all; -webkit-user-select: all; }
.add-machine h4 { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--color-fg-muted); margin: 10px 0 2px; }
.add-machine .links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.add-machine .color-fg-muted { color: var(--color-fg-muted); }
.add-machine .color-fg-danger { color: var(--x-red); }
.add-machine select { font: inherit; padding: 3px 6px; border-radius: 6px; border: 1px solid var(--color-border-default); background: var(--color-canvas-default); color: var(--color-fg-default); }
.add-machine .am-what { font-size: 12px; color: var(--color-fg-muted); margin: 0 0 6px; line-height: 1.45; }
.add-machine .am-via { display: block; font-size: 12px; margin: 8px 0 0; color: var(--color-fg-default); cursor: pointer; }
.add-machine .am-via span { color: var(--color-fg-muted); }
