/* The /sample stylesheets in their page order, joined by scripts/apply-sample-speed.mjs. Edit the sources, then rerun it. */
/* app.css */
/* Geist, the face of broadcastwell.com, self hosted (SIL OFL 1.1). Optional display, as in the shared shell. */ @font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:optional;src:url(/assets/fonts/geist-var.woff2) format('woff2')}
/* Inter, self hosted. The portal named Inter in its font stack but never requested it,
   so every surface fell back to whatever sans the reader's system supplied. These are the
   Google Fonts latin and latin-ext subsets of the Inter variable face, SIL Open Font
   License 1.1, served from this origin so no signed in page makes a third party request. */
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-latin-ext-var.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-latin-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: #f8fafc; color: #111827; font-family: Geist,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif; font-size: 1rem; font-variant-numeric: tabular-nums; line-height: 1.5; margin: 0; }
a { color: #1D4ED8; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid #3B82F6; outline-offset: 4px; }
.skip-link { background: #ffffff; color: #1D4ED8; left: 16px; padding: 12px 16px; position: absolute; top: -64px; z-index: 4; }
.skip-link:focus { top: 16px; }

.site-header { align-items: center; background: #ffffff; border-bottom: 1px solid #cbd5e1; column-gap: 24px; display: grid; grid-template-columns: 1fr auto 1fr; min-height: 56px; padding: 12px max(24px, calc((100% - 1152px) / 2)); position: sticky; top: 0; z-index: 3; }
.wordmark { color: #111827; font-size: 1rem; font-weight: 750; justify-self: start; letter-spacing: -0.02em; text-decoration: none; }
.header-client { align-items: center; display: flex; gap: 8px; justify-self: center; min-width: 0; }
.sample-header { grid-column: 2; }
.header-client strong { color: #111827; font-size: 0.875rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sample-marker { background: #dbeafe; border: 1px solid #3B82F6; border-radius: 999px; color: #1e3a8a; display: inline-block; font-size: 0.875rem; font-weight: 800; letter-spacing: 0.01em; padding: 4px 8px; white-space: nowrap; }
.header-actions { align-items: center; display: flex; gap: 12px; justify-self: end; }
.run-select-label { align-items: center; color: #475569; display: flex; font-size: 0.875rem; font-weight: 700; gap: 8px; white-space: nowrap; }
.run-select-label select { background: #ffffff; border: 1px solid #94a3b8; border-radius: 4px; color: #111827; font: inherit; min-height: 32px; padding: 4px 8px; }
.link-button, .back-button { background: none; border: 0; color: #1D4ED8; cursor: pointer; font: inherit; padding: 0; text-decoration: underline; }
.section-nav { background: #ffffff; border-bottom: 1px solid #e2e8f0; display: flex; gap: 20px; overflow-x: auto; padding: 12px max(24px, calc((100% - 1152px) / 2)); position: sticky; top: 56px; z-index: 2; }
.section-nav a { color: #334155; font-size: 0.875rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.section-nav a:hover { color: #1D4ED8; }

main { margin: 0 auto; max-width: 1200px; padding: 32px 24px 64px; }
h1, h2, h3, p { margin-top: 0; }
.sample-notice { color: #475569; margin-bottom: 24px; max-width: 70ch; }
h1 { font-size: clamp(2rem, 3vw, 2.5rem); letter-spacing: -0.04em; line-height: 1.08; margin-bottom: 24px; }
h2 { font-size: 1.5rem; letter-spacing: -0.025em; line-height: 1.2; margin-bottom: 8px; }
h3 { font-size: 1rem; line-height: 1.3; margin-bottom: 8px; }
.eyebrow, .rate-label, .question-label { color: #475569; font-size: 0.875rem; font-weight: 750; letter-spacing: 0.01em; margin-bottom: 8px; }
.surface-card { background: #ffffff; border: 1px solid #cbd5e1; border-radius: 8px; padding: 24px; }
.sign-in-panel, .status-panel { max-width: 560px; }
.sign-in-alt { color: #475569; margin-bottom: 0; margin-top: 20px; }
form { display: grid; gap: 8px; }
label { font-weight: 700; margin-top: 8px; }
input { border: 1px solid #64748b; border-radius: 4px; font: inherit; min-height: 44px; padding: 8px 12px; }
.button { background: #1D4ED8; border: 1px solid #1D4ED8; border-radius: 4px; color: #ffffff; display: inline-block; font-weight: 750; margin-top: 12px; padding: 12px 16px; text-align: center; text-decoration: none; width: fit-content; }
.run-list { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.run-list a { background: #ffffff; border: 1px solid #cbd5e1; border-radius: 8px; display: grid; gap: 4px; padding: 16px; text-decoration: none; transition: border-color 150ms ease, background 150ms ease; }
.run-list a:hover { background: #eff6ff; border-color: #3B82F6; }
.run-list span { color: #475569; }

.loading-shell { display: grid; gap: 16px; }
.skeleton { background: #e2e8f0; border-radius: 4px; }
.skeleton-title { height: 40px; max-width: 440px; }
.skeleton-row { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }
.skeleton-panel { height: 180px; }
.skeleton-matrix { height: 440px; }

.overview-topline { align-items: start; display: grid; gap: 24px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
/* The portal home: one headline, two outline actions (the header's pill is the one filled
   button), then what the account holds in three plain columns under a thin rule. */
main.landing { padding-top: 72px; padding-bottom: 88px; }
main.landing > h1 { margin-bottom: 20px; max-width: 46rem; }
.landing-lede { color: #334155; font-size: 1.125rem; line-height: 1.6; margin-bottom: 8px; max-width: 38rem; }
.landing-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.landing-actions .button { border-radius: 10px; margin-top: 16px; min-height: 48px; padding: 13px 20px; }
.landing-alt { color: #475569; font-size: 0.875rem; margin-top: 24px; }
.landing-holds { border-top: 1px solid #E2E8F0; margin-top: 72px; padding-top: 48px; }
.landing-holds h2 { font-size: 1.125rem; margin-bottom: 24px; }
.landing-holds ul { display: grid; gap: 24px 40px; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.landing-holds li { border-top: 2px solid #3B82F6; color: #334155; line-height: 1.6; padding-top: 16px; }
.landing-holds li strong { color: #0B1220; display: block; font-weight: 650; margin-bottom: 6px; }
.landing-next { color: #475569; line-height: 1.6; margin-top: 40px; max-width: 64ch; }
/* One proof row: the public sample's headline figure, so the home reads as the product. */
.landing-proof { margin-top: 56px; }
.landing-proof h2 { color: #475569; font-size: 0.875rem; font-weight: 700; margin-bottom: 16px; }
.landing-proof dl { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; max-width: 46rem; }
.landing-proof dl > div { background: #F5F8FF; border: 1px solid #DCE6FA; border-radius: 12px; padding: 20px 24px; }
.landing-proof dt { color: #334155; font-size: 0.875rem; margin-bottom: 8px; }
.landing-proof dd { color: #334155; margin: 0; }
.landing-proof dd strong { color: #1D4ED8; font-size: clamp(2rem, 3vw, 2.5rem); font-variant-numeric: tabular-nums; font-weight: 700; line-height: 1.1; margin-right: 6px; }
.landing-proof p { color: #475569; font-size: 0.875rem; margin-top: 16px; max-width: 64ch; }
@media (max-width: 760px) {
  main.landing { padding-top: 40px; padding-bottom: 56px; }
  .landing-proof { margin-top: 40px; }
  .landing-proof dl { grid-template-columns: 1fr; }
  .landing-holds { margin-top: 48px; padding-top: 32px; }
  .landing-holds ul { grid-template-columns: 1fr; }
  .landing-actions .button { width: 100%; }
}

.finding-panel { background: #eff6ff; border-color: #93c5fd; display: flex; flex-direction: column; justify-content: space-between; }
.finding-panel h2 { color: #1e3a8a; font-size: clamp(1.5rem, 2.2vw, 1.75rem); max-width: 34ch; }
.finding-detail { color: #475569; margin-bottom: 0; max-width: 70ch; }
.absence-callout { border-color: #cbd5e1; }
.absence-callout h2 { max-width: 30ch; }
.absence-callout ul { display: grid; gap: 8px; list-style: none; margin: 16px 0 0; padding: 0; }
.absence-callout button { background: #ffffff; border: 1px solid #cbd5e1; border-radius: 4px; color: #111827; cursor: pointer; display: grid; gap: 4px; padding: 12px; text-align: left; transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease; width: 100%; }
.absence-callout button:hover { background: #eff6ff; border-color: #3B82F6; box-shadow: inset 4px 0 #3B82F6; }
.absence-question { color: #475569; font-size: 0.875rem; font-weight: 750; letter-spacing: 0.01em; }
.absence-callout button strong { font-size: 0.875rem; font-weight: 700; line-height: 1.35; }
.absence-cue { align-items: center; color: #1D4ED8; display: flex; font-size: 0.875rem; font-weight: 750; }

.matrix-section, .evidence-section, .coverage-section, .method-section, .monthly-section, .readiness-section, .referral-section, .export-section, .connector-section { margin-top: 32px; scroll-margin-top: 120px; }
.section-heading { align-items: end; display: flex; gap: 24px; justify-content: space-between; margin-bottom: 20px; }
.section-heading p { color: #475569; font-size: 0.875rem; margin-bottom: 0; max-width: 70ch; }
.matrix-table { border: 1px solid #cbd5e1; border-radius: 8px; overflow: hidden; }
.matrix-row { display: grid; grid-template-columns: minmax(280px, 2.1fr) repeat(6, minmax(88px, 1fr)); }
.matrix-table.matrix-columns-1 .matrix-row { grid-template-columns: minmax(280px, 1fr); }
.matrix-table.matrix-columns-2 .matrix-row { grid-template-columns: minmax(280px, 1.7fr) minmax(160px, 1fr); }
.matrix-table.matrix-columns-3 .matrix-row { grid-template-columns: minmax(280px, 1.9fr) repeat(2, minmax(130px, 1fr)); }
.matrix-table.matrix-columns-4 .matrix-row { grid-template-columns: minmax(280px, 2fr) repeat(3, minmax(112px, 1fr)); }
.matrix-table.matrix-columns-5 .matrix-row { grid-template-columns: minmax(280px, 2.1fr) repeat(4, minmax(100px, 1fr)); }
.matrix-table.matrix-columns-6 .matrix-row { grid-template-columns: minmax(280px, 2.1fr) repeat(5, minmax(92px, 1fr)); }
.matrix-row > * { border-bottom: 1px solid #e2e8f0; border-right: 1px solid #e2e8f0; min-width: 0; }
.matrix-row > *:last-child { border-right: 0; }
.matrix-row:last-child > * { border-bottom: 0; }
.matrix-header { background: #f1f5f9; color: #475569; font-size: 0.875rem; font-weight: 800; letter-spacing: 0.02em; text-transform: none; }
.matrix-header span { align-items: center; display: flex; justify-content: center; line-height: 1.25; min-height: 64px; overflow-wrap: anywhere; padding: 8px; text-align: center; }
.matrix-header span:first-child { justify-content: flex-start; text-align: left; }
.matrix-header .client-column { background: #eaf2ff; box-shadow: inset 0 4px #1D4ED8; color: #1e3a8a; }
.matrix-question { background: #ffffff; border-left: 0; border-top: 0; color: #111827; cursor: pointer; display: grid; gap: 4px; padding: 12px; text-align: left; transition: background 150ms ease; }
.matrix-question:hover { background: #eff6ff; }
.matrix-question span, .matrix-question em { color: #475569; font-size: 0.875rem; font-style: normal; }
.matrix-question strong { display: -webkit-box; font-size: 0.875rem; line-height: 1.3; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.matrix-cell { align-items: center; background-color: #ffffff; border: 0; color: #111827; cursor: pointer; display: grid; gap: 4px; justify-items: center; min-height: 72px; padding: 8px; transition: filter 150ms ease; }
.matrix-cell:hover { filter: brightness(0.96); }
.matrix-cell strong { font-size: 1.125rem; }
.matrix-cell span { color: #475569; font-size: 0.875rem; }
.client-cell { box-shadow: inset 4px 0 #1D4ED8; }
.zero-cell { background: #ffffff; box-shadow: inset 0 0 0 2px #94a3b8; }
.zero-cell.client-cell { box-shadow: inset 4px 0 #1D4ED8, inset 0 0 0 2px #1D4ED8; }

.exclusion-line { background: #f1f5f9; border-left: 4px solid #64748b; color: #334155; margin-bottom: 16px; padding: 8px 12px; }
.plot-grid, .engine-plot-grid { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.engine-plot-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 16px; }
.interval-plot { background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 4px; min-width: 0; padding: 16px; }
.plot-value { color: #111827; font-size: 1.5rem; font-weight: 800; margin-bottom: 4px; }
.interval-plot svg { display: block; height: auto; max-width: 100%; width: 100%; }
.plot-axis, .plot-tick { stroke: #64748b; stroke-width: 1; }
.plot-band { stroke: #3B82F6; stroke-width: 8; stroke-linecap: round; }
.plot-dot { fill: #1D4ED8; }
.interval-plot text { fill: #475569; font-size: 0.875rem; }
.plot-detail { color: #334155; font-size: 0.875rem; margin: 0; }

.coverage-legend { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.coverage-legend span { align-items: center; color: #334155; display: inline-flex; font-size: 0.875rem; gap: 8px; }
.legend-symbol, .coverage-cell b { align-items: center; border: 1px solid #64748b; display: inline-flex; height: 20px; justify-content: center; width: 20px; }
.named-symbol, .coverage-cell.named { background: #bfdbfe; border-color: #1D4ED8; color: #1e3a8a; }
.not-named-symbol, .coverage-cell.not-named { background: #f1f5f9; color: #334155; }
.excluded-symbol, .coverage-cell.excluded { background: #e2e8f0; border-color: #64748b; color: #111827; }
.coverage-bases { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; margin: 0 0 16px; padding: 0; }
.coverage-bases li { background: #f8fbff; border: 1px solid #dbeafe; border-left: 4px solid #3B82F6; border-radius: 4px; color: #475569; display: grid; font-size: 0.875rem; gap: 4px; line-height: 1.35; padding: 12px; }
.coverage-bases strong { color: #111827; font-size: 0.875rem; }
.coverage-grid { border: 1px solid #cbd5e1; display: grid; }
.coverage-row { display: grid; grid-template-columns: 112px repeat(5, minmax(0, 1fr)); }
.coverage-row > * { border-bottom: 1px solid #e2e8f0; border-right: 1px solid #e2e8f0; min-height: 36px; }
.coverage-row > *:last-child { border-right: 0; }
.coverage-row:last-child > * { border-bottom: 0; }
.coverage-header { background: #f1f5f9; color: #475569; font-size: 0.875rem; font-weight: 800; letter-spacing: 0.01em; }
.coverage-header span, .coverage-question { align-items: center; display: flex; overflow-wrap: anywhere; padding: 8px; }
.coverage-question { color: #334155; font-size: 0.875rem; font-weight: 800; }
.coverage-cell { align-items: center; display: flex; justify-content: center; }
.coverage-cell b { font-size: 0.875rem; font-weight: 800; }

.method-section { color: #334155; margin-bottom: 24px; }
.method-section p { max-width: 70ch; }
.method-section p:last-child { margin-bottom: 0; }
.question-detail { scroll-margin-top: 120px; }
.back-button { font-weight: 750; margin-bottom: 24px; }
.question-base { color: #475569; }
.share-section, .checked-section, .engine-strip-section, .raw-details { border-top: 1px solid #cbd5e1; margin-top: 24px; padding-top: 16px; }
.share-section ul, .checked-section ul, .engine-strip { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.share-bar { background: #f8fafc; border: 1px solid #cbd5e1; border-radius: 4px; padding: 12px; }
.share-bar > div { align-items: baseline; display: flex; gap: 8px; justify-content: space-between; margin-bottom: 8px; }
.share-bar span { color: #475569; font-size: 0.875rem; }
.bar-track { background: #e2e8f0; display: block; height: 12px; overflow: hidden; }
.bar-fill { background: #3B82F6; display: block; height: 100%; min-width: 0; }
.client-bar { border-color: #1D4ED8; }
.client-bar .bar-fill { background: #1D4ED8; }
.checked-section li { background: #f1f5f9; border-left: 4px solid #64748b; padding: 8px 12px; }
.engine-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.engine-status { align-items: start; border: 1px solid #cbd5e1; display: flex; gap: 8px; min-height: 88px; padding: 12px; }
.engine-status > b { align-items: center; border: 1px solid #64748b; display: inline-flex; flex: 0 0 20px; height: 20px; justify-content: center; }
.engine-status.named > b { background: #bfdbfe; border-color: #1D4ED8; color: #1e3a8a; }
.engine-status.excluded > b { background: #e2e8f0; }
.engine-status span { color: #475569; display: grid; font-size: 0.875rem; gap: 4px; }
.engine-status strong { color: #111827; font-size: 0.875rem; }
.raw-details { background: #f8fafc; padding: 16px; }
.raw-details summary { color: #1D4ED8; cursor: pointer; font-weight: 800; }
.raw-table { margin-top: 16px; overflow-x: auto; }
table { border-collapse: collapse; table-layout: fixed; width: 100%; }
th, td { border-bottom: 1px solid #cbd5e1; padding: 12px 8px; text-align: left; vertical-align: top; word-wrap: break-word; }
thead th { color: #475569; font-size: 0.875rem; }
tbody th { font-size: 0.875rem; }
.observation-list { display: grid; gap: 4px; margin: 0; padding-left: 20px; }
.visually-hidden { clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; }

@media (max-width: 760px) {
  .site-header { column-gap: 8px; grid-template-columns: minmax(0, 1fr) auto auto; padding: 8px 12px; }
  .header-client { justify-self: start; }
  .sample-header { grid-column: 2 / 4; justify-self: end; }
  .header-client strong { max-width: 96px; }
  .header-actions { gap: 8px; }
  .run-select-label > span { display: none; }
  .run-select-label select { max-width: 88px; }
  .link-button { font-size: 0.875rem; }
  .section-nav { gap: 16px; padding: 12px 16px; top: 56px; }
  main { padding: 24px 16px 48px; }
  .overview-topline, .plot-grid, .engine-plot-grid, .engine-strip, .skeleton-row { grid-template-columns: 1fr; }
  .section-heading { align-items: start; flex-direction: column; gap: 8px; }
  .matrix-table { border: 0; overflow: visible; }
  .matrix-row, .matrix-table.matrix-columns-1 .matrix-row, .matrix-table.matrix-columns-2 .matrix-row, .matrix-table.matrix-columns-3 .matrix-row, .matrix-table.matrix-columns-4 .matrix-row, .matrix-table.matrix-columns-5 .matrix-row, .matrix-table.matrix-columns-6 .matrix-row { border: 1px solid #cbd5e1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 12px; }
  .matrix-table .matrix-header, .matrix-table.matrix-columns-1 .matrix-header, .matrix-table.matrix-columns-2 .matrix-header, .matrix-table.matrix-columns-3 .matrix-header, .matrix-table.matrix-columns-4 .matrix-header, .matrix-table.matrix-columns-5 .matrix-header, .matrix-table.matrix-columns-6 .matrix-header { display: none; }
  .matrix-question { border-bottom: 1px solid #cbd5e1; grid-column: 1 / -1; min-height: 72px; }
  .matrix-cell { min-height: 72px; }
  .matrix-row > * { border-bottom: 1px solid #e2e8f0; }
  .coverage-bases { grid-template-columns: 1fr 1fr; }
  .coverage-row { grid-template-columns: 72px repeat(5, minmax(0, 1fr)); }
  .share-bar > div { align-items: start; flex-direction: column; gap: 4px; }
  table, thead, tbody, tr, th, td { display: block; }
  thead { height: 1px; overflow: hidden; position: absolute; width: 1px; }
  tr { border-top: 1px solid #cbd5e1; padding: 8px 0; }
  th, td { border: 0; padding: 4px 0; }
  td::before { color: #475569; content: attr(data-label); display: block; font-size: 0.875rem; font-weight: 800; letter-spacing: 0.01em; }
}

@media (max-width: 440px) {
  .header-client strong { display: none; }
  .header-client { gap: 0; }
  .wordmark { font-size: 0.875rem; }
  .run-select-label select { max-width: 80px; }
}

@media print {
  body { background: #ffffff; font-size: 0.875rem; }
  .site-header, .section-nav, .skip-link, .link-button, .back-button, .run-select-label { display: none; }
  main { max-width: none; padding: 0; }
  h1, h2, h3 { break-after: avoid; }
  .surface-card, .matrix-row { break-inside: avoid; }
  .overview-topline { display: block; }
  .overview-topline > * + * { margin-top: 16px; }
  .matrix-table { overflow: visible; }
  .matrix-row { grid-template-columns: minmax(200px, 1.8fr) repeat(6, minmax(54px, 1fr)); }
}

.absence-more { color: #475569; font-size: 0.875rem; margin: 12px 0 0; }
.sign-in-notice { background: #eff6ff; border-left: 3px solid #3B82F6; color: #1e3a8a; margin-bottom: 16px; padding: 12px 16px; }
.slot-table { margin-top: 24px; }
.scope-line, .month-note, .export-note, .connector-note, .referral-footnote { color: #475569; font-size: 0.875rem; margin-bottom: 0; margin-top: 16px; max-width: 70ch; }
.month-headline { color: #111827; font-weight: 700; margin-bottom: 12px; }
.alert-list { background: #eff6ff; border-left: 3px solid #3B82F6; color: #1e3a8a; display: grid; gap: 8px; list-style: none; margin: 0 0 12px; padding: 12px 16px; }
.alert-none { color: #475569; margin-bottom: 12px; }
.readiness-section h3, .connector-section h3 { margin-top: 24px; }
.source-list { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0 0 8px; padding: 0; }
.source-list li { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 4px; display: grid; gap: 4px; padding: 12px; word-break: break-word; }
.source-list strong { font-size: 0.875rem; }
.source-list span { color: #475569; font-size: 0.875rem; }
.engine-sources { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.export-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button.secondary { background: #ffffff; border: 1px solid #1D4ED8; color: #1D4ED8; }
.connector-steps { color: #334155; display: grid; gap: 8px; grid-template-columns: minmax(0, 1fr); margin: 0 0 16px; padding-left: 20px; }
.connector-steps > li { min-width: 0; overflow-wrap: anywhere; }
.connector-steps code { background: #eff6ff; border-radius: 4px; color: #1e3a8a; font-size: 0.875rem; padding: 2px 6px; white-space: normal; overflow-wrap: anywhere; }
.connector-questions { color: #334155; display: grid; gap: 8px; margin: 0; padding-left: 20px; }
.referral-section td { white-space: nowrap; }
@media (max-width: 900px) {
  .source-list, .engine-sources { grid-template-columns: 1fr; }
}

/* The public sample's buy path. Header, bar and section nav stick as one block, so neither
   offset is hard coded against the other's height. */
.sticky-stack { position: sticky; top: 0; z-index: 3; }
.sticky-stack .site-header, .sticky-stack .section-nav { position: static; }
.sticky-stack ~ main [id] { scroll-margin-top: 184px; }
.buy-bar { align-items: center; background: #eff6ff; border-bottom: 1px solid #bfdbfe; column-gap: 12px; display: flex; flex-wrap: wrap; justify-content: space-between; padding: 8px max(24px, calc((100% - 1152px) / 2)); row-gap: 8px; }
.buy-bar-text { color: #1e3a8a; font-size: 0.875rem; font-weight: 600; margin: 0; }
.sample-availability { background: #eff6ff; border-bottom: 1px solid #bfdbfe; color: #1e3a8a; padding: 12px max(24px, calc((100% - 1152px) / 2)); }
.sample-availability p { margin: 4px 0 0; }
.buy-bar-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px 10px; }
.buy-bar .button { font-size: 0.875rem; margin-top: 0; padding: 7px 10px; }
.buy-bar-link { font-size: 0.875rem; font-weight: 700; }
.label-short { display: none; }
@media (max-width: 600px) {
  .buy-bar { flex-wrap: nowrap; padding: 8px 12px; }
  .buy-bar-text { display: none; }
  .buy-bar-actions { flex-wrap: nowrap; gap: 8px; justify-content: space-between; width: 100%; }
  .buy-bar .button { font-size: 0.875rem; padding: 8px 10px; white-space: nowrap; }
  .buy-bar-link { font-size: 0.875rem; line-height: 1.25; text-align: right; }
  .label-long { display: none; }
  .label-short { display: inline; }
}
@media (min-width: 1200px) {
  .buy-bar { column-gap: 8px; flex-wrap: nowrap; }
  .buy-bar-text { min-width: 0; }
  .buy-bar-actions { flex-shrink: 0; flex-wrap: nowrap; gap: 8px; }
  .buy-bar .button { font-size: 0.875rem; padding: 7px 8px; white-space: nowrap; }
  .buy-bar-link { font-size: 0.875rem; white-space: nowrap; }
}

.excerpt-section { margin-top: 16px; }
.excerpt-list { display: grid; gap: 12px; margin: 0; padding-left: 20px; }
.excerpt-list li { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 4px; padding: 12px; }
.excerpt-meta { color: #475569; font-size: 0.875rem; font-weight: 700; margin-bottom: 4px; }
.excerpt-text { font-size: 0.875rem; margin-bottom: 8px; overflow-wrap: anywhere; }
.excerpt-text mark { background: #dbeafe; color: #1e3a8a; font-weight: 700; padding: 0 2px; }

.sample-guide { background: #ffffff; border: 1px solid #3B82F6; border-radius: 8px; bottom: 24px; box-shadow: 0 12px 32px rgba(15, 23, 42, 0.18); max-width: 360px; padding: 20px; position: fixed; right: 24px; z-index: 5; }
.sample-guide h2 { font-size: 1.125rem; }
.sample-guide p { color: #334155; font-size: 0.875rem; margin-bottom: 12px; }
.sample-guide .guide-step { color: #475569; font-size: 0.875rem; font-weight: 700; margin-bottom: 4px; }
.guide-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; }
.guide-actions .button { margin-top: 0; padding: 8px 12px; }
/* The guide sits in the main column directly above the section it explains (SITE_FINDINGS 3). */
#sample-guide-root { margin: 32px 0 12px; }
#sample-guide-root:first-child { margin-top: 0; }
#sample-guide-root + section, #sample-guide-root + .overview-topline { margin-top: 0; }
@media (max-width: 600px) {
  .sample-guide { bottom: 12px; left: 12px; max-width: none; right: 12px; }
}
@media print {
  .buy-bar, .sample-guide { display: none; }
  .sticky-stack { position: static; }
}

/* Platform views: history, named instead, source queue, proof, battlecards, alerts, share. */
.view-section { margin-top: 24px; }
.view-section h3 { margin-top: 24px; }
.view-section h4 { font-size: 0.875rem; margin: 20px 0 4px; }
.view-note { color: #475569; font-size: 0.875rem; max-width: 76ch; }
.cell-detail { color: #475569; display: block; font-size: 0.875rem; font-weight: 400; }
.row-plot { display: block; height: 20px; max-width: 200px; width: 100%; }
.history-scope { margin-top: 12px; }
.history-scope table { min-width: 560px; }
.step-row td { background: #f8fafc; color: #475569; font-size: 0.875rem; padding: 6px 8px; }
.step-row.step-moved td { background: #eff6ff; color: #1e3a8a; font-weight: 700; }
.question-detail { border-bottom: 1px solid #cbd5e1; padding: 12px 0; }
.question-detail summary { cursor: pointer; display: flex; flex-wrap: wrap; gap: 4px 12px; justify-content: space-between; }
.question-detail summary:focus-visible { outline: 3px solid #3B82F6; outline-offset: 3px; }
.question-detail table { min-width: 560px; }
.compact-list { margin: 8px 0; padding-left: 20px; }
.compact-list li { font-size: 0.875rem; margin-bottom: 4px; }
.receipt-links a { display: inline-block; margin-right: 8px; }
.source-table table { min-width: 980px; }
.source-domain { display: block; font-weight: 700; }
.source-url { display: block; font-size: 0.875rem; font-weight: 400; overflow-wrap: anywhere; }
.queue-edit { display: grid; gap: 4px; }
.queue-edit input, .queue-edit select { border: 1px solid #64748b; border-radius: 4px; font: inherit; font-size: 0.875rem; padding: 4px 6px; width: 100%; }
.queue-edit button, .view-actions button { background: #ffffff; border: 1px solid #1D4ED8; border-radius: 4px; color: #1D4ED8; cursor: pointer; font: inherit; font-size: 0.875rem; font-weight: 700; padding: 6px 10px; }
.proof-card { border-top: 1px solid #3B82F6; margin-top: 20px; padding-top: 16px; }
.proof-card.superseded { opacity: 0.85; }
.proof-card table { min-width: 560px; }
.proof-figures { display: grid; gap: 4px 16px; grid-template-columns: max-content 1fr; margin: 12px 0; }
.proof-figures dt { font-weight: 700; }
.proof-figures dd { margin: 0; }
.proof-verdict { background: #eff6ff; border-left: 3px solid #1D4ED8; color: #1e3a8a; font-size: 1.125rem; font-weight: 800; padding: 8px 12px; }
.proof-state { background: #f8fafc; border-left: 3px solid #3B82F6; padding: 8px 12px; }
.proof-warnings li { color: #1e3a8a; }
.competitor-nav { display: flex; flex-wrap: wrap; gap: 8px 16px; margin: 12px 0; }
.competitor-nav a[aria-current="page"], .view-nav a[aria-current="page"], .section-nav a[aria-current="page"] { color: #1D4ED8; text-decoration: underline; text-underline-offset: 4px; }
.snippet-list { list-style: none; margin: 0; padding: 0; }
.snippet-list li { border-left: 3px solid #3B82F6; margin: 12px 0; padding-left: 12px; }
.snippet-list blockquote { margin: 0 0 4px; }
.share-example { font-weight: 700; overflow-wrap: anywhere; }
.share-header { align-items: center; display: flex; gap: 12px; }
.brand-logo { border-radius: 4px; height: 40px; object-fit: contain; width: 40px; }
.print-document main { max-width: 1152px; }
.print-document .controls { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0; }
.print-document .controls button { background: #ffffff; border: 1px solid #1D4ED8; border-radius: 4px; color: #1D4ED8; cursor: pointer; font: inherit; font-weight: 700; padding: 8px 12px; }
@media (max-width: 720px) {
  .proof-figures { grid-template-columns: 1fr; }
  .question-detail summary { flex-direction: column; }
}
@media print {
  .print-document .controls, .competitor-nav, .export-links { display: none; }
  .print-document .sample-notice { display: block; }
  .view-section { break-inside: auto; }
  .proof-card, .snippet-list li, .question-detail { break-inside: avoid; }
}
.raw-table:focus-visible { outline: 3px solid #3B82F6; outline-offset: 2px; }
#brand-switch{font:inherit;display:block;width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid #64748b;background:white;color:#111827;border-radius:4px}

/* Dashboard polish: readable labels and controls at all four review widths. */
button,.button,input,select,summary{min-height:44px}.wordmark,.section-nav a,.view-nav a,.competitor-nav a,.receipt-links a,.header-actions a,.link-button,.back-button{display:inline-flex;align-items:center;min-height:44px}.matrix-cell-wrap{display:flex;min-width:0}.matrix-cell-wrap>.matrix-cell{width:100%}.matrix-question-cell{display:flex;min-width:0}.matrix-question-cell>.matrix-question{width:100%;border:0}.buy-bar-actions>a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.sample-guide .button{background:white;color:#1D4ED8}.sample-guide{position:static;max-width:none;margin:0}.raw-table{max-width:100%;overflow-x:auto}main,.surface-card,.overview-topline>*{min-width:0}a,p{overflow-wrap:anywhere}
@media(min-width:1200px){.buy-bar-text{max-width:220px}.buy-bar-actions{gap:8px}.buy-bar .button,.buy-bar-link{font-size:0.875rem}}
@media(max-width:600px){.buy-bar-actions{display:grid;grid-template-columns:1fr 1fr}.buy-bar-link{grid-column:1/-1;text-align:center}.buy-bar .button,.buy-bar-link{font-size:0.875rem}.site-header{padding-top:4px;padding-bottom:4px}.section-nav{padding-top:0;padding-bottom:0}.sticky-stack ~ main [id]{scroll-margin-top:224px}.sample-marker{white-space:normal}.matrix-question-cell{grid-column:1/-1}.matrix-question-cell>.matrix-question{padding:16px}.coverage-row{min-width:0;grid-template-columns:44px repeat(5,minmax(0,1fr))}.coverage-header span{padding:8px 3px}.sample-guide{margin:0}}
button,input,select,textarea{font:inherit}
@media print{.sticky-stack,.site-header,.section-nav,.sample-guide,.buy-bar{display:none!important}main{max-width:none;padding:0}.surface-card{break-inside:avoid}.matrix-section{break-inside:auto}.matrix-row{break-inside:avoid}@page{size:Letter;margin:0.5in}}
@media(max-width:760px){
 .history-scope table,.question-detail table,.source-table table,.proof-card table{min-width:0;width:100%}
 .raw-table th,.raw-table td{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 .history-scope tr:not(.step-row)>td:nth-child(2)::before{content:'Company named'}
 .history-scope tr:not(.step-row)>td:nth-child(4)::before{content:'Excluded answers'}
 .source-table td:nth-child(2)::before{content:'Times cited'}
 .source-table td:nth-child(3)::before{content:'Engines'}
 .source-table td:nth-child(4)::before{content:'Questions'}
 .source-table td:nth-child(5)::before{content:'Client appears'}
 .source-table td:nth-child(6)::before{content:'Work status'}
 .source-table td:nth-child(7)::before{content:'Owner'}
 .source-table td:nth-child(8)::before{content:'Contact route'}
 .source-table td:nth-child(9)::before{content:'Notes'}
 details.question-detail td:nth-child(2)::before{content:'Client named'}
 details.question-detail td:nth-child(3)::before{content:'Named instead'}
 details.question-detail td:nth-child(4)::before{content:'Receipts'}
}


/* A visible cue that the tab bar scrolls: the last visible tab fades at the right edge. */
.section-nav { scrollbar-width: none; -webkit-mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 48px), transparent 100%); mask-image: linear-gradient(to right, #000 0, #000 calc(100% - 48px), transparent 100%); }
.section-nav.at-end { -webkit-mask-image: none; mask-image: none; }
/* The row still scrolls (keys, touch, trackpad); only the bar under it is hidden (SITE_FINDINGS 3). */
.section-nav::-webkit-scrollbar { display: none; }
/* A competitor keeps the same column in the heading and every question. */
.matrix-vendor-label{display:none}
@media(min-width:761px){.matrix-table[class*=matrix-columns-] .matrix-row{grid-template-columns:minmax(280px,2.1fr) repeat(var(--bw-matrix-vendor-count,6),minmax(88px,1fr))}.matrix-table{overflow-x:auto}}
@media(max-width:760px){.matrix-vendor-label{display:block;padding:8px 8px 0;font-size:0.875rem;font-weight:600;overflow-wrap:anywhere}.matrix-question-cell{grid-column:1 / -1}}
@media print{.matrix-table[class*=matrix-columns-] .matrix-row{grid-template-columns:minmax(200px,1.8fr) repeat(var(--bw-matrix-vendor-count,6),minmax(54px,1fr))}}

/* Evidence tables keep their column headings and scroll within the page. */
@media(max-width:760px){.evidence-products .evidence-table table{display:table}.evidence-products .evidence-table thead{display:table-header-group;position:static;height:auto;width:auto;overflow:visible}.evidence-products .evidence-table tbody{display:table-row-group}.evidence-products .evidence-table tr{display:table-row;border:0;padding:0}.evidence-products .evidence-table td,.evidence-products .evidence-table th{display:table-cell}.evidence-products .evidence-table td::before{display:none}}
/* The product on the home's first screen (L6, INV-008): the sample question matrix sits directly under
   the heading, ahead of the assistant banner the front door adds after the heading. */
main.landing { display: flex; flex-direction: column; }
main.landing > h1 { order: -2; }
main.landing > .landing-product { order: -1; }
.landing-product { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 16px; box-shadow: 0 8px 24px rgba(10, 14, 26, .08); margin: 4px 0 24px; max-width: 60rem; padding: 18px 20px 14px; }
.landing-product .lp-eyebrow { color: #1D4ED8; font-size: 0.875rem; font-weight: 700; letter-spacing: .02em; margin: 0 0 4px; }
.landing-product h2 { font-size: 1.125rem; line-height: 1.35; margin: 0 0 12px; }
.lp-scroll { max-width: 100%; overflow-x: auto; }
.lp-matrix { border-collapse: separate; border-spacing: 4px; font-size: 0.875rem; table-layout: fixed; width: 100%; }
.lp-matrix thead th:first-child, .lp-matrix tbody th { width: 40%; }
.lp-matrix thead th { color: #475569; font-weight: 600; padding: 0 4px 4px; text-align: center; vertical-align: bottom; }
.lp-matrix thead th:first-child { text-align: left; }
.lp-matrix tbody th { color: #0B1220; font-weight: 500; line-height: 1.35; padding: 6px 8px 6px 0; text-align: left; }
.lp-cell { border-radius: 8px; font-variant-numeric: tabular-nums; font-weight: 600; padding: 6px; text-align: center; vertical-align: middle; white-space: nowrap; }
.lp-none { background: #F1F5F9; color: #475569; }
.lp-some { background: #DBEAFE; color: #1E3A8A; }
.lp-all { background: #1D4ED8; color: #FFFFFF; }
.lp-engine { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.lp-foot { color: #475569; font-size: 0.875rem; margin: 8px 0 0; }
@media (max-width: 720px) {
  .landing-product { padding: 14px 12px 12px; }
  .lp-matrix, .lp-matrix tbody { display: block; }
  .landing-product .lp-matrix thead { display: block; height: auto; overflow: visible; position: static; width: auto; }
  .lp-matrix thead th:first-child, .lp-matrix tbody th { width: auto; }
  .lp-matrix tr { display: grid; gap: 4px; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-bottom: 6px; }
  .lp-matrix thead th:first-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .lp-matrix thead th { font-size: 0.875rem; line-height: 1.2; padding: 0 2px; }
  .lp-matrix tbody th { grid-column: 1 / -1; padding: 2px 0; }
  .lp-cell { padding: 6px 2px; white-space: normal; }
}
@media print { .landing-product { box-shadow: none; } }
/* tokens.css */
/* Broadcastwell dashboard tokens, 29 September 2026. The one place colour, type, spacing,
   radii, shadows, motion and focus are set for the dashboard. Every name starts bw-t so it
   sits beside the shared shell's own properties without touching them.

   Palette: accent text #1D4ED8, bars and rules #3B82F6, light blue panels, white surfaces,
   and no red anywhere. Dark keeps the same blue bars and lifts the accent text to a lighter
   blue so it still meets AA contrast on a dark surface.

   Type: Geist, self hosted from this origin, the face broadcastwell.com sets its body in.
   Every number is set in tabular figures. Spacing runs on a 4 px rhythm. */
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:optional;src:url(/assets/fonts/geist-var.woff2) format('woff2')}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:optional;src:url(/assets/fonts/geist-mono-var.woff2) format('woff2')}
:root{
 --bw-t-font:"Geist","Inter Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
 --bw-t-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
 --bw-t-canvas:#F7F9FC; --bw-t-surface:#FFFFFF; --bw-t-subtle:#F1F5FB; --bw-t-panel:#EEF4FF; --bw-t-panel-edge:#C7D7F5;
 --bw-t-ink:#0B1220; --bw-t-ink-2:#253046; --bw-t-muted:#4A5568; --bw-t-border:#D9E1EC; --bw-t-border-strong:#B8C4D6;
 --bw-t-accent:#1D4ED8; --bw-t-accent-hover:#1A44C2; --bw-t-bar:#3B82F6; --bw-t-bar-soft:#DBEAFE; --bw-t-on-accent:#FFFFFF;
 --bw-t-notice-ink:#92400E; --bw-t-notice-bg:#FEF3C7;
 --bw-t-size-xs:13px; --bw-t-size-sm:14px; --bw-t-size-body:15px; --bw-t-size-md:16px; --bw-t-size-lg:18px;
 --bw-t-size-xl:22px; --bw-t-size-2xl:28px; --bw-t-size-3xl:34px;
 --bw-t-leading:1.6; --bw-t-leading-tight:1.25; --bw-t-measure:72ch;
 --bw-t-1:4px; --bw-t-2:8px; --bw-t-3:12px; --bw-t-4:16px; --bw-t-5:20px; --bw-t-6:24px; --bw-t-8:32px; --bw-t-10:40px; --bw-t-12:48px;
 --bw-t-radius-sm:6px; --bw-t-radius:10px; --bw-t-radius-lg:14px;
 --bw-t-shadow-sm:0 1px 2px rgb(11 18 32 / 6%); --bw-t-shadow:0 1px 3px rgb(11 18 32 / 6%),0 4px 12px rgb(11 18 32 / 4%);
 --bw-t-motion:160ms; --bw-t-ease:cubic-bezier(.2,.6,.2,1);
 --bw-t-focus:2px solid #1D4ED8; --bw-t-focus-offset:2px;
 --bw-t-rail:232px; --bw-t-bar-height:60px; --bw-t-stack:136px;
}
:root[data-theme="dark"]{
 --bw-t-canvas:#0B1220; --bw-t-surface:#111A2C; --bw-t-subtle:#152036; --bw-t-panel:#14244A; --bw-t-panel-edge:#284685;
 --bw-t-ink:#E8EEF8; --bw-t-ink-2:#C9D4E6; --bw-t-muted:#A7B4C8; --bw-t-border:#26334D; --bw-t-border-strong:#3A4A6A;
 --bw-t-accent:#8FB0FF; --bw-t-accent-hover:#B3CAFF; --bw-t-bar:#3B82F6; --bw-t-bar-soft:#1E3A70; --bw-t-on-accent:#0B1220;
 --bw-t-notice-ink:#FCD9A6; --bw-t-notice-bg:#3A2A10;
 --bw-t-shadow-sm:none; --bw-t-shadow:none;
 --bw-t-focus:2px solid #8FB0FF;
 color-scheme:dark;
}
@media (prefers-reduced-motion:reduce){:root{--bw-t-motion:0ms}}
/* dashboard.css */
/* The dashboard: the section rail, the Decision Home, tiles, panels, tables, the ledger drawer,
   the benchmark and the documents. Every value comes from tokens.css. Numbers are tabular.
   Charts are dot and range plots and bars with their base printed beside them. */

.dash-app,.dash-home,.dash-section,.dash-drawer,.receipt-doc{font-family:var(--bw-t-font);font-variant-numeric:tabular-nums}
.dash-num{font-variant-numeric:tabular-nums}
.skip-link.visually-hidden:focus{position:static;width:auto;height:auto;margin:0;clip:auto;overflow:visible}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* The section rail. Wide screens: a column at the left under the sticky header. Middle
   widths: the familiar row of section links. Phones: a bar along the bottom. */
.sticky-stack .section-nav[data-rail],.section-nav[data-rail],nav[data-rail]{display:flex;flex-wrap:nowrap;gap:var(--bw-t-1);align-items:center;background:var(--bw-t-surface);border-bottom:1px solid var(--bw-t-border);overflow-x:auto;scrollbar-width:none;padding:0 var(--bw-t-4)}
[data-rail]::-webkit-scrollbar{display:none}
[data-rail] .rail-link{display:inline-flex;align-items:center;justify-content:flex-start;text-align:left;min-height:44px;padding:0 var(--bw-t-3);border-radius:var(--bw-t-radius-sm);color:var(--bw-t-muted);font-family:var(--bw-t-font);font-size:var(--bw-t-size-sm);font-weight:500;text-decoration:none;white-space:nowrap;transition:background-color var(--bw-t-motion) var(--bw-t-ease),color var(--bw-t-motion) var(--bw-t-ease)}
[data-rail] .rail-link:hover{background:var(--bw-t-subtle);color:var(--bw-t-ink)}
[data-rail] .rail-link[aria-current="page"]{color:var(--bw-t-accent);background:var(--bw-t-panel);font-weight:600;text-decoration:none}
[data-rail] .rail-link:focus-visible{outline:var(--bw-t-focus);outline-offset:var(--bw-t-focus-offset)}
@media (min-width:1100px){
 .sticky-stack .section-nav[data-rail],.section-nav[data-rail],nav[data-rail]{-webkit-mask-image:none;mask-image:none;position:fixed;left:0;top:var(--bw-t-stack);bottom:0;width:var(--bw-t-rail);flex-direction:column;align-items:stretch;gap:2px;padding:var(--bw-t-4) var(--bw-t-3);border-bottom:0;border-right:1px solid var(--bw-t-border);overflow-y:auto;z-index:5}
 [data-rail] .rail-link{min-height:40px;font-size:var(--bw-t-size-body)}
 #app:has([data-rail])>main,#app:has([data-rail])>.sample-availability,#app:has([data-rail])>footer{margin-left:var(--bw-t-rail)}
 /* Account pages: the rail runs the full height at the left, and the page sits beside it. */
 body.dash-app{padding-left:var(--bw-t-rail)}
 body.dash-app .section-nav[data-rail]{top:0;padding-top:var(--bw-t-6)}
 #app:has([data-rail])>main{max-width:calc(1200px + var(--bw-t-rail));padding-left:var(--bw-t-10);padding-right:var(--bw-t-10)}
}
@media (max-width:760px){
 .sticky-stack .section-nav[data-rail],.section-nav[data-rail],nav[data-rail]{display:flex;position:fixed;left:0;right:0;bottom:0;top:auto;height:var(--bw-t-bar-height);border-top:1px solid var(--bw-t-border);border-bottom:0;padding:0 var(--bw-t-2);z-index:30;box-shadow:0 -1px 3px rgb(11 18 32 / 6%)}
 [data-rail] .rail-link{min-height:48px;padding:0 var(--bw-t-3);font-size:var(--bw-t-size-sm)}
 body:has([data-rail]){padding-bottom:var(--bw-t-bar-height)}
}
@media print{[data-rail]{display:none!important}#app:has([data-rail])>main,body.dash-app>main{margin-left:0}}

/* On this page: the research view's own contents, now inside the Questions section. */
.dash-toc{display:flex;flex-wrap:wrap;gap:var(--bw-t-2) var(--bw-t-4);margin:var(--bw-t-4) 0 var(--bw-t-6);padding:var(--bw-t-3) 0;border-top:1px solid var(--bw-t-border);border-bottom:1px solid var(--bw-t-border);font-size:var(--bw-t-size-sm)}
.dash-toc a{color:var(--bw-t-accent);text-decoration:none;min-height:32px;display:inline-flex;align-items:center}
.dash-toc a:hover{text-decoration:underline;text-underline-offset:4px}
.dash-divider{margin:var(--bw-t-12) 0 var(--bw-t-2);font-size:var(--bw-t-size-2xl);letter-spacing:-.02em}

/* The page heading under the rail steps back so the finding leads. */
#app:has([data-rail])>main>h1{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.02em;margin:0 0 var(--bw-t-4);color:var(--bw-t-ink-2)}

/* The Decision Home. */
.dash-home{margin:var(--bw-t-2) 0 var(--bw-t-12);color:var(--bw-t-ink)}
.dash-home-head{max-width:880px}
.dash-eyebrow{margin:0 0 var(--bw-t-2);color:var(--bw-t-accent);font-size:var(--bw-t-size-sm);font-weight:600;letter-spacing:.01em}
.dash-home .dash-finding,.dash-finding{margin:0 0 var(--bw-t-3);font-size:var(--bw-t-size-3xl);line-height:1.18;letter-spacing:-.025em;font-weight:600;text-wrap:balance;color:var(--bw-t-ink)}
.dash-meta{margin:0;color:var(--bw-t-muted);font-size:var(--bw-t-size-body);max-width:var(--bw-t-measure)}
.dash-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bw-t-4);margin:var(--bw-t-6) 0}
.dash-rate{display:flex;flex-direction:column;gap:var(--bw-t-1);min-width:0;padding:var(--bw-t-5);background:var(--bw-t-surface);border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius-lg);box-shadow:var(--bw-t-shadow-sm)}
.dash-rate p{margin:0}
.dash-rate-label{color:var(--bw-t-muted);font-size:var(--bw-t-size-sm);font-weight:500}
.dash-rate-value{display:flex;align-items:baseline;gap:var(--bw-t-1)}
.dash-rate-value .dash-num{font-size:var(--bw-t-size-3xl);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--bw-t-ink)}
.dash-of{color:var(--bw-t-muted);font-size:var(--bw-t-size-lg)}
.dash-rate-base{color:var(--bw-t-ink-2);font-size:var(--bw-t-size-sm)}
.dash-rate-detail{color:var(--bw-t-muted);font-size:var(--bw-t-size-xs)}
.dash-rate .dash-link{margin-top:auto;padding-top:var(--bw-t-2)}
.dash-plot{display:block;width:100%;max-width:240px;height:24px;margin:var(--bw-t-1) 0}
.dash-plot-axis{stroke:var(--bw-t-border-strong);stroke-width:1}
.dash-plot-tick{stroke:var(--bw-t-border-strong);stroke-width:1}
.dash-plot-band{stroke:var(--bw-t-bar);stroke-width:4;stroke-linecap:round;opacity:.45}
.dash-plot-dot{fill:var(--bw-t-accent)}
.dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bw-t-4)}
.dash-panel{min-width:0;padding:var(--bw-t-6);background:var(--bw-t-surface);border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius-lg);box-shadow:var(--bw-t-shadow-sm)}
.dash-panel h3{margin:0 0 var(--bw-t-3);font-size:var(--bw-t-size-lg);letter-spacing:-.01em}
.dash-muted{color:var(--bw-t-muted);font-size:var(--bw-t-size-sm);max-width:var(--bw-t-measure)}
.dash-statement{font-size:var(--bw-t-size-md);font-weight:500;max-width:var(--bw-t-measure)}
.dash-link{color:var(--bw-t-accent);font-weight:500;font-size:var(--bw-t-size-sm);text-decoration:none;display:inline-flex;align-items:center;min-height:32px}
.dash-link:hover{text-decoration:underline;text-underline-offset:4px}
.dash-links{display:flex;flex-wrap:wrap;gap:var(--bw-t-2) var(--bw-t-5)}
.dash-fixes{list-style:none;margin:0 0 var(--bw-t-3);padding:0;display:grid;gap:var(--bw-t-4)}
.dash-fix{padding-bottom:var(--bw-t-4);border-bottom:1px solid var(--bw-t-border)}
.dash-fix:last-child{border-bottom:0;padding-bottom:0}
.dash-fix-head{display:flex;gap:var(--bw-t-3);align-items:flex-start}
.dash-rank{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--bw-t-panel);color:var(--bw-t-accent);font-weight:600;font-size:var(--bw-t-size-sm)}
.dash-fix-title{margin:0;font-weight:500}
.dash-fix-meta{display:flex;flex-wrap:wrap;gap:var(--bw-t-2) var(--bw-t-4);margin:var(--bw-t-2) 0 0;color:var(--bw-t-muted);font-size:var(--bw-t-size-sm)}
.dash-qlist{list-style:none;margin:var(--bw-t-2) 0 0;padding:0;color:var(--bw-t-ink-2);font-size:var(--bw-t-size-sm)}
.dash-qlist li{margin:2px 0}
.dash-qid{font-family:var(--bw-t-mono);font-size:var(--bw-t-size-xs);color:var(--bw-t-accent);font-weight:600}
.dash-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 var(--bw-t-2);border-radius:999px;border:1px solid var(--bw-t-panel-edge);background:var(--bw-t-panel);color:var(--bw-t-accent);font-size:var(--bw-t-size-xs);font-weight:600;white-space:nowrap}
.dash-chip-drafted,.dash-chip-declined{background:var(--bw-t-subtle);border-color:var(--bw-t-border);color:var(--bw-t-ink-2)}
.dash-chip-published,.dash-chip-remeasured{background:var(--bw-t-accent);border-color:var(--bw-t-accent);color:var(--bw-t-on-accent)}
.dash-badge{display:inline-flex;align-items:center;padding:0 var(--bw-t-2);border-radius:999px;border:1px solid var(--bw-t-accent);color:var(--bw-t-accent);font-size:var(--bw-t-size-xs);font-weight:600}
.dash-bars{list-style:none;margin:var(--bw-t-3) 0;padding:0;display:grid;gap:var(--bw-t-3)}
.dash-bar-head{display:flex;justify-content:space-between;gap:var(--bw-t-3);font-size:var(--bw-t-size-sm)}
.dash-bar-head a{color:var(--bw-t-ink);font-weight:500}
.dash-bar{display:block;height:6px;margin-top:var(--bw-t-1);border-radius:3px;background:var(--bw-t-bar-soft);overflow:hidden}
.dash-bar>span{display:block;height:100%;background:var(--bw-t-bar);border-radius:3px}
.dash-bar-note{margin:var(--bw-t-1) 0 0;color:var(--bw-t-muted);font-size:var(--bw-t-size-xs)}
.dash-own .dash-bar>span{background:var(--bw-t-accent)}
.dash-changes{list-style:none;margin:var(--bw-t-3) 0;padding:0;display:grid;gap:var(--bw-t-4)}
.dash-change p{margin:0 0 var(--bw-t-1)}
.dash-rate-line{font-size:var(--bw-t-size-sm);color:var(--bw-t-ink-2)}
.dash-skel{display:block;border-radius:var(--bw-t-radius-sm);background:linear-gradient(90deg,var(--bw-t-subtle),var(--bw-t-panel),var(--bw-t-subtle));background-size:200% 100%;animation:dash-shimmer 1.2s linear infinite}
.dash-skel-finding{height:80px;max-width:760px}
.dash-skel-label{height:14px;width:50%}
.dash-skel-value{height:38px;width:40%;margin:var(--bw-t-2) 0}
.dash-skel-line{height:14px;width:80%}
.dash-skeleton-tile{min-height:196px}
.dash-skeleton-panel{min-height:320px}
@keyframes dash-shimmer{from{background-position:200% 0}to{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.dash-skel{animation:none}}
@media (max-width:1100px){.dash-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:810px){.dash-grid{grid-template-columns:1fr}.dash-home .dash-finding,.dash-finding{font-size:var(--bw-t-size-2xl)}}
@media (max-width:480px){.dash-tiles{grid-template-columns:1fr}.dash-rate-value .dash-num{font-size:var(--bw-t-size-2xl)}.dash-panel,.dash-rate{padding:var(--bw-t-4)}}

/* Sections, tables and the ledger. */
.dash-section{margin:var(--bw-t-2) 0 var(--bw-t-10)}
.dash-section h2{margin:0 0 var(--bw-t-2)}
.dash-empty{padding:var(--bw-t-8);background:var(--bw-t-panel);border:1px solid var(--bw-t-panel-edge);border-radius:var(--bw-t-radius-lg)}
.dash-empty-line{padding:var(--bw-t-5);background:var(--bw-t-panel);border:1px solid var(--bw-t-panel-edge);border-radius:var(--bw-t-radius);max-width:var(--bw-t-measure)}
.dash-notice{padding:var(--bw-t-3) var(--bw-t-4);background:var(--bw-t-panel);border-left:3px solid var(--bw-t-bar);border-radius:0 var(--bw-t-radius-sm) var(--bw-t-radius-sm) 0;max-width:var(--bw-t-measure);font-size:var(--bw-t-size-sm)}
.dash-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--bw-t-3);margin:var(--bw-t-4) 0}
.dash-filters,.dash-exports{display:flex;flex-wrap:wrap;gap:var(--bw-t-2);align-items:center}
.dash-filter{min-height:36px;padding:0 var(--bw-t-3);border:1px solid var(--bw-t-border);border-radius:999px;background:var(--bw-t-surface);color:var(--bw-t-ink-2);font:inherit;font-size:var(--bw-t-size-sm);cursor:pointer}
.dash-filter[aria-pressed="true"]{border-color:var(--bw-t-accent);background:var(--bw-t-panel);color:var(--bw-t-accent);font-weight:600}
.dash-filter:focus-visible,.dash-sort:focus-visible,.dash-row-action:focus-visible{outline:var(--bw-t-focus);outline-offset:var(--bw-t-focus-offset)}
.dash-table-wrap{max-width:100%;overflow:auto;max-height:78vh;border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius);background:var(--bw-t-surface)}
.dash-table-wrap:focus-visible{outline:var(--bw-t-focus);outline-offset:var(--bw-t-focus-offset)}
.dash-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--bw-t-size-sm)}
.dash-table th,.dash-table td{text-align:left;vertical-align:top;padding:var(--bw-t-3);border-bottom:1px solid var(--bw-t-border)}
.dash-table thead th{position:sticky;top:0;z-index:1;background:var(--bw-t-subtle);font-weight:600;color:var(--bw-t-ink-2);white-space:nowrap}
.dash-table tbody tr{transition:background-color var(--bw-t-motion) var(--bw-t-ease)}
.dash-table tbody tr:hover{background:var(--bw-t-subtle)}
.dash-table tbody tr.dash-you{background:var(--bw-t-panel)}
.dash-table tbody tr.dash-you th{font-weight:700}
.dash-sort{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:var(--bw-t-1);min-height:28px}
.dash-sort::after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--bw-t-border-strong)}
th[aria-sort="ascending"] .dash-sort::after{border-top:0;border-bottom:5px solid var(--bw-t-accent)}
th[aria-sort="descending"] .dash-sort::after{border-top-color:var(--bw-t-accent)}
.dash-cell-title{display:block;font-weight:500;max-width:48ch}
.dash-table thead th:first-child{width:32%}
.cell-detail{display:block;color:var(--bw-t-muted);font-size:var(--bw-t-size-xs);font-weight:400}
.dash-dates summary{cursor:pointer;color:var(--bw-t-accent);min-height:28px}
.dash-dates ul{list-style:none;margin:var(--bw-t-2) 0 0;padding:0;font-size:var(--bw-t-size-xs);white-space:normal;overflow-wrap:anywhere}
.dash-dates[open]{min-width:15rem;max-width:24rem}
.dash-dates li{margin-bottom:var(--bw-t-3)}
.dash-dates li span{display:block;color:var(--bw-t-muted)}
.dash-dates li p{margin:var(--bw-t-2) 0;line-height:1.5}
@media(max-width:720px){.dash-dates[open]{min-width:0;max-width:100%}}
.dash-row-action{margin-top:var(--bw-t-2);min-height:32px;padding:0 var(--bw-t-3);border:1px solid var(--bw-t-accent);border-radius:var(--bw-t-radius-sm);background:var(--bw-t-surface);color:var(--bw-t-accent);font:inherit;font-size:var(--bw-t-size-sm);cursor:pointer}
.dash-status:empty{display:none}
.dash-docs{list-style:none;margin:var(--bw-t-4) 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--bw-t-4)}
.dash-doc{padding:var(--bw-t-5);background:var(--bw-t-surface);border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius-lg)}
.dash-doc p{margin:var(--bw-t-2) 0 0;color:var(--bw-t-ink-2);font-size:var(--bw-t-size-sm)}
.dash-doc a{color:var(--bw-t-accent)}
/* Phones: wide tables become one card per row, each cell with its own label. */
@media (max-width:720px){
 .dash-cards-on-phone thead{position:static;width:auto;height:auto;overflow:visible;clip:auto}
 .dash-cards-on-phone,.dash-cards-on-phone tbody,.dash-cards-on-phone tr,.dash-cards-on-phone th,.dash-cards-on-phone td{display:block;width:100%}
 .dash-cards-on-phone tr[hidden]{display:none}
 .dash-cards-on-phone tr{padding:var(--bw-t-3) var(--bw-t-4);border-bottom:1px solid var(--bw-t-border)}
 .dash-cards-on-phone th,.dash-cards-on-phone td{border:0;padding:var(--bw-t-1) 0}
 .dash-cards-on-phone td[data-label]::before{content:attr(data-label);display:block;color:var(--bw-t-muted);font-size:var(--bw-t-size-xs);font-weight:600}
 .dash-cards-on-phone thead tr{display:none}
 .dash-cards-on-phone thead tr:has(.dash-sort){display:flex;flex-wrap:wrap;gap:8px}
 .dash-cards-on-phone thead th{position:static;display:none;width:auto;flex:0 0 auto;padding:4px;border-radius:6px}
 .dash-cards-on-phone thead th:has(.dash-sort){display:block}
 .dash-table-wrap{max-height:none}
}

/* The drawer: details slide in from the right without covering the page with a modal. */
.dash-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:40;overflow-y:auto;padding:var(--bw-t-6);background:var(--bw-t-surface);border-left:1px solid var(--bw-t-border);box-shadow:-8px 0 24px rgb(11 18 32 / 10%);transform:translateX(0);transition:transform var(--bw-t-motion) var(--bw-t-ease)}
.dash-drawer-head{display:flex;justify-content:space-between;align-items:center;gap:var(--bw-t-3)}
.dash-drawer-head h2{margin:0;font-size:var(--bw-t-size-xl)}
.dash-drawer-form{display:grid;gap:var(--bw-t-2);margin-top:var(--bw-t-4)}
.dash-drawer-form input,.dash-drawer-form select{font:inherit;min-height:40px;padding:0 var(--bw-t-3);border:1px solid var(--bw-t-border-strong);border-radius:var(--bw-t-radius-sm);background:var(--bw-t-surface);color:var(--bw-t-ink)}
.dash-drawer-form textarea{font:inherit;width:100%;min-height:7rem;padding:var(--bw-t-3);border:1px solid var(--bw-t-border-strong);border-radius:var(--bw-t-radius-sm);background:var(--bw-t-surface);color:var(--bw-t-ink);resize:vertical}

/* Order status. */
.order-steps{list-style:none;margin:var(--bw-t-6) 0;padding:0;display:grid;gap:0}
.order-step{display:grid;grid-template-columns:28px 1fr;gap:var(--bw-t-3);padding-bottom:var(--bw-t-5);position:relative}
.order-step::before{content:"";position:absolute;left:13px;top:26px;bottom:0;width:2px;background:var(--bw-t-border)}
.order-step:last-child::before{display:none}
.order-step-done::before{background:var(--bw-t-bar)}
.order-step-mark{width:28px;height:28px;border-radius:50%;border:2px solid var(--bw-t-border-strong);background:var(--bw-t-surface);box-sizing:border-box}
.order-step-done .order-step-mark{background:var(--bw-t-bar);border-color:var(--bw-t-bar)}
.order-step-current .order-step-mark{border-color:var(--bw-t-accent);box-shadow:inset 0 0 0 5px var(--bw-t-surface),inset 0 0 0 14px var(--bw-t-accent)}
.order-step p{margin:0}
.order-step-title{font-weight:600}
.order-step-current .order-step-title{color:var(--bw-t-accent)}
.order-step-time{color:var(--bw-t-ink-2);font-size:var(--bw-t-size-sm)}
.order-step-note{color:var(--bw-t-muted);font-size:var(--bw-t-size-sm);max-width:var(--bw-t-measure)}

/* The Decision Receipt, on screen and on paper: two pages. */
.receipt-doc{max-width:900px;margin:0 auto;padding:var(--bw-t-8) var(--bw-t-6);color:var(--bw-t-ink);background:var(--bw-t-surface)}
.receipt-doc h1{font-size:var(--bw-t-size-3xl);letter-spacing:-.02em;margin:0 0 var(--bw-t-2)}
.receipt-doc h2{font-size:var(--bw-t-size-xl);margin:var(--bw-t-6) 0 var(--bw-t-2);padding-top:var(--bw-t-3);border-top:2px solid var(--bw-t-bar)}
.receipt-doc h3{font-size:var(--bw-t-size-md);margin:var(--bw-t-4) 0 var(--bw-t-2)}
.receipt-meta{color:var(--bw-t-muted);font-size:var(--bw-t-size-sm)}
.receipt-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bw-t-3)}
.receipt-tiles .dash-rate{padding:var(--bw-t-3);box-shadow:none}
.receipt-tiles .dash-rate-value .dash-num{font-size:var(--bw-t-size-xl)}
.receipt-list{margin:0;padding-left:var(--bw-t-5);font-size:var(--bw-t-size-sm)}
.receipt-list li{margin:var(--bw-t-1) 0}
.receipt-fixes{margin:0;padding:0;list-style:none;font-size:var(--bw-t-size-sm)}
.receipt-fixes p{margin:0}
.receipt-fixes li{margin:0 0 var(--bw-t-3)}
.receipt-hash code{font-family:var(--bw-t-mono);font-size:var(--bw-t-size-xs);overflow-wrap:anywhere;background:var(--bw-t-subtle);padding:var(--bw-t-1) var(--bw-t-2);border-radius:var(--bw-t-radius-sm)}
.receipt-passport{max-height:none}
.receipt-controls{display:flex;flex-wrap:wrap;gap:var(--bw-t-3);align-items:center;margin:var(--bw-t-4) 0}
.receipt-brand{display:flex;align-items:center;gap:var(--bw-t-3);margin:0 0 var(--bw-t-4);font-weight:600}
@media (max-width:640px){.receipt-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-doc{padding:var(--bw-t-5) var(--bw-t-4)}}
@page{size:letter;margin:12mm}
@media print{
 html,body{background:#FFFFFF}
 .receipt-controls,.skip-link{display:none!important}
 .receipt-doc{max-width:none;padding:0;font-size:10.5pt}
 .receipt-doc .receipt-meta{font-size:9pt;line-height:1.4}
 .receipt-doc .receipt-fixes li{break-inside:avoid;page-break-inside:avoid}
 .receipt-page{break-after:page;page-break-after:always}
 .receipt-page:last-of-type{break-after:auto;page-break-after:auto}
 .receipt-doc h1{font-size:20pt}
 .receipt-doc h2{font-size:13pt;margin-top:10pt;break-after:avoid}
 .receipt-doc h3{margin:8pt 0 4pt;break-after:avoid}
 .receipt-tiles{grid-template-columns:repeat(4,minmax(0,1fr));margin:10pt 0}
 .receipt-tiles .dash-rate{padding:6pt;border-color:#B8C4D6}
 .receipt-tiles .dash-rate-value .dash-num{font-size:15pt}
 .dash-plot{height:16px;max-width:150px}
 .receipt-passport,.dash-table-wrap{overflow:visible;max-height:none;border:0}
 .receipt-passport table{font-size:8.5pt}
 .receipt-passport th,.receipt-passport td{padding:2pt 4pt}
 .receipt-passport thead th:first-child{width:7%}
 .receipt-passport thead th:nth-child(2){width:59%}
 .receipt-passport thead th:nth-child(3){width:34%}
 .receipt-doc tr{break-inside:avoid;page-break-inside:avoid}
 .receipt-fixes,.receipt-list{font-size:9.5pt}
 a{color:#1D4ED8;text-decoration:none}
 .dash-rate,.dash-panel{break-inside:avoid}
}

/* The pages inside one section. */
.dash-subnav{display:flex;flex-wrap:wrap;gap:var(--bw-t-1);margin:0 0 var(--bw-t-6);padding:var(--bw-t-1);background:var(--bw-t-subtle);border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius);width:fit-content;max-width:100%}
.dash-subnav a{display:inline-flex;align-items:center;min-height:36px;padding:0 var(--bw-t-3);border-radius:var(--bw-t-radius-sm);color:var(--bw-t-ink-2);font-size:var(--bw-t-size-sm);font-weight:500;text-decoration:none}
.dash-subnav a:hover{background:var(--bw-t-surface);color:var(--bw-t-ink)}
.dash-subnav a[aria-current="page"]{background:var(--bw-t-surface);color:var(--bw-t-accent);font-weight:600;box-shadow:var(--bw-t-shadow-sm)}
.dash-subnav a:focus-visible{outline:var(--bw-t-focus);outline-offset:var(--bw-t-focus-offset)}

/* The buy ladder's next step: a text link beside the one filled button, dropped on a phone so
   the bar keeps one row. */
.buy-bar .buy-bar-next{display:inline-flex;align-items:center;min-height:44px;color:var(--bw-t-accent);font-weight:600;font-size:var(--bw-t-size-sm);text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.buy-bar .buy-bar-next .label-short{display:none}
.buy-bar .buy-bar-next:focus-visible{outline:var(--bw-t-focus);outline-offset:var(--bw-t-focus-offset)}
@media (max-width:1500px){.buy-bar .buy-bar-next .label-long{display:none}.buy-bar .buy-bar-next .label-short{display:inline}}
@media (max-width:760px){.buy-bar .buy-bar-next{display:none}}
.dash-table td[data-label="State"],.dash-table td[data-label="Receipt"]{white-space:nowrap}
.dash-table td[data-label="Source page"]{white-space:normal;overflow-wrap:anywhere}
@media (max-width:720px){.dash-table td[data-label="State"],.dash-table td[data-label="Source page"]{white-space:normal}}

/* Corrections, the Monday note, rival pages and the roster. */
.dash-flags,.dash-note,.dash-pages{list-style:none;margin:var(--bw-t-4) 0;padding:0;display:grid;gap:var(--bw-t-4)}
.dash-flag,.dash-note-line{padding:var(--bw-t-5);background:var(--bw-t-surface);border:1px solid var(--bw-t-border);border-radius:var(--bw-t-radius-lg)}
.dash-flag blockquote,.dash-section blockquote{margin:var(--bw-t-3) 0;padding:var(--bw-t-2) var(--bw-t-4);border-left:3px solid var(--bw-t-bar);background:var(--bw-t-subtle);border-radius:0 var(--bw-t-radius-sm) var(--bw-t-radius-sm) 0;font-size:var(--bw-t-size-md);max-width:var(--bw-t-measure)}
.dash-flag p,.dash-note-line p{margin:var(--bw-t-1) 0;max-width:var(--bw-t-measure)}
.dash-facts{display:grid;grid-template-columns:max-content 1fr;gap:var(--bw-t-2) var(--bw-t-5);max-width:var(--bw-t-measure);font-size:var(--bw-t-size-sm)}
.dash-facts dt{font-weight:600;color:var(--bw-t-ink-2)}
.dash-facts dd{margin:0}
.dash-pages li{display:grid;gap:var(--bw-t-1);font-size:var(--bw-t-size-sm);overflow-wrap:anywhere}
.dash-pages a{color:var(--bw-t-accent)}
.dash-tiles-two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
.dash-note-line .dash-rate-label{margin-bottom:var(--bw-t-1)}
@media (max-width:640px){.dash-facts{grid-template-columns:1fr}.dash-tiles-two{grid-template-columns:1fr}}

.queue-estimate { max-width: 34rem; white-space: normal; overflow-wrap: anywhere; }
.queue-estimate p, .queue-estimate li { white-space: normal; }
.queue-estimate ol { padding-left: 1.2rem; }
.queue-method { max-width: 75ch; }

.owner-filter-label{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;max-width:100%}.owner-filter-label select{max-width:100%;min-height:2.5rem}

/* Keep long status names inside their table cell. */
.dash-table .dash-chip{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.35;padding-top:2px;padding-bottom:2px}

/* The sample rail follows the full banner height even without scripts. The stack sticks at the top of the
   window (brand-app.css), so the rail reaches the bottom of the window from under it. */
@media(min-width:1100px){.sticky-stack.bw-public-sample-stack .section-nav[data-rail]{position:absolute;top:100%;bottom:auto;height:calc(100vh - 100%);max-height:calc(100vh - 100%)}}
/* agent-ready.css */
main{overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;padding:18px;background:#f1f5fb;border:1px solid #d9e2ef;border-radius:10px}textarea{display:block;box-sizing:border-box;width:100%;font:inherit;padding:12px;margin:12px 0}.table-wrap{overflow-x:auto}table.agent-grid{border-collapse:collapse;width:100%;table-layout:fixed}table.agent-grid th,table.agent-grid td{border:1px solid #cbd5e1;padding:10px;text-align:left;overflow-wrap:anywhere}.agent-status{display:block;font-weight:700;color:#1D4ED8}.agent-panel{margin:24px auto;padding:24px;border:1px solid #cbd5e1;border-top:4px solid #3B82F6;border-radius:12px;background:#fff;max-width:1168px;box-sizing:border-box}.agent-panel h2{margin-top:0}.agent-panel a{color:#1D4ED8}.agent-panel li{margin:10px 0}.agent-panel summary{cursor:pointer;min-height:44px}.agent-panel label{display:block;margin:14px 0}.agent-panel input:not([type=checkbox]){box-sizing:border-box;width:100%;padding:10px}.agent-panel button{min-height:44px;margin:8px 8px 8px 0}.agent-panel .sample-tag{color:#1D4ED8;font-weight:700}.agent-panel dl{display:grid;grid-template-columns:minmax(90px,1fr) 3fr;gap:8px}.agent-panel dd{margin:0}@media(max-width:640px){.agent-panel{padding:16px;margin:16px}table.agent-grid th,table.agent-grid td{padding:8px;font-size:13px}.agent-panel dl{display:block}.agent-panel dt{font-weight:700}.agent-panel dd{margin-bottom:12px}}
.table-wrap>table{min-width:680px;width:100%;table-layout:auto}.table-wrap>table th,.table-wrap>table td{padding:12px;vertical-align:top}.table-wrap>table th:first-child{min-width:110px}.table-wrap>table td:nth-child(2){min-width:140px}.table-wrap:focus-visible{outline:3px solid #3B82F6;outline-offset:3px}
.agent-panel{font-family:Inter,"Inter Fallback",sans-serif}.agent-grid{display:table}.agent-grid caption{caption-side:top;padding:12px 0;text-align:left;white-space:normal}.agent-grid thead{display:table-header-group;position:static;width:auto;height:auto;overflow:visible}.agent-grid tbody{display:table-row-group}.agent-grid tr{display:table-row}.agent-grid th,.agent-grid td{display:table-cell}.agent-grid td::before{content:none}
/* precall.css */
/* Pre-Call Briefs: the public /briefs page, the sample panel and the account section. Blue palette:
   accent text #1D4ED8, bars and rules #3B82F6, light blue tints. */
.briefs-page .lede{font-size:1.125rem;max-width:62ch}
.briefs-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.briefs-cta .button{margin-top:0}
.brief-prompts li{margin:8px 0;overflow-wrap:anywhere}
.precall-panel{margin:24px auto;padding:24px;border:1px solid #cbd5e1;border-top:4px solid #3B82F6;border-radius:12px;background:#fff;max-width:1168px;box-sizing:border-box}
.precall-panel h2{margin-top:0}
.precall-panel a,.briefs-page a:not(.button),#briefs a:not(.button){color:#1D4ED8}
.precall-label{background:#EFF4FF;border-left:4px solid #3B82F6;padding:12px 14px;border-radius:6px}
.brief-grid,.precall-mini{border-collapse:collapse;width:100%;font-size:14px;margin:12px 0}
.brief-grid caption,.precall-mini caption{text-align:left;font-weight:700;color:#1D4ED8;padding:4px 0}
.brief-grid th,.brief-grid td,.precall-mini th,.precall-mini td{border:1px solid #dbe3f0;padding:8px;text-align:left;vertical-align:top}
.brief-grid thead th,.precall-mini thead th{background:#EFF4FF}
.brief-grid .v-vendor,.precall-mini .v-vendor{background:#F2F7FF}
.brief-grid .v-skipped,.precall-mini .v-skipped{color:#475467}
.precall-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
#briefs fieldset{border:1px solid #dbe3f0;border-radius:8px;padding:12px;margin:12px 0}
#briefs .field{margin:10px 0}
#briefs .field input,#briefs .field textarea,#briefs .field select{width:100%;box-sizing:border-box}
#briefs .check{display:flex;gap:8px;align-items:flex-start;margin:10px 0}
#briefs .crm-note{width:100%;box-sizing:border-box;font-family:"Geist Mono",ui-monospace,monospace;font-size:13px}
#briefs .brief{border-top:1px solid #dbe3f0;padding-top:16px;margin-top:16px}
/* Phones: one card per question, each product on its own line with its label. */
@media (max-width:640px){.brief-grid,.precall-mini,.brief-grid tbody,.precall-mini tbody,.brief-grid tr,.precall-mini tr{display:block;width:auto}.brief-grid caption,.precall-mini caption{display:block}.brief-grid thead,.precall-mini thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.brief-grid tr,.precall-mini tr{border:1px solid #dbe3f0;border-radius:8px;margin:10px 0;padding:6px 10px}.brief-grid th[scope=row],.precall-mini th[scope=row]{display:block;border:0;padding:4px 0}.brief-grid td,.precall-mini td{display:flex;justify-content:space-between;gap:12px;border:0;border-top:1px solid #eef2f8;padding:6px 0;overflow-wrap:normal;word-break:normal}.brief-grid td::before,.precall-mini td::before{content:attr(data-label);font-weight:600;color:#475467;flex:0 0 42%}.brief-grid td a,.precall-mini td a{text-align:right}}
/* absence-ads.css */
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-latin-ext-var.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/inter-latin-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
.ads-panel{font-family:Inter,Arial,sans-serif;margin:32px auto;padding:24px;border:1px solid #3B82F6;border-radius:16px;background:#fff;color:#173751;max-width:1080px;box-sizing:border-box}.ads-panel h1,.ads-panel h2,.ads-panel h3{color:#1D4ED8;line-height:1.2}.ads-panel p{line-height:1.6}.ads-panel label{display:block;margin:14px 0 5px}.ads-panel input:not([type=checkbox]),.ads-panel textarea,.ads-panel select{box-sizing:border-box;width:100%;max-width:100%;min-height:44px;padding:10px;border:1px solid #92aac2;border-radius:7px;font:inherit}.ads-panel textarea{min-height:92px}.ads-panel input[type=checkbox]{width:20px;height:20px;margin-right:8px;vertical-align:middle}.ads-panel button,.ads-panel .button{display:inline-block;padding:12px 17px;border:1px solid #1D4ED8;color:#1D4ED8;background:white;border-radius:8px;text-decoration:none;font:600 15px Inter,Arial,sans-serif;cursor:pointer}.ads-panel .primary{background:#1D4ED8;color:#fff}.ads-panel .ads-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ads-panel .ads-stat{background:#f0f5fb;padding:16px;border-radius:10px;overflow-wrap:anywhere}.ads-panel .ads-scroll{overflow:auto;max-width:100%}.ads-panel table{border-collapse:collapse;width:100%}.ads-panel th,.ads-panel td{padding:12px;text-align:left;border-bottom:1px solid #3B82F6;vertical-align:top;overflow-wrap:anywhere}.ads-panel .ads-question{padding:14px 0;border-bottom:1px solid #3B82F6}.ads-panel details{margin:14px 0;overflow-wrap:anywhere}.ads-panel summary{cursor:pointer;font-weight:600;min-height:40px}.ads-panel pre{white-space:pre-wrap;overflow-wrap:anywhere}.ads-panel .sample-label{font-weight:700;color:#1D4ED8}.ads-panel .ads-message{padding:12px;background:#edf4fb;border-radius:8px;white-space:pre-wrap}.ads-panel img{max-width:100%;height:auto}.ads-public{max-width:1100px;margin:auto;padding:28px 20px;font:17px/1.65 Inter,Arial,sans-serif;color:#173751}.ads-public h1{font-size:clamp(32px,5vw,56px);line-height:1.1;max-width:850px}.ads-public .lede{max-width:840px;font-size:21px}.ads-public nav{display:flex;gap:20px;flex-wrap:wrap}.ads-public a{color:#1D4ED8}.ads-public .actions{display:flex;gap:12px;flex-wrap:wrap}.ads-public section{margin:40px 0}@media(max-width:700px){.ads-panel{padding:16px;margin:20px 0}.ads-panel .ads-grid{grid-template-columns:1fr}.ads-panel th,.ads-panel td{padding:8px}.ads-public{padding:20px 16px}.ads-public .lede{font-size:18px}.ads-public .actions a{width:100%;box-sizing:border-box;text-align:center}}

.ads-public h1,.ads-public h2,.ads-public h3,.ads-panel a{color:#1D4ED8}.ads-panel .primary{color:#fff}.ads-panel :focus-visible,.ads-public :focus-visible{outline:3px solid #3B82F6;outline-offset:3px}
/* record.css */
/* Set the Record pages (/record, /correction-desk, /ledger), the sample panel and the account and
   desk views. Blue palette: accent text #1D4ED8, bars and rules #3B82F6, light blue panel tints. */
.record-page{max-width:880px;margin:0 auto;padding:32px var(--bw-gutter,16px) 48px}
.record-page h1{font-size:clamp(28px,4vw,40px);line-height:1.15;letter-spacing:-.02em;margin:8px 0 16px}
.record-page .eyebrow{color:#1D4ED8;font-weight:600;font-size:14px;letter-spacing:.02em;margin:0}
.record-page .lede{font-size:18px;line-height:1.55;color:#344054;max-width:70ch}
.record-cta{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 8px}
.record-cta .button{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid #1D4ED8;color:#1D4ED8;background:#fff;font-weight:600;text-decoration:none}
.record-cta .button.primary{background:#1D4ED8;color:#fff}
.record-cta .button:hover{border-color:#1A44C2}
.record-cta .button.primary:hover{background:#1A44C2}
.record-links{display:flex;flex-wrap:wrap;gap:16px;margin:8px 0 24px}
.record-links a,.record-page a{color:#1D4ED8;font-weight:500}
.record-page .panel{border-top:3px solid #3B82F6;background:#F5F8FF;border-radius:4px 4px 12px 12px;padding:20px 22px;margin:20px 0}
.record-page .panel h2{font-size:20px;margin:0 0 10px}
.record-page ol li,.record-page ul li{margin:6px 0;line-height:1.5}
.record-form{display:grid;gap:14px;max-width:640px}
.record-form label{font-weight:600;font-size:15px}
.record-form input[type=text],.record-form input[type=url],.record-form input[type=email],.record-form select,.record-form textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #CBD5E1;border-radius:8px;font:inherit;background:#fff}
.record-form textarea{min-height:96px}
.record-form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:500}
.record-form .consent input{margin-top:4px;width:18px;height:18px}
.record-form button[type=submit]{justify-self:start;min-height:44px;padding:0 20px;border-radius:10px;border:1px solid #1D4ED8;background:#1D4ED8;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.record-form button[disabled]{opacity:.6;cursor:wait}
.record-message{padding:12px 14px;border-radius:8px;background:#EEF2FF;color:#0B1220;border-left:3px solid #3B82F6}
.record-message.error{background:#FFF7ED;border-left-color:#B45309}
.record-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.record-table{border-collapse:collapse;width:100%;font-size:14px;margin:12px 0}
.record-table caption{text-align:left;font-weight:700;font-size:16px;padding:6px 0;color:#0B1220}
.record-table th,.record-table td{border-bottom:1px solid #E2E8F0;padding:8px 10px;text-align:left;vertical-align:top}
.record-table thead th{background:#EEF2FF;color:#0B1220;font-weight:600}
.record-table td a{word-break:break-all}
.record-sample-label{display:inline-block;font-weight:700;font-size:12px;letter-spacing:.06em;color:#1D4ED8;border:1px solid #3B82F6;border-radius:6px;padding:2px 8px}
.record-panel{border-top:3px solid #3B82F6;background:#F5F8FF;border-radius:4px 4px 12px 12px;padding:20px;margin:24px 0}
.record-panel h2{margin:6px 0 10px}
.record-panel .facts{display:grid;gap:12px}
@media(min-width:900px){.record-panel .facts.two{grid-template-columns:1fr 1fr}}
.record-quiet{color:#475467;font-size:14px}
@media(max-width:640px){.record-page{padding-top:20px}.record-table{font-size:13px}.record-table th,.record-table td{padding:6px 6px}}
/* The sample page's own stylesheet turns every table into blocks on a phone; a Record table stays a
   table inside its horizontal scroll region, as the Agent Ready grid does. */
.record-table{display:table;min-width:520px}
.record-table caption{display:table-caption;caption-side:top;white-space:normal;width:auto}
.record-table thead{display:table-header-group;position:static;width:auto;height:auto;overflow:visible;clip:auto}
.record-table tbody{display:table-row-group}
.record-table tfoot{display:table-footer-group}
.record-table tr{display:table-row}
.record-table th,.record-table td{display:table-cell}
.record-table td::before{content:none}
/* The Category Audit findings panel on /sample (sample-findings.js). */
.findings-sample-rates{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:12px 0}
.findings-sample-rate{background:#FFFFFF;border:1px solid #BFDBFE;border-top:3px solid #3B82F6;border-radius:12px;padding:12px 14px}
.findings-sample-rate h3{margin:0 0 6px;font-size:15px;color:#1D4ED8}
.findings-sample-rate p{margin:0 0 6px}
/* account-proof.css */
#pipeline-proof{max-width:100%;padding:24px;border-top:3px solid #3b82f6;background:#f8fafc;color:#173751}#pipeline-proof h2,#pipeline-proof h3{color:#1d4ed8}#pipeline-proof label{display:block;margin:12px 0}#pipeline-proof input:not([type=checkbox]),#pipeline-proof select{display:block;width:100%;max-width:700px;padding:10px;font:inherit}#pipeline-proof pre{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}#pipeline-proof details{margin:14px 0}#pipeline-proof section{margin:24px 0;padding:18px;border:1px solid #bfdbfe}#pipeline-proof button{border:1px solid #1d4ed8;background:white;color:#1d4ed8;border-radius:6px;padding:10px 14px;min-height:44px;font:inherit;cursor:pointer}#pipeline-proof a{color:#1d4ed8}#pipeline-proof :focus-visible{outline:3px solid #3b82f6;outline-offset:4px}@media(max-width:640px){#pipeline-proof{padding:16px}#pipeline-proof section{padding:10px}}

#pipeline-proof .proof-period-scroll{overflow:auto;max-width:100%;margin:16px 0}#pipeline-proof table{border-collapse:collapse;min-width:660px;width:100%;font-size:14px}#pipeline-proof th,#pipeline-proof td{padding:10px;text-align:left;vertical-align:top;border-bottom:1px solid #bfdbfe}#pipeline-proof th{color:#1d4ed8}
@media(max-width:640px){#pipeline-proof table{min-width:0;display:block}#pipeline-proof thead{display:none}#pipeline-proof tbody,#pipeline-proof tr{display:block;width:100%}#pipeline-proof tr{margin-bottom:16px}#pipeline-proof th[scope=row]{display:block;width:100%}#pipeline-proof td{display:flex;gap:12px;justify-content:space-between;width:100%;white-space:normal}#pipeline-proof td::before{content:attr(data-label) ': '!important;display:block!important;flex:0 0 52%;font-weight:600;color:#1d4ed8}}
/* checklist.css */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-latin-var.woff2) format('woff2')}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/geist-var.woff2) format('woff2')}
.checklist-document,.checklist-surface,#checklist{font-family:Inter,sans-serif;color:#17253c;line-height:1.6}
.checklist-document{max-width:1120px;margin:30px auto;padding:0 24px}
.checklist-document h1,.checklist-surface h1{font-size:clamp(32px,5vw,54px);line-height:1.12;letter-spacing:-.035em;max-width:900px}
.checklist-document h2,.checklist-surface h2,#checklist h2{color:#1d4ed8;margin-top:32px}
.checklist-document a,.checklist-surface a,#checklist a{color:#1d4ed8;overflow-wrap:anywhere}
.checklist-table table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;margin:18px 0}
.checklist-table th,.checklist-table td{border-bottom:1px solid #cedbef;padding:10px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.checklist-table th{background:#edf3ff;color:#1d4ed8}
.checklist-note{background:#edf3ff;border-left:4px solid #3b82f6;padding:16px;overflow-wrap:anywhere}
.checklist-document .checklist-primary{display:inline-block;background:#1d4ed8;color:#fff;border-radius:8px;padding:12px 18px;text-decoration:none;font-weight:600}
.checklist-review{font-size:12px;color:#52627a;margin:6px 0 0}
.checklist-index-sample .controls button{background:#fff;color:#1d4ed8;border:1px solid #1d4ed8}
@media screen and (max-width:810px){.checklist-index-sample .checklist-review{grid-column:2}}
.checklist-receipt{border-top:2px solid #3b82f6;margin-top:28px;padding-top:12px;overflow-wrap:anywhere}
.checklist-receipt pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}
.checklist-receipt img{max-width:100%;height:auto}
.checklist-surface{max-width:1120px;margin:0 auto;padding:32px 24px 70px}
#sample-checklist{scroll-margin-top:240px}
.checklist-cover{display:none}
@media print{.checklist-cover{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;break-after:page;font-size:7pt;line-height:1.3}.checklist-cover-note{grid-column:1/3;margin:3px 0}.checklist-document .checklist-cover h2{font-size:12pt;margin:8px 0 4px}.checklist-cover p{margin:3px 0}.checklist-cover .checklist-table table{font-size:6.6pt;line-height:1.28;margin:5px 0}.checklist-cover .checklist-table th,.checklist-cover .checklist-table td{padding:4px;width:auto!important}.checklist-document>header h1{font-size:22pt;margin:7px 0}.checklist-document>header p{margin:4px 0}.checklist-document>.checklist-note{padding:7px;font-size:8pt;margin:7px 0}}
.checklist-surface .checklist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0}
.checklist-card{border:1px solid #d7e1f0;padding:22px;border-radius:12px;background:white;min-width:0}
.checklist-surface .checklist-card h2{margin:0 0 10px;font-size:21px}
.checklist-surface .checklist-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.checklist-surface .checklist-actions a{padding:12px 18px;border:1px solid #1d4ed8;border-radius:8px;text-decoration:none;font-weight:600}
.checklist-surface .checklist-actions .checklist-primary{background:#1d4ed8;color:white}
.checklist-surface .checklist-actions a:hover{box-shadow:0 0 0 2px #dbe7ff}
.checklist-surface a:focus-visible,#checklist a:focus-visible{outline:3px solid #3b82f6;outline-offset:4px}
#checklist label{display:block;margin:12px 0 4px}
#checklist input,#checklist textarea,#checklist select{max-width:100%;box-sizing:border-box}
.checklist-order{margin:20px 0;border-top:1px solid #d7e1f0;padding-top:20px}
@media screen and (max-width:810px){.checklist-surface .checklist-grid{grid-template-columns:1fr}.checklist-table table,.checklist-table tbody,.checklist-table tr,.checklist-table td{display:block}.checklist-table thead{display:none}.checklist-table tr{border:1px solid #cedbef;margin-bottom:15px}.checklist-table td{display:grid;grid-template-columns:38% 1fr;gap:10px;width:auto}.checklist-table td:before{content:attr(data-label);font-weight:600;color:#1d4ed8}.checklist-document{padding:0 16px}.checklist-surface{padding:24px 16px 48px}}
@media print{.checklist-document{margin:0;padding:0;font-size:9pt}.checklist-document h1{font-size:25pt}.checklist-document h2{font-size:15pt;break-after:avoid}.checklist-table table{font-size:8pt}.checklist-table th,.checklist-table td{padding:5px;overflow-wrap:anywhere}.checklist-table tr{break-inside:avoid}.checklist-appendix{break-before:page}.checklist-receipt{break-before:page}.checklist-receipt img{max-height:190mm;object-fit:contain}.checklist-document pre{font-size:8.5pt}.controls{display:none}}
@media print{.checklist-appendix>h2:first-child+.checklist-receipt{break-before:auto}}
@media print{.checklist-receipt img{display:block;width:auto;max-height:95mm;break-inside:avoid}}

.checklist-document.checklist-index-sample{font-family:Geist,sans-serif}
@media print{.checklist-index-sample .checklist-cover{break-before:page;break-inside:avoid}}
/* design-system.css */
/* Broadcastwell design system 2.0.0, 23 September 2026. */
:root {
 --bw-canvas:#F7F9FC; --bw-surface:#FFFFFF; --bw-subtle:#EFF4FB;
 --bw-ink:#101828; --bw-muted:#475467; --bw-border:#D5DDE8;
 --bw-accent:#1D4ED8; --bw-decoration:#3B82F6;
 --bw-container:1200px; --bw-gutter:40px; --bw-gap:24px;
 --bw-card-radius:16px; --bw-control-radius:10px; --bw-header:72px;
}
@media(max-width:1024px){:root{--bw-gutter:32px;--bw-gap:20px}}
@media(max-width:810px){:root{--bw-gutter:28px}}
@media(max-width:640px){:root{--bw-gutter:20px;--bw-gap:16px;--bw-header:64px}}

html{scroll-padding-top:96px}
body{background:var(--bw-canvas);color:var(--bw-ink);font-size:16px;line-height:1.65}
main,header.site,footer.site,body>header:not(.site-header),body>footer:not(.site-footer){max-width:var(--bw-container);padding-inline:var(--bw-gutter)}
main{padding-top:48px;padding-bottom:80px}
main.narrow{max-width:680px}
.site-header,.section-nav,.sticky-stack .buy-bar{padding-inline:max(var(--bw-gutter),calc((100% - var(--bw-container))/2 + var(--bw-gutter)))}
.site-header{min-height:var(--bw-header);border-color:var(--bw-border)}
.section-nav{top:var(--bw-header);gap:24px;border-color:var(--bw-border)}
.sticky-stack .section-nav{position:static}
.wordmark{font-weight:600;letter-spacing:-.025em}
h1{font-size:clamp(32px,3.8vw,48px);font-weight:600;line-height:1.14;letter-spacing:-.035em;text-wrap:balance}
h2{font-size:clamp(24px,2.2vw,28px);font-weight:600;line-height:1.25;letter-spacing:-.025em;text-wrap:balance}
h3{line-height:1.35;letter-spacing:-.01em}
.surface-card,.panel,.sample-guide{background:var(--bw-surface);border-color:var(--bw-border);border-radius:var(--bw-card-radius);box-shadow:0 1px 3px rgb(16 24 40 / 4%);padding:24px}
.finding-panel,.panel.blue{background:var(--bw-subtle);border-color:#BCD0F5}
.grid,.overview-topline,.plot-grid,.engine-plot-grid{gap:var(--bw-gap)}
.grid>*,.overview-topline>*,.header-actions,.header-client{min-width:0}
.sample-marker,.sample-label{font-weight:600;letter-spacing:.04em;font-size:12px}
input:not([type=checkbox]),textarea,select,.button,button:not(.link-button):not(.back-button){border-radius:var(--bw-control-radius)}
.button{font-weight:600;transition:background-color 150ms ease,border-color 150ms ease}
.button:hover{filter:brightness(.97)}
.surface-card button,.matrix-question,.matrix-cell{box-shadow:none}
.matrix-table,.raw-table,.table-scroll{max-width:100%;overscroll-behavior-inline:contain}
.matrix-table,.interval-plot,.coverage-grid{border-radius:12px}
.raw-table,.table-scroll{border:1px solid var(--bw-border);border-radius:12px;background:var(--bw-surface)}
.raw-table th,.table-scroll th{background:var(--bw-subtle)}
.section-heading{gap:24px;margin-bottom:24px}
.matrix-section,.evidence-section,.coverage-section,.method-section,.monthly-section,.readiness-section,.referral-section,.export-section,.connector-section{margin-top:48px}
.sample-guide{box-shadow:none;border-color:#BCD0F5}
.buy-bar{border-color:var(--bw-border)}
body>.buy-bar{max-width:calc(var(--bw-container) - 2 * var(--bw-gutter));width:calc(100% - 2 * var(--bw-gutter));border-radius:12px}
.buy-bar .button{border-radius:8px}
:focus-visible{outline-color:var(--bw-accent)}
.source-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-block:24px}
.source-pagination p{margin:0;font-size:14px;color:var(--bw-muted)}
.source-pagination>div{display:flex;gap:12px;flex-wrap:wrap}
.source-table{scrollbar-gutter:stable}
@media(max-width:760px){.source-table table{display:table;min-width:980px;width:980px}.source-table thead{display:table-header-group;position:static;height:auto;width:auto;overflow:visible}.source-table tbody{display:table-row-group}.source-table tr{display:table-row;border:0;margin:0;padding:0}.source-table th,.source-table td{display:table-cell;padding:12px 10px;border-bottom:1px solid var(--bw-border)}.source-table td::before{display:none}}
@media(max-width:810px){.overview-topline{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.site-header{column-gap:8px}.header-client strong{max-width:200px}}
@media(max-width:640px){main{padding-top:32px;padding-bottom:48px}.surface-card,.panel{padding:20px}.site-header{padding-inline:20px}.header-client strong{max-width:120px}.matrix-section,.evidence-section,.coverage-section,.method-section,.monthly-section{margin-top:32px}.buy-bar .button{white-space:normal}.sticky-stack ~ main [id]{scroll-margin-top:248px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{html,body{background:white}main{max-width:none;padding:0}.surface-card,.panel{box-shadow:none}.raw-table,.table-scroll{overflow:visible;border:0}}
