/* web/public/pages/home.tmpl */
body[data-reader-page="home"] {
	background: #465943;
	color: #f8f3e8;
}

body[data-reader-page="home"] #desktop-scroll-root {
	background: rgba(68, 86, 64, 0.998);
}

body[data-reader-page="home"] #globalFooterShell {
	background: rgba(72, 91, 67, 0.985);
	border-color: rgba(240, 234, 220, 0.1);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.03),
		0 8px 20px rgba(18, 29, 21, 0.06);
}

body[data-reader-page="home"] #globalFooterShell span,
body[data-reader-page="home"] #globalFooterShell a,
body[data-reader-page="home"] #globalFooterShell .text-text,
body[data-reader-page="home"] #globalFooterShell .text-text-muted {
	color: rgba(248, 243, 232, 0.86);
}

#homeReader {
	--home-text-strong: #fff8ea;
	--home-text-body: rgba(249, 243, 232, 0.92);
	--home-text-soft: rgba(242, 234, 219, 0.78);
	--home-text-faint: rgba(234, 226, 210, 0.62);
	--home-border: rgba(248, 242, 229, 0.14);
	--home-card-bg: rgba(63, 80, 58, 0.992);
	--home-panel-bg: rgba(28, 40, 28, 0.2);
	--home-panel-strong: rgba(28, 40, 28, 0.26);
	--home-stage-bg: rgba(40, 59, 52, 0.96);
	--home-cream-card: rgba(74, 91, 67, 0.985);
	--home-cream-border: rgba(255, 248, 236, 0.14);
	--home-cream-surface: rgba(255, 248, 236, 0.08);
	--home-cream-surface-strong: rgba(255, 248, 236, 0.12);
	--home-ink-dark: #fff8ea;
	--home-ink-soft: rgba(242, 234, 219, 0.8);
	--home-accent-mint: #9fe1d1;
	--home-accent-gold: #e8c884;
	--home-accent-rose: #f0ae9b;
}

#homeReader .home-reader-main {
	padding: 0 0 1.4rem;
}

#homeReader .story-card,
#homeReader section.bg-white,
#homeReader article.bg-white,
#homeReader div.bg-white,
#homeReader details.bg-white {
	background: var(--home-card-bg);
	border-color: var(--home-border);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.04),
		0 14px 30px rgba(10, 20, 12, 0.14);
}

#homeReader .section-kicker {
	color: rgba(255, 248, 236, 0.82);
	font-weight: 800;
	letter-spacing: 0.16em;
}

#homeReader .section-title,
#homeReader h1,
#homeReader h2,
#homeReader h3,
#homeReader strong {
	color: var(--home-text-strong);
}

#homeReader .glass-chip {
	background: rgba(251, 246, 235, 0.94);
	border-color: rgba(255, 248, 236, 0.24);
	color: #4a5b47;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.32),
		0 6px 14px rgba(12, 22, 14, 0.08);
}

#homeReader .home-stage {
	padding: 0;
	background: var(--home-stage-bg);
}

#homeReader .home-stage::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.08);
	pointer-events: none;
}

#homeReader .home-stage-shell,
#homeReader .home-section-shell {
	position: relative;
	z-index: 1;
}

#homeReader .home-stage-shell {
	padding: 1rem;
}

#homeReader .home-stage-grid {
	gap: 1rem;
	grid-template-columns: minmax(0, 1.26fr) minmax(320px, 0.74fr);
}

#homeReader .home-stage-meta {
	--layout-cluster-gap: 0.5rem;
}

#homeReader .home-stage-date {
	--sh-border-color: rgba(255, 248, 236, 0.14);
	padding: 0.42rem 0.78rem;
	font-size: 0.8rem;
	font-weight: 700;
}

#homeReader .home-stage-copy {
	gap: 1rem;
	align-content: space-between;
}

#homeReader .home-stage-title {
	max-width: 8.2ch;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: clamp(3.4rem, 7vw, 7rem);
	line-height: 0.88;
	letter-spacing: -0.1em;
	font-weight: 900;
	color: var(--home-text-strong);
	text-shadow: 0 2px 14px rgba(8, 15, 10, 0.16);
}

#homeReader .home-stage-lead {
	max-width: 60rem;
	font-family:
		"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
	font-size: 1.18rem;
	line-height: 1.72;
	letter-spacing: -0.02em;
	color: var(--home-text-body);
}

#homeReader .home-stage-pill-row {
	--layout-cluster-gap: 0.55rem;
}

#homeReader .home-stage-pill {
	--sh-border-color: rgba(255, 248, 236, 0.12);
	padding: 0.48rem 0.8rem;
	font-size: 0.78rem;
	font-weight: 700;
}

#homeReader .home-stage-manifesto {
	gap: 0.48rem;
	padding-top: 0.34rem;
	max-width: 48rem;
}

#homeReader .home-stage-manifesto strong {
	font-size: clamp(1.32rem, 2.2vw, 2rem);
	line-height: 1.06;
	letter-spacing: -0.05em;
	font-weight: 900;
	color: var(--home-text-strong);
}

#homeReader .home-stage-manifesto p {
	margin: 0;
	font-size: 1.04rem;
	line-height: 1.72;
	letter-spacing: -0.02em;
	color: var(--home-text-soft);
}

#homeReader .home-brief-panel {
	--sh-radius: 28px;
	--sh-border-color: rgba(255, 248, 236, 0.12);
	--sh-shadow: none;
	gap: 0.95rem;
	align-content: start;
	background: var(--home-panel-strong);
	padding: 1.08rem;
	backdrop-filter: blur(14px);
}

#homeReader .home-brief-head {
	gap: 0.26rem;
}

#homeReader .home-brief-head p {
	margin: 0;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(242, 236, 225, 0.62);
}

#homeReader .home-brief-head h2 {
	margin: 0;
	font-size: clamp(1.8rem, 2.2vw, 2.5rem);
	line-height: 0.98;
	letter-spacing: -0.06em;
	font-weight: 900;
	color: var(--home-text-strong);
}

#homeReader .home-brief-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.72rem;
}

#homeReader .home-brief-card {
	--sh-radius: 22px;
	--sh-border-color: rgba(255, 248, 236, 0.1);
	--sh-shadow: none;
	gap: 0.38rem;
	background: rgba(18, 29, 21, 0.16);
	padding: 0.9rem;
}

#homeReader .home-brief-label {
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-brief-answer {
	font-size: 1.18rem;
	line-height: 1.2;
	letter-spacing: -0.05em;
	font-weight: 900;
	color: var(--home-text-strong);
}

#homeReader .home-brief-meta {
	font-size: 0.78rem;
	line-height: 1.55;
	color: var(--home-text-soft);
}

#homeReader .home-section {
	padding: 0;
}

#homeReader .home-section-shell {
	padding: 1rem;
}

#homeReader .home-section-head {
	align-items: flex-end;
	--layout-split-gap: 1rem;
	margin-bottom: 1rem;
}

#homeReader .home-section-copy {
	gap: 0.28rem;
}

#homeReader .home-section-title {
	margin: 0;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1;
	letter-spacing: -0.06em;
	font-weight: 800;
	color: var(--home-text-strong);
}

#homeReader .home-section-desc {
	margin: 0;
	max-width: 58rem;
	font-family:
		"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
	font-size: 0.98rem;
	line-height: 1.82;
	letter-spacing: -0.01em;
	color: var(--home-text-soft);
}

#homeReader .home-section-side {
	gap: 0.5rem;
	justify-items: end;
}

#homeReader .home-section-status {
	font-size: 0.78rem;
	font-weight: 800;
	color: var(--home-text-faint);
}

#homeReader .home-section-link {
	gap: 0.38rem;
	--sh-border-color: rgba(255, 248, 236, 0.12);
	padding: 0.68rem 0.92rem;
	font-size: 0.8rem;
	font-weight: 800;
	text-decoration: none;
}

#homeReader .home-empty {
	border-radius: 24px;
	border: 1px dashed rgba(255, 248, 236, 0.14);
	background: rgba(255, 248, 236, 0.04);
	padding: 1rem 1.05rem;
	font-size: 0.9rem;
	font-weight: 700;
	color: var(--home-text-soft);
}

@media (max-width: 1199px) {
	#homeReader .home-stage-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 899px) {
	#homeReader .home-section-head {
		flex-direction: column;
		align-items: flex-start;
	}

	#homeReader .home-section-side {
		justify-items: start;
	}

	#homeReader .home-brief-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	#homeReader .home-reader-main {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 1rem;
	}

	#homeReader .story-card,
	#homeReader .home-brief-panel,
	#homeReader .home-brief-card {
		border-radius: 20px;
	}

	#homeReader .home-stage-shell,
	#homeReader .home-section-shell {
		padding: 0.75rem;
	}

	#homeReader .home-stage-title {
		max-width: none;
		font-size: clamp(2.2rem, 11vw, 3.4rem);
	}

	#homeReader .home-stage-lead,
	#homeReader .home-section-desc {
		font-size: 0.9rem;
		line-height: 1.74;
	}

	#homeReader .home-section-title {
		font-size: 2rem;
	}
}

#homeReader .home-radar-stack {
	gap: 0.95rem;
}

#homeReader .home-radar-support-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
}

#homeReader .home-radar-lead,
#homeReader .home-radar-card {
	--sh-radius: 24px;
	gap: 0.82rem;
	padding: 1rem;
	text-decoration: none;
}

#homeReader .home-radar-lead-head,
#homeReader .home-radar-card-head {
	--layout-split-gap: 0.8rem;
}

#homeReader .home-radar-lead-title,
#homeReader .home-radar-card-title {
	margin: 0;
	font-size: 1.24rem;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: var(--home-ink-dark);
}

#homeReader .home-radar-date {
	font-size: 0.78rem;
	font-weight: 800;
	color: var(--home-text-faint);
}

#homeReader .home-radar-meta {
	--layout-cluster-gap: 0.45rem;
}

#homeReader .home-radar-badge {
	padding: 0.28rem 0.56rem;
	font-size: 0.72rem;
	font-weight: 800;
}

#homeReader .home-radar-lead-summary,
#homeReader .home-radar-card-summary {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.7;
	color: var(--home-ink-soft);
}

#homeReader .home-radar-history {
	gap: 0.5rem;
	padding-top: 0.8rem;
	border-top: 1px solid var(--app-border-base);
}

#homeReader .home-radar-history-item {
	gap: 0.16rem;
	padding-left: 0.76rem;
	border-left: 2px solid var(--app-border-base);
}

#homeReader .home-radar-history-date {
	font-size: 0.72rem;
	font-weight: 800;
	color: var(--home-text-faint);
}

#homeReader .home-radar-history-summary {
	margin: 0;
	font-size: 0.8rem;
	line-height: 1.6;
	color: var(--home-ink-soft);
}

#homeReader .home-signal-matrix-shell {
	overflow-x: auto;
	padding-bottom: 0.35rem;
}

#homeReader .home-signal-matrix {
	display: grid;
	grid-template-columns: 220px repeat(3, minmax(220px, 1fr));
	min-width: 960px;
	border-radius: 28px;
	overflow: hidden;
	border: 1px solid rgba(255, 248, 236, 0.1);
}

#homeReader .home-signal-matrix-head,
#homeReader .home-signal-matrix-side,
#homeReader .home-signal-matrix-cell {
	padding: 1rem;
	border-right: 1px solid rgba(255, 248, 236, 0.08);
	border-bottom: 1px solid rgba(255, 248, 236, 0.08);
}

#homeReader .home-signal-matrix-head {
	background: rgba(16, 30, 24, 0.16);
}

#homeReader .home-signal-matrix-corner {
	display: grid;
	gap: 0.3rem;
	align-content: start;
	background: rgba(11, 24, 20, 0.22);
}

#homeReader .home-signal-matrix-corner strong {
	font-size: 1rem;
	letter-spacing: -0.03em;
}

#homeReader .home-signal-matrix-corner span,
#homeReader .home-signal-matrix-side-label,
#homeReader .home-signal-matrix-head-kicker {
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-signal-matrix-side {
	display: grid;
	gap: 0.32rem;
	align-content: center;
	background: rgba(255, 248, 236, 0.06);
}

#homeReader .home-signal-matrix-side p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.48;
	font-weight: 800;
	color: var(--home-text-strong);
}

#homeReader .home-signal-matrix-head-link {
	display: inline-flex;
	align-items: center;
	gap: 0.28rem;
	margin-bottom: 0.36rem;
	font-size: 0.76rem;
	font-weight: 800;
	text-decoration: none;
	color: var(--home-text-strong);
}

#homeReader .home-signal-matrix-head-title {
	margin: 0 0 0.36rem;
	font-size: 1.08rem;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: var(--home-text-strong);
}

#homeReader .home-signal-matrix-head-desc {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.58;
	color: var(--home-text-soft);
}

#homeReader .home-signal-matrix-cell {
	display: block;
	text-decoration: none;
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell.theme-news {
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell.theme-flow {
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell.theme-retail {
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell.theme-commodity {
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell.theme-calendar {
	background: rgba(255, 248, 236, 0.04);
}

#homeReader .home-signal-matrix-cell p {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.62;
	color: var(--home-text-body);
}

#homeReader .home-signal-matrix-note {
	margin-bottom: 0.7rem;
	font-size: 0.84rem;
	line-height: 1.66;
	color: var(--home-text-soft);
}

#homeReader .home-validation-band {
	--sh-radius: 24px;
	--layout-split-gap: 1rem;
	align-items: flex-start;
	padding: 1rem;
	margin-bottom: 1rem;
}

#homeReader .home-validation-principles {
	--layout-cluster-gap: 0.45rem;
}

#homeReader .home-validation-principle {
	padding: 0.34rem 0.66rem;
	font-size: 0.72rem;
	font-weight: 800;
}

#homeReader .home-validation-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
}

#homeReader .home-validation-card {
	--sh-radius: 20px;
	--sh-border-color: var(--home-cream-border);
	--sh-shadow: 0 10px 22px rgba(33, 33, 33, 0.04);
	gap: 0.8rem;
	padding: 0.96rem;
	background: var(--home-cream-card);
	text-decoration: none;
	transition:
		border-color 0.18s ease,
		box-shadow 0.18s ease;
}

#homeReader .home-validation-card:hover {
	border-color: rgba(33, 33, 33, 0.14);
	box-shadow: 0 14px 24px rgba(33, 33, 33, 0.06);
}

#homeReader .home-validation-card.theme-macro {
	background: var(--home-cream-card);
}

#homeReader .home-validation-card.theme-compound {
	background: var(--home-cream-card);
}

#homeReader .home-validation-card.theme-leaders {
	background: var(--home-cream-card);
}

#homeReader .home-validation-card-top {
	--layout-split-gap: 0.7rem;
}

#homeReader .home-validation-kicker {
	margin: 0 0 0.22rem;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-validation-label {
	margin: 0;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: 1.34rem;
	line-height: 1.02;
	font-weight: 900;
	letter-spacing: -0.06em;
	color: var(--home-ink-dark);
}

#homeReader .home-validation-summary .home-validation-label {
	font-size: 0.94rem;
	line-height: 1.12;
	letter-spacing: -0.03em;
}

#homeReader .home-validation-arrow {
	font-size: 1.08rem;
	font-weight: 800;
	color: rgba(255, 248, 236, 0.42);
}

#homeReader .home-validation-headline {
	margin: 0;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: 1.04rem;
	line-height: 1.56;
	letter-spacing: -0.04em;
	font-weight: 700;
	color: var(--home-ink-soft);
}

#homeReader .home-validation-summary .home-validation-headline {
	max-width: 32ch;
	font-size: clamp(1.38rem, 1.95vw, 2.18rem);
	line-height: 1.08;
	letter-spacing: -0.05em;
	font-weight: 820;
	color: var(--home-ink-dark);
}

#homeReader .home-validation-checks {
	gap: 0;
	padding-top: 0.12rem;
	border-top: 1px solid rgba(33, 33, 33, 0.08);
}

#homeReader .home-validation-check {
	grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
	align-items: start;
	gap: 0.24rem 0.8rem;
	padding: 0.78rem 0;
	border-bottom: 1px solid rgba(33, 33, 33, 0.08);
	background: transparent;
}

#homeReader .home-validation-check-label {
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-validation-check-value {
	margin: 0;
	font-size: 1.02rem;
	line-height: 1.48;
	letter-spacing: -0.03em;
	font-weight: 700;
	color: var(--home-ink-soft);
}

#homeReader .home-validation-signals {
	--layout-cluster-gap: 0.45rem;
	padding-top: 0.78rem;
	border-top: 1px solid rgba(33, 33, 33, 0.08);
}

#homeReader .home-validation-signal {
	padding: 0.32rem 0.62rem;
	--sh-border-color: rgba(255, 248, 236, 0.08);
	font-size: 0.7rem;
	font-weight: 800;
}

#homeReader .home-validation-metrics {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.54rem 0.7rem;
	padding-top: 0.78rem;
	border-top: 1px solid rgba(33, 33, 33, 0.08);
}

#homeReader .home-validation-metric {
	gap: 0.7rem;
	padding-top: 0;
	border-top: 0;
}

#homeReader .home-validation-metric-label {
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-validation-metric-value {
	font-size: 0.82rem;
	font-weight: 800;
	color: var(--home-ink-dark);
	text-align: right;
}

#homeReader .home-signal-atlas-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.9rem;
}

#homeReader .home-signal-atlas-card {
	--sh-radius: 26px;
	--sh-border-color: var(--home-cream-border);
	--sh-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 14px 28px rgba(13, 22, 14, 0.14);
	gap: 0.8rem;
	padding: 1rem;
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-card.theme-news {
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-card.theme-flow {
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-card.theme-retail {
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-card.theme-commodity {
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-card.theme-calendar {
	background: var(--home-cream-card);
}

#homeReader .home-signal-atlas-head {
	--layout-split-gap: 0.8rem;
}

#homeReader .home-signal-atlas-index {
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: 1.34rem;
	font-weight: 800;
	letter-spacing: -0.05em;
	color: rgba(255, 248, 236, 0.42);
}

#homeReader .home-signal-atlas-kicker {
	margin: 0 0 0.18rem;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-signal-atlas-title {
	margin: 0;
	font-family: "Manrope", "Noto Sans KR", sans-serif;
	font-size: 1.24rem;
	line-height: 1.08;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: var(--home-ink-dark);
}

#homeReader .home-signal-atlas-role {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.56;
	color: rgba(196, 231, 220, 0.94);
}

#homeReader .home-signal-atlas-headline {
	margin: 0;
	font-family:
		"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
	font-size: 0.92rem;
	line-height: 1.7;
	color: var(--home-ink-soft);
}

#homeReader .home-signal-atlas-metrics {
	--layout-cluster-gap: 0.45rem;
}

#homeReader .home-signal-atlas-metric {
	--l-stack-gap: 0.1rem;
	--sh-radius: 18px;
	--sh-border-color: rgba(255, 248, 236, 0.08);
	gap: 0.1rem;
	background: var(--home-cream-surface);
	padding: 0.46rem 0.58rem;
}

#homeReader .home-signal-atlas-metric-label {
	font-size: 0.64rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-signal-atlas-metric-value {
	font-size: 0.78rem;
	font-weight: 800;
	color: var(--home-ink-dark);
}

#homeReader .home-signal-atlas-rows {
	gap: 0.52rem;
}

#homeReader .home-signal-atlas-row {
	gap: 0.16rem;
	padding-top: 0.54rem;
	border-top: 1px solid rgba(255, 248, 236, 0.08);
}

#homeReader .home-signal-atlas-row-label {
	font-size: 0.66rem;
	font-weight: 800;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: var(--home-text-faint);
}

#homeReader .home-signal-atlas-row-value {
	margin: 0;
	font-size: 0.8rem;
	line-height: 1.54;
	color: var(--home-ink-dark);
}

@media (max-width: 1499px) {
	#homeReader .home-signal-atlas-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	#homeReader .home-validation-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#homeReader .home-radar-support-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1199px) {
	#homeReader .home-signal-atlas-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#homeReader .home-radar-support-grid,
	#homeReader .home-validation-grid {
		grid-template-columns: 1fr;
	}

	#homeReader .home-validation-band {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 899px) {
	#homeReader .home-signal-atlas-grid {
		grid-template-columns: 1fr;
	}

	#homeReader .home-radar-history {
		grid-template-columns: 1fr;
	}

	#homeReader .home-validation-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	#homeReader .home-radar-lead,
	#homeReader .home-radar-card,
	#homeReader .home-validation-card {
		border-radius: 20px;
	}

	#homeReader .home-stage-title {
		max-width: 7.6ch;
		font-size: clamp(3.2rem, 15vw, 5rem);
		line-height: 0.86;
		letter-spacing: -0.11em;
	}

	#homeReader .home-stage-lead {
		font-size: 1.08rem;
		line-height: 1.64;
	}

	#homeReader .home-stage-manifesto strong {
		font-size: 1.48rem;
		line-height: 1.02;
	}

	#homeReader .home-stage-manifesto p {
		font-size: 1rem;
		line-height: 1.64;
	}

	#homeReader .home-radar-lead-summary {
		font-size: 1.22rem;
		line-height: 1.18;
	}

	#homeReader .home-brief-head h2 {
		font-size: 1.92rem;
	}

	#homeReader .home-brief-answer {
		font-size: 1.28rem;
		line-height: 1.18;
	}

	#homeReader .home-validation-summary .home-validation-headline {
		font-size: 1.48rem;
		line-height: 1.08;
	}

	#homeReader .home-validation-card .home-validation-headline {
		font-size: 1.02rem;
		line-height: 1.5;
	}

	#homeReader .home-validation-check-value {
		font-size: 0.92rem;
		line-height: 1.46;
	}

	#homeReader .home-radar-history-summary {
		font-size: 0.96rem;
		line-height: 1.5;
	}
}

/* Global neutral lock: homepage must not drift into olive/cream local theme values. */
body[data-reader-page="home"] {
	background: var(--app-bg-base);
	color: var(--app-text-base);
}

body[data-reader-page="home"] #desktop-scroll-root,
body[data-reader-page="home"] #globalFooterShell {
	background: var(--app-bg-base);
	border-color: var(--app-border-base);
	box-shadow: none;
}

body[data-reader-page="home"] #globalFooterShell :is(span, a, p, strong) {
	color: var(--app-text-base);
}

#homeReader {
	--home-text-strong: var(--app-text-base);
	--home-text-body: var(--app-text-base);
	--home-text-soft: var(--app-text-base);
	--home-text-faint: var(--app-text-base);
	--home-border: var(--app-border-base);
	--home-card-bg: var(--app-surface-base);
	--home-panel-bg: var(--app-surface-base);
	--home-panel-strong: var(--app-surface-base);
	--home-stage-bg: var(--app-surface-base);
	--home-cream-card: var(--app-surface-base);
	--home-cream-border: var(--app-border-base);
	--home-cream-surface: var(--app-surface-muted);
	--home-cream-surface-strong: var(--app-surface-muted);
	--home-ink-dark: var(--app-text-base);
	--home-ink-soft: var(--app-text-base);
	--home-accent-mint: var(--app-text-base);
	--home-accent-gold: var(--app-text-base);
	--home-accent-rose: var(--app-text-base);
}

#homeReader .home-stage::before {
	background: none;
}

#homeReader
	:is(
		h1,
		h2,
		h3,
		h4,
		p,
		strong,
		span,
		a,
		button,
		summary,
		li,
		dt,
		dd,
		.section-kicker,
		.text-text,
		.text-text-2,
		.text-text-3,
		.text-text-muted
	) {
	color: var(--app-text-base);
	text-shadow: none;
}

#homeReader
	:is(
		.story-card,
		.home-stage,
		.home-brief-panel,
		.home-brief-card,
		.home-radar-lead,
		.home-radar-card,
		.home-signal-matrix-head,
		.home-signal-matrix-side,
		.home-signal-matrix-cell,
		.home-validation-band,
		.home-validation-card,
		.home-signal-atlas-card
	) {
	background: var(--app-surface-base);
	border-color: var(--app-border-base);
	box-shadow: 0 10px 24px rgba(33, 33, 33, 0.04);
}

#homeReader
	:is(
		.glass-chip,
		.home-stage-date,
		.home-stage-pill,
		.home-radar-badge,
		.home-validation-signal,
		.home-validation-metric,
		.home-section-link
	) {
	background: var(--app-surface-muted);
	border-color: var(--app-border-base);
	color: var(--app-text-base);
	box-shadow: none;
}

#homeReader
	:is(
		.home-validation-metric-label,
		.home-signal-atlas-metric-label
	) {
	white-space: nowrap;
	word-break: keep-all;
}

#homeReader
	:is(
		.home-validation-metric-value,
		.home-signal-atlas-metric-value
	) {
	white-space: nowrap;
}

#homeReader .home-signal-atlas-metric {
	flex: 0 0 auto;
}

@media (max-width: 767px) {
	#homeReader
		:is(
			.home-validation-metric-label,
			.home-signal-atlas-metric-label
		) {
		font-size: 0.62rem;
		letter-spacing: 0.03em;
	}

	#homeReader
		:is(
			.home-validation-metric-value,
			.home-signal-atlas-metric-value
		) {
		font-size: 0.78rem;
	}
}

/* Flatten nested summary cards: keep max depth at two levels and use dividers instead. */
#homeReader .home-brief-panel {
	gap: 0;
	padding: 1.08rem;
}

#homeReader .home-brief-head {
	padding-bottom: 0.95rem;
	border-bottom: 1px solid var(--app-border-base);
}

#homeReader .home-brief-grid {
	gap: 0;
	align-items: stretch;
}

#homeReader .home-brief-card {
	display: grid;
	gap: 0.42rem;
	padding: 1rem 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

#homeReader .home-brief-card .home-brief-meta {
	max-width: 42ch;
}

@media (min-width: 900px) {
	#homeReader .home-brief-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1.25rem;
	}

	#homeReader .home-brief-card {
		border-top: 1px solid var(--app-border-base);
	}

	#homeReader .home-brief-card:nth-child(-n + 2) {
		border-top: 0;
	}

	#homeReader .home-brief-card:nth-child(odd) {
		padding-right: 1.25rem;
		border-right: 1px solid var(--app-border-base);
	}

	#homeReader .home-brief-card:nth-child(even) {
		padding-left: 1.25rem;
	}
}

@media (max-width: 899px) {
	#homeReader .home-brief-grid {
		grid-template-columns: 1fr;
	}

	#homeReader .home-brief-card + .home-brief-card {
		border-top: 1px solid var(--app-border-base);
	}
}
