/* U20b — dashboard design-quality pass (Direction B: dark ink, one gold accent).
   Sources per rule: see /workspace/offersheet/redesign-build/U20-design-notes.md */
:root{
  --u20-ink:oklch(96% 0 0);          /* titles, values */
  --u20-ink-2:oklch(84% 0 0);        /* body */
  --u20-ink-3:oklch(76% 0 0);        /* secondary — measured ≥4.5:1 on card */
  --u20-rule:oklch(100% 0 0 / .1);
  --u20-gold:oklch(84% .13 85);
  --u20-card:oklch(17.5% 0 0);
  --u20-pad:24px; --u20-gap:16px;
}
html.u17-tabs main.wrap{font-size:16px;color:var(--u20-ink-2)}
html.u17-tabs main.wrap ::selection{background:oklch(84% .13 85 / .35);color:var(--u20-ink)}
html.u17-tabs main.wrap .num,html.u17-tabs main.wrap td,.u20-tally b,.u20-ws-kv dd{font-variant-numeric:tabular-nums}

/* Type floor: labels 13px, body 15–16px; no faded grey body text */
html.u17-tabs main.wrap .label,html.u17-tabs main.wrap .source-tag-line,html.u17-tabs main.wrap .u19-hint,
html.u17-tabs main.wrap .u19-meta,html.u17-tabs main.wrap .u20-check-d,html.u17-tabs main.wrap .u20-purpose,
html.u17-tabs main.wrap .leg-summary,html.u17-tabs main.wrap .tally-line{font-size:13.5px;line-height:1.55;color:var(--u20-ink-3)}
html.u17-tabs main.wrap p,html.u17-tabs main.wrap li,html.u17-tabs main.wrap dd{line-height:1.6}
html.u17-tabs main.wrap .sheet p:not(.label):not(.eyebrow):not(.u20-purpose):not(.source-tag-line),
html.u17-tabs main.wrap .sheet li{font-size:15px;color:var(--u20-ink-2)}
html.u17-tabs main.wrap h2{font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--u20-ink)}
html.u17-tabs main.wrap h3{font-size:17px;font-weight:600;color:var(--u20-ink);margin:0 0 6px}
html.u17-tabs main.wrap .sheet li+li{margin-top:6px}
html.u17-tabs main.wrap .sheet p+p{margin-top:10px}
/* Hallmark/Impeccable: no tracked-caps mono eyebrows on our own labels */
.u20-pick-k,.u20-trial-n,.u20-miss span,.u20-checks-sub,.u20-tag-k,.u20-ws-kv dt{font-size:13px!important;font-weight:500!important;line-height:1.3!important;font-family:inherit!important;text-transform:none!important;letter-spacing:0!important;color:var(--u20-ink-3)!important}
.u20-checks-sub{margin:20px 0 4px!important;font-weight:600!important;color:var(--u20-ink-2)!important}

/* Cards: one elevation (border only), 24px padding, 16px gaps */
html.u17-tabs #evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--u20-gap);align-items:stretch}
html.u17-tabs #evidence>*{grid-column:1/-1}
html.u17-tabs #evidence>details{grid-column:auto;margin:0!important;padding:var(--u20-pad)!important;border:1px solid var(--u20-rule)!important;border-radius:14px!important;background:var(--u20-card)!important;box-shadow:none!important;min-width:0}
html.u17-tabs #evidence>details.u20-sources{grid-column:1/-1}
html.u17-tabs #evidence>.fig{display:none}
html.u17-tabs #evidence>details>summary{font-size:18px!important;font-weight:600!important;color:var(--u20-ink)!important;padding:0!important;margin:0 0 4px!important;list-style:none}
html.u17-tabs #evidence>details>summary::-webkit-details-marker{display:none}
html.u17-tabs #evidence>details>summary::before,html.u17-tabs #evidence>details>summary::after{content:none!important}
.u20-purpose{margin:0 0 16px!important}
html.u17-tabs #evidence .u20-sub>div>h3:first-child{display:none}
html.u17-tabs #evidence .u20-sub .u19-hint:first-of-type{margin-top:0}
html.u17-tabs #evidence .source-tag-line{margin-top:16px!important}
@media (max-width:820px){html.u17-tabs #evidence{grid-template-columns:1fr}}

/* Empty data: one compact row, neutral pill */
.u20-empty{display:flex;align-items:center;gap:10px;margin:0!important;font-size:15px!important;color:var(--u20-ink-2)!important}
li.u20-empty-li{list-style:none;margin-left:-1.2em}
#audienceAreas:has(.u20-empty-li){padding:0;margin:0}
.u20-pill{display:inline-flex;align-items:center;gap:6px}
.u20-pill--none{color:var(--u20-ink-2)!important;border-color:oklch(100% 0 0 / .22)!important}

/* Sources checked: summary pill row + one row per check */
.u20-checks-sum{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px!important}
.u20-sumpill{display:inline-flex;gap:6px;align-items:baseline;font-size:14px;padding:6px 12px;border:1px solid var(--u20-rule);border-radius:999px;color:var(--u20-ink-2)}
.u20-sumpill strong{color:var(--u20-ink);font-weight:600}
.u20-sumpill--ok{border-color:oklch(84% .13 85 / .45)}
.u20-check{padding:14px 0!important;gap:4px 16px!important}
.u20-check-l{font-size:15px!important;color:var(--u20-ink)!important}
.u20-check-m{font-size:12.5px!important;color:var(--u20-ink-3)!important}
.u20-pill{font-size:12.5px!important;padding:4px 11px!important}
@media (min-width:821px){.u20-sources .u20-checks{columns:2;column-gap:40px}.u20-sources .u20-check{break-inside:avoid}}

/* SVG line-draw tick (pixel-perfect.space stroke-draw idea) */
.u20-tick{width:12px;height:12px;flex:none}
.u20-tick path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:12;stroke-dashoffset:12;animation:u20draw .5s cubic-bezier(.2,0,0,1) .15s forwards}
@keyframes u20draw{to{stroke-dashoffset:0}}

/* Spotlight card (Cursify spotlight cursor idea, ported) */
#evidence>details,.u20-trial,#workspace .ws-panel{position:relative;isolation:isolate}
.u20-lit::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;
  background:radial-gradient(420px circle at var(--u20-mx) var(--u20-my),oklch(84% .13 85 / .07),transparent 60%)}

/* Hairline figures (hairline.lucasmarkes.com): stats separated by 1px rules, no boxes */
.u20-tally{gap:0!important;border-top:1px solid var(--u20-rule);border-bottom:1px solid var(--u20-rule);margin:0 0 24px!important}
.u20-tally div{border:0!important;border-radius:0!important;padding:16px 20px!important}
.u20-tally div+div{border-left:1px solid var(--u20-rule)!important}
.u20-tally b{font-size:28px!important;font-weight:600;letter-spacing:-.02em}
.u20-tally span{font-size:13.5px!important;color:var(--u20-ink-3)!important}
@media (max-width:820px){.u20-tally div:nth-child(3){border-left:0!important}.u20-tally div:nth-child(n+3){border-top:1px solid var(--u20-rule)!important}}

/* Ledger cards */
.u20-trial{padding:var(--u20-pad)!important;border-radius:14px!important;background:var(--u20-card)!important}
.u20-trial-h strong{font-size:18px!important}
.u20-trial-m{font-size:14px!important;color:var(--u20-ink-3)!important}
.u20-picks{gap:var(--u20-gap)!important}
.u20-pick{padding:16px!important;background:transparent}
.u20-pick-v{font-size:16px!important}
.u20-why summary{font-size:13.5px!important;color:var(--u20-ink-2)!important}
.u20-why p{font-size:14.5px!important;color:var(--u20-ink-2)!important}
.u20-miss{font-size:15px!important;color:var(--u20-ink-2)!important;margin:20px 0 16px!important}

/* Workspace summary: hairline figures instead of boxed grid */
.u20-ws-kv{background:none!important;border:0!important;border-top:1px solid var(--u20-rule)!important;border-bottom:1px solid var(--u20-rule)!important;border-radius:0!important;gap:0!important;margin:16px 0!important}
.u20-ws-kv div{background:none!important;padding:16px 20px 16px 0!important}
.u20-ws-kv div:last-child{border-top:1px solid var(--u20-rule)}
.u20-ws-kv dd{font-size:17px!important}
#wsHeader .ws-season-ledger{font-size:14px!important;color:var(--u20-ink-3)!important}

/* Offer form: a term sheet — numbered clauses, labelled fields on hairlines */
html.u17-tabs #offerForm{counter-reset:clause sub}
html.u17-tabs #offerForm>.form-row,html.u17-tabs #offerForm .form-row--opt{counter-increment:clause;counter-reset:sub;position:relative;padding-top:36px!important;border-top:1px solid var(--u20-rule)}
html.u17-tabs #offerForm>.form-row::before{content:counter(clause) ". Terms of the offer";position:absolute;top:10px;left:0;font-size:14px;font-weight:600;color:var(--u20-ink)}
html.u17-tabs #offerForm .form-row--opt::before{content:"2. Optional terms";position:absolute;top:10px;left:0;font-size:14px;font-weight:600;color:var(--u20-ink)}
html.u17-tabs #offerForm .field{counter-increment:sub}
html.u17-tabs #offerForm .field>label{font-size:13.5px!important;color:var(--u20-ink-2)!important}
html.u17-tabs #offerForm input[type=text],html.u17-tabs #offerForm input[type=number],html.u17-tabs #offerForm input:not([type]){
  background:transparent!important;border:0!important;border-bottom:1px solid oklch(100% 0 0 / .28)!important;border-radius:0!important;padding:10px 2px!important;font-size:17px!important;color:var(--u20-ink)!important;box-shadow:none!important}
html.u17-tabs #offerForm input:focus{outline:none;border-bottom-color:var(--u20-gold)!important;box-shadow:0 1px 0 0 var(--u20-gold)!important}
html.u17-tabs #offerForm input:focus-visible{outline:2px solid oklch(84% .13 85 / .5);outline-offset:4px}
html.u17-tabs #offerForm .field-more summary,html.u17-tabs #offerForm .field p{font-size:13.5px!important;color:var(--u20-ink-3)!important}

/* Verdict: calm checklist and confidence */
html.u17-tabs #confidenceBox{padding:var(--u20-pad)!important;border-radius:14px}
html.u17-tabs #confidenceBox li{font-size:15px!important}

/* Motion: off under reduced motion */
@media (prefers-reduced-motion:reduce){.u20-tick path{animation:none;stroke-dashoffset:0}.u20-lit::after{display:none}}
html.u20-still .u20-tick path{animation:none;stroke-dashoffset:0}
/* round 2 */
html.u17-tabs #evidence.sheet{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
html.u17-tabs #evidence>details{align-self:stretch!important;height:auto!important}
html.u17-tabs #evidence .u19-id,html.u17-tabs main.wrap .sheet p.u19-id{font:12px/1.5 ui-monospace,monospace!important;color:var(--u20-ink-3)!important;overflow-wrap:anywhere}
html.u17-tabs main.wrap .u19-score,html.u17-tabs main.wrap .u19-score *{font-size:14px}
html.u17-tabs #offerForm .field{position:relative}
html.u17-tabs #offerForm>.form-row .field::before{content:"1." counter(sub);position:absolute;right:0;top:0;font-size:13px;color:var(--u20-gold);font-variant-numeric:tabular-nums}
html.u17-tabs #offerForm .form-row--opt .field::before{content:"2." counter(sub);position:absolute;right:0;top:0;font-size:13px;color:var(--u20-gold);font-variant-numeric:tabular-nums}
html.u17-tabs #offerForm .field>label::before{content:none!important}
html.u17-tabs main.wrap .field-hint,html.u17-tabs main.wrap .u17-optional summary span,html.u17-tabs main.wrap .trial-card-be,
html.u17-tabs main.wrap .u16-rectag,html.u17-tabs main.wrap .trial-card span,html.u17-tabs .flow-num{font-size:13px!important}
html.u17-tabs main.wrap .field-hint,html.u17-tabs main.wrap .u17-optional summary span,html.u17-tabs main.wrap .trial-card span{color:var(--u20-ink-3)!important}
html.u17-tabs .flow-num{color:var(--u20-ink-3)}
html.u17-tabs .u17-kicker{font-size:13px!important;color:var(--u20-ink-3)!important}
.u20-badge{font-size:13px!important;padding:4px 11px!important}
html.u17-tabs .u16-pv-foot{font-size:13px!important;color:var(--u20-ink-3)!important}
/* pair cards of similar height so equal-height rows leave no voids */
html.u17-tabs #evidence>*{order:0}
html.u17-tabs #evidence>details:nth-of-type(1){order:1}
html.u17-tabs #evidence>details:nth-of-type(4){order:2}
html.u17-tabs #evidence>details:nth-of-type(2){order:3}
html.u17-tabs #evidence>details:nth-of-type(3){order:4}
html.u17-tabs #evidence>details:nth-of-type(5){order:5}
html.u17-tabs #evidence>details:nth-of-type(6){order:6}
html.u17-tabs #evidence>details:nth-of-type(7){order:7}
html.u17-tabs #evidence>#missTaxonomy,html.u17-tabs #evidence>#receiptSection{order:9}
/* Receipts: hairline rows, not cards-in-a-card */
html.u17-tabs #receiptList .receipt{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:center;background:none!important;border:0!important;border-top:1px solid var(--u20-rule)!important;border-radius:0!important;padding:16px 0!important;margin:0!important;box-shadow:none!important}
html.u17-tabs #receiptList .receipt .claim{font-size:15px;color:var(--u20-ink)}
html.u17-tabs #receiptList .receipt .meta{font-size:13px;color:var(--u20-ink-3);font-family:ui-monospace,monospace;overflow-wrap:anywhere}
html.u17-tabs #receiptList .receipt>.btn{grid-column:2;grid-row:1/span 2}
html.u17-tabs #receiptList .receipt-step{grid-column:1/-1;margin:0!important;padding:0!important;border:0!important;background:none!important}
html.u17-tabs #receiptList .receipt-step summary{font-size:13.5px!important;font-weight:500!important;color:var(--u20-ink-2)!important;padding:0!important}
html.u17-tabs #receiptList .receipt-step p{font-size:13.5px!important;color:var(--u20-ink-3)!important}
/* Miss taxonomy as a calm card */
html.u17-tabs #evidence>#missTaxonomy:not(:empty){padding:var(--u20-pad);border:1px solid var(--u20-rule);border-radius:14px;background:var(--u20-card)}
html.u17-tabs #missTaxonomy *{float:none!important}
html.u17-tabs #missTaxonomy ul{padding-left:1.1em;margin:8px 0}
/* empty pill alignment */
#audienceAreas li.u20-empty-li{margin-left:0;padding:0}
#audienceAreas:has(.u20-empty-li){list-style:none;padding-left:0}
/* tags: purpose line already says it; keep raw-tag note under "Other tag types" */
html.u17-tabs #tagsBlock>.u19-hint:first-of-type{display:none}
html.u17-tabs #evidence>#missTaxonomy{display:block!important;margin:0!important}
/* Verdict: number first, then checklist; hairline rows instead of boxes */
html.u17-tabs main.wrap[data-u17-active="verdict"]>#verdict:not([hidden]){display:flex!important;flex-direction:column;gap:var(--u20-gap)}
html.u17-tabs #verdict>*{margin-top:0!important;margin-bottom:0!important}
html.u17-tabs #verdict>#headlinerImage{order:-3}
html.u17-tabs #verdict>.sheet-head{order:-2}
html.u17-tabs #verdict>div:has(>#beTickets){order:-1;padding:8px 0 4px}
html.u17-tabs #verdict>.u16-rule{order:-1}
html.u17-tabs #verdict>#proofPackWrap{display:none!important}
html.u17-tabs #verdict .cost-lines,html.u17-tabs main.wrap .cost-lines{border-top:1px solid var(--u20-rule);padding:0!important;margin:0!important}
html.u17-tabs main.wrap .cost-lines li{display:flex!important;justify-content:space-between;gap:16px;background:none!important;border:0!important;border-bottom:1px solid var(--u20-rule)!important;border-radius:0!important;padding:11px 0!important;margin:0!important;font-size:15px}
html.u17-tabs main.wrap .cost-lines .cost-label{color:var(--u20-ink-2);font-weight:400}
html.u17-tabs main.wrap .cost-lines .cost-value{color:var(--u20-ink);font-variant-numeric:tabular-nums;text-align:right}
html.u17-tabs main.wrap .cost-lines li:nth-last-child(-n+3) .cost-label{color:var(--u20-ink);font-weight:600}
html.u17-tabs #citeChips{display:flex;flex-direction:column;align-items:stretch;gap:8px}
html.u17-tabs #citeChips .cite-chip{display:block;text-align:left;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px!important;font-weight:400!important;line-height:1.4;padding:10px 14px!important;border-radius:10px!important;background:none!important;border:1px solid var(--u20-rule)!important;color:var(--u20-ink-2)!important}
html.u17-tabs #proofSummary{list-style:none;padding:0;margin:0;border-top:1px solid var(--u20-rule)}
html.u17-tabs #proofSummary li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;background:none!important;border:0!important;border-bottom:1px solid var(--u20-rule)!important;border-radius:0!important;padding:12px 0!important;margin:0!important;font-size:15px}
html.u17-tabs #verdict .facts>div{border-bottom:1px solid var(--u20-rule);padding:11px 0}
html.u17-tabs #verdict .facts dt{font-size:14px!important;color:var(--u20-ink-2)!important;font-weight:400!important}
html.u17-tabs #verdict .facts dd{font-size:15px!important;color:var(--u20-ink)!important}
html.u17-tabs #verdict .sign-checklist li{font-size:15px}
html.u17-tabs #verdict .sign-checklist ul{padding-left:1.1em}
html.u17-tabs #verdict .rerank-section{border-top:1px solid var(--u20-rule);padding-top:20px!important}
html.u17-tabs #confidenceBox{background:none!important;border:1px solid var(--u20-rule)!important}
html.u17-tabs #formula .fig,html.u17-tabs #formula .disc-body>svg{display:none!important}
html.u17-tabs main.wrap .diagram *{letter-spacing:0!important;text-transform:none!important}
html.u17-tabs main.wrap .diagram{font-size:15px}
html.u17-tabs main.wrap .diagram [class*=label],html.u17-tabs main.wrap .diagram small{font-size:13px!important;color:var(--u20-ink-3)!important}
html.u17-tabs #proofSummary{display:block!important}html.u17-tabs #proofSummary li{width:100%}
/* Workspace: no voids, no boxed inputs, compact receipts */
html.u17-tabs #workspace .ws-grid{align-items:start!important;gap:var(--u20-gap)!important}
html.u17-tabs #workspace .ws-panel{padding:var(--u20-pad)!important;border-radius:14px!important;background:var(--u20-card)!important;border:1px solid var(--u20-rule)!important;box-shadow:none!important}
html.u17-tabs #workspace .ws-panel h3{font-size:18px!important}
html.u17-tabs #workspace .ws-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}
html.u17-tabs #workspace .ws-form>*{min-width:0}
html.u17-tabs #workspace .ws-form>button,html.u17-tabs #workspace .ws-form>.ws-btn,html.u17-tabs #workspace .ws-form>fieldset,html.u17-tabs #workspace .ws-form>p{grid-column:1/-1}
html.u17-tabs #workspace label,html.u17-tabs #workspace legend{font-size:13.5px!important;font-weight:500!important;color:var(--u20-ink-2)!important}
html.u17-tabs #workspace input[type=text],html.u17-tabs #workspace input[type=number],html.u17-tabs #workspace input:not([type]),html.u17-tabs #workspace textarea{
  background:transparent!important;border:0!important;border-bottom:1px solid oklch(100% 0 0 / .28)!important;border-radius:0!important;padding:8px 2px!important;font-size:16px!important;color:var(--u20-ink)!important;box-shadow:none!important;min-height:0!important}
html.u17-tabs #workspace input:focus,html.u17-tabs #workspace textarea:focus{outline:none;border-bottom-color:var(--u20-gold)!important}
html.u17-tabs #workspace input:focus-visible,html.u17-tabs #workspace textarea:focus-visible{outline:2px solid oklch(84% .13 85 / .5);outline-offset:3px}
html.u17-tabs #workspace input[type=radio]{width:18px!important;height:18px!important;min-height:0!important;accent-color:var(--u20-gold)}
html.u17-tabs #workspace fieldset{border:0!important;border-top:1px solid var(--u20-rule)!important;border-radius:0!important;padding:12px 0 0!important;margin:8px 0!important;background:none!important}
html.u17-tabs #workspace .ws-receipts>*,html.u17-tabs #workspace .ws-row{border-top:1px solid var(--u20-rule);padding:10px 0;margin:0}
html.u17-tabs #workspace .ws-btn--sm{min-height:0!important;padding:4px 10px!important;font-size:13px!important;background:none!important;border:1px solid var(--u20-rule)!important;color:var(--u20-ink-2)!important}
html.u17-tabs #workspace .ws-big{font-size:28px!important}
html.u17-tabs #workspace .ws-out,html.u17-tabs #workspace .ws-msg{font-size:14.5px!important;color:var(--u20-ink-2)!important}
html.u17-tabs #workspace p{font-size:15px}
html.u17-tabs #workspace .ws-label{font-size:13.5px!important;color:var(--u20-ink-3)!important}
@media (max-width:820px){html.u17-tabs #workspace .ws-form{grid-template-columns:1fr}}
html.u17-tabs main.wrap .flow-title,html.u17-tabs main.wrap .source-tag,html.u17-tabs main.wrap .source-tag-chip,html.u17-tabs main.wrap .u19-credit,
html.u17-tabs main.wrap .ws-example,html.u17-tabs main.wrap .ws-example-k,html.u17-tabs main.wrap .u20-pill{font-size:13px!important}
html.u17-tabs main.wrap .ws-example-k{text-transform:none!important;letter-spacing:0!important}
@media (max-width:480px){html.u17-tabs main.wrap .flow-title{font-size:12px!important;letter-spacing:-.01em}}
/* ===== U20c ===== */
/* Ledger: reasons inline, never an empty label */
.u20-why-line{margin:4px 0 0!important;font-size:14px!important;line-height:1.55;color:var(--u20-ink-2)!important}
.u20-why-line span{color:var(--u20-ink-3);font-weight:500}
/* ruled rows + one expander */
.u20c-rows{list-style:none;padding:0;margin:8px 0 0;border-top:1px solid var(--u20-rule)}
.u20c-rows li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--u20-rule);margin:0!important}
.u20c-k{color:var(--u20-ink);font-size:15px}
.u20c-v{color:var(--u20-ink-2);font-size:14px;text-align:right}
.u20c-rows .u20c-more{grid-column:1/-1}
details.u20c-more>summary{cursor:pointer;font-size:13.5px;color:var(--u20-ink-2);padding:4px 0;list-style:none}
details.u20c-more>summary::after{content:" ›";color:var(--u20-ink-3)}
details.u20c-more[open]>summary::after{content:" ⌄"}
details.u20c-more p{font-size:14px!important;color:var(--u20-ink-2)!important;margin:6px 0 0!important}
.u20c-tally-more{border-top:1px solid var(--u20-rule);margin-top:20px;padding-top:12px}
.u20c-bench-sum{margin:0!important}
html.u17-tabs #ledger .disc-body>p{font-size:14px!important;color:var(--u20-ink-2)!important;border-top:1px solid var(--u20-rule);padding-top:12px;margin-top:12px}
#trialTally .u20c-tally-more .miss-taxonomy{display:block;margin:8px 0 0}
#trialTally .u20c-tally-more h3{font-size:15px!important}
/* Evidence: receipts behind one summary row */
html.u17-tabs #receiptSection .fig{display:none!important}
html.u17-tabs #receiptSection .sheet-head .label:nth-of-type(n+2){display:none}
details.u20c-receipts{border-top:1px solid var(--u20-rule);border-bottom:1px solid var(--u20-rule);margin:8px 0}
details.u20c-receipts>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;padding:14px 0;list-style:none;font-size:15px;color:var(--u20-ink)}
details.u20c-receipts>summary::-webkit-details-marker{display:none}
.u20c-hint{font-size:13.5px;color:var(--u20-ink-3)}
.u20c-hint::after{content:" ›"}
details.u20c-receipts[open] .u20c-hint::after{content:" ⌄"}
/* Sources checked: compact one-line rows */
.u20-sources .u20-check{grid-template-columns:minmax(0,1fr) auto!important;padding:8px 0!important;gap:0 12px!important}
.u20-sources .u20-check-l{font-size:14.5px!important}
.u20-sources .u20-check-m{grid-column:1;grid-row:2;font-size:12px!important}
.u20-sources .u20-pill{grid-row:1/span 2}
.u20-sources .u20-check-d{font-size:13px!important;grid-row:3}
@media (min-width:1100px){.u20-sources .u20-checks{columns:3!important;column-gap:32px!important}}
.u20-sources .u20-checks-sub{margin:14px 0 2px!important}
/* the two closing discs as one slim row */
html.u17-tabs .u20c-slim{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--u20-gap);margin:var(--u20-gap) 0}
html.u17-tabs .u20c-slim>section{margin:0!important;padding:16px 20px!important;border-radius:14px!important;background:var(--u20-card)!important;border:1px solid var(--u20-rule)!important;min-width:0}
html.u17-tabs .u20c-slim .eyebrow,html.u17-tabs .u20c-slim .sheet-head img{display:none!important}
html.u17-tabs .u20c-slim .disc-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
html.u17-tabs .u20c-slim h2{font-size:15.5px!important;font-weight:600!important;margin:0!important;line-height:1.35}
html.u17-tabs .u20c-slim .disc-toggle{min-height:0!important;padding:6px 14px!important;font-size:13.5px!important;white-space:nowrap}
html.u17-tabs .u20c-slim>section:not(.disc--closed){grid-column:1/-1}
@media (max-width:820px){html.u17-tabs .u20c-slim{grid-template-columns:1fr}}
/* Workspace: two-column term-sheet forms at desktop widths */
@media (min-width:1000px){
  html.u17-tabs #workspace .ws-panel[aria-label="Base offer"],html.u17-tabs #workspace .ws-panel[aria-label="Comparison"]{grid-column:1/-1}
  html.u17-tabs #workspace .ws-form{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 28px!important}
  html.u17-tabs #workspace .ws-form>label{grid-column:auto!important}
  html.u17-tabs #workspace .ws-panel[aria-label="Base offer"] .ws-form,html.u17-tabs #workspace .ws-form fieldset.ws-offer{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html.u17-tabs #workspace .ws-form fieldset.ws-offer{display:grid!important;gap:14px 28px!important}
  html.u17-tabs #workspace .ws-form fieldset.ws-offer>legend{grid-column:1/-1}
}
html.u17-tabs #workspace .ws-form label{gap:2px!important}
html.u17-tabs #workspace .ws-form fieldset.ws-offer{border-top:1px solid var(--u20-rule)!important}
html.u17-tabs .u20c-slim .disc-head-row p{font-size:13.5px!important;color:var(--u20-ink-2)!important;margin:4px 0 0!important;line-height:1.45}
html.u17-tabs .u20c-slim .disc-head-row p strong{font-weight:400}
.u20-sources .u20-check{break-inside:avoid}
html.u17-tabs .app-shell main.wrap[data-u17-active="evidence"]>.u20c-slim{display:grid!important}
@media (max-width:820px){html.u17-tabs .app-shell main.wrap[data-u17-active="evidence"]>.u20c-slim{grid-template-columns:1fr}}
html.u17-tabs body main.wrap[data-u17-active="evidence"]>div.u20c-slim.u20c-slim.u20c-slim.u20c-slim:not([hidden]){display:grid!important}
@media (max-width:820px){html.u17-tabs body main.wrap>div.u20c-slim.u20c-slim{grid-template-columns:1fr!important}}
html.u17-tabs .u20c-slim .disc-head-row{flex-wrap:nowrap!important}
html.u17-tabs .u20c-slim .disc-head-row>div{flex:1 1 auto;min-width:0}
/* ===== U21: comparison table ===== */
#wsComparison .ws-table-wrap{overflow-x:auto}
table.ws-cmp{width:100%;border-collapse:collapse;table-layout:auto;font-size:14.5px}
table.ws-cmp th{font-size:12.5px;font-weight:500;color:var(--u20-ink-2);text-align:left;padding:10px 12px;border-bottom:1px solid var(--u20-rule);white-space:nowrap}
table.ws-cmp td{padding:14px 12px;border-bottom:1px solid var(--u20-rule);vertical-align:middle;color:var(--u20-ink)}
table.ws-cmp td:first-child{color:var(--u20-ink-2);font-size:13.5px;max-width:150px}
table.ws-cmp .ws-tix{font-size:28px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--u20-ink)}
table.ws-cmp tr.ws-row--base{background:rgba(255,255,255,.025)}
.ws-delta{font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}
.ws-delta--up{color:#ffb4a8}.ws-delta--down{color:#9fe0b0}.ws-delta--same{color:var(--u20-ink-2)}
details.ws-rcpt-more>summary{cursor:pointer;font-size:13.5px;color:var(--u20-ink-2);white-space:nowrap;list-style:none}
details.ws-rcpt-more>summary::after{content:" ›"}
details.ws-rcpt-more[open]>summary::after{content:" ⌄"}
details.ws-rcpt-more[open]{min-width:280px}
@media (max-width:820px){
  table.ws-cmp thead{display:none}
  table.ws-cmp,table.ws-cmp tbody,table.ws-cmp tr,table.ws-cmp td{display:block;width:100%}
  table.ws-cmp tr{border:1px solid var(--u20-rule);border-radius:14px;padding:12px 14px;margin:0 0 12px;background:var(--u20-card)}
  table.ws-cmp td{border:0;padding:6px 0;display:flex;justify-content:space-between;gap:12px;align-items:baseline}
  table.ws-cmp td::before{content:attr(data-label);font-size:12.5px;color:var(--u20-ink-2);flex:0 0 auto}
  table.ws-cmp td:first-child{max-width:none;font-size:13px}
  table.ws-cmp td:first-child::before{content:"Row"}
  table.ws-cmp td.ws-c-rcpt{display:block}
  table.ws-cmp td.ws-c-rcpt::before{display:block;margin-bottom:4px}
  table.ws-cmp .ws-tix{font-size:24px}
}
/* U21b: fit at 1280 (no mid-word breaks), cards at 390 keep values visible */
#wsComparison .ws-table.ws-cmp{min-width:0}
table.ws-cmp th{padding:10px 8px}
table.ws-cmp td{padding:14px 8px}
table.ws-cmp td:first-child{width:7.5em;max-width:7.5em;font-size:12.5px;line-height:1.35}
table.ws-cmp td.ws-c-offer{min-width:6.5em}
table.ws-cmp td.ws-c-rcpt{white-space:nowrap}
@media (max-width:820px){
  table.ws-cmp td:first-child{width:auto;max-width:none}
  table.ws-cmp td{flex-wrap:wrap;text-align:right;min-width:0}
  table.ws-cmp td>*{min-width:0}
  table.ws-cmp td.ws-c-terms{display:block;text-align:left}
  table.ws-cmp td.ws-c-terms::before{display:block;margin-bottom:4px}
  table.ws-cmp td.ws-c-rcpt{white-space:normal;text-align:left}
}
@media (min-width:821px){
  table.ws-cmp td:first-child{min-width:8em;word-break:normal;overflow-wrap:normal;hyphens:none}
  table.ws-cmp th{white-space:normal;letter-spacing:.04em;vertical-align:bottom}
  table.ws-cmp td.ws-c-terms{min-width:12em}
  table.ws-cmp .ws-tix{font-size:26px}
}
@media (min-width:821px){
  table.ws-cmp th,table.ws-cmp td{word-break:normal;overflow-wrap:normal}
  table.ws-cmp .ws-tix,table.ws-cmp td.ws-c-cap{white-space:nowrap}
  table.ws-cmp td.ws-c-terms{min-width:0;max-width:15em}
}
