/* ── No-Deposit Bonuses — scoped page styles ─────────────────────────────
   Port of nodeposit-styles.css, scoped under body.btf-lb-page.
   Prototype dark-mode variants dropped (the live site is cream-only).
   Short prototype tokens (--forest, --gold, …) aliased onto --th-*.
   The "Best offers" list is rendered dynamically from the btf_bonus CPT
   (bonus_type = no_deposit) by the btf-lb-offers block.
   IMPORTANT: do NOT alias --ink (cycle with texas-holdem's --th-ink:var(--ink)).
   ──────────────────────────────────────────────────────────────────────── */

body.btf-lb-page {
	--forest:    var( --th-forest );
	--forest-2:  var( --th-forest-2 );
	--forest-3:  var( --th-forest-3 );
	--gold:      var( --th-gold );
	--gold-soft: var( --th-gold-soft );
	--cream:     var( --th-cream );
	--cream-2:   var( --th-cream-2 );
	--cream-3:   var( --th-cream-3 );
	--ink-2:     var( --th-ink-2 );
	--muted:     var( --th-muted );
	--hair:      var( --th-hair );
	--red:       var( --th-red );
	--serif:     var( --th-serif );
	--sans:      var( --th-sans );
	--mono:      var( --th-mono );
}

/* ── Selection on dark backgrounds (gold) ─────────────────────────────── */
body.btf-lb-page .btf-lb-hero ::selection,
body.btf-lb-page .btf-lb-hero::selection,
body.btf-lb-page .btf-lb-summary ::selection,
body.btf-lb-page .btf-lb-summary::selection { background: rgba( 212, 180, 74, .4 ); color: var( --on-dark ); }

/* ── Editorial sections wrapper ───────────────────────────────────────── */
body.btf-lb-page .btf-lb-section { padding: 4rem 0 3rem; scroll-margin-top: 80px; }
@media ( max-width: 800px ) { body.btf-lb-page .btf-lb-section { padding: 3rem 0 2rem; } }
body.btf-lb-page .btf-lb-section > .wrap > .btf-th-eyebrow { margin-bottom: .9rem; }
body.btf-lb-page .prose .btf-lb-section h2.btf-th-display,
body.btf-lb-page .btf-lb-section h2.btf-th-display { margin: 0 0 .55em; }
body.btf-lb-page .prose .btf-lb-section .btf-th-lede,
body.btf-lb-page .btf-lb-section .btf-th-lede { margin: 0 0 2rem; color: var( --ink-2 ); }
body.btf-lb-page .btf-lb-section .btf-th-lede b { color: var( --ink ); font-weight: 600; }

/* ── Hero card (honest headline) + stat strip ─────────────────────────── */
body.btf-lb-page .btf-lb-hero-cta { display: flex; gap: .8rem; flex-wrap: wrap; margin-top: 1.5rem; }
body.btf-lb-page .lb-hero-card { background: linear-gradient( 160deg, rgba( 201, 162, 74, .18 ), rgba( 243, 238, 226, .04 ) ); border: 1px solid rgba( 201, 162, 74, .32 ); border-radius: 18px; padding: 1.8rem 1.9rem; display: flex; flex-direction: column; gap: 1rem; }
body.btf-lb-page .lb-hero-card-tag { font-family: var( --mono ); font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; color: var( --gold-soft ); }
/* ── Hero card: the newest offer itself ───────────────────────────────────
   Replaced a process diagram (every-offer → old-vs-new) that described how we
   collect offers rather than showing one. Terms render only when we hold them,
   so the card never prints a row of em dashes. */
body.btf-lb-page .lb-newest { gap: .9rem; }
body.btf-lb-page .lb-newest-head { display: grid; grid-template-columns: 44px 1fr auto; gap: .8rem; align-items: center; }
body.btf-lb-page .lb-newest-avi { width: 44px; height: 44px; font-size: .75rem; }
body.btf-lb-page .lb-newest-id { display: flex; flex-direction: column; min-width: 0; }
body.btf-lb-page .lb-newest-id b { font-family: var( --serif ); font-weight: 500; font-size: 1.15rem; letter-spacing: -.01em; color: var( --cream ); }
body.btf-lb-page .lb-newest-id i { font-family: var( --mono ); font-style: normal; font-size: .58rem; letter-spacing: .07em; text-transform: uppercase; color: rgba( 243, 238, 226, .55 ); }
body.btf-lb-page .lb-newest-amount { display: flex; flex-direction: column; align-items: flex-end; text-align: right; }
body.btf-lb-page .lb-newest-amount b { font-family: var( --serif ); font-weight: 300; font-size: 2rem; line-height: 1; letter-spacing: -.02em; color: var( --gold-soft ); white-space: nowrap; }
body.btf-lb-page .lb-newest-amount i { font-family: var( --mono ); font-style: normal; font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; color: rgba( 243, 238, 226, .6 ); }
body.btf-lb-page .prose .lb-newest-note,
body.btf-lb-page .lb-newest-note { margin: 0; padding-top: .9rem; border-top: 1px solid rgba( 243, 238, 226, .14 ); font-family: var( --serif ); font-style: italic; font-size: .95rem; line-height: 1.5; color: rgba( 243, 238, 226, .82 ); }
body.btf-lb-page .lb-newest-terms { display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; }
body.btf-lb-page .lb-newest-terms span { display: flex; flex-direction: column; font-family: var( --serif ); font-size: 1rem; color: var( --cream ); }
body.btf-lb-page .lb-newest-terms i { font-family: var( --mono ); font-style: normal; font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; color: rgba( 243, 238, 226, .55 ); }
body.btf-lb-page .lb-newest-foot { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding-top: .9rem; border-top: 1px solid rgba( 243, 238, 226, .14 ); }
body.btf-lb-page .lb-newest-code { display: flex; flex-direction: column; gap: .15rem; }
body.btf-lb-page .lb-newest-code i { font-family: var( --mono ); font-style: normal; font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; color: rgba( 243, 238, 226, .55 ); }
body.btf-lb-page .lb-newest-code code { font-family: var( --mono ); font-size: .82rem; font-weight: 600; color: var( --gold-soft ); background: rgba( 243, 238, 226, .08 ); border: 1px dashed rgba( 201, 162, 74, .4 ); border-radius: 4px; padding: .22em .5em; }
body.btf-lb-page .lb-newest-btn { white-space: nowrap; }

body.btf-lb-page .lb-stats { display: grid; grid-template-columns: repeat( 3, 1fr ); gap: .8rem; margin-top: 2.2rem; }
@media ( max-width: 760px ) { body.btf-lb-page .lb-stats { grid-template-columns: 1fr 1fr; } }
@media ( max-width: 600px ) {
	body.btf-lb-page .lb-stats { display: flex; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; gap: .7rem; padding-bottom: .5rem; scrollbar-width: none; }
	body.btf-lb-page .lb-stats::-webkit-scrollbar { display: none; }
	body.btf-lb-page .lb-stat { flex: 0 0 72%; scroll-snap-align: start; }
}
body.btf-lb-page .lb-stat { display: grid; grid-template-columns: 32px 1fr; gap: .8rem; background: rgba( 243, 238, 226, .05 ); border: 1px solid rgba( 243, 238, 226, .12 ); border-radius: 12px; padding: 1rem 1.2rem; align-items: start; }
body.btf-lb-page .lb-stat-icon { font-size: 1.3rem; line-height: 1.2; }
body.btf-lb-page .lb-stat-text { display: flex; flex-direction: column; gap: .1rem; }
body.btf-lb-page .lb-stat-label { font-family: var( --mono ); font-size: .6rem; letter-spacing: .08em; text-transform: uppercase; color: var( --gold-soft ); }
body.btf-lb-page .lb-stat-text b { font-family: var( --serif ); font-weight: 500; font-size: 1.15rem; color: var( --cream ); letter-spacing: -.01em; }
body.btf-lb-page .lb-stat-text small { font-size: .76rem; line-height: 1.35; color: rgba( 243, 238, 226, .6 ); }

/* ── Offer cards (dynamic from CPT) ───────────────────────────────────── */
body.btf-lb-page .lb-offers { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media ( max-width: 760px ) { body.btf-lb-page .lb-offers { grid-template-columns: 1fr; } }
body.btf-lb-page .lb-offer { position: relative; background: var( --cream-2 ); border: 1px solid var( --hair ); border-radius: 16px; padding: 1.6rem 1.7rem; display: flex; flex-direction: column; border-top-width: 3px; }
body.btf-lb-page .lb-offer.good { border-top-color: var( --forest ); }
body.btf-lb-page .lb-offer.ok   { border-top-color: var( --gold ); }
body.btf-lb-page .lb-offer.pick { border-color: var( --gold ); box-shadow: 0 6px 28px rgba( 201, 162, 74, .16 ); }
body.btf-lb-page .lb-offer-ribbon { position: absolute; top: -1px; right: 1.4rem; background: var( --gold ); color: #fff; font-family: var( --mono ); font-size: .6rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; padding: .3em .7em; border-radius: 0 0 6px 6px; }
body.btf-lb-page .lb-offer-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding-bottom: 1.1rem; margin-bottom: 1.1rem; border-bottom: 1px solid var( --hair ); }
body.btf-lb-page .lb-offer-id { display: flex; align-items: center; gap: .7rem; }
body.btf-lb-page .lb-offer-rank { font-family: var( --serif ); font-weight: 300; font-size: 1.6rem; color: var( --muted ); }
body.btf-lb-page .lb-offer.pick .lb-offer-rank { color: var( --gold ); }
body.btf-lb-page .prose .lb-offer-id h3.btf-th-display,
body.btf-lb-page .lb-offer-id h3.btf-th-display { font-size: 1.3rem; margin: 0; line-height: 1.05; }
body.btf-lb-page .lb-offer-amount { text-align: right; flex-shrink: 0; }
body.btf-lb-page .lb-offer-amount b { font-family: var( --serif ); font-weight: 400; font-size: 2.1rem; letter-spacing: -.02em; line-height: 1; color: var( --forest ); display: block; }
body.btf-lb-page .lb-offer-amount span { font-family: var( --mono ); font-size: .58rem; letter-spacing: .06em; text-transform: uppercase; color: var( --muted ); }
body.btf-lb-page .prose .lb-offer-note,
body.btf-lb-page .lb-offer-note { margin: 0 0 1.2rem; font-size: .93rem; line-height: 1.55; color: var( --ink-2 ); flex: 1; }
body.btf-lb-page .lb-offer-terms { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; padding: 1.1rem 1.2rem; background: var( --cream ); border: 1px solid var( --hair ); border-radius: 10px; margin-bottom: 1.2rem; }
body.btf-lb-page .lb-term { display: flex; flex-direction: column; gap: .1rem; }
body.btf-lb-page .lb-term-k { font-family: var( --mono ); font-size: .58rem; letter-spacing: .06em; text-transform: uppercase; color: var( --muted ); }
body.btf-lb-page .lb-term-v { font-family: var( --serif ); font-weight: 500; font-size: 1.15rem; letter-spacing: -.01em; color: var( --ink ); }
body.btf-lb-page .lb-term-v.sm { font-size: .92rem; line-height: 1.2; }
body.btf-lb-page .lb-offer-foot { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
body.btf-lb-page .lb-offer-code { display: flex; flex-direction: column; gap: .2rem; }
body.btf-lb-page .lb-offer-code span { font-family: var( --mono ); font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; color: var( --muted ); }
body.btf-lb-page .lb-offer-code code { font-family: var( --mono ); font-size: .85rem; font-weight: 600; color: var( --forest ); background: rgba( 29, 52, 38, .07 ); padding: .25em .55em; border-radius: 4px; border: 1px dashed rgba( 29, 52, 38, .3 ); }
body.btf-lb-page .lb-offer-btn { white-space: nowrap; }
/* base.css gives .btn-primary a lift + drop-shadow on hover. That reads well on
   the dark felt hero, but inside a light offer card the shadow appears from
   nowhere under a pale button and looks like a smudge. Darken the fill instead —
   scoped to the claim button so the hero CTAs keep the site-standard lift. */
body.btf-lb-page .lb-offer-btn:hover,
body.btf-lb-page .lb-offer-btn:focus-visible {
	background: var( --cream-3 );
	color: var( --forest );
	transform: none;
	box-shadow: none;
}
/* ── Latest-offers table ──────────────────────────────────────────────────
   Same construction as the freerolls schedule: a CSS-grid table with a forest
   header bar, hairline rows, and a grid-area reflow on mobile rather than a
   sideways scroll. Column labels are repeated as ::before on the reflowed
   cells, since the header row is hidden there. */
body.btf-lb-page .lb-list { background: var( --cream-2 ); border: 1px solid var( --hair ); border-radius: 16px; overflow: hidden; }
body.btf-lb-page .lb-list-head,
body.btf-lb-page .lb-list-row { display: grid; grid-template-columns: 76px 1.25fr 1.6fr .85fr .8fr 104px; gap: 1rem; padding: .95rem 1.4rem; align-items: center; }
/* The header and each row are separate grid containers, so the last column
   must be a fixed width — leave it `auto` and it resolves to 0 in the empty
   header cell and to the button width in the rows, shifting every heading. */
body.btf-lb-page .lb-list-head { background: var( --forest ); }
body.btf-lb-page .lb-list-head span { font-family: var( --mono ); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 600; color: var( --gold-soft ); }
body.btf-lb-page .lb-list-row { border-bottom: 1px solid var( --hair ); transition: background .15s; }
body.btf-lb-page .lb-list-row:last-child { border-bottom: 0; }
body.btf-lb-page .lb-list-row:hover { background: var( --cream ); }
/* The newest row, highlighted the way the freerolls schedule marks a live game. */
body.btf-lb-page .lb-list-row:first-of-type { background: linear-gradient( 100deg, rgba( 201, 162, 74, .1 ), transparent 60% ); }

body.btf-lb-page .lb-list-date time { display: flex; flex-direction: column; line-height: 1.1; }
body.btf-lb-page .lb-list-date b { font-family: var( --mono ); font-weight: 600; font-size: .88rem; color: var( --ink ); font-style: normal; }
body.btf-lb-page .lb-list-date i { font-family: var( --mono ); font-style: normal; font-size: .62rem; letter-spacing: .05em; color: var( --muted ); }

body.btf-lb-page .lb-list-site { display: flex; align-items: center; gap: .6rem; min-width: 0; }
body.btf-lb-page .lb-list-avi { width: 32px; height: 32px; flex-shrink: 0; font-size: .6rem; }
body.btf-lb-page .lb-list-site a { font-family: var( --serif ); font-weight: 500; font-size: 1.02rem; letter-spacing: -.01em; color: var( --ink ); text-decoration: none; border-bottom: 1px solid transparent; }
body.btf-lb-page .lb-list-site a:hover { border-bottom-color: var( --gold ); }

body.btf-lb-page .lb-list-offer { display: flex; flex-direction: column; gap: .1rem; min-width: 0; }
body.btf-lb-page .lb-list-offer b { font-family: var( --serif ); font-weight: 500; font-size: 1.02rem; letter-spacing: -.01em; color: var( --ink ); }
body.btf-lb-page .lb-list-offer i { font-family: var( --mono ); font-style: normal; font-size: .62rem; letter-spacing: .04em; text-transform: uppercase; color: var( --muted ); }
body.btf-lb-page .lb-list-offer code { font-family: var( --mono ); font-size: .62rem; font-weight: 600; color: var( --forest ); text-transform: none; letter-spacing: 0; }

body.btf-lb-page .lb-list-wag,
body.btf-lb-page .lb-list-min { font-family: var( --serif ); font-weight: 500; font-size: 1.05rem; color: var( --ink ); }
body.btf-lb-page .lb-list-wag.sm { font-size: .82rem; line-height: 1.25; }
body.btf-lb-page .lb-list-cta { justify-self: end; }
body.btf-lb-page .lb-list-cta .lb-offer-btn { padding: .5em 1em; font-size: .8rem; }

@media ( max-width: 860px ) {
	body.btf-lb-page .lb-list-head { display: none; }
	body.btf-lb-page .lb-list-row {
		grid-template-columns: 62px 1fr auto;
		grid-template-areas: "date site  cta"
		                     "date offer cta"
		                     "date wag   cta"
		                     "date min   cta";
		row-gap: .25rem; column-gap: .9rem; padding: 1.1rem 1.2rem;
	}
	body.btf-lb-page .lb-list-date  { grid-area: date; align-self: start; }
	body.btf-lb-page .lb-list-site  { grid-area: site; }
	body.btf-lb-page .lb-list-offer { grid-area: offer; }
	body.btf-lb-page .lb-list-wag   { grid-area: wag; }
	body.btf-lb-page .lb-list-min   { grid-area: min; }
	body.btf-lb-page .lb-list-cta   { grid-area: cta; align-self: center; }
	body.btf-lb-page .lb-list-avi   { width: 26px; height: 26px; }
	body.btf-lb-page .lb-list-wag,
	body.btf-lb-page .lb-list-min { font-size: .9rem; }
	/* The header row is gone here, so each figure carries its own label. */
	body.btf-lb-page .lb-list-wag::before { content: "Wagering "; }
	body.btf-lb-page .lb-list-min::before { content: "Min deposit "; }
	body.btf-lb-page .lb-list-wag::before,
	body.btf-lb-page .lb-list-min::before { font-family: var( --mono ); font-size: .58rem; letter-spacing: .06em; text-transform: uppercase; color: var( --muted ); }
}

body.btf-lb-page .prose .lb-list-note,
body.btf-lb-page .lb-list-note { margin: .9rem 0 0; font-size: .82rem; line-height: 1.5; color: var( --muted ); }

body.btf-lb-page .prose .lb-offers-disclosure,
body.btf-lb-page .lb-offers-disclosure { margin: 1.4rem 0 0; font-size: .82rem; line-height: 1.5; color: var( --muted ); }
body.btf-lb-page .lb-offers-disclosure a { color: var( --forest ); text-decoration: underline; }
body.btf-lb-page .lb-offers-empty { background: var( --cream-2 ); border: 1px dashed var( --hair ); border-radius: 16px; padding: 2.2rem; text-align: center; color: var( --ink-2 ); font-size: 1rem; line-height: 1.6; }

/* ── Flow ─────────────────────────────────────────────────────────────── */
body.btf-lb-page .lb-flow { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
@media ( max-width: 700px ) { body.btf-lb-page .lb-flow { grid-template-columns: 1fr; } }
body.btf-lb-page .lb-flow-step { display: grid; grid-template-columns: 40px 1fr; gap: 1rem; background: var( --cream-2 ); border: 1px solid var( --hair ); border-radius: 12px; padding: 1.3rem 1.4rem; align-items: start; }
body.btf-lb-page .lb-flow-step.key { border-color: var( --gold ); background: linear-gradient( 100deg, rgba( 201, 162, 74, .08 ), var( --cream-2 ) 55% ); }
body.btf-lb-page .lb-flow-n { width: 34px; height: 34px; border-radius: 50%; background: var( --forest ); color: var( --cream ); display: grid; place-items: center; font-family: var( --serif ); font-size: 1.15rem; }
body.btf-lb-page .lb-flow-step.key .lb-flow-n { background: var( --gold ); color: #fff; }
body.btf-lb-page .prose .lb-flow-text h4.btf-th-display,
body.btf-lb-page .lb-flow-text h4.btf-th-display { font-size: 1.12rem; margin: 0 0 .3em; }
body.btf-lb-page .prose .lb-flow-text p,
body.btf-lb-page .lb-flow-text p { margin: 0; font-size: .9rem; line-height: 1.5; color: var( --ink-2 ); }

/* ── Traps ────────────────────────────────────────────────────────────── */
body.btf-lb-page .lb-traps { display: grid; grid-template-columns: repeat( 3, 1fr ); gap: 1rem; }
@media ( max-width: 860px ) { body.btf-lb-page .lb-traps { grid-template-columns: 1fr 1fr; } }
@media ( max-width: 520px ) { body.btf-lb-page .lb-traps { grid-template-columns: 1fr; } }
body.btf-lb-page .lb-trap { background: var( --cream-2 ); border: 1px solid var( --hair ); border-radius: 14px; padding: 1.5rem 1.6rem; border-left-width: 3px; }
body.btf-lb-page .lb-trap.sev-high { border-left-color: var( --red ); }
body.btf-lb-page .lb-trap.sev-med  { border-left-color: var( --gold ); }
body.btf-lb-page .lb-trap.sev-low  { border-left-color: var( --ink-2 ); }
body.btf-lb-page .lb-trap-head { display: flex; align-items: center; gap: .6rem; margin-bottom: .7rem; flex-wrap: wrap; }
body.btf-lb-page .lb-trap-icon { font-size: 1.4rem; line-height: 1; }
body.btf-lb-page .prose .lb-trap-head h4.btf-th-display,
body.btf-lb-page .lb-trap-head h4.btf-th-display { font-size: 1.12rem; margin: 0; flex: 1; }
body.btf-lb-page .lb-trap-sev { font-family: var( --mono ); font-size: .56rem; letter-spacing: .06em; text-transform: uppercase; font-weight: 700; padding: .25em .5em; border-radius: 4px; }
body.btf-lb-page .lb-trap-sev.sev-high { background: rgba( 139, 36, 36, .12 ); color: var( --red ); }
body.btf-lb-page .lb-trap-sev.sev-med  { background: rgba( 201, 162, 74, .18 ); color: #7d5e1a; }
body.btf-lb-page .lb-trap-sev.sev-low  { background: var( --cream-3 ); color: var( --muted ); }
body.btf-lb-page .prose .lb-trap p,
body.btf-lb-page .lb-trap p { margin: 0; font-size: .9rem; line-height: 1.55; color: var( --ink-2 ); }

/* ── Wagering math ────────────────────────────────────────────────────── */
body.btf-lb-page .lb-math { background: var( --cream-2 ); border: 1px solid var( --hair ); border-radius: 16px; padding: 1.8rem; }
body.btf-lb-page .lb-math-track { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: .9rem; align-items: center; margin-bottom: 1.4rem; }
@media ( max-width: 640px ) { body.btf-lb-page .lb-math-track { grid-template-columns: 1fr; } body.btf-lb-page .lb-math-op { justify-self: center; transform: rotate( 90deg ); } }
body.btf-lb-page .lb-math-cell { background: var( --cream ); border: 1px solid var( --hair ); border-radius: 12px; padding: 1.2rem 1rem; display: flex; flex-direction: column; align-items: center; gap: .2rem; text-align: center; }
body.btf-lb-page .lb-math-cell.hi { background: var( --forest ); border-color: var( --forest ); }
body.btf-lb-page .lb-math-k { font-family: var( --mono ); font-size: .6rem; letter-spacing: .06em; text-transform: uppercase; color: var( --muted ); }
body.btf-lb-page .lb-math-cell.hi .lb-math-k { color: var( --gold-soft ); }
body.btf-lb-page .lb-math-cell b { font-family: var( --serif ); font-weight: 400; font-size: 2rem; letter-spacing: -.02em; line-height: 1; color: var( --ink ); }
body.btf-lb-page .lb-math-cell.hi b { color: var( --cream ); }
body.btf-lb-page .lb-math-sub { font-size: .76rem; color: var( --ink-2 ); }
body.btf-lb-page .lb-math-cell.hi .lb-math-sub { color: rgba( 243, 238, 226, .75 ); }
body.btf-lb-page .lb-math-op { font-family: var( --serif ); font-size: 1.5rem; color: var( --muted ); }
body.btf-lb-page .lb-math-result { background: var( --cream ); border: 1px solid var( --hair ); border-left: 3px solid var( --red ); border-radius: 0 10px 10px 0; padding: 1.2rem 1.4rem; }
body.btf-lb-page .prose .lb-math-result p,
body.btf-lb-page .lb-math-result p { margin: 0; font-size: 1rem; line-height: 1.65; color: var( --ink-2 ); }
body.btf-lb-page .lb-math-result b { color: var( --ink ); }

/* ── Reality quote ────────────────────────────────────────────────────── */
body.btf-lb-page .lb-reality { margin-top: 1.4rem; background: var( --forest ); border-radius: 16px; padding: 2rem 2.2rem; position: relative; }
body.btf-lb-page .lb-reality-mark { font-family: var( --serif ); font-size: 3.5rem; line-height: .6; color: var( --gold-soft ); display: block; margin-bottom: .3rem; }
body.btf-lb-page .prose .lb-reality h3.btf-th-display,
body.btf-lb-page .lb-reality h3.btf-th-display { font-size: 1.6rem; color: var( --cream ); margin: 0 0 .6em; max-width: 32ch; }
body.btf-lb-page .prose .lb-reality p,
body.btf-lb-page .lb-reality p { margin: 0; font-size: 1.02rem; line-height: 1.65; color: rgba( 243, 238, 226, .85 ); max-width: 76ch; }

/* ── Verdict ──────────────────────────────────────────────────────────── */
body.btf-lb-page .lb-verdict { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media ( max-width: 700px ) { body.btf-lb-page .lb-verdict { grid-template-columns: 1fr; } }
body.btf-lb-page .lb-verdict-col { border-radius: 16px; padding: 1.7rem 1.9rem; border: 1px solid var( --hair ); }
body.btf-lb-page .lb-verdict-col.claim { background: rgba( 29, 52, 38, .06 ); border-color: rgba( 29, 52, 38, .2 ); }
body.btf-lb-page .lb-verdict-col.skip  { background: rgba( 139, 36, 36, .05 ); border-color: rgba( 139, 36, 36, .2 ); }
body.btf-lb-page .lb-verdict-tag { font-family: var( --mono ); font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; display: block; margin-bottom: 1.1rem; }
body.btf-lb-page .lb-verdict-col.claim .lb-verdict-tag { color: var( --forest ); }
body.btf-lb-page .lb-verdict-col.skip .lb-verdict-tag  { color: var( --red ); }
body.btf-lb-page .lb-verdict-col ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: .85rem; }
body.btf-lb-page .lb-verdict-col li { position: relative; padding-left: 1.9em; font-size: .98rem; line-height: 1.5; color: var( --ink ); }
body.btf-lb-page .lb-verdict-col li::before { position: absolute; left: 0; top: -.05em; font-family: var( --mono ); font-weight: 700; font-size: 1.1em; }
body.btf-lb-page .lb-verdict-col.claim li::before { content: "\2713"; color: var( --forest ); }
body.btf-lb-page .lb-verdict-col.skip li::before  { content: "\2715"; color: var( --red ); }

/* ── Callout (verdict "one rule") ─────────────────────────────────────── */
body.btf-lb-page .lb-callout { display: flex; flex-direction: column; gap: .6rem; align-items: flex-start; padding: 1.1rem 1.3rem; border-radius: 10px; margin: 1.4rem 0 0; font-size: .95rem; line-height: 1.6; background: rgba( 29, 52, 38, .07 ); border: 1px solid rgba( 29, 52, 38, .18 ); color: var( --ink ); }
body.btf-lb-page .lb-callout-icon { font-family: var( --mono ); font-size: .68rem; letter-spacing: .12em; font-weight: 700; padding: .25rem .55rem; border-radius: 3px; text-transform: uppercase; background: var( --forest ); color: var( --cream ); align-self: flex-start; }
body.btf-lb-page .lb-callout-body b { font-weight: 700; }

/* ── Summary (forest felt) ────────────────────────────────────────────── */
body.btf-lb-page .btf-lb-summary { background: var( --forest ); color: var( --cream ); padding: 4.5rem 0; margin-top: 1rem; }
body.btf-lb-page .btf-lb-sm-eyebrow { font-family: var( --mono ); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var( --gold-soft ); }
body.btf-lb-page .prose .btf-lb-sm-display,
body.btf-lb-page .btf-lb-sm-display { font-family: var( --serif ); font-weight: 300; font-size: clamp( 1.9rem, 4vw, 2.6rem ); letter-spacing: -.02em; color: var( --cream ); margin: .4em 0 1em; }
body.btf-lb-page .btf-lb-sm-display em { color: var( --gold-soft ); font-style: italic; }
body.btf-lb-page .btf-lb-summary-grid { display: grid; grid-template-columns: repeat( 3, 1fr ); gap: 1.2rem; }
@media ( max-width: 760px ) { body.btf-lb-page .btf-lb-summary-grid { grid-template-columns: 1fr; } }
body.btf-lb-page .btf-lb-summary-card { background: rgba( 243, 238, 226, .05 ); border: 1px solid rgba( 243, 238, 226, .12 ); border-radius: 14px; padding: 1.6rem 1.7rem; }
body.btf-lb-page .btf-lb-summary-num { font-family: var( --mono ); font-size: .85rem; font-weight: 600; color: var( --gold-soft ); }
body.btf-lb-page .prose .btf-lb-summary-card h4.btf-th-display,
body.btf-lb-page .btf-lb-summary-card h4.btf-th-display { font-size: 1.2rem; color: var( --cream ); margin: .5rem 0 .5em; }
body.btf-lb-page .prose .btf-lb-summary-card p,
body.btf-lb-page .btf-lb-summary-card p { margin: 0; font-size: .95rem; line-height: 1.6; color: rgba( 243, 238, 226, .82 ); }
