/* ──────────────────────────────────────────────────────────────────────────
 * Continuation Bets masterclass — page-scoped styles.
 *
 * Loaded only on /poker/strategy/continuation-bets/ (gate is
 * btf_is_cb_page() in functions.php). Sits on top of texas-holdem.css
 * and reuses --th-* design tokens.
 *
 * Cascade gotchas pre-baked (learned across previous masterclass builds):
 *   1. base.css `.section-paper > .wrap p:not([class])` wins over a
 *      plain rule — use `.prose` chains in selectors.
 *   2. `body.btf-th-page .prose p { margin: 0 }` strips paragraph
 *      margins.
 *   3. `.btf-th-eyebrow` is `display: flex` with a `::before` dash —
 *      don't override display.
 *   4. UA `[hidden] { display: none }` is overridden by explicit
 *      `display: flex`. Force-hide where needed.
 *   5. Selection on dark backgrounds → gold highlight.
 *   6. Hero CTAs use site-standard `.btn-primary` / `.btn-ghost`.
 *   7. Inline labels in widget halves get their `::before` dash hidden.
 *   8. Green/red feedback uses solid mint #dcebdf / pink #f5dcdc —
 *      low-alpha forest mixes to gray on cream.
 * ──────────────────────────────────────────────────────────── */

/* ── Selection on dark backgrounds ───────────────────────────────────── */
body.btf-cb-page .btf-cb-hero ::selection,
body.btf-cb-page .btf-cb-hero::selection,
body.btf-cb-page .btf-cb-hero-quote ::selection,
body.btf-cb-page .btf-cb-hero-quote::selection,
body.btf-cb-page .btf-cb-summary ::selection,
body.btf-cb-page .btf-cb-summary::selection,
body.btf-cb-page .btf-cb-board-tile.active ::selection,
body.btf-cb-page .btf-cb-board-tile.active::selection,
body.btf-cb-page .btf-cb-story-tab.active ::selection,
body.btf-cb-page .btf-cb-story-tab.active::selection {
	background: rgba( 212, 180, 74, .4 );
	color: var( --on-dark );
}

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

/* ── Section wrappers + editorial spacing ────────────────────────────── */
body.btf-cb-page .btf-cb-section {
	padding: 4rem 0 3rem;
	scroll-margin-top: 80px;
}
body.btf-cb-page .btf-cb-section > .wrap > .btf-th-eyebrow {
	margin-bottom: .9rem;
}
body.btf-cb-page .prose .btf-cb-section h2.btf-th-display {
	margin: 0 0 .55em;
}
body.btf-cb-page .prose .btf-cb-section .btf-th-lede,
body.btf-cb-page .btf-cb-section .btf-th-lede {
	margin: 0 0 2rem;
	color: var( --btf-cb-ink-2 );
}

/* ── Hero ────────────────────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-hero-body {
	display: grid;
	grid-template-columns: 1.6fr 1fr;
	gap: 2rem;
}
@media ( max-width: 880px ) {
	body.btf-cb-page .btf-cb-hero-body { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-hero-cta {
	display: flex;
	gap: .7rem;
	flex-wrap: wrap;
	margin-top: 1.4rem;
}
body.btf-cb-page .btf-cb-hero-quote {
	background: rgba( 255, 255, 255, .04 );
	border: 1px solid rgba( 255, 255, 255, .1 );
	border-radius: 14px;
	padding: 1.6rem 1.6rem 1.4rem;
	color: var( --btf-cb-cream );
	position: relative;
	font-family: var( --btf-cb-serif );
}
body.btf-cb-page .btf-cb-hq-mark {
	position: absolute;
	top: -.2em;
	left: .6rem;
	font-family: var( --btf-cb-serif );
	font-size: 5rem;
	line-height: 1;
	color: var( --btf-cb-gold-soft );
	opacity: .4;
}
body.btf-cb-page .prose .btf-cb-hero-quote p {
	font-size: 1.18rem;
	line-height: 1.55;
	margin: 1.5rem 0 1rem;
	color: rgba( 255, 255, 255, .92 );
}
body.btf-cb-page .btf-cb-hero-quote p em {
	color: var( --btf-cb-gold-soft );
	font-style: italic;
}
body.btf-cb-page .btf-cb-hero-quote footer {
	font-family: var( --btf-cb-mono );
	font-size: .68rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: rgba( 255, 255, 255, .5 );
}

/* ── Cards ───────────────────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-card {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 60px;
	background: #fff;
	border: 1px solid rgba( 28, 24, 20, .18 );
	border-radius: 5px;
	box-shadow: 0 1px 2px rgba( 0, 0, 0, .12 ), 0 2px 6px rgba( 0, 0, 0, .06 );
	font-family: var( --btf-cb-serif );
	line-height: 1;
}
body.btf-cb-page .btf-cb-card .rank { font-size: 1.2rem; font-weight: 400; }
body.btf-cb-page .btf-cb-card .suit { font-size: 1.1rem; margin-top: .15em; }
body.btf-cb-page .btf-cb-card .rank.is-ten { letter-spacing: -.08em; font-size: 1.05rem; }
body.btf-cb-page .btf-cb-card--red   { color: #b03a3a; }
body.btf-cb-page .btf-cb-card--black { color: var( --btf-cb-ink ); }
/* Smaller cards inside board-tile flop preview. */
body.btf-cb-page .btf-cb-board-flop .btf-cb-card { width: 36px; height: 50px; }
body.btf-cb-page .btf-cb-board-flop .btf-cb-card .rank { font-size: 1rem; }
body.btf-cb-page .btf-cb-board-flop .btf-cb-card .suit { font-size: .9rem; }
body.btf-cb-page .btf-cb-board-flop .btf-cb-card .rank.is-ten { font-size: .9rem; }

/* ── Fire test ───────────────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-fit {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 14px;
	overflow: hidden;
}
body.btf-cb-page .btf-cb-fit-grid { padding: 0; }
body.btf-cb-page .btf-cb-fit-row {
	padding: 1.4rem 1.6rem;
	border-bottom: 1px solid var( --btf-cb-hair );
}
body.btf-cb-page .btf-cb-fit-row:last-child { border-bottom: 0; }
body.btf-cb-page .btf-cb-fit-q h4 {
	font-family: var( --btf-cb-serif );
	font-weight: 500;
	font-size: 1.2rem;
	letter-spacing: -.01em;
	margin: 0 0 .8rem;
	color: var( --btf-cb-ink );
}
body.btf-cb-page .btf-cb-fit-opts {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: .5rem;
}
@media ( max-width: 700px ) {
	body.btf-cb-page .btf-cb-fit-opts { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-fit-opt {
	background: var( --btf-cb-cream );
	border: 1.5px solid rgba( 28, 24, 20, .12 );
	border-radius: 8px;
	padding: .85rem 1rem;
	cursor: pointer;
	font: inherit;
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: .8rem;
	color: var( --btf-cb-ink );
	transition: border-color .15s, box-shadow .15s, background .15s;
}
body.btf-cb-page .btf-cb-fit-opt:hover {
	border-color: var( --btf-cb-forest );
	box-shadow: 0 1px 0 rgba( 29, 52, 38, .12 ), 0 4px 12px rgba( 29, 52, 38, .06 );
}
body.btf-cb-page .btf-cb-fit-opt b {
	font-family: var( --btf-cb-sans );
	font-weight: 500;
	font-size: .95rem;
}
body.btf-cb-page .btf-cb-fit-weight {
	font-family: var( --btf-cb-mono );
	font-size: .78rem;
	letter-spacing: .05em;
	color: var( --btf-cb-muted );
}
body.btf-cb-page .btf-cb-fit-opt.active.good {
	background: var( --btf-cb-forest );
	border-color: var( --btf-cb-forest );
	color: var( --btf-cb-cream );
}
body.btf-cb-page .btf-cb-fit-opt.active.good .btf-cb-fit-weight { color: var( --btf-cb-gold-soft ); }
body.btf-cb-page .btf-cb-fit-opt.active.bad {
	background: var( --btf-cb-red );
	border-color: var( --btf-cb-red );
	color: var( --btf-cb-cream );
}
body.btf-cb-page .btf-cb-fit-opt.active.bad .btf-cb-fit-weight { color: rgba( 255, 255, 255, .7 ); }
body.btf-cb-page .btf-cb-fit-opt.active.neutral {
	background: var( --btf-cb-ink );
	border-color: var( --btf-cb-ink );
	color: var( --btf-cb-cream );
}
body.btf-cb-page .btf-cb-fit-opt.active.neutral .btf-cb-fit-weight { color: rgba( 243, 238, 226, .65 ); }

body.btf-cb-page .prose .btf-cb-fit-explainer,
body.btf-cb-page .btf-cb-fit-explainer {
	margin: .8rem 0 0;
	padding: .8rem 1rem;
	background: var( --btf-cb-cream );
	border-left: 3px solid var( --btf-cb-gold );
	border-radius: 0 6px 6px 0;
	font-family: var( --btf-cb-serif );
	font-size: 1rem;
	line-height: 1.55;
	color: var( --btf-cb-ink-2 );
}
body.btf-cb-page .btf-cb-fit-explainer[hidden] { display: none; }

body.btf-cb-page .btf-cb-fit-verdict {
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 2rem;
	padding: 1.5rem 1.6rem;
	background: var( --btf-cb-cream-3 );
	border-top: 1px solid var( --btf-cb-hair );
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-fit-verdict { grid-template-columns: 1fr; gap: 1rem; }
}
body.btf-cb-page .btf-cb-fit-num {
	font-family: var( --btf-cb-serif );
	font-size: 3rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: -.02em;
	color: var( --btf-cb-ink );
	transition: color .25s;
}
body.btf-cb-page .btf-cb-fit-verdict.good .btf-cb-fit-num { color: var( --btf-cb-forest ); }
body.btf-cb-page .btf-cb-fit-verdict.bad .btf-cb-fit-num  { color: var( --btf-cb-red ); }
body.btf-cb-page .btf-cb-fit-meter {
	height: 10px;
	background: var( --btf-cb-cream );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 5px;
	position: relative;
	margin-top: .5rem;
	overflow: hidden;
}
body.btf-cb-page .btf-cb-fit-meter-zero {
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	width: 1px;
	background: var( --btf-cb-ink-2 );
	z-index: 1;
}
body.btf-cb-page .btf-cb-fit-meter-fill {
	position: absolute;
	top: 0;
	bottom: 0;
	transition: all .3s;
}
body.btf-cb-page .prose .btf-cb-fit-verdict-text p,
body.btf-cb-page .btf-cb-fit-verdict-text p {
	margin: .4em 0 0;
	font-size: 1rem;
	line-height: 1.55;
	color: var( --btf-cb-ink );
	font-family: var( --btf-cb-serif );
}

/* ── Boards grid ─────────────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-boards-grid {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: .7rem;
	margin-bottom: 1.4rem;
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-boards-grid { grid-template-columns: 1fr 1fr; }
}
body.btf-cb-page .btf-cb-board-tile {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 12px;
	padding: 1.1rem 1.2rem;
	cursor: pointer;
	text-align: left;
	font: inherit;
	display: flex;
	flex-direction: column;
	gap: .6rem;
	color: var( --btf-cb-ink );
	transition: border-color .15s, box-shadow .15s, background .15s;
}
body.btf-cb-page .btf-cb-board-tile:hover {
	border-color: var( --btf-cb-forest );
	box-shadow: 0 1px 0 rgba( 29, 52, 38, .12 ), 0 4px 12px rgba( 29, 52, 38, .06 );
}
body.btf-cb-page .btf-cb-board-tile.active {
	background: var( --btf-cb-forest );
	border-color: var( --btf-cb-forest );
	color: var( --btf-cb-cream );
}
body.btf-cb-page .btf-cb-board-flop {
	display: flex;
	gap: .3rem;
}
body.btf-cb-page .btf-cb-board-name {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.1rem;
	letter-spacing: -.01em;
}
body.btf-cb-page .btf-cb-board-verdict {
	font-family: var( --btf-cb-mono );
	font-size: .7rem;
	letter-spacing: .14em;
	font-weight: 600;
	padding: .2em .55em;
	border-radius: 3px;
	align-self: flex-start;
}
body.btf-cb-page .btf-cb-board-verdict.good { background: rgba( 29, 52, 38, .12 ); color: var( --btf-cb-forest ); }
body.btf-cb-page .btf-cb-board-verdict.ok   { background: rgba( 201, 162, 74, .18 ); color: #7d5e1a; }
body.btf-cb-page .btf-cb-board-verdict.bad  { background: rgba( 139, 36, 36, .12 ); color: var( --btf-cb-red ); }
body.btf-cb-page .btf-cb-board-tile.active .btf-cb-board-verdict.good,
body.btf-cb-page .btf-cb-board-tile.active .btf-cb-board-verdict.ok   { background: rgba( 201, 162, 74, .25 ); color: var( --btf-cb-gold-soft ); }
body.btf-cb-page .btf-cb-board-tile.active .btf-cb-board-verdict.bad  { background: rgba( 255, 255, 255, .15 ); color: rgba( 255, 255, 255, .85 ); }

body.btf-cb-page .btf-cb-board-detail {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 14px;
	padding: 1.6rem 1.8rem;
}
body.btf-cb-page .btf-cb-board-head { margin-bottom: 1.2rem; }
body.btf-cb-page .btf-cb-board-h {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.6rem;
	margin: .3em 0 .5em;
	letter-spacing: -.01em;
	color: var( --btf-cb-ink );
}
body.btf-cb-page .btf-cb-board-flop-big {
	display: flex;
	gap: .5rem;
	justify-content: center;
	padding: 1.5rem;
	background: var( --btf-cb-cream-3 );
	border-radius: 10px;
	margin-bottom: 1.2rem;
}
body.btf-cb-page .btf-cb-board-bars {
	display: flex;
	flex-direction: column;
	gap: .8rem;
	margin-bottom: 1.2rem;
}
body.btf-cb-page .btf-cb-board-bar-row {
	display: grid;
	grid-template-columns: 160px 1fr 60px;
	gap: 1rem;
	align-items: center;
}
@media ( max-width: 600px ) {
	body.btf-cb-page .btf-cb-board-bar-row { grid-template-columns: 1fr; gap: .3rem; }
}
body.btf-cb-page .btf-cb-board-bar-l {
	font-family: var( --btf-cb-mono );
	font-size: .72rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var( --btf-cb-ink-2 );
}
body.btf-cb-page .btf-cb-board-bar {
	height: 14px;
	background: var( --btf-cb-cream-3 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 7px;
	overflow: hidden;
}
body.btf-cb-page .btf-cb-board-bar-fill {
	display: block;
	height: 100%;
	transition: width .3s;
}
body.btf-cb-page .btf-cb-board-bar-fill.hero    { background: linear-gradient( 90deg, var( --btf-cb-forest ), var( --btf-cb-forest-3 ) ); }
body.btf-cb-page .btf-cb-board-bar-fill.villain { background: var( --btf-cb-red ); }
body.btf-cb-page .btf-cb-board-bar-pct {
	font-family: var( --btf-cb-serif );
	font-size: 1.2rem;
	font-weight: 500;
	color: var( --btf-cb-ink );
	text-align: right;
}

/* ── Stories ─────────────────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-story-tabs {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: .5rem;
	margin-bottom: 1.4rem;
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-story-tabs { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-story-tab {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 10px;
	padding: 1rem 1.1rem;
	cursor: pointer;
	text-align: left;
	display: flex;
	flex-direction: column;
	gap: .35em;
	font: inherit;
	color: var( --btf-cb-ink );
	transition: border-color .15s, box-shadow .15s, background .15s;
}
body.btf-cb-page .btf-cb-story-tab:hover {
	border-color: var( --btf-cb-forest );
	box-shadow: 0 1px 0 rgba( 29, 52, 38, .12 ), 0 4px 12px rgba( 29, 52, 38, .06 );
}
body.btf-cb-page .btf-cb-story-tab.active {
	background: var( --btf-cb-forest );
	border-color: var( --btf-cb-forest );
	color: var( --btf-cb-cream );
}
body.btf-cb-page .btf-cb-story-tabnum {
	font-family: var( --btf-cb-mono );
	font-size: .7rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var( --btf-cb-muted );
}
body.btf-cb-page .btf-cb-story-tab.active .btf-cb-story-tabnum { color: var( --btf-cb-gold-soft ); }
body.btf-cb-page .btf-cb-story-tab b {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.1rem;
	letter-spacing: -.01em;
}

body.btf-cb-page .btf-cb-story-card {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 14px;
	padding: 1.6rem 1.8rem;
}
body.btf-cb-page .btf-cb-story-head {
	padding-bottom: 1rem;
	border-bottom: 1px solid var( --btf-cb-hair );
	margin-bottom: 1.2rem;
}
body.btf-cb-page .btf-cb-story-h {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.6rem;
	margin: .3em 0;
	letter-spacing: -.01em;
	color: var( --btf-cb-ink );
}
body.btf-cb-page .btf-cb-story-table {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	padding: 1.2rem;
	background: var( --btf-cb-cream-3 );
	border-radius: 10px;
	margin-bottom: 1.2rem;
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-story-table { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-story-half {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .55rem;
}
body.btf-cb-page .btf-cb-story-cards {
	display: flex;
	gap: .4rem;
	justify-content: center;
}
body.btf-cb-page .btf-cb-story-play {
	padding: 1rem 1.2rem;
	background: var( --btf-cb-cream );
	border: 1px solid var( --btf-cb-hair );
	border-left: 3px solid var( --btf-cb-forest );
	border-radius: 0 8px 8px 0;
	margin-bottom: 1rem;
}
body.btf-cb-page .btf-cb-story-play.bad { border-left-color: var( --btf-cb-red ); }
body.btf-cb-page .prose .btf-cb-story-play p,
body.btf-cb-page .btf-cb-story-play p {
	font-family: var( --btf-cb-serif );
	font-size: 1.3rem;
	font-weight: 400;
	margin: .3em 0 0;
	color: var( --btf-cb-ink );
}

/* ── Second barrel (Fire vs Shut down cards) ─────────────────────────── */
body.btf-cb-page .btf-cb-turn {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-turn { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-turn-card {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 12px;
	padding: 1.4rem 1.6rem;
}
body.btf-cb-page .btf-cb-turn-card.good { border-left: 3px solid var( --btf-cb-forest ); }
body.btf-cb-page .btf-cb-turn-card.bad  { border-left: 3px solid var( --btf-cb-red ); }
body.btf-cb-page .btf-cb-turn-card ul {
	/* base.css resets `ul, ol { list-style: none }` globally; only
	 * `.prose > ul` direct children get bullets back. Restore here. */
	list-style: disc;
	margin: .8em 0 0;
	padding-left: 1.4em;
	font-size: .95rem;
	line-height: 1.7;
	color: var( --btf-cb-ink-2 );
}
body.btf-cb-page .btf-cb-turn-card ul li::marker { color: var( --btf-cb-gold ); }
body.btf-cb-page .btf-cb-turn-card li { margin-bottom: .35em; }
body.btf-cb-page .btf-cb-turn-card li b { color: var( --btf-cb-ink ); }

/* ── Defense — c-bet tells ───────────────────────────────────────────── */
body.btf-cb-page .btf-cb-defense {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}
@media ( max-width: 760px ) {
	body.btf-cb-page .btf-cb-defense { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-tell {
	background: var( --btf-cb-cream-2 );
	border: 1px solid var( --btf-cb-hair );
	border-radius: 12px;
	padding: 1.4rem 1.5rem;
}
body.btf-cb-page .btf-cb-tell-head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	margin-bottom: .6rem;
	padding-bottom: .6rem;
	border-bottom: 1px dashed var( --btf-cb-hair );
}
body.btf-cb-page .btf-cb-tell-h {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.15rem;
	margin: 0;
	letter-spacing: -.01em;
	color: var( --btf-cb-ink );
}
body.btf-cb-page .btf-cb-tell-action {
	font-family: var( --btf-cb-mono );
	font-size: .7rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var( --btf-cb-forest );
	background: rgba( 29, 52, 38, .08 );
	padding: .25em .6em;
	border-radius: 3px;
	font-weight: 600;
	white-space: nowrap;
}
body.btf-cb-page .prose .btf-cb-tell p,
body.btf-cb-page .btf-cb-tell p {
	margin: 0;
	font-size: .95rem;
	line-height: 1.55;
	color: var( --btf-cb-ink-2 );
}

/* ── Callouts (tip / pro / pitfall) ──────────────────────────────────── */
body.btf-cb-page .btf-cb-callout:not([hidden]) {
	display: flex;
	gap: 1rem;
	padding: 1rem 1.2rem;
	margin: 1.4rem 0 0;
	border-radius: 10px;
	border: 1px solid;
	align-items: flex-start;
}
body.btf-cb-page .btf-cb-callout.tip {
	background: rgba( 217, 228, 210, .35 );
	border-color: rgba( 45, 74, 42, .15 );
	color: var( --th-tip-ink );
}
body.btf-cb-page .btf-cb-callout.pro {
	background: #dcebdf;
	border-color: var( --btf-cb-forest );
	color: var( --btf-cb-forest );
}
body.btf-cb-page .btf-cb-callout.pitfall {
	background: #f5dcdc;
	border-color: var( --btf-cb-red );
	color: var( --btf-cb-red );
}
body.btf-cb-page .btf-cb-callout-icon {
	flex-shrink: 0;
	font-family: var( --btf-cb-mono );
	font-size: .7rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	font-weight: 600;
	padding: .25em .55em;
	border-radius: 3px;
	background: rgba( 0, 0, 0, .08 );
	margin-top: .15em;
}
body.btf-cb-page .btf-cb-callout.tip .btf-cb-callout-icon { background: rgba( 45, 74, 42, .15 ); color: var( --th-tip-ink ); }
body.btf-cb-page .btf-cb-callout.pro .btf-cb-callout-icon { background: rgba( 29, 52, 38, .18 ); color: var( --btf-cb-forest ); }
body.btf-cb-page .btf-cb-callout.pitfall .btf-cb-callout-icon { background: rgba( 139, 45, 45, .18 ); color: var( --btf-cb-red ); }
body.btf-cb-page .btf-cb-callout > span:last-child {
	font-family: var( --btf-cb-serif );
	font-size: 1.02rem;
	line-height: 1.55;
}

/* Inline-label eyebrow dash suppression */
body.btf-cb-page .btf-cb-fit-score    > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-fit-verdict-text > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-board-head   > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-story-head   > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-story-half   > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-story-play   > .btf-th-eyebrow::before,
body.btf-cb-page .btf-cb-turn-card    > .btf-th-eyebrow::before {
	display: none;
}
body.btf-cb-page .btf-cb-fit-score    > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-fit-verdict-text > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-board-head   > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-story-head   > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-story-half   > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-story-play   > .btf-th-eyebrow,
body.btf-cb-page .btf-cb-turn-card    > .btf-th-eyebrow {
	gap: 0;
	font-size: .68rem;
	letter-spacing: .14em;
	color: var( --btf-cb-muted );
}

/* ── Summary felt panel ──────────────────────────────────────────────── */
body.btf-cb-page .btf-cb-summary {
	background: var( --btf-cb-forest );
	color: var( --btf-cb-cream );
	padding: 4rem 0 5rem;
}
body.btf-cb-page .btf-cb-sm-eyebrow {
	font-family: var( --btf-cb-mono );
	font-size: .72rem;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var( --btf-cb-gold-soft );
	display: block;
	margin-bottom: 1rem;
}
body.btf-cb-page .btf-cb-sm-display {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: clamp( 2rem, 4.2vw, 3.4rem );
	line-height: 1.05;
	letter-spacing: -.015em;
	color: var( --btf-cb-cream );
	margin: .4em 0 .8em;
}
body.btf-cb-page .btf-cb-sm-display em {
	color: var( --btf-cb-gold-soft );
	font-style: italic;
}
body.btf-cb-page .btf-cb-sm-steps {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 1.2rem;
	margin-top: 2.5rem;
}
@media ( max-width: 880px ) {
	body.btf-cb-page .btf-cb-sm-steps { grid-template-columns: 1fr; }
}
body.btf-cb-page .btf-cb-sm-step {
	background: rgba( 255, 255, 255, .04 );
	border: 1px solid rgba( 255, 255, 255, .08 );
	border-radius: 12px;
	padding: 1.4rem 1.5rem 1.5rem;
}
body.btf-cb-page .btf-cb-sm-num {
	font-family: var( --btf-cb-mono );
	font-size: .7rem;
	letter-spacing: .16em;
	color: var( --btf-cb-gold-soft );
	display: block;
	margin-bottom: .4rem;
}
body.btf-cb-page .btf-cb-sm-step h4 {
	font-family: var( --btf-cb-serif );
	font-weight: 400;
	font-size: 1.25rem;
	margin: 0 0 .5em;
	color: var( --btf-cb-cream );
}
body.btf-cb-page .prose .btf-cb-sm-step p,
body.btf-cb-page .btf-cb-sm-step p {
	font-size: .92rem;
	line-height: 1.55;
	color: rgba( 255, 255, 255, .82 );
	margin: 0;
}
body.btf-cb-page .btf-cb-sm-step p em {
	color: var( --btf-cb-gold-soft );
	font-style: italic;
}
