/* Marketur Business Reality Check v2.2.0
   Dark, serious, minimalist. Mobile-first. */

.mbrc-app {
	--mbrc-bg: #0e0f12;
	--mbrc-surface: #16181d;
	--mbrc-surface-2: #1c1f26;
	--mbrc-border: #2a2e37;
	--mbrc-text: #e8e9ec;
	--mbrc-text-dim: #9aa0ab;
	--mbrc-accent: #e5484d;
	--mbrc-good: #3dd68c;
	--mbrc-med: #f0b429;
	--mbrc-high: #f76808;
	--mbrc-critical: #e5484d;
	--mbrc-unknown: #6c7280;
	background: var(--mbrc-bg);
	color: var(--mbrc-text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	line-height: 1.6;
	border-radius: 12px;
	padding: 24px 16px;
	margin: 0 auto;
	max-width: 860px;
	box-sizing: border-box;
}
.mbrc-app *, .mbrc-app *::before, .mbrc-app *::after { box-sizing: border-box; }
.mbrc-app h1, .mbrc-app h2, .mbrc-app h3, .mbrc-app h4, .mbrc-app p, .mbrc-app ul, .mbrc-app ol {
	margin: 0 0 12px; padding: 0; color: inherit;
}
.mbrc-app ul, .mbrc-app ol { padding-left: 20px; }
.mbrc-app a { color: #7cb8ff; text-decoration: none; }
.mbrc-app a:hover, .mbrc-app a:focus { text-decoration: underline; }
.mbrc-noscript { padding: 24px; text-align: center; color: var(--mbrc-text-dim); }

/* ---------- Brand / hero ---------- */
.mbrc-brand {
	font-weight: 800; letter-spacing: 0.35em; font-size: 14px;
	color: var(--mbrc-text-dim); text-align: center; margin-bottom: 20px;
	text-transform: uppercase;
}
.mbrc-brand-sm { font-size: 12px; margin-bottom: 14px; }
.mbrc-hero { text-align: center; padding: 32px 8px 16px; }
.mbrc-headline {
	font-size: clamp(28px, 6vw, 44px); font-weight: 800; line-height: 1.15;
	letter-spacing: -0.01em; margin-bottom: 12px;
}
.mbrc-subheadline {
	font-size: clamp(17px, 3.4vw, 22px); color: var(--mbrc-accent);
	font-weight: 600; margin-bottom: 20px;
}
.mbrc-support {
	color: var(--mbrc-text-dim); max-width: 620px; margin: 0 auto 28px;
	font-size: 16px;
}
.mbrc-small-print {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 16px;
	margin-top: 22px; color: var(--mbrc-text-dim); font-size: 13px;
	text-transform: uppercase; letter-spacing: 0.06em;
}

/* ---------- Buttons ---------- */
.mbrc-btn {
	display: inline-block; border: 1px solid transparent; cursor: pointer;
	font: inherit; font-weight: 700; letter-spacing: 0.08em;
	padding: 14px 26px; border-radius: 8px; transition: background 0.15s, border-color 0.15s, transform 0.1s;
	text-transform: uppercase; font-size: 14px; text-align: center;
}
.mbrc-btn:active { transform: translateY(1px); }
.mbrc-btn-primary { background: var(--mbrc-accent); color: #fff; }
.mbrc-btn-primary:hover, .mbrc-btn-primary:focus { background: #c93a3f; }
.mbrc-btn-ghost {
	background: transparent; color: var(--mbrc-text);
	border-color: var(--mbrc-border);
}
.mbrc-btn-ghost:hover, .mbrc-btn-ghost:focus { border-color: var(--mbrc-text-dim); }
.mbrc-btn:focus-visible { outline: 2px solid #7cb8ff; outline-offset: 2px; }
.mbrc-btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.mbrc-cta { margin-top: 4px; }
.mbrc-submit { width: 100%; margin-top: 20px; padding: 16px; }

/* ---------- Form ---------- */
.mbrc-form { padding: 8px 0; }
.mbrc-step-title {
	font-size: 14px; letter-spacing: 0.2em; color: var(--mbrc-text-dim);
	font-weight: 700; border-bottom: 1px solid var(--mbrc-border);
	padding-bottom: 10px; margin: 8px 0 20px;
}
.mbrc-step-title-2 { margin-top: 36px; }
.mbrc-field { margin-bottom: 22px; }
.mbrc-label { display: block; font-weight: 600; margin-bottom: 8px; font-size: 15px; }
.mbrc-q-label { font-weight: 500; }
.mbrc-hint { color: var(--mbrc-text-dim); font-size: 13px; margin: 6px 0 0; }
.mbrc-input, .mbrc-textarea {
	width: 100%; background: var(--mbrc-surface); color: var(--mbrc-text);
	border: 1px solid var(--mbrc-border); border-radius: 8px;
	padding: 12px 14px; font: inherit; font-size: 15px;
}
.mbrc-input:focus, .mbrc-textarea:focus {
	outline: none; border-color: #7cb8ff;
}
.mbrc-textarea { resize: vertical; min-height: 120px; }
.mbrc-textarea-sm { min-height: 56px; }
.mbrc-textarea::placeholder, .mbrc-input::placeholder { color: #565c66; }
.mbrc-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.mbrc-pill {
	background: var(--mbrc-surface); color: var(--mbrc-text-dim);
	border: 1px solid var(--mbrc-border); border-radius: 999px;
	padding: 8px 16px; cursor: pointer; font: inherit; font-size: 14px;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.mbrc-pill:hover { border-color: var(--mbrc-text-dim); }
.mbrc-pill.is-active {
	background: var(--mbrc-text); color: var(--mbrc-bg);
	border-color: var(--mbrc-text); font-weight: 600;
}
.mbrc-pill:focus-visible { outline: 2px solid #7cb8ff; outline-offset: 2px; }
.mbrc-q { padding: 14px; background: var(--mbrc-surface); border-radius: 8px; border: 1px solid var(--mbrc-border); }
.mbrc-q .mbrc-field { margin-bottom: 0; }
.mbrc-hp { position: absolute !important; left: -9999px !important; height: 1px; width: 1px; opacity: 0; }
.mbrc-error {
	background: rgba(229, 72, 77, 0.12); border: 1px solid var(--mbrc-accent);
	color: #ffb3b5; border-radius: 8px; padding: 12px 16px; margin-top: 16px; font-size: 14px;
}
.mbrc-privacy {
	color: var(--mbrc-text-dim); font-size: 12px; margin-top: 16px; text-align: center;
}

/* ---------- Loading ---------- */
.mbrc-loading { text-align: center; padding: 60px 16px; }
.mbrc-spinner {
	width: 44px; height: 44px; margin: 0 auto 24px;
	border: 3px solid var(--mbrc-border); border-top-color: var(--mbrc-accent);
	border-radius: 50%; animation: mbrc-spin 0.9s linear infinite;
}
@keyframes mbrc-spin { to { transform: rotate(360deg); } }
.mbrc-loading-msg { font-size: 17px; font-weight: 600; min-height: 1.6em; }
.mbrc-failure { text-align: center; padding: 48px 16px; }
.mbrc-fail-title { font-size: 20px; letter-spacing: 0.1em; }
.mbrc-fail-msg { color: var(--mbrc-text-dim); max-width: 520px; margin: 0 auto 8px; }
.mbrc-failure .mbrc-btn-row { justify-content: center; }

/* ---------- Report ---------- */
.mbrc-report-header { text-align: center; padding: 16px 0 8px; }
.mbrc-report-title { font-size: 15px; letter-spacing: 0.2em; color: var(--mbrc-text-dim); font-weight: 700; }
.mbrc-idea-name { font-size: clamp(20px, 4vw, 28px); font-weight: 800; margin-bottom: 4px; }
.mbrc-idea-summary { color: var(--mbrc-text-dim); font-size: 15px; max-width: 560px; margin: 0 auto 8px; }
.mbrc-score-block {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
	gap: 24px; margin: 24px 0 8px; text-align: left;
}
.mbrc-score-circle {
	width: 128px; height: 128px; border-radius: 50%; border: 4px solid var(--mbrc-border);
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	flex-shrink: 0; background: var(--mbrc-surface);
}
.mbrc-score-num { font-size: 42px; font-weight: 800; line-height: 1; }
.mbrc-score-den { font-size: 13px; color: var(--mbrc-text-dim); }
.mbrc-verdict-block { max-width: 420px; }
.mbrc-verdict-label { font-size: 11px; letter-spacing: 0.2em; color: var(--mbrc-text-dim); font-weight: 700; }
.mbrc-verdict { font-size: clamp(20px, 4vw, 26px); font-weight: 800; margin: 2px 0 8px; }
.mbrc-score-disclaimer { font-size: 12px; color: var(--mbrc-text-dim); margin-bottom: 4px; }
.mbrc-confidence { font-size: 12px; color: var(--mbrc-text-dim); text-transform: uppercase; letter-spacing: 0.06em; }
.mbrc-research-note {
	background: rgba(240, 180, 41, 0.1); border: 1px solid var(--mbrc-med);
	border-radius: 8px; padding: 12px 16px; font-size: 13px; margin: 16px 0 0; text-align: left;
}

/* Tones */
.mbrc-tone-good { background: var(--mbrc-good); }
.mbrc-tone-med { background: var(--mbrc-med); }
.mbrc-tone-high { background: var(--mbrc-high); }
.mbrc-tone-critical { background: var(--mbrc-critical); }
.mbrc-tone-unknown { background: var(--mbrc-unknown); }
.mbrc-tone-text-good { color: var(--mbrc-good); }
.mbrc-tone-text-med { color: var(--mbrc-med); }
.mbrc-tone-text-high { color: var(--mbrc-high); }
.mbrc-tone-text-critical { color: var(--mbrc-critical); }
.mbrc-tone-border-good { border-color: var(--mbrc-good); }
.mbrc-tone-border-med { border-color: var(--mbrc-med); }
.mbrc-tone-border-high { border-color: var(--mbrc-high); }
.mbrc-tone-border-critical { border-color: var(--mbrc-critical); }

/* Cards */
.mbrc-card {
	background: var(--mbrc-surface); border: 1px solid var(--mbrc-border);
	border-radius: 12px; padding: 22px 18px; margin: 20px 0;
}
.mbrc-card-title {
	font-size: 16px; font-weight: 800; letter-spacing: 0.1em;
	margin-bottom: 6px; text-transform: uppercase;
}
.mbrc-card-sub { color: var(--mbrc-text-dim); font-size: 13px; margin-bottom: 16px; }
.mbrc-sub-h { font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--mbrc-text-dim); margin: 14px 0 8px; }

/* Score breakdown */
.mbrc-comp-row { margin-bottom: 14px; }
.mbrc-comp-top { display: flex; justify-content: space-between; font-size: 14px; margin-bottom: 4px; }
.mbrc-comp-name { color: var(--mbrc-text-dim); }
.mbrc-comp-val { font-weight: 700; }
.mbrc-comp-note { font-size: 12px; color: var(--mbrc-text-dim); margin: 4px 0 0; }
.mbrc-meter {
	height: 6px; background: var(--mbrc-surface-2); border-radius: 3px; overflow: hidden;
}
.mbrc-meter-fill { height: 100%; border-radius: 3px; }

/* Truth / come on man */
.mbrc-truth-p { font-size: 16px; }
.mbrc-com-p { font-size: 16px; }

/* Badges */
.mbrc-badge {
	display: inline-block; font-size: 11px; font-weight: 800;
	letter-spacing: 0.06em; padding: 3px 10px; border-radius: 999px;
	color: #0e0f12; white-space: nowrap;
}
.mbrc-badge-good { background: var(--mbrc-good); }
.mbrc-badge-med { background: var(--mbrc-med); }
.mbrc-badge-high { background: var(--mbrc-high); color: #fff; }
.mbrc-badge-critical { background: var(--mbrc-critical); color: #fff; }
.mbrc-badge-unknown { background: var(--mbrc-unknown); color: #fff; }
.mbrc-badge-low { background: var(--mbrc-unknown); color: #fff; }
.mbrc-ev-row { margin-bottom: 8px; }

/* Accordions */
.mbrc-acc {
	border: 1px solid var(--mbrc-border); border-radius: 8px;
	margin-bottom: 10px; background: var(--mbrc-surface-2); overflow: hidden;
}
.mbrc-acc-summary {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 12px 16px; cursor: pointer; font-weight: 600; font-size: 15px;
	list-style: none;
}
.mbrc-acc-summary::-webkit-details-marker { display: none; }
.mbrc-acc-summary::after { content: "+"; color: var(--mbrc-text-dim); font-weight: 400; margin-left: auto; }
.mbrc-acc[open] .mbrc-acc-summary::after { content: "-"; }
.mbrc-acc-summary:focus-visible { outline: 2px solid #7cb8ff; outline-offset: -2px; }
.mbrc-acc-title { flex: 1; }
.mbrc-acc-body { padding: 4px 16px 14px; border-top: 1px solid var(--mbrc-border); }

/* Key-value rows */
.mbrc-kv { margin: 8px 0; font-size: 14px; }
.mbrc-kv-k {
	display: block; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase;
	color: var(--mbrc-text-dim); font-weight: 700; margin-bottom: 2px;
}
.mbrc-kv-v { display: block; }

/* Permission section */
.mbrc-perm-head {
	display: flex; flex-wrap: wrap; gap: 24px; align-items: center; margin-bottom: 16px;
}
.mbrc-perm-count { text-align: center; }
.mbrc-perm-num { font-size: 52px; font-weight: 800; line-height: 1; }
.mbrc-perm-cap { font-size: 10px; letter-spacing: 0.16em; color: var(--mbrc-text-dim); font-weight: 700; }
.mbrc-perm-level { font-size: 26px; font-weight: 800; }
.mbrc-perm-label { font-size: 13px; font-weight: 700; letter-spacing: 0.06em; }
.mbrc-perm-blurb { color: var(--mbrc-text-dim); font-size: 14px; margin: 4px 0 0; font-style: italic; }
.mbrc-perm-warning {
	background: rgba(229, 72, 77, 0.1); border-left: 3px solid var(--mbrc-accent);
	padding: 10px 14px; font-size: 14px; border-radius: 0 8px 8px 0; margin-bottom: 16px;
}
.mbrc-chain { display: flex; flex-direction: column; align-items: center; margin: 20px 0; }
.mbrc-chain-node {
	background: var(--mbrc-surface-2); border: 1px solid var(--mbrc-border);
	border-radius: 8px; padding: 8px 20px; font-weight: 600; font-size: 14px;
	min-width: 160px; text-align: center;
}
.mbrc-chain-you { background: var(--mbrc-text); color: var(--mbrc-bg); border-color: var(--mbrc-text); font-weight: 800; }
.mbrc-chain-customer { border-color: var(--mbrc-good); color: var(--mbrc-good); font-weight: 800; }
.mbrc-chain-arrow {
	width: 0; height: 0; margin: 4px 0;
	border-left: 7px solid transparent; border-right: 7px solid transparent;
	border-top: 9px solid var(--mbrc-text-dim);
}

/* Competitors */
.mbrc-competitor {
	border: 1px solid var(--mbrc-border); border-radius: 8px;
	padding: 14px 16px; margin-bottom: 12px; background: var(--mbrc-surface-2);
}
.mbrc-competitor-head { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; margin-bottom: 4px; }
.mbrc-competitor-name { font-size: 16px; }
.mbrc-competitor-link { font-size: 13px; word-break: break-all; }
.mbrc-diff { margin-top: 16px; border-top: 1px solid var(--mbrc-border); padding-top: 14px; }
.mbrc-diff-title { font-size: 15px; font-weight: 700; }

/* Acquisition */
.mbrc-acq-row { padding: 10px 0; border-bottom: 1px solid var(--mbrc-border); }
.mbrc-acq-row:last-child { border-bottom: none; }
.mbrc-acq-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.mbrc-acq-why { color: var(--mbrc-text-dim); font-size: 14px; margin: 6px 0 0; }

/* Tables */
.mbrc-table { border: 1px solid var(--mbrc-border); border-radius: 8px; overflow: hidden; font-size: 13px; }
.mbrc-table-row {
	display: grid; grid-template-columns: 2fr 1fr 1fr 2fr;
	border-bottom: 1px solid var(--mbrc-border);
}
.mbrc-table-row:last-child { border-bottom: none; }
.mbrc-table-head { background: var(--mbrc-surface-2); font-weight: 700; text-transform: uppercase; font-size: 11px; letter-spacing: 0.06em; color: var(--mbrc-text-dim); }
.mbrc-table-cell { padding: 9px 12px; word-break: break-word; }
.mbrc-table-total { background: var(--mbrc-surface-2); font-weight: 700; }
.mbrc-table-note { padding: 6px 12px 10px; color: var(--mbrc-text-dim); font-size: 12px; border-bottom: 1px solid var(--mbrc-border); }
.mbrc-cell-query { font-weight: 600; }
.mbrc-budget-cmp {
	margin-top: 14px; background: rgba(229, 72, 77, 0.08);
	border-left: 3px solid var(--mbrc-accent); padding: 12px 14px;
	border-radius: 0 8px 8px 0; font-size: 15px;
}

/* Lists */
.mbrc-list li { margin-bottom: 8px; }
.mbrc-list-ol li { padding-left: 4px; }
.mbrc-sources li { font-size: 14px; }
.mbrc-source-host { color: var(--mbrc-text-dim); font-size: 12px; }

/* Kill tests */
.mbrc-kill {
	border: 1px solid var(--mbrc-border); border-radius: 8px;
	padding: 14px 16px; margin-bottom: 12px; background: var(--mbrc-surface-2);
}
.mbrc-kill-title { font-size: 15px; }
.mbrc-kill-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 6px; }
.mbrc-kill-tag {
	font-size: 11px; font-weight: 700; letter-spacing: 0.06em;
	border: 1px solid var(--mbrc-border); border-radius: 999px; padding: 3px 10px;
	color: var(--mbrc-text-dim);
}

/* Signals */
.mbrc-signal { border-radius: 8px; padding: 14px 16px; margin-bottom: 12px; }
.mbrc-signal-stop { background: rgba(229, 72, 77, 0.1); border: 1px solid var(--mbrc-critical); }
.mbrc-signal-go { background: rgba(61, 214, 140, 0.08); border: 1px solid var(--mbrc-good); }
.mbrc-signal-title { font-size: 13px; letter-spacing: 0.1em; }

/* Share card */
.mbrc-share-card {
	border: 1px dashed var(--mbrc-text-dim); border-radius: 8px;
	padding: 18px; background: var(--mbrc-surface-2);
}
.mbrc-share-card .mbrc-brand { margin-bottom: 12px; }

/* Book */
.mbrc-book {
	text-align: center; margin-top: 36px; padding: 28px 16px 8px;
	border-top: 1px solid var(--mbrc-border);
}
.mbrc-book-why { font-size: 13px; letter-spacing: 0.16em; color: var(--mbrc-text-dim); }
.mbrc-book-copy { color: var(--mbrc-text-dim); max-width: 560px; margin: 0 auto 12px; font-size: 15px; }
.mbrc-book-title-box { margin: 20px 0 16px; }
.mbrc-book-title { font-size: clamp(22px, 5vw, 30px); font-weight: 800; letter-spacing: 0.06em; }
.mbrc-book-subtitle { font-size: clamp(13px, 3vw, 16px); color: var(--mbrc-accent); font-weight: 700; letter-spacing: 0.08em; }
.mbrc-book-btn { margin-bottom: 12px; }

.mbrc-report-actions { justify-content: center; margin-top: 24px; }

/* ---------- Responsive ---------- */
@media (min-width: 640px) {
	.mbrc-app { padding: 40px 32px; }
	.mbrc-card { padding: 26px 24px; }
}
@media (max-width: 560px) {
	.mbrc-table-row { grid-template-columns: 1fr 1fr; }
	.mbrc-table-head { display: none; }
	.mbrc-table-cell { padding: 8px 10px; }
	.mbrc-cell-query { grid-column: 1 / -1; padding-bottom: 0; }
	.mbrc-score-block { flex-direction: column; text-align: center; }
	.mbrc-verdict-block { max-width: none; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.mbrc-spinner { animation: none; border-top-color: var(--mbrc-border); }
	.mbrc-btn, .mbrc-pill, .mbrc-meter-fill { transition: none; }
}

/* ---------- Print ---------- */
@media print {
	body * { visibility: hidden; }
	#marketur-brc-app, #marketur-brc-app * { visibility: visible; }
	#marketur-brc-app {
		position: absolute; left: 0; top: 0; width: 100%;
		background: #fff !important; color: #111 !important;
	}
	.mbrc-app { --mbrc-bg: #fff; --mbrc-surface: #fff; --mbrc-surface-2: #f4f4f4; --mbrc-border: #ccc; --mbrc-text: #111; --mbrc-text-dim: #555; }
	.mbrc-app a { color: #0645ad; }
	.mbrc-btn, .mbrc-report-actions, .mbrc-book-btn { display: none !important; }
	.mbrc-acc { break-inside: avoid; }
	.mbrc-acc-body { display: block !important; }
	.mbrc-acc:not([open]) .mbrc-acc-body { display: block !important; }
	.mbrc-card { break-inside: avoid-page; border-color: #ccc; }
	.mbrc-chain-you { background: #111 !important; color: #fff !important; }
}

/* ==========================================================
   v1.1.0 ADDITIONS
   ========================================================== */

/* ---------- PeepSo / Gecko theme hardening ----------
   ID-scoped resets (specificity 1-0-1) so theme rules like
   .entry-content p, .peepso h3, .gecko-* cannot restyle the app. */
#marketur-brc-app,
#marketur-brc-app * {
	text-transform: none;
	text-shadow: none;
	float: none;
}
#marketur-brc-app p,
#marketur-brc-app h1,
#marketur-brc-app h2,
#marketur-brc-app h3,
#marketur-brc-app h4,
#marketur-brc-app ul,
#marketur-brc-app ol,
#marketur-brc-app li,
#marketur-brc-app span,
#marketur-brc-app div {
	color: inherit;
	font-family: inherit;
	letter-spacing: normal;
	background-image: none;
	border-radius: 0;
	box-shadow: none;
}
#marketur-brc-app p { margin: 0 0 12px; padding: 0; font-size: inherit; line-height: 1.6; }
#marketur-brc-app h1, #marketur-brc-app h2, #marketur-brc-app h3, #marketur-brc-app h4 {
	margin: 0 0 12px; padding: 0; line-height: 1.25; border: 0;
}
#marketur-brc-app ul, #marketur-brc-app ol { margin: 0 0 12px; padding-left: 20px; list-style-position: outside; }
#marketur-brc-app ul { list-style-type: disc; }
#marketur-brc-app ol { list-style-type: decimal; }
#marketur-brc-app li { margin: 0 0 8px; padding: 0; }
#marketur-brc-app a { box-shadow: none; border-bottom: 0; }
#marketur-brc-app input,
#marketur-brc-app textarea,
#marketur-brc-app button,
#marketur-brc-app select {
	font-family: inherit;
	line-height: 1.5;
	height: auto;
	min-height: 0;
	text-transform: none;
	box-shadow: none;
}
#marketur-brc-app table { border-collapse: collapse; margin: 0; }
#marketur-brc-app img { max-width: 100%; }
#marketur-brc-app .mbrc-btn { width: auto; }
#marketur-brc-app .mbrc-submit { width: 100%; }
#marketur-brc-app .mbrc-brand { letter-spacing: 0.35em; }
#marketur-brc-app .mbrc-brand-sm { letter-spacing: 0.35em; }
#marketur-brc-app .mbrc-card-title,
#marketur-brc-app .mbrc-verdict-label,
#marketur-brc-app .mbrc-kv-k,
#marketur-brc-app .mbrc-perm-cap,
#marketur-brc-app .mbrc-badge,
#marketur-brc-app .mbrc-kill-tag,
#marketur-brc-app .mbrc-sub-h,
#marketur-brc-app .mbrc-step-title { text-transform: uppercase; }
#marketur-brc-app .mbrc-card-title { letter-spacing: 0.1em; }
#marketur-brc-app .mbrc-step-title { letter-spacing: 0.2em; }
#marketur-brc-app .mbrc-kv-k { letter-spacing: 0.08em; }
#marketur-brc-app .mbrc-badge { letter-spacing: 0.06em; border-radius: 999px; }
#marketur-brc-app .mbrc-kill-tag { letter-spacing: 0.06em; border-radius: 999px; }
#marketur-brc-app .mbrc-pill { border-radius: 999px; }
#marketur-brc-app .mbrc-input,
#marketur-brc-app .mbrc-textarea { border-radius: 8px; }
#marketur-brc-app .mbrc-btn { border-radius: 8px; }
#marketur-brc-app .mbrc-card,
#marketur-brc-app .mbrc-acc,
#marketur-brc-app .mbrc-competitor,
#marketur-brc-app .mbrc-kill,
#marketur-brc-app .mbrc-q,
#marketur-brc-app .mbrc-signal,
#marketur-brc-app .mbrc-table,
#marketur-brc-app .mbrc-error,
#marketur-brc-app .mbrc-research-note,
#marketur-brc-app .mbrc-share-card { border-radius: 8px; }
#marketur-brc-app .mbrc-card { border-radius: 12px; }
#marketur-brc-app .mbrc-score-circle { border-radius: 50%; }
#marketur-brc-app .mbrc-meter, #marketur-brc-app .mbrc-meter-fill { border-radius: 3px; }
#marketur-brc-app summary { display: flex; }
#marketur-brc-app summary::marker { content: ""; }

/* ---------- Report polish ---------- */
.mbrc-card { box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25); }
.mbrc-card-head {
	display: flex; flex-wrap: wrap; align-items: center;
	justify-content: space-between; gap: 8px 16px; margin-bottom: 6px;
}
.mbrc-card-head .mbrc-card-title { margin-bottom: 0; }
.mbrc-card-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.mbrc-card-assess-note { color: var(--mbrc-text-dim); font-size: 13px; margin-bottom: 10px; }
.mbrc-card-title::before {
	content: ""; display: inline-block; width: 18px; height: 2px;
	background: var(--mbrc-accent); vertical-align: middle; margin-right: 10px;
}

/* Stage reality banner */
.mbrc-stage-reality {
	background: var(--mbrc-surface); border: 1px solid var(--mbrc-border);
	border-left: 3px solid var(--mbrc-accent);
	border-radius: 0 10px 10px 0; padding: 16px 18px; margin: 18px 0 0; text-align: left;
}
.mbrc-stage-label {
	font-size: 11px; font-weight: 800; letter-spacing: 0.14em;
	color: var(--mbrc-text-dim); margin-bottom: 8px; text-transform: uppercase;
}
.mbrc-stage-p { font-size: 15px; font-weight: 600; }
.mbrc-stage-reality p:last-child { margin-bottom: 0; }

/* Demand & monetization assessment rows */
.mbrc-assess-row { padding: 12px 0; border-bottom: 1px solid var(--mbrc-border); }
.mbrc-assess-row:last-child { border-bottom: none; padding-bottom: 0; }
.mbrc-assess-head {
	display: flex; flex-wrap: wrap; justify-content: space-between;
	align-items: center; gap: 8px 16px;
}
.mbrc-assess-note { color: var(--mbrc-text-dim); font-size: 14px; margin: 6px 0 0; }

/* Competitor sourcing */
.mbrc-unsourced {
	font-size: 12px; color: var(--mbrc-med); margin: 8px 0 0;
	font-style: italic;
}

@media (max-width: 560px) {
	.mbrc-card-head { flex-direction: column; align-items: flex-start; }
}

/* ==========================================================
   v1.1.1 - FORM FIELD VISIBILITY
   Themes (PeepSo/Gecko and most others) style inputs with
   selectors that outrank plain classes, producing white
   fields with white text. ID-scoped + !important wins.
   ========================================================== */

#marketur-brc-app input[type="text"],
#marketur-brc-app input[type="url"],
#marketur-brc-app input[type="email"],
#marketur-brc-app input[type="number"],
#marketur-brc-app input[type="search"],
#marketur-brc-app textarea,
#marketur-brc-app select,
#marketur-brc-app .mbrc-input,
#marketur-brc-app .mbrc-textarea {
	background: var(--mbrc-surface) !important;
	background-color: var(--mbrc-surface) !important;
	background-image: none !important;
	color: var(--mbrc-text) !important;
	-webkit-text-fill-color: var(--mbrc-text);
	caret-color: var(--mbrc-accent);
	border: 1px solid var(--mbrc-border) !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	font-family: inherit !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	outline: none;
	opacity: 1 !important;
	filter: none !important;
	-webkit-appearance: none;
	appearance: none;
}

#marketur-brc-app .mbrc-textarea { min-height: 120px !important; resize: vertical !important; }
#marketur-brc-app .mbrc-textarea-sm { min-height: 56px !important; }

#marketur-brc-app input:focus,
#marketur-brc-app textarea:focus,
#marketur-brc-app select:focus,
#marketur-brc-app .mbrc-input:focus,
#marketur-brc-app .mbrc-textarea:focus {
	background: var(--mbrc-surface-2) !important;
	background-color: var(--mbrc-surface-2) !important;
	color: var(--mbrc-text) !important;
	-webkit-text-fill-color: var(--mbrc-text);
	border-color: #7cb8ff !important;
	box-shadow: 0 0 0 3px rgba(124, 184, 255, 0.15) !important;
}

/* Placeholders: readable, clearly not real input */
#marketur-brc-app input::placeholder,
#marketur-brc-app textarea::placeholder,
#marketur-brc-app .mbrc-input::placeholder,
#marketur-brc-app .mbrc-textarea::placeholder {
	color: #6d737e !important;
	-webkit-text-fill-color: #6d737e;
	opacity: 1 !important;
}
#marketur-brc-app input::-webkit-input-placeholder,
#marketur-brc-app textarea::-webkit-input-placeholder {
	color: #6d737e !important;
	-webkit-text-fill-color: #6d737e;
	opacity: 1 !important;
}
#marketur-brc-app input::-moz-placeholder,
#marketur-brc-app textarea::-moz-placeholder {
	color: #6d737e !important;
	opacity: 1 !important;
}

/* Chrome autofill paints its own white/yellow background */
#marketur-brc-app input:-webkit-autofill,
#marketur-brc-app input:-webkit-autofill:hover,
#marketur-brc-app input:-webkit-autofill:focus,
#marketur-brc-app textarea:-webkit-autofill {
	-webkit-text-fill-color: var(--mbrc-text) !important;
	-webkit-box-shadow: 0 0 0 1000px var(--mbrc-surface) inset !important;
	box-shadow: 0 0 0 1000px var(--mbrc-surface) inset !important;
	caret-color: var(--mbrc-accent);
	transition: background-color 100000s ease-in-out 0s;
}

/* Text selection stays readable on dark fields */
#marketur-brc-app ::selection { background: rgba(124, 184, 255, 0.35); color: #ffffff; }
#marketur-brc-app ::-moz-selection { background: rgba(124, 184, 255, 0.35); color: #ffffff; }

/* Pills are buttons: themes like to give buttons a light background */
#marketur-brc-app .mbrc-pill {
	background: var(--mbrc-surface) !important;
	background-image: none !important;
	color: var(--mbrc-text-dim) !important;
	border: 1px solid var(--mbrc-border) !important;
	text-shadow: none !important;
	box-shadow: none !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
}
#marketur-brc-app .mbrc-pill.is-active {
	background: var(--mbrc-text) !important;
	color: var(--mbrc-bg) !important;
	border-color: var(--mbrc-text) !important;
	font-weight: 600;
}
#marketur-brc-app .mbrc-pill:hover { border-color: var(--mbrc-text-dim) !important; }

/* Buttons */
#marketur-brc-app .mbrc-btn-primary {
	background: var(--mbrc-accent) !important;
	background-image: none !important;
	color: #ffffff !important;
	border-color: var(--mbrc-accent) !important;
	text-shadow: none !important;
}
#marketur-brc-app .mbrc-btn-primary:hover { background: #c93a3f !important; border-color: #c93a3f !important; }
#marketur-brc-app .mbrc-btn-ghost {
	background: transparent !important;
	background-image: none !important;
	color: var(--mbrc-text) !important;
	border: 1px solid var(--mbrc-border) !important;
}

/* Keep the honeypot invisible regardless of the rules above */
#marketur-brc-app .mbrc-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* ==========================================================
   v1.1.3 - FORM SPACING & RHYTHM
   The v1.1.1 ID-scoped reset outranks the original spacing
   classes, so spacing is now restated at the same (ID)
   specificity. Grid gaps are used where margins could be
   collapsed or stripped by a theme.
   ========================================================== */

/* Overall form rhythm */
#marketur-brc-app .mbrc-form { display: block; padding: 12px 0 8px; }
#marketur-brc-app .mbrc-field { margin: 0 0 28px !important; }
#marketur-brc-app .mbrc-label {
	display: block;
	margin: 0 0 12px !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}
#marketur-brc-app .mbrc-hint { margin: 10px 0 0 !important; line-height: 1.5; }
#marketur-brc-app .mbrc-step-title {
	margin: 4px 0 26px !important;
	padding-bottom: 12px;
}
#marketur-brc-app .mbrc-step-title-2 { margin-top: 52px !important; }

/* Pill groups: consistent gaps, breathing room below the label */
#marketur-brc-app .mbrc-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px !important;
	margin: 0;
}
#marketur-brc-app .mbrc-pill {
	padding: 10px 18px !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
}

/* Step 2: grid with guaranteed gaps between question cards */
#marketur-brc-app .mbrc-step2 {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	margin-top: 18px;
}
#marketur-brc-app .mbrc-step2 .mbrc-q { margin: 0 !important; }
#marketur-brc-app .mbrc-q {
	padding: 18px 20px 20px !important;
	background: var(--mbrc-surface);
	border: 1px solid var(--mbrc-border);
	border-radius: 10px !important;
}
#marketur-brc-app .mbrc-q .mbrc-label {
	margin: 0 0 14px !important;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
}
#marketur-brc-app .mbrc-q .mbrc-field { margin: 0 !important; }
#marketur-brc-app .mbrc-q .mbrc-textarea { margin-top: 2px; }

/* Inputs: vertical room below each field's control */
#marketur-brc-app .mbrc-input { margin: 0; }
#marketur-brc-app .mbrc-textarea { margin: 0; }

/* Step-2 lead-in note */
#marketur-brc-app .mbrc-form > .mbrc-hint { margin: -12px 0 6px !important; }

/* Submit area */
#marketur-brc-app .mbrc-submit { margin-top: 34px !important; padding: 18px !important; }
#marketur-brc-app .mbrc-privacy { margin-top: 18px !important; line-height: 1.6; }
#marketur-brc-app .mbrc-error { margin-top: 20px !important; }

/* Hero CTA spacing inside embeds */
#marketur-brc-app .mbrc-hero { padding-bottom: 8px; }

/* Report side: restore the same rhythm under the reset */
#marketur-brc-app .mbrc-card { margin: 22px 0 !important; padding: 24px 22px !important; }
#marketur-brc-app .mbrc-card-head { margin-bottom: 8px; }
#marketur-brc-app .mbrc-comp-row { margin-bottom: 16px !important; }
#marketur-brc-app .mbrc-acc { margin-bottom: 10px !important; }
#marketur-brc-app .mbrc-competitor,
#marketur-brc-app .mbrc-kill { margin-bottom: 14px !important; padding: 16px 18px !important; }
#marketur-brc-app .mbrc-kv { margin: 10px 0 !important; }
#marketur-brc-app .mbrc-assess-row { padding: 14px 0 !important; }

/* Wider screens: two-column question grid so Step 2 is not a mile long */
@media (min-width: 760px) {
	#marketur-brc-app .mbrc-step2 { grid-template-columns: 1fr 1fr; gap: 14px; }
	#marketur-brc-app .mbrc-step2 .mbrc-q-wide { grid-column: 1 / -1; }
}

/* ==========================================================
   v1.1.4 - WIDTH & CENTERING
   The v1.1.1 reset (#marketur-brc-app p { margin: 0 0 12px })
   erased the auto side-margins that centered capped-width
   paragraphs. Re-center at ID specificity and widen the app.
   ========================================================== */

/* Wider app on bare pages; still fluid below the cap */
#marketur-brc-app.mbrc-app {
	max-width: 1100px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px;
	padding-right: 24px;
}

/* Every element that uses a max-width column must center it */
#marketur-brc-app .mbrc-support,
#marketur-brc-app .mbrc-book-copy,
#marketur-brc-app .mbrc-book-btn,
#marketur-brc-app .mbrc-idea-summary,
#marketur-brc-app .mbrc-fail-msg,
#marketur-brc-app .mbrc-score-disclaimer,
#marketur-brc-app .mbrc-loading-msg {
	margin-left: auto !important;
	margin-right: auto !important;
}
#marketur-brc-app .mbrc-support { max-width: 680px; margin-bottom: 28px !important; }
#marketur-brc-app .mbrc-book-copy { max-width: 620px; margin-bottom: 14px !important; }
#marketur-brc-app .mbrc-idea-summary { max-width: 620px; }
#marketur-brc-app .mbrc-fail-msg { max-width: 520px; }

/* Hero and book sections: hard-center regardless of theme text-align */
#marketur-brc-app .mbrc-hero,
#marketur-brc-app .mbrc-book,
#marketur-brc-app .mbrc-loading,
#marketur-brc-app .mbrc-failure,
#marketur-brc-app .mbrc-report-header {
	text-align: center !important;
}
#marketur-brc-app .mbrc-book {
	max-width: 760px;
	margin-left: auto !important;
	margin-right: auto !important;
}
#marketur-brc-app .mbrc-small-print,
#marketur-brc-app .mbrc-note { justify-content: center !important; }

/* The form stays left-aligned for readability */
#marketur-brc-app .mbrc-form,
#marketur-brc-app .mbrc-report { text-align: left; }
#marketur-brc-app .mbrc-report .mbrc-report-header { text-align: center !important; }

@media (max-width: 640px) {
	#marketur-brc-app.mbrc-app { padding-left: 14px; padding-right: 14px; }
}

/* ==========================================================
   v1.1.5 - MOBILE FULL WIDTH
   On phones the app breaks out of the theme's content
   container so it uses the entire viewport, and inner
   padding shrinks so content is not squeezed into a column.
   ========================================================== */

@media (max-width: 782px) {

	/* Break out of the theme container edge to edge */
	#marketur-brc-app.mbrc-app {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		padding: 20px 12px 28px !important;
		border-radius: 0 !important;
		overflow-x: clip;
	}

	/* Tighter shells so text gets the full width */
	#marketur-brc-app .mbrc-card {
		padding: 18px 14px !important;
		margin: 14px 0 !important;
		border-radius: 10px !important;
	}
	#marketur-brc-app .mbrc-q { padding: 14px 14px 16px !important; }
	#marketur-brc-app .mbrc-competitor,
	#marketur-brc-app .mbrc-kill { padding: 14px !important; }
	#marketur-brc-app .mbrc-acc-summary { padding: 12px 14px !important; }
	#marketur-brc-app .mbrc-acc-body { padding: 4px 14px 14px !important; }
	#marketur-brc-app .mbrc-signal,
	#marketur-brc-app .mbrc-share-card,
	#marketur-brc-app .mbrc-stage-reality { padding: 14px !important; }

	/* Full-width controls */
	#marketur-brc-app .mbrc-input,
	#marketur-brc-app .mbrc-textarea { width: 100% !important; }
	#marketur-brc-app .mbrc-btn { width: 100%; }
	#marketur-brc-app .mbrc-btn-row { flex-direction: column; }
	#marketur-brc-app .mbrc-btn-row .mbrc-btn { width: 100%; }

	/* Pills: let them use the full row */
	#marketur-brc-app .mbrc-pills { gap: 8px !important; }
	#marketur-brc-app .mbrc-pill { padding: 10px 14px !important; font-size: 13px !important; }

	/* Capped columns should fill the phone, not sit in a narrow strip */
	#marketur-brc-app .mbrc-support,
	#marketur-brc-app .mbrc-book-copy,
	#marketur-brc-app .mbrc-idea-summary,
	#marketur-brc-app .mbrc-fail-msg,
	#marketur-brc-app .mbrc-book { max-width: 100% !important; }

	/* Type scale for small screens */
	#marketur-brc-app .mbrc-headline { font-size: clamp(30px, 8.5vw, 42px); }
	#marketur-brc-app .mbrc-support { font-size: 15px; }
	#marketur-brc-app .mbrc-card-title { font-size: 15px; }
	#marketur-brc-app .mbrc-truth-p,
	#marketur-brc-app .mbrc-com-p { font-size: 15px; }

	/* Dependency chain and meters use the full width */
	#marketur-brc-app .mbrc-chain-node { min-width: 0; width: 100%; max-width: 320px; }
	#marketur-brc-app .mbrc-table { font-size: 12px; }
	#marketur-brc-app .mbrc-score-block { gap: 16px; }
}

/* When embedded inside a custom page wrapper, that wrapper owns the
   width - cancel the breakout so the app stays inside its card. */
.marketur-tool-wrapper #marketur-brc-app.mbrc-app,
.mbrc-embed #marketur-brc-app.mbrc-app {
	width: auto !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* ==========================================================
   v1.1.6 - MOBILE KEYBOARD / VIEWPORT STABILITY
   iOS Safari zooms the page whenever a focused field has a
   font-size below 16px. Combined with the full-width
   breakout that leaves the layout shifted and horizontally
   scrollable once the keyboard opens.
   ========================================================== */

@media (max-width: 782px) {

	/* 16px is the threshold that stops iOS auto-zoom on focus */
	#marketur-brc-app input[type="text"],
	#marketur-brc-app input[type="url"],
	#marketur-brc-app input[type="email"],
	#marketur-brc-app input[type="number"],
	#marketur-brc-app input[type="search"],
	#marketur-brc-app textarea,
	#marketur-brc-app select,
	#marketur-brc-app .mbrc-input,
	#marketur-brc-app .mbrc-textarea {
		font-size: 16px !important;
		line-height: 1.5 !important;
	}

	/* Keep the breakout from producing sideways scroll if the
	   browser does zoom for any other reason */
	#marketur-brc-app.mbrc-app {
		max-width: 100vw !important;
		overflow-x: clip;
	}
	#marketur-brc-app .mbrc-textarea,
	#marketur-brc-app .mbrc-input {
		max-width: 100% !important;
	}

	/* Room under the last field so the keyboard cannot cover
	   the submit button when it is the focused element */
	#marketur-brc-app .mbrc-form { padding-bottom: 24px; }
}

/* The honeypot must never be reachable or affect scrolling */
#marketur-brc-app .mbrc-hp {
	position: absolute !important;
	top: 0 !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	font-size: 16px !important;
}

/* ==========================================================
   v1.2.0 - LIVE STATS + VERIFIED KEYWORD DATA
   ========================================================== */

#marketur-brc-app .mbrc-stats {
	margin: 34px 0 8px;
	padding: 26px 22px;
	background: var(--mbrc-surface);
	border: 1px solid var(--mbrc-border);
	border-radius: 12px;
	text-align: center;
}
#marketur-brc-app .mbrc-stats-title {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.2em;
	color: var(--mbrc-text-dim);
	text-transform: uppercase;
	margin-bottom: 20px;
}
#marketur-brc-app .mbrc-stats-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 20px 16px;
}
#marketur-brc-app .mbrc-stat { padding: 4px 2px; }
#marketur-brc-app .mbrc-stat-num {
	font-size: clamp(28px, 4.6vw, 40px);
	font-weight: 800;
	line-height: 1.05;
	font-variant-numeric: tabular-nums;
	margin-bottom: 6px;
}
#marketur-brc-app .mbrc-stat-suffix {
	font-size: 14px;
	font-weight: 600;
	color: var(--mbrc-text-dim);
	margin-left: 2px;
}
#marketur-brc-app .mbrc-stat-label {
	font-size: 12px;
	line-height: 1.4;
	color: var(--mbrc-text-dim);
	letter-spacing: 0.02em;
}
#marketur-brc-app .mbrc-stats-note {
	margin: 18px 0 0 !important;
	font-size: 11px;
	color: var(--mbrc-text-dim);
}
#marketur-brc-app .mbrc-stats-empty {
	margin: 0 !important;
	font-size: 14px;
	color: var(--mbrc-text-dim);
}

/* Verified keyword data */
#marketur-brc-app .mbrc-verified-flag {
	display: inline-block;
	margin-bottom: 14px;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(61, 214, 140, 0.12);
	border: 1px solid var(--mbrc-good);
	color: var(--mbrc-good);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.06em;
}
#marketur-brc-app .mbrc-table-kw .mbrc-table-row {
	grid-template-columns: 1.8fr 0.8fr 0.6fr 0.9fr 1fr 1.4fr;
}
#marketur-brc-app .mbrc-cell-vol {
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

@media (max-width: 782px) {
	#marketur-brc-app .mbrc-stats { padding: 20px 14px; margin: 26px 0 6px; }
	#marketur-brc-app .mbrc-stats-grid { grid-template-columns: 1fr 1fr; gap: 18px 10px; }
	#marketur-brc-app .mbrc-stat-num { font-size: 28px; }
	#marketur-brc-app .mbrc-table-kw .mbrc-table-row { grid-template-columns: 1fr 1fr; }
	#marketur-brc-app .mbrc-table-kw .mbrc-cell-query { grid-column: 1 / -1; }
}

/* ==========================================================
   v1.2.1 - PRINT PAGINATION, BOOK PROMO, STAT LABELS
   ========================================================== */

/* ---------- Book promo ---------- */
#marketur-brc-app .mbrc-book-promo {
	display: flex;
	align-items: flex-start;
	gap: 26px;
	max-width: 720px;
	margin: 26px auto 0 !important;
	padding: 24px;
	background: var(--mbrc-surface);
	border: 1px solid var(--mbrc-border);
	border-radius: 12px;
	text-align: left;
}
#marketur-brc-app .mbrc-book-cover-link { display: block; flex-shrink: 0; }
#marketur-brc-app .mbrc-book-cover { flex-shrink: 0; width: 150px; }
#marketur-brc-app .mbrc-book-cover img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.45);
	transition: transform 0.2s ease;
}
#marketur-brc-app .mbrc-book-cover-link:hover img { transform: translateY(-3px); }
#marketur-brc-app .mbrc-book-body { flex: 1; min-width: 0; }
#marketur-brc-app .mbrc-book-title {
	font-size: clamp(20px, 3vw, 26px);
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.1;
	margin-bottom: 4px;
}
#marketur-brc-app .mbrc-book-subtitle {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--mbrc-accent);
	margin-bottom: 14px;
}
#marketur-brc-app .mbrc-book-summary {
	font-size: 15px;
	line-height: 1.65;
	color: var(--mbrc-text-dim);
	margin-bottom: 12px !important;
}
#marketur-brc-app .mbrc-book-btn { margin-top: 6px; }
#marketur-brc-app .mbrc-book-print-url { display: none; }

@media (max-width: 640px) {
	#marketur-brc-app .mbrc-book-promo {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 20px 16px;
		gap: 18px;
	}
	#marketur-brc-app .mbrc-book-cover { width: 130px; }
	#marketur-brc-app .mbrc-book-btn { width: 100%; }
}

/* ---------- Stat labels on one line ---------- */
#marketur-brc-app .mbrc-stats-grid { grid-template-columns: repeat(6, 1fr); }
#marketur-brc-app .mbrc-stat-label {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 11.5px;
	letter-spacing: 0.01em;
}
@media (max-width: 900px) {
	#marketur-brc-app .mbrc-stats-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 560px) {
	#marketur-brc-app .mbrc-stats-grid { grid-template-columns: repeat(2, 1fr); }
	#marketur-brc-app .mbrc-stat-label { white-space: normal; }
}

/* ==========================================================
   PRINT / PDF - full multi-page output
   The earlier print block used visibility + position:absolute,
   which collapses the document to one page. Everything below
   overrides it: the app stays in normal flow and siblings are
   removed from the layout entirely.
   ========================================================== */

@media print {

	.mbrc-print-hide { display: none !important; }

	html, body {
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
		background: #ffffff !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body *, #marketur-brc-app, #marketur-brc-app * { visibility: visible !important; }

	.mbrc-print-keep {
		display: block !important;
		position: static !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		background: #ffffff !important;
		box-shadow: none !important;
		border: 0 !important;
		float: none !important;
		transform: none !important;
	}

	#marketur-brc-app.mbrc-app {
		--mbrc-bg: #ffffff;
		--mbrc-surface: #ffffff;
		--mbrc-surface-2: #f5f5f5;
		--mbrc-border: #cccccc;
		--mbrc-text: #111111;
		--mbrc-text-dim: #555555;
		position: static !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		background: #ffffff !important;
		color: #111111 !important;
		font-size: 11pt;
	}

	/* Keep blocks whole where it helps, but never trap the document */
	#marketur-brc-app .mbrc-card,
	#marketur-brc-app .mbrc-competitor,
	#marketur-brc-app .mbrc-kill,
	#marketur-brc-app .mbrc-acc,
	#marketur-brc-app .mbrc-signal,
	#marketur-brc-app .mbrc-stat,
	#marketur-brc-app .mbrc-book-promo {
		break-inside: avoid;
		page-break-inside: avoid;
		overflow: visible !important;
		box-shadow: none !important;
		border: 1px solid #cccccc !important;
		background: #ffffff !important;
	}
	#marketur-brc-app .mbrc-report,
	#marketur-brc-app .mbrc-report-header { break-inside: auto; page-break-inside: auto; }

	#marketur-brc-app .mbrc-card-title,
	#marketur-brc-app .mbrc-report-title { break-after: avoid; page-break-after: avoid; }

	/* Accordions must print expanded */
	#marketur-brc-app details.mbrc-acc { display: block !important; }
	#marketur-brc-app .mbrc-acc-body { display: block !important; height: auto !important; overflow: visible !important; }
	#marketur-brc-app .mbrc-acc-summary::after { content: "" !important; }

	/* Badges and meters need ink in print */
	#marketur-brc-app .mbrc-badge {
		border: 1px solid #666666 !important;
		background: #ffffff !important;
		color: #111111 !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
	#marketur-brc-app .mbrc-meter { border: 1px solid #999999 !important; }
	#marketur-brc-app .mbrc-meter-fill {
		background: #444444 !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
	#marketur-brc-app .mbrc-score-circle { border: 3px solid #111111 !important; }
	#marketur-brc-app .mbrc-chain-you,
	#marketur-brc-app .mbrc-chain-customer {
		background: #eeeeee !important;
		color: #111111 !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}

	/* Interactive chrome has no meaning on paper - except the book */
	#marketur-brc-app .mbrc-btn:not(.mbrc-book-btn),
	#marketur-brc-app .mbrc-report-actions,
	#marketur-brc-app .mbrc-share .mbrc-btn-row,
	#marketur-brc-app .mbrc-form,
	#marketur-brc-app .mbrc-hero { display: none !important; }

	/* Book promo travels with the PDF, with a readable address */
	#marketur-brc-app .mbrc-book { display: block !important; page-break-inside: avoid; }
	#marketur-brc-app .mbrc-book-promo {
		display: flex !important;
		background: #fafafa !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
	#marketur-brc-app .mbrc-book-cover img { box-shadow: none !important; border: 1px solid #cccccc; }
	#marketur-brc-app .mbrc-book-btn {
		display: inline-block !important;
		background: #ffffff !important;
		color: #111111 !important;
		border: 2px solid #111111 !important;
		padding: 8px 16px !important;
	}
	#marketur-brc-app .mbrc-book-print-url {
		display: block !important;
		margin-top: 8px;
		font-size: 10pt;
		font-weight: 700;
		color: #111111 !important;
		word-break: break-all;
	}

	#marketur-brc-app a { color: #111111 !important; text-decoration: underline; }
	#marketur-brc-app .mbrc-source-link::after {
		content: " (" attr(href) ")";
		font-size: 8pt;
		color: #555555;
		word-break: break-all;
	}

	@page { margin: 14mm; }
}

/* ==========================================================
   v1.2.2 - BOOK PROMO: WIDER, COLLAPSIBLE, MOBILE-FIRST
   ========================================================== */

#marketur-brc-app .mbrc-book-promo {
	max-width: 920px !important;
	gap: 32px;
	padding: 30px !important;
}
#marketur-brc-app .mbrc-book-cover { width: 190px; }

/* Collapsible summary */
#marketur-brc-app .mbrc-book-summary-wrap { position: relative; }
#marketur-brc-app .mbrc-book-summary-text.is-collapsed {
	max-height: 168px;
	overflow: hidden;
}
#marketur-brc-app .mbrc-book-fade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 40px;
	height: 72px;
	pointer-events: none;
	background: linear-gradient(to bottom, rgba(18, 18, 18, 0), var(--mbrc-surface));
}
#marketur-brc-app .mbrc-book-toggle {
	position: relative;
	display: inline-block;
	margin: 10px 0 4px;
	padding: 8px 16px;
	background: transparent;
	border: 1px solid var(--mbrc-border);
	border-radius: 999px;
	color: var(--mbrc-text) !important;
	font: inherit;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}
#marketur-brc-app .mbrc-book-toggle:hover {
	border-color: var(--mbrc-accent);
	background: rgba(229, 72, 77, 0.08);
}
#marketur-brc-app .mbrc-book-toggle:focus-visible { outline: 2px solid #7cb8ff; outline-offset: 2px; }
#marketur-brc-app .mbrc-book-summary { font-size: 15px; line-height: 1.7; }
#marketur-brc-app .mbrc-book-summary:first-child {
	color: var(--mbrc-text);
	font-weight: 700;
	font-size: 16px;
}

/* Mobile: same wide, app-like treatment as the rest of the tool */
@media (max-width: 782px) {
	#marketur-brc-app .mbrc-book {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	#marketur-brc-app .mbrc-book-promo {
		display: block !important;
		width: 100%;
		max-width: 100% !important;
		margin: 22px 0 0 !important;
		padding: 22px 16px !important;
		border-radius: 12px;
		text-align: left;
	}
	#marketur-brc-app .mbrc-book-cover,
	#marketur-brc-app .mbrc-book-cover-link {
		width: 160px;
		margin: 0 auto 20px;
		display: block;
	}
	#marketur-brc-app .mbrc-book-title { font-size: 26px; text-align: center; }
	#marketur-brc-app .mbrc-book-subtitle { text-align: center; margin-bottom: 18px; }
	#marketur-brc-app .mbrc-book-summary { font-size: 15px; }
	#marketur-brc-app .mbrc-book-summary-text.is-collapsed { max-height: 152px; }
	#marketur-brc-app .mbrc-book-toggle { display: block; width: 100%; text-align: center; }
	#marketur-brc-app .mbrc-book-btn { width: 100%; margin-top: 14px; }
	#marketur-brc-app .mbrc-book-why { margin-bottom: 10px; }
}

/* Never collapse on paper */
@media print {
	#marketur-brc-app .mbrc-book-summary-text.is-collapsed { max-height: none !important; overflow: visible !important; }
	#marketur-brc-app .mbrc-book-fade,
	#marketur-brc-app .mbrc-book-toggle { display: none !important; }
	#marketur-brc-app .mbrc-book-promo { max-width: none !important; padding: 16px !important; }
	#marketur-brc-app .mbrc-book-cover { width: 130px; }
}

/* ==========================================================
   v1.2.3 - CONTAINER STYLE
   Seamless (default): the tool sits directly on the page.
   Framed: keeps the bordered card for embedded use.
   ========================================================== */

#marketur-brc-app.mbrc-seamless {
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding-top: 8px;
	padding-bottom: 8px;
}
#marketur-brc-app.mbrc-seamless .mbrc-hero { padding-top: 48px; }

#marketur-brc-app.mbrc-framed {
	background: var(--mbrc-bg) !important;
	border: 1px solid var(--mbrc-border);
	border-radius: 14px !important;
}

/* Inside a custom page wrapper the wrapper owns the framing either way */
.marketur-tool-wrapper #marketur-brc-app.mbrc-app,
.mbrc-embed #marketur-brc-app.mbrc-app {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
}

@media (max-width: 782px) {
	#marketur-brc-app.mbrc-seamless { padding-top: 4px; }
	#marketur-brc-app.mbrc-seamless .mbrc-hero { padding-top: 34px; }
}

/* ==========================================================
   v1.3.0 - EMAIL CAPTURE
   ========================================================== */

#marketur-brc-app .mbrc-capture {
	margin: 26px 0;
	padding: 28px 26px;
	background: linear-gradient(180deg, rgba(229, 72, 77, 0.07), rgba(229, 72, 77, 0.02));
	border: 1px solid var(--mbrc-border);
	border-left: 3px solid var(--mbrc-accent);
	border-radius: 12px;
}
#marketur-brc-app .mbrc-capture-head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 12px;
}
#marketur-brc-app .mbrc-capture-title {
	margin: 0 !important;
	font-size: clamp(18px, 2.6vw, 23px);
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1.15;
}
#marketur-brc-app .mbrc-capture-badge {
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--mbrc-accent);
	color: #ffffff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
}
#marketur-brc-app .mbrc-capture-text {
	font-size: 15px;
	line-height: 1.65;
	color: var(--mbrc-text-dim);
	margin-bottom: 12px !important;
	max-width: 640px;
}
#marketur-brc-app .mbrc-capture-form { margin-top: 18px; }
#marketur-brc-app .mbrc-capture-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 16px;
}
#marketur-brc-app .mbrc-capture-field { min-width: 0; }
#marketur-brc-app .mbrc-capture-label {
	display: block;
	margin-bottom: 7px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--mbrc-text-dim);
}
#marketur-brc-app .mbrc-capture-submit {
	width: 100%;
	max-width: 340px;
	padding: 16px 28px !important;
}
#marketur-brc-app .mbrc-capture-submit:disabled { opacity: 0.6; cursor: default; }
#marketur-brc-app .mbrc-capture-status {
	margin: 12px 0 0 !important;
	font-size: 14px;
}
#marketur-brc-app .mbrc-capture-status.is-error { color: #ffb3b5; }
#marketur-brc-app .mbrc-capture-note {
	margin: 12px 0 0 !important;
	font-size: 11px;
	color: var(--mbrc-text-dim);
	letter-spacing: 0.02em;
}
#marketur-brc-app .mbrc-hp-wrap {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
#marketur-brc-app .mbrc-capture-done { padding: 8px 0; }
#marketur-brc-app .mbrc-capture-check {
	font-size: clamp(18px, 2.6vw, 22px);
	font-weight: 800;
	letter-spacing: 0.06em;
	color: var(--mbrc-good);
	margin-bottom: 8px;
}

@media (max-width: 782px) {
	#marketur-brc-app .mbrc-capture { padding: 20px 16px; margin: 20px 0; }
	#marketur-brc-app .mbrc-capture-fields { grid-template-columns: 1fr; gap: 12px; }
	#marketur-brc-app .mbrc-capture-submit { max-width: none; }
}

/* No point printing a form */
@media print {
	#marketur-brc-app .mbrc-capture { display: none !important; }
}

/* ==========================================================
   v1.4.0 - SCORE EXPLAINER + RATIONALE
   ========================================================== */

/* Score band under the verdict */
#marketur-brc-app .mbrc-score-band {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.14em;
	color: var(--mbrc-text);
	margin-bottom: 4px;
}
#marketur-brc-app .mbrc-score-band-blurb {
	font-size: 13px;
	line-height: 1.5;
	color: var(--mbrc-text-dim);
	margin-bottom: 8px !important;
}

/* Methodology toggle + panel */
#marketur-brc-app .mbrc-method { margin-top: 10px; }
#marketur-brc-app .mbrc-method-toggle {
	background: transparent;
	border: 1px solid var(--mbrc-border);
	border-radius: 999px;
	color: var(--mbrc-text) !important;
	font: inherit;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 8px 16px;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}
#marketur-brc-app .mbrc-method-toggle:hover {
	border-color: var(--mbrc-text-dim);
	background: var(--mbrc-surface-2);
}
#marketur-brc-app .mbrc-method-toggle:focus-visible { outline: 2px solid #7cb8ff; outline-offset: 2px; }
#marketur-brc-app .mbrc-method-panel {
	margin-top: 14px;
	padding: 20px;
	background: var(--mbrc-surface);
	border: 1px solid var(--mbrc-border);
	border-radius: 10px;
	text-align: left;
}
#marketur-brc-app .mbrc-method-h {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--mbrc-text-dim);
	margin: 18px 0 8px !important;
}
#marketur-brc-app .mbrc-method-h:first-child { margin-top: 0 !important; }
#marketur-brc-app .mbrc-method-p { font-size: 14px; line-height: 1.65; }
#marketur-brc-app .mbrc-method-list { font-size: 14px; }
#marketur-brc-app .mbrc-method-list li { margin-bottom: 6px; color: var(--mbrc-text-dim); }
#marketur-brc-app .mbrc-method-list strong { color: var(--mbrc-text); }
#marketur-brc-app .mbrc-band-list { display: grid; gap: 8px; }
#marketur-brc-app .mbrc-band-row {
	display: grid;
	grid-template-columns: 68px 1fr;
	gap: 12px;
	align-items: baseline;
	padding: 8px 0;
	border-bottom: 1px solid var(--mbrc-border);
}
#marketur-brc-app .mbrc-band-row:last-child { border-bottom: none; }
#marketur-brc-app .mbrc-band-range {
	font-size: 13px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: var(--mbrc-text);
}
#marketur-brc-app .mbrc-band-name { display: block; font-size: 13px; margin-bottom: 2px; }
#marketur-brc-app .mbrc-band-desc { font-size: 13px; color: var(--mbrc-text-dim); line-height: 1.5; }
#marketur-brc-app .mbrc-method-close {
	margin: 16px 0 0 !important;
	padding-top: 14px;
	border-top: 1px solid var(--mbrc-border);
	font-size: 14px;
	font-weight: 700;
	color: var(--mbrc-text);
}

/* Why you scored X */
#marketur-brc-app .mbrc-rat-row { margin-bottom: 16px; }
#marketur-brc-app .mbrc-rat-label {
	display: inline-block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.14em;
	padding: 3px 10px;
	border-radius: 999px;
	margin-bottom: 8px;
}
#marketur-brc-app .mbrc-rat-good { background: var(--mbrc-good); color: #0e0f12; }
#marketur-brc-app .mbrc-rat-high { background: var(--mbrc-high); color: #ffffff; }
#marketur-brc-app .mbrc-rat-unknown { background: var(--mbrc-unknown); color: #ffffff; }
#marketur-brc-app .mbrc-rat-critical { background: var(--mbrc-critical); color: #ffffff; }
#marketur-brc-app .mbrc-rat-list { margin: 0 !important; font-size: 15px; }
#marketur-brc-app .mbrc-rat-list li { margin-bottom: 6px; }
#marketur-brc-app .mbrc-rat-biggest {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	margin: 4px 0 6px;
	background: rgba(229, 72, 77, 0.08);
	border-left: 3px solid var(--mbrc-accent);
	border-radius: 0 8px 8px 0;
}
#marketur-brc-app .mbrc-rat-biggest .mbrc-rat-label { margin-bottom: 0; }
#marketur-brc-app .mbrc-rat-risk-text { font-size: 16px; font-weight: 700; }
#marketur-brc-app .mbrc-improve-h {
	margin-top: 22px !important;
	padding-top: 16px;
	border-top: 1px solid var(--mbrc-border);
}

@media (max-width: 782px) {
	#marketur-brc-app .mbrc-method-panel { padding: 16px 14px; }
	#marketur-brc-app .mbrc-method-toggle { width: 100%; }
	#marketur-brc-app .mbrc-band-row { grid-template-columns: 58px 1fr; gap: 10px; }
}

@media print {
	#marketur-brc-app .mbrc-method-toggle { display: none !important; }
	#marketur-brc-app .mbrc-method-panel { display: block !important; break-inside: avoid; }
}

/* ==========================================================
   v1.5.0 - SCORE EXPLAINER MODAL
   ========================================================== */

#marketur-brc-app .mbrc-hero-explain {
	margin-top: 22px;
	color: var(--mbrc-text-dim) !important;
}
#marketur-brc-app .mbrc-hero-explain:hover { color: var(--mbrc-text) !important; }

body.mbrc-modal-open { overflow: hidden; }

.mbrc-modal-overlay {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px 16px;
	background: rgba(0, 0, 0, 0.78);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	animation: mbrc-fade 0.16s ease;
}
@keyframes mbrc-fade { from { opacity: 0; } to { opacity: 1; } }

.mbrc-modal {
	width: 100%;
	max-width: 640px;
	max-height: 86vh;
	max-height: 86dvh;
	display: flex;
	flex-direction: column;
	background: #16181d;
	color: #e8e9ec;
	border: 1px solid #2a2e37;
	border-radius: 14px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	overflow: hidden;
}
.mbrc-modal:focus { outline: none; }
.mbrc-modal * { box-sizing: border-box; }

.mbrc-modal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 20px;
	border-bottom: 1px solid #2a2e37;
	flex-shrink: 0;
}
.mbrc-modal-title {
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.mbrc-modal-close {
	background: transparent;
	border: 1px solid #2a2e37;
	border-radius: 8px;
	color: #9aa0ab;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	width: 32px;
	height: 32px;
	cursor: pointer;
	flex-shrink: 0;
	transition: color 0.15s ease, border-color 0.15s ease;
}
.mbrc-modal-close:hover { color: #ffffff; border-color: #9aa0ab; }
.mbrc-modal-close:focus-visible { outline: 2px solid #7cb8ff; outline-offset: 2px; }

.mbrc-modal-body {
	padding: 20px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	line-height: 1.6;
}
.mbrc-modal-body h4 {
	margin: 20px 0 8px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #9aa0ab;
}
.mbrc-modal-body h4:first-child { margin-top: 0; }
.mbrc-modal-body p { margin: 0 0 12px; font-size: 14px; }
.mbrc-modal-body ul { margin: 0 0 12px; padding-left: 20px; font-size: 14px; }
.mbrc-modal-body li { margin-bottom: 6px; color: #9aa0ab; }
.mbrc-modal-body li strong { color: #e8e9ec; }
.mbrc-modal-body .mbrc-band-list { display: grid; gap: 8px; }
.mbrc-modal-body .mbrc-band-row {
	display: grid;
	grid-template-columns: 68px 1fr;
	gap: 12px;
	align-items: baseline;
	padding: 8px 0;
	border-bottom: 1px solid #2a2e37;
}
.mbrc-modal-body .mbrc-band-row:last-child { border-bottom: none; }
.mbrc-modal-body .mbrc-band-range { font-size: 13px; font-weight: 800; font-variant-numeric: tabular-nums; }
.mbrc-modal-body .mbrc-band-name { display: block; font-size: 13px; margin-bottom: 2px; }
.mbrc-modal-body .mbrc-band-desc { font-size: 13px; color: #9aa0ab; }
.mbrc-modal-body .mbrc-method-close {
	margin: 16px 0 0;
	padding-top: 14px;
	border-top: 1px solid #2a2e37;
	font-size: 14px;
	font-weight: 700;
	color: #e8e9ec;
}

@media (max-width: 560px) {
	.mbrc-modal-overlay { padding: 12px; align-items: flex-end; }
	.mbrc-modal { max-height: 90vh; max-height: 90dvh; border-radius: 14px 14px 0 0; }
	.mbrc-modal-body { padding: 16px 14px; }
	.mbrc-modal-body .mbrc-band-row { grid-template-columns: 58px 1fr; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
	.mbrc-modal-overlay { animation: none; }
}

@media print {
	.mbrc-modal-overlay { display: none !important; }
	#marketur-brc-app .mbrc-hero-explain { display: none !important; }
}

/* ==========================================================
   v2.1.2 - POTENTIAL OPPORTUNITIES (unscored)
   Visually distinct from scored sections: dashed border and a
   muted accent so it reads as "noted, not counted" at a glance.
   ========================================================== */

#marketur-brc-app .mbrc-card-unscored {
	border-style: dashed;
	background: var(--mbrc-surface-2);
}
#marketur-brc-app .mbrc-opp {
	padding: 14px 16px;
	margin-bottom: 10px;
	background: var(--mbrc-surface);
	border: 1px solid var(--mbrc-border);
	border-radius: 8px;
}
#marketur-brc-app .mbrc-opp-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-bottom: 8px;
}
#marketur-brc-app .mbrc-opp-type {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.1em;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--mbrc-unknown);
	color: #fff;
}
#marketur-brc-app .mbrc-opp-title { font-size: 15px; }
#marketur-brc-app .mbrc-opp-footer {
	margin: 12px 0 0 !important;
	padding-top: 12px;
	border-top: 1px dashed var(--mbrc-border);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--mbrc-text-dim);
}

@media print {
	#marketur-brc-app .mbrc-card-unscored { border-style: dashed !important; }
}

/* ==========================================================
   v2.2.0 - HERO POLISH
   Same content, same personality. Better typography, rhythm
   and restraint. Nothing decorative that does not earn its
   place: no neon, no floating cards, no gratuitous motion.
   ========================================================== */

/* ---------- Composition ---------- */
#marketur-brc-app .mbrc-hero {
	position: relative;
	padding: clamp(48px, 9vw, 104px) 0 clamp(36px, 6vw, 64px);
	overflow: hidden;
}
#marketur-brc-app .mbrc-hero-inner {
	position: relative;
	max-width: 780px;
	margin: 0 auto;
}

/* A single soft light source behind the headline. One gradient,
   very low opacity - enough to lift the type off flat black. */
#marketur-brc-app .mbrc-hero::before {
	content: "";
	position: absolute;
	top: -18%;
	left: 50%;
	width: min(940px, 130%);
	height: 460px;
	transform: translateX(-50%);
	background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0) 68%);
	pointer-events: none;
}

/* ---------- Typography ---------- */
#marketur-brc-app .mbrc-hero .mbrc-brand {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.42em;
	text-indent: 0.42em;
	color: var(--mbrc-text-dim);
	margin-bottom: clamp(24px, 4vw, 38px) !important;
}

#marketur-brc-app .mbrc-headline {
	display: block;
	margin: 0 0 20px !important;
	font-size: clamp(32px, 6.4vw, 60px);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -0.035em;
	text-wrap: balance;
}
#marketur-brc-app .mbrc-headline-line { display: block; }
#marketur-brc-app .mbrc-headline-accent {
	color: var(--mbrc-text-dim);
	margin-top: 0.16em;
}

#marketur-brc-app .mbrc-support {
	max-width: 560px;
	margin: 0 auto clamp(30px, 5vw, 44px) !important;
	font-size: clamp(15px, 1.8vw, 17px);
	line-height: 1.68;
	color: var(--mbrc-text-dim);
	text-wrap: pretty;
}

/* ---------- CTA ---------- */
#marketur-brc-app .mbrc-cta-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	margin-bottom: clamp(26px, 4vw, 36px);
}
#marketur-brc-app .mbrc-cta {
	padding: 19px 44px !important;
	font-size: 13px !important;
	letter-spacing: 0.16em;
	border-radius: 10px !important;
	box-shadow: 0 12px 30px rgba(229, 72, 77, 0.22);
	transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
#marketur-brc-app .mbrc-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 40px rgba(229, 72, 77, 0.3);
}
#marketur-brc-app .mbrc-cta:active {
	transform: translateY(0);
	box-shadow: 0 8px 20px rgba(229, 72, 77, 0.24);
}
#marketur-brc-app .mbrc-cta-note {
	font-size: 12px;
	color: var(--mbrc-text-dim);
	letter-spacing: 0.02em;
}

/* ---------- Small print ---------- */
#marketur-brc-app .mbrc-small-print {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 20px;
	font-size: 11px;
	letter-spacing: 0.12em;
	color: #6a7079;
	margin-bottom: clamp(34px, 5vw, 48px);
}
#marketur-brc-app .mbrc-small-print span { position: relative; }
#marketur-brc-app .mbrc-small-print span + span::before {
	content: "";
	position: absolute;
	left: -11px;
	top: 50%;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #33383f;
}

/* ---------- Report preview ---------- */
#marketur-brc-app .mbrc-preview {
	max-width: 480px;
	margin: 0 auto;
	padding: 18px 20px 20px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0));
	border: 1px solid var(--mbrc-border);
	border-radius: 14px;
	text-align: left;
	box-shadow: 0 24px 50px rgba(0, 0, 0, 0.4);
}
#marketur-brc-app .mbrc-preview-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 14px;
	margin-bottom: 16px;
	border-bottom: 1px solid var(--mbrc-border);
}
#marketur-brc-app .mbrc-preview-label {
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.2em;
	color: var(--mbrc-text-dim);
}
#marketur-brc-app .mbrc-preview-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--mbrc-accent);
	opacity: 0.75;
}
#marketur-brc-app .mbrc-preview-top {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 18px;
}
#marketur-brc-app .mbrc-preview-dial {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	flex-shrink: 0;
	border: 2px solid #3a3f48;
	border-radius: 50%;
}
#marketur-brc-app .mbrc-preview-score {
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
	color: var(--mbrc-text-dim);
	letter-spacing: 0.04em;
}
#marketur-brc-app .mbrc-preview-den {
	font-size: 9px;
	color: #5f656e;
	margin-top: 2px;
}
#marketur-brc-app .mbrc-preview-verdict-col { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
#marketur-brc-app .mbrc-preview-cap {
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.18em;
	color: #5f656e;
}
#marketur-brc-app .mbrc-preview-verdict {
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: var(--mbrc-text);
}
#marketur-brc-app .mbrc-preview-sub { font-size: 11px; color: #6a7079; line-height: 1.4; }
#marketur-brc-app .mbrc-preview-rows { display: grid; gap: 1px; background: var(--mbrc-border); border-radius: 8px; overflow: hidden; }
#marketur-brc-app .mbrc-preview-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 9px 12px;
	background: #131519;
	font-size: 12px;
}
#marketur-brc-app .mbrc-preview-row-label { color: #9096a0; }
#marketur-brc-app .mbrc-preview-row-state {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--mbrc-good);
	opacity: 0.85;
	white-space: nowrap;
}

/* ---------- Score explainer link ---------- */
#marketur-brc-app .mbrc-hero-explain {
	margin-top: clamp(28px, 4vw, 38px);
	border-color: transparent !important;
	color: #6a7079 !important;
	font-size: 12px;
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-color: #33383f;
}
#marketur-brc-app .mbrc-hero-explain:hover {
	color: var(--mbrc-text) !important;
	background: transparent !important;
	text-decoration-color: var(--mbrc-text-dim);
}

/* ---------- Live stats ---------- */
#marketur-brc-app .mbrc-stats {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.028), rgba(255, 255, 255, 0));
	border-radius: 14px;
}
#marketur-brc-app .mbrc-stats-head {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin-bottom: 22px;
}
#marketur-brc-app .mbrc-stats-head .mbrc-stats-title { margin-bottom: 0; }
#marketur-brc-app .mbrc-live-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--mbrc-good);
	box-shadow: 0 0 0 0 rgba(61, 214, 140, 0.5);
	animation: mbrc-pulse 2.4s ease-out infinite;
}
@keyframes mbrc-pulse {
	0% { box-shadow: 0 0 0 0 rgba(61, 214, 140, 0.45); }
	70% { box-shadow: 0 0 0 7px rgba(61, 214, 140, 0); }
	100% { box-shadow: 0 0 0 0 rgba(61, 214, 140, 0); }
}
#marketur-brc-app .mbrc-stat-num { letter-spacing: -0.02em; }
#marketur-brc-app .mbrc-stat {
	position: relative;
	padding: 4px 6px;
}

/* ---------- Mobile ---------- */
@media (max-width: 782px) {
	#marketur-brc-app .mbrc-hero { padding-top: 40px; padding-bottom: 30px; }
	#marketur-brc-app .mbrc-hero::before { height: 340px; top: -12%; }
	#marketur-brc-app .mbrc-hero .mbrc-brand { letter-spacing: 0.34em; text-indent: 0.34em; font-size: 10px; }
	#marketur-brc-app .mbrc-headline { font-size: clamp(29px, 8.4vw, 40px); letter-spacing: -0.03em; }
	#marketur-brc-app .mbrc-support { font-size: 15px; }
	#marketur-brc-app .mbrc-cta { width: 100%; max-width: 400px; padding: 19px 20px !important; }
	#marketur-brc-app .mbrc-small-print { gap: 8px 16px; font-size: 10.5px; }
	#marketur-brc-app .mbrc-preview { padding: 16px 14px 18px; max-width: 100%; }
	#marketur-brc-app .mbrc-preview-top { gap: 14px; }
	#marketur-brc-app .mbrc-preview-row { padding: 9px 11px; font-size: 11.5px; }
	#marketur-brc-app .mbrc-preview-row-state { font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
	#marketur-brc-app .mbrc-live-dot { animation: none; }
	#marketur-brc-app .mbrc-cta:hover { transform: none; }
}

@media print {
	#marketur-brc-app .mbrc-preview { display: none !important; }
}

/* ── Member history ────────────────────────────────────────────────────
   Deliberately quiet. This is someone's own working record, not a
   dashboard: the score and the movement are the only things that need to
   carry, everything else stays out of the way until opened. */
.mbrc-history {
    font-family: inherit;
    /* Constrained and centred like the rest of the page. Without a width
       this escaped the theme container on a full-width template, which is
       why the list sat hard against the left edge while the intro above it
       was centred. */
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    text-align: left;
}
.mbrc-history-intro { font-size: 14.5px; color: #5f6b7a; margin: 0 0 18px; }
.mbrc-history-item {
    border: 1px solid #e5eaf2;
    border-radius: 14px;
    background: #fff;
    margin-bottom: 10px;
    overflow: hidden;
}
/* The card is a block, not a shrink-to-fit element: it was rendering at
   the width of its longest line rather than the column. */
.mbrc-history-item { display: block; width: 100%; }
.mbrc-history-item > summary {
    cursor: pointer;
    padding: 16px 18px;
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-wrap: wrap;
    list-style: none;
}
.mbrc-history-item > summary::-webkit-details-marker { display: none; }
.mbrc-history-score {
    flex: 0 0 auto;
    min-width: 44px;
    text-align: center;
    font-weight: 800;
    font-size: 17px;
    color: #2563eb;
    background: #eef2ff;
    border-radius: 9px;
    padding: 5px 8px;
}
.mbrc-history-name { font-weight: 700; font-size: 16px; color: #0b1220; }
.mbrc-history-meta { font-size: 13px; color: #8494a8; margin-left: auto; }
.mbrc-history-body { padding: 0 18px 18px; border-top: 1px solid #f0f2f6; }
.mbrc-history-delta {
    margin: 14px 0 10px;
    font-size: 14.5px;
    font-weight: 650;
    color: #0b1220;
}
.mbrc-history-idea { font-size: 14.5px; line-height: 1.65; color: #5f6b7a; margin: 0 0 12px; }
.mbrc-history-components { margin: 0 0 12px; padding-left: 18px; }
.mbrc-history-components li { font-size: 14px; line-height: 1.6; color: #334155; margin: 4px 0; }
.mbrc-history-runs { font-size: 13.5px; color: #8494a8; margin: 0 0 12px; }
.mbrc-history-empty p { color: #5f6b7a; }

@media (max-width: 560px) {
    .mbrc-history-meta { margin-left: 0; width: 100%; }
}

/* ── Light scheme ──────────────────────────────────────────────────────
   The widget is painted almost entirely through the custom properties
   declared on .mbrc-app, so a light theme is mostly a second set of those.
   The values below are the ones the print stylesheet already uses, which
   makes them a known-good palette for this markup rather than a fresh
   guess at it.

   The extra rules after the variables exist because a handful of elements
   in this file set their colours directly instead of going through the
   palette. Those are the ones that would otherwise stay dark. */

.mbrc-app.mbrc-light {
    --mbrc-bg: #ffffff;
    --mbrc-surface: #ffffff;
    --mbrc-surface-2: #f4f5f7;
    --mbrc-border: #d8dce3;
    --mbrc-text: #14161a;
    --mbrc-text-dim: #5a616b;
    --mbrc-unknown: #8b919b;
}
.mbrc-app.mbrc-light a { color: #1d4ed8; }
.mbrc-app.mbrc-light .mbrc-btn:focus-visible,
.mbrc-app.mbrc-light .mbrc-pill:focus-visible,
.mbrc-app.mbrc-light .mbrc-acc-summary:focus-visible { outline-color: #1d4ed8; }
.mbrc-app.mbrc-light input:focus,
.mbrc-app.mbrc-light textarea:focus,
.mbrc-app.mbrc-light select:focus { border-color: #1d4ed8; }

/* Follow the visitor's own setting. Dark stays the default here, so a
   system with no preference expressed gets what the tool has always
   looked like. */
@media (prefers-color-scheme: light) {
    .mbrc-app.mbrc-auto {
        --mbrc-bg: #ffffff;
        --mbrc-surface: #ffffff;
        --mbrc-surface-2: #f4f5f7;
        --mbrc-border: #d8dce3;
        --mbrc-text: #14161a;
        --mbrc-text-dim: #5a616b;
        --mbrc-unknown: #8b919b;
    }
    .mbrc-app.mbrc-auto a { color: #1d4ed8; }
    .mbrc-app.mbrc-auto .mbrc-btn:focus-visible,
    .mbrc-app.mbrc-auto .mbrc-pill:focus-visible,
    .mbrc-app.mbrc-auto .mbrc-acc-summary:focus-visible { outline-color: #1d4ed8; }
    .mbrc-app.mbrc-auto input:focus,
    .mbrc-app.mbrc-auto textarea:focus,
    .mbrc-app.mbrc-auto select:focus { border-color: #1d4ed8; }
}

/* ── Light scheme: the parts that bypass the palette ───────────────────
   Some elements set their colours directly rather than through the custom
   properties, so a palette swap alone leaves them dark. The modal is the
   worst of them: a black dialog over a white page.

   Scoped to both light and auto-in-light so the two stay identical. */

.mbrc-app.mbrc-light .mbrc-modal,
.mbrc-app.mbrc-light .mbrc-modal-head,
.mbrc-app.mbrc-light .mbrc-modal-close {
    background: #ffffff;
    color: var(--mbrc-text);
    border-color: var(--mbrc-border);
}
.mbrc-app.mbrc-light .mbrc-modal { box-shadow: 0 30px 80px rgba(15, 23, 42, 0.22); }
.mbrc-app.mbrc-light .mbrc-modal-close { color: var(--mbrc-text-dim); }

/* Placeholders and any other fixed mid-grey read as noise on white. */
.mbrc-app.mbrc-light input::placeholder,
.mbrc-app.mbrc-light textarea::placeholder,
.mbrc-app.mbrc-light .mbrc-input::placeholder,
.mbrc-app.mbrc-light .mbrc-textarea::placeholder {
    color: #767d88 !important;
    -webkit-text-fill-color: #767d88;
}

/* The washes exist to lift type off flat black. On white they are haze. */
.mbrc-app.mbrc-light .mbrc-glow,
.mbrc-app.mbrc-light .mbrc-sheen { background: none !important; }

@media (prefers-color-scheme: light) {
    .mbrc-app.mbrc-auto .mbrc-modal,
    .mbrc-app.mbrc-auto .mbrc-modal-head,
    .mbrc-app.mbrc-auto .mbrc-modal-close {
        background: #ffffff;
        color: var(--mbrc-text);
        border-color: var(--mbrc-border);
    }
    .mbrc-app.mbrc-auto .mbrc-modal { box-shadow: 0 30px 80px rgba(15, 23, 42, 0.22); }
    .mbrc-app.mbrc-auto .mbrc-modal-close { color: var(--mbrc-text-dim); }
    .mbrc-app.mbrc-auto input::placeholder,
    .mbrc-app.mbrc-auto textarea::placeholder {
        color: #767d88 !important;
        -webkit-text-fill-color: #767d88;
    }
    .mbrc-app.mbrc-auto .mbrc-glow,
    .mbrc-app.mbrc-auto .mbrc-sheen { background: none !important; }
}

/* Reassurance on the failure screen. The work is the form, not the click,
   so the first thing someone needs to know is that it still exists. */
.mbrc-fail-kept {
    font-size: 14.5px;
    line-height: 1.6;
    color: #5a616b;
    margin: 0 0 18px;
}
.mbrc-app.mbrc-light .mbrc-fail-kept { color: #5a616b; }

.mbrc-history-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; }

.mbrc-zero-note { font-size: 14px; line-height: 1.65; color: var(--mbrc-text-dim); margin: 14px 0 0; }

/* ── Save as PDF: keep the colours ────────────────────────────────────
   The print stylesheet above deliberately flattens everything to grey.
   That is right for paper, where colour costs ink and adds nothing, and
   wrong for "save this as a PDF that looks like the page I am reading".

   Those are different jobs, so this is a separate mode rather than a
   change to the existing one. The class is added just before the print
   dialog opens and removed straight after, so normal printing is
   untouched. Specificity is one class higher than the greyscale rules it
   has to beat, and print-color-adjust is what stops browsers dropping
   background colours on the way out. */

@media print {
	body.mbrc-print-color #marketur-brc-app,
	body.mbrc-print-color #marketur-brc-app * {
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-badge {
		border-color: currentColor !important;
		background: var(--mbrc-surface-2) !important;
		color: inherit !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-meter-fill {
		background: var(--mbrc-accent, #2563eb) !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-score-circle {
		border-color: var(--mbrc-accent, #2563eb) !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-chain-you {
		background: #0b1220 !important;
		color: #ffffff !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-chain-customer {
		background: var(--mbrc-surface-2) !important;
		color: var(--mbrc-text) !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-card,
	body.mbrc-print-color #marketur-brc-app .mbrc-competitor,
	body.mbrc-print-color #marketur-brc-app .mbrc-kill,
	body.mbrc-print-color #marketur-brc-app .mbrc-acc,
	body.mbrc-print-color #marketur-brc-app .mbrc-signal,
	body.mbrc-print-color #marketur-brc-app .mbrc-stat {
		border-color: var(--mbrc-border) !important;
		background: var(--mbrc-surface) !important;
	}
}

/* Sensible page setup either way: the browser's own header and footer are
   the user's choice, but the margin should not be left to chance. */
@page {
	size: A4;
	margin: 14mm 12mm;
}

/* The stragglers the audit turned up: blocks the greyscale print rules
   repaint that the colour mode was not beating. */
@media print {
	body.mbrc-print-color #marketur-brc-app .mbrc-book-promo {
		background: var(--mbrc-surface-2) !important;
		border: 1px solid var(--mbrc-border) !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-book-btn {
		background: var(--mbrc-accent, #2563eb) !important;
		color: #ffffff !important;
		border-color: var(--mbrc-accent, #2563eb) !important;
	}

	body.mbrc-print-color #marketur-brc-app .mbrc-book-print-url,
	body.mbrc-print-color #marketur-brc-app .mbrc-source-link::after {
		color: var(--mbrc-text-dim) !important;
	}

	/* Links readable as links rather than flattened to body text. */
	body.mbrc-print-color #marketur-brc-app a {
		color: var(--mbrc-accent, #2563eb) !important;
	}

	/* Shadows stay off on purpose: they print as muddy grey bands rather
	   than depth, which looks worse than no shadow at all. */
}
