/*
 * Masterminds Grid: editorial print system derived from the "Exponentes &
 * Radicales" classroom PDF. Selected with theme: masterminds-grid, which
 * renders as `theme-masterminds-pine theme-masterminds-grid` so the flat
 * Pine behavior base carries over while this sheet replaces the visible
 * rounded-card aesthetic with a hairline grid, serif display headings,
 * monospaced instructional prose, and sparse blush/blue/highlight accents.
 */

.theme-masterminds-grid {
	--dark: #0e2d3c;
	--panel: #0a2431;
	--paper: #f2efe8;
	--ink: #14313f;
	--muted: #46626f;
	--faint: #526c79;
	--accent: #2f6d99;
	--accent-soft: #d3e2ee;
	--accent-line: #a9c4d8;
	--gold: #c99a23;
	--gold-soft: #f8ecc3;
	--red: #a8473c;
	--red-soft: #f3e0dc;
	--green: #4e7d43;
	--green-soft: #e4ecdf;
	--line: #adbcc2;
	--serif: "Source Serif 4", "Source Serif Pro", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;
	--mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--grid-blush: #e8c9b8;
	--grid-highlight: #f2d64b;
	--grid-hairline: rgba(17, 48, 63, 0.55);
	--grid-hairline-soft: rgba(17, 48, 63, 0.2);
	--grid-hairline-cream: rgba(232, 201, 184, 0.5);
	--grid-cream: #eae3d4;
	--grid-type-lead: clamp(20px, calc(15px + 0.85vw), 28px);
	--grid-type-body: clamp(18px, calc(14px + 0.65vw), 24px);
	--grid-type-support: clamp(17px, calc(13px + 0.45vw), 20px);
}

.theme-masterminds-grid .stage,
.theme-masterminds-grid .slide-body {
	background: var(--paper);
}

/* ---------- utility strip (theme-gated markup) ---------- */

.theme-masterminds-grid .grid-utility {
	display: flex;
	align-items: stretch;
	justify-content: flex-end;
	gap: 10px;
	font-family: var(--mono);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--muted);
}

.theme-masterminds-grid .grid-utility-name {
	flex: 1 1 auto;
	align-self: center;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	color: var(--ink);
}

.theme-masterminds-grid .grid-utility-name {
	min-width: 0;
}


/* ---------- title slide: deep navy canvas, hairline crossings ---------- */

.theme-masterminds-grid .title-slide {
	position: relative;
	justify-content: center;
	padding: clamp(48px, 9vw, 128px) clamp(40px, 8vw, 120px);
	background: var(--dark);
	color: var(--grid-cream);
	overflow: hidden;
}

.theme-masterminds-grid .title-slide::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background-image:
		linear-gradient(90deg, transparent calc(6% - 1px), var(--grid-hairline-cream) calc(6% - 1px), var(--grid-hairline-cream) 6%, transparent 6%),
		linear-gradient(90deg, transparent calc(94% - 1px), var(--grid-hairline-cream) calc(94% - 1px), var(--grid-hairline-cream) 94%, transparent 94%),
		linear-gradient(transparent calc(14% - 1px), var(--grid-hairline-cream) calc(14% - 1px), var(--grid-hairline-cream) 14%, transparent 14%);
}

.theme-masterminds-grid .title-slide .grid-utility {
	position: absolute;
	top: clamp(20px, 3.4vh, 34px);
	right: clamp(40px, 8vw, 120px);
	left: clamp(40px, 8vw, 120px);
	z-index: 1;
	color: var(--grid-cream);
}

.theme-masterminds-grid .title-slide .grid-utility-name {
	color: var(--grid-blush);
}


.theme-masterminds-grid .title-copy {
	display: block;
	position: relative;
	z-index: 1;
	width: min(1040px, 92%);
}

.theme-masterminds-grid .title-slide .kicker {
	margin-bottom: 24px;
	font-family: var(--mono);
	font-size: clamp(12px, 1vw, 15px);
	font-weight: 700;
	letter-spacing: 0.22em;
	color: var(--grid-blush);
}

.theme-masterminds-grid .title-slide h1 {
	max-width: 1000px;
	font-family: var(--serif);
	font-weight: 400;
	font-size: clamp(46px, 6.4vw, 92px);
	line-height: 1.04;
	letter-spacing: -0.01em;
	color: var(--grid-cream);
}

.theme-masterminds-grid .title-rule {
	display: block;
	width: 100%;
	height: 1px;
	margin: clamp(22px, 3.4vh, 36px) 0 0;
	background: var(--grid-hairline-cream);
}

.theme-masterminds-grid .title-slide .subtitle {
	display: block;
	max-width: 860px;
	margin-top: 22px;
	font-family: var(--mono);
	font-size: clamp(13px, 1.15vw, 17px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.04em;
	color: var(--grid-blush);
}

.theme-masterminds-grid .title-footer {
	display: block;
	position: absolute;
	z-index: 1;
	left: 0;
	right: 0;
	bottom: clamp(44px, 9vh, 84px);
	max-width: none;
	margin: 0;
	padding: 16px clamp(40px, 8vw, 120px);
	font-family: var(--mono);
	font-size: clamp(11px, 1vw, 14px);
	letter-spacing: 0.05em;
	color: var(--grid-cream);
	border-top: 1px solid var(--grid-hairline-cream);
	border-bottom: 1px solid var(--grid-hairline-cream);
	background: transparent;
}

.theme-masterminds-grid .title-motif {
	display: none;
}

/* ---------- content frame: warm paper, viewport hairlines ---------- */

.theme-masterminds-grid .slide-frame {
	position: relative;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: auto auto 1fr;
	background: var(--paper);
}

.theme-masterminds-grid .slide-frame::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: clamp(18px, 2.6vw, 40px);
	right: clamp(18px, 2.6vw, 40px);
	z-index: 0;
	pointer-events: none;
	border-left: 1px solid var(--grid-hairline-soft);
	border-right: 1px solid var(--grid-hairline-soft);
}

.theme-masterminds-grid .slide-frame > * {
	min-width: 0;
}

.theme-masterminds-grid .slide-frame > .grid-utility {
	padding: 12px clamp(26px, 4vw, 64px) 10px;
	border-bottom: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .slide-header {
	min-height: 0;
	padding: clamp(16px, 2.2vh, 26px) clamp(26px, 4vw, 64px) clamp(12px, 1.8vh, 20px);
	color: var(--ink);
	background: transparent;
	border-bottom: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .slide-heading {
	gap: 0;
}

.theme-masterminds-grid .slide-heading-icon {
	display: none;
}

.theme-masterminds-grid .slide-header .kicker {
	margin-bottom: 6px;
	font-size: clamp(11px, 0.95vw, 14px);
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--accent);
}

.theme-masterminds-grid .slide-header h1 {
	font-family: var(--serif);
	font-weight: 500;
	font-size: clamp(28px, 3.2vw, 46px);
	line-height: 1.06;
	letter-spacing: -0.01em;
	color: var(--ink);
}

.theme-masterminds-grid .count {
	margin: 0;
	padding: 5px 14px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	color: var(--ink);
	border: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .slide-body {
	--body-max: 1280px;
	grid-template-columns: minmax(0, 1fr);
	position: relative;
	z-index: 1;
}

/* ---------- shared prose ---------- */

.theme-masterminds-grid .lead {
	font-family: var(--mono);
	font-size: var(--grid-type-lead);
	font-weight: 500;
	line-height: 1.42;
	color: var(--ink);
}

.theme-masterminds-grid .lead::before {
	content: "\2192\2002";
	color: var(--accent);
	font-weight: 700;
}

.theme-masterminds-grid .para {
	max-width: 76ch;
	font-family: var(--mono);
	font-size: var(--grid-type-body);
	line-height: 1.55;
}

.theme-masterminds-grid .bullets,
.theme-masterminds-grid .body-content-grid .bullets {
	padding-left: 0;
	list-style: none;
	gap: 0;
	font-family: var(--mono);
	font-size: var(--grid-type-body);
	line-height: 1.45;
}

.theme-masterminds-grid .bullets li {
	position: relative;
	padding: 12px 0 12px 34px;
	border-bottom: 1px solid var(--grid-hairline-soft);
}

.theme-masterminds-grid .bullets li:first-child {
	border-top: 1px solid var(--grid-hairline-soft);
}

.theme-masterminds-grid .bullets li::before {
	content: "\2192";
	position: absolute;
	left: 2px;
	color: var(--accent);
	font-weight: 700;
}

.theme-masterminds-grid .callout {
	gap: 16px;
	padding: 18px 24px;
	font-family: var(--mono);
	font-size: var(--grid-type-body);
	line-height: 1.45;
	color: var(--grid-cream);
	background: var(--dark);
	border-left: 4px solid var(--grid-blush);
	border-radius: 0;
}

.theme-masterminds-grid .callout::before {
	content: "\2192";
	font-family: var(--mono);
	font-size: 1.3em;
	font-weight: 700;
	letter-spacing: 0;
	color: var(--grid-blush);
	background: none;
	border: 0;
	padding: 0;
}

/* Spanish control band: high contrast, one bounded step below primary prose. */
.theme-masterminds-grid .slide-note,
.theme-masterminds-grid .slide-body:has(.layout-grid.grid-two) .slide-note,
.theme-masterminds-grid .slide-body:has(.layout-grid.grid-one) .slide-note {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 15px clamp(18px, 2.4vw, 28px);
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	line-height: 1.45;
	text-align: left;
	color: var(--ink);
	background: var(--accent-soft);
	border: 0;
	border-top: 1px solid var(--grid-hairline);
	border-bottom: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .slide-note::before {
	content: "\2192\2002";
	color: var(--accent);
	font-weight: 700;
}

/* ---------- bubbles: hairline cells + pale-blue concept field ---------- */

.theme-masterminds-grid .bubble {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .bubble h2 {
	font-family: var(--serif);
	font-weight: 500;
	color: var(--ink);
}

.theme-masterminds-grid .bubble p {
	font-family: var(--mono);
	line-height: 1.42;
}

.theme-masterminds-grid .layout-focus .bubble.primary {
	color: var(--ink);
	background: var(--accent-soft);
	border-color: var(--grid-hairline);
}

.theme-masterminds-grid .layout-focus .bubble.primary h2 {
	color: var(--ink);
}

.theme-masterminds-grid .layout-focus .bubble.primary p {
	color: var(--ink);
}

/* ---------- question grid ---------- */

.theme-masterminds-grid .question-card {
	background: var(--paper);
	border: 2px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .question-card h2 {
	color: var(--accent);
}

.theme-masterminds-grid .question-card p {
	font-family: var(--mono);
	line-height: 1.42;
}

/* ---------- split: concept field + ruled copy column ---------- */

.theme-masterminds-grid .split-panel {
	color: var(--ink);
	background: var(--accent-soft);
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .split-label {
	font-weight: 700;
	letter-spacing: 0.1em;
	color: var(--accent);
}

.theme-masterminds-grid .split-title {
	font-family: var(--serif);
	font-weight: 400;
	font-size: clamp(2.4rem, 3.6vw, 3.6rem);
	line-height: 1.02;
	color: var(--ink);
}

.theme-masterminds-grid .split-copy {
	padding-left: clamp(20px, 3vw, 40px);
	border-left: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .split-copy p {
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	line-height: 1.5;
}

.theme-masterminds-grid .emphasis-note {
	padding: 12px 16px;
	font-family: var(--mono);
	color: var(--ink);
	background: var(--grid-highlight);
	border: 0;
	border-radius: 0;
}

/* ---------- cards + info grid: collapsed table composition ---------- */

.theme-masterminds-grid .mini-card {
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .grid-footer,
.theme-masterminds-grid .flow-note {
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	line-height: 1.45;
	color: var(--ink);
	background: var(--accent-soft);
	border: 0;
	border-top: 1px solid var(--grid-hairline);
	border-bottom: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .grid-footer::before,
.theme-masterminds-grid .flow-note::before {
	content: "\2192\2002";
	color: var(--accent);
	font-weight: 700;
}

.theme-masterminds-grid .info-card-grid {
	gap: 1px;
	background: var(--grid-hairline);
	border: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .info-card {
	min-height: 150px;
	padding: clamp(16px, 1.8vw, 24px);
	background: var(--paper);
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .info-card h2 {
	font-family: var(--mono);
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--accent);
}

.theme-masterminds-grid .info-card p {
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	line-height: 1.45;
}

.theme-masterminds-grid .info-card-grid .grid-footer {
	justify-self: stretch;
	max-width: none;
	margin: 0;
	text-align: left;
	border-top: 0;
	border-bottom: 0;
}

/* ---------- blueprint: navy agenda board with blush index cells ---------- */

.theme-masterminds-grid .blueprint-board {
	background-color: var(--dark);
	background-image: none;
	border: 1px solid var(--grid-hairline-cream);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .blueprint-board::before {
	display: none;
}

.theme-masterminds-grid .blueprint-stamp {
	color: var(--grid-cream);
	background: transparent;
	border: 1px solid var(--grid-hairline-cream);
}

.theme-masterminds-grid .blueprint-rooms::before,
.theme-masterminds-grid .blueprint-rooms::after {
	background: var(--grid-hairline-cream);
	opacity: 1;
}

.theme-masterminds-grid .blueprint-rooms::before {
	height: 1px;
}

.theme-masterminds-grid .blueprint-rooms::after {
	width: 1px;
}

.theme-masterminds-grid .blueprint-room {
	padding-top: 30px;
	background: transparent;
	border: 0;
	clip-path: none;
}

.theme-masterminds-grid .blueprint-room::after {
	display: none;
}

.theme-masterminds-grid .blueprint-room-number {
	top: 0;
	right: auto;
	left: 0;
	padding: 4px 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--dark);
	background: var(--grid-blush);
}

.theme-masterminds-grid .blueprint-room-number::before {
	content: "0" counter(blueprint-room);
}

.theme-masterminds-grid .blueprint-room h2 {
	font-family: var(--mono);
	color: var(--grid-cream);
}

.theme-masterminds-grid .blueprint-room p {
	font-family: var(--mono);
	color: #c3d2d9;
}

.theme-masterminds-grid .blueprint-footer {
	color: var(--grid-cream);
	background: transparent;
	border-left: 4px solid var(--grid-blush);
}

/* ---------- flow ---------- */

.theme-masterminds-grid .flow-lead {
	font-family: var(--mono);
	color: var(--ink);
}

@media (min-width: 821px) {
	.theme-masterminds-grid .flow-line {
		grid-template-columns: repeat(2, minmax(0, 1fr) auto) minmax(0, 1fr);
		width: min(840px, 100%);
		justify-self: center;
	}
}

.theme-masterminds-grid .flow-step {
	min-height: 110px;
	padding: 16px 12px;
	font-weight: 600;
	font-size: var(--grid-type-support);
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .flow-arrow {
	font-weight: 700;
	color: var(--accent);
}

/* ---------- formula: typographic band with dashed result box ---------- */

.theme-masterminds-grid .grammar-formula {
	gap: 14px;
	padding: clamp(18px, 2.6vh, 30px) clamp(18px, 2.4vw, 32px);
	border-top: 1px solid var(--grid-hairline);
	border-bottom: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .formula-lead {
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	font-weight: 700;
	text-align: left;
	color: var(--ink);
}

.theme-masterminds-grid .formula-lead::before {
	content: "\2192\2002";
	color: var(--accent);
}

.theme-masterminds-grid .formula-part,
.theme-masterminds-grid .formula-result {
	min-height: 96px;
	padding: 10px 16px;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .formula-part {
	text-align: center;
}

.theme-masterminds-grid .formula-label {
	color: var(--muted);
}

.theme-masterminds-grid .formula-part strong {
	font-family: var(--mono);
}

.theme-masterminds-grid .formula-subject strong {
	color: var(--green);
}

.theme-masterminds-grid .formula-verb strong {
	color: var(--accent);
}

.theme-masterminds-grid .formula-article strong {
	color: #9a6c13;
}

.theme-masterminds-grid .formula-noun strong {
	color: #6c5a9e;
}

.theme-masterminds-grid .formula-neutral strong {
	color: var(--ink);
}

.theme-masterminds-grid .formula-operator {
	font-weight: 500;
	color: var(--ink);
}

.theme-masterminds-grid .formula-result {
	flex: 0 0 auto;
	align-self: center;
	justify-self: end;
	width: fit-content;
	min-width: 0;
	min-height: 0;
	padding: 10px 14px;
	color: var(--accent);
	background: transparent;
	border: 1.5px dashed var(--accent);
}

.theme-masterminds-grid .formula-footer {
	justify-self: stretch;
	max-width: none;
	font-family: var(--mono);
	font-size: var(--grid-type-support);
	text-align: left;
	color: var(--ink);
	background: var(--accent-soft);
	border: 0;
	border-top: 1px solid var(--grid-hairline);
	border-bottom: 1px solid var(--grid-hairline);
	border-radius: 0;
}

/* ---------- choice ---------- */

.theme-masterminds-grid .choice-audio-panel {
	color: var(--grid-cream);
	background: var(--dark);
	border: 1px solid var(--grid-hairline-cream);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .choice-audio-copy strong {
	color: var(--grid-blush);
}

.theme-masterminds-grid .choice-audio-panel audio {
	accent-color: var(--accent);
}

.theme-masterminds-grid .choice-lead {
	font-family: var(--mono);
}

.theme-masterminds-grid .choice-prompt,
.theme-masterminds-grid .choice-multi .choice-prompt {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .choice-multi .choice-item {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .choice-option {
	color: var(--ink);
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-left: 6px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .choice-option:hover,
.theme-masterminds-grid .choice-option:focus-visible {
	background: var(--accent-soft);
	border-left-color: var(--accent);
}

.theme-masterminds-grid .choice-option:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

.theme-masterminds-grid .choice-option.good {
	color: #35592e;
	background: var(--green-soft);
	border-color: #94ac8a;
	border-left-color: var(--green);
}

.theme-masterminds-grid .choice-option.bad {
	color: #7f382e;
	background: var(--red-soft);
	border-color: #c99f96;
	border-left-color: var(--red);
}


.theme-masterminds-grid .choice-status {
	font-family: var(--mono);
}

/* ---------- classification ---------- */

.theme-masterminds-grid .classification-row {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .classification-option {
	color: var(--ink);
	background: transparent;
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .classification-option:hover,
.theme-masterminds-grid .classification-option:focus-visible {
	color: var(--ink);
	background: var(--accent-soft);
	border-color: var(--accent);
}

.theme-masterminds-grid .classification-option:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

.theme-masterminds-grid .classification-option.good {
	color: #35592e;
	background: var(--green-soft);
	border-color: #94ac8a;
}

.theme-masterminds-grid .classification-option.bad {
	color: #7f382e;
	background: var(--red-soft);
	border-color: #c99f96;
}


@media (min-width: 821px) {
	.theme-masterminds-grid .slide-body {
		--body-gap: 10px;
		--body-pad-top: 10px;
		--body-pad-bottom: 10px;
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(5):last-of-type) {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(5):last-of-type) > .info-card {
		grid-column: span 2;
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(5):last-of-type) > .info-card:nth-of-type(n + 4) {
		grid-column: span 3;
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(6):last-of-type) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(7):last-of-type) {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(7):last-of-type) > .info-card {
		grid-column: span 3;
	}

	.theme-masterminds-grid .info-card-grid.cards-many:has(> .info-card:nth-of-type(7):last-of-type) > .info-card:nth-of-type(n + 5) {
		grid-column: span 4;
	}

	.theme-masterminds-grid .body-choice-multi:has(.choice-item:nth-child(6)) {
		--body-gap: 2px;
		--body-pad-top: 1px;
		--body-pad-bottom: 1px;
	}

	.theme-masterminds-grid .body-classification:has(.classification-row:nth-child(7)) {
		--body-gap: 3px;
		--body-pad-top: 2px;
		--body-pad-bottom: 1px;
	}

	.theme-masterminds-grid .body-choice .lead,
	.theme-masterminds-grid .body-classification .lead,
	.theme-masterminds-grid .body-question-grid .lead,
	.theme-masterminds-grid .body-reveal.reveal-many .lead {
		max-width: none;
		font-size: clamp(18px, 1.4vw, 20px);
		line-height: 1.32;
		text-align: left;
	}

	.theme-masterminds-grid .slide-note {
		padding: 10px 16px;
		font-size: var(--grid-type-support);
		line-height: 1.3;
	}

	.theme-masterminds-grid .choice-shell {
		gap: 8px;
	}

	.theme-masterminds-grid .choice-list {
		gap: 8px;
	}


	.theme-masterminds-grid .choice-multi .choice-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.theme-masterminds-grid .choice-multi .choice-item {
		grid-template-columns: minmax(0, 1fr);
		align-content: start;
		gap: 6px;
		padding: 7px;
		border: 2px solid var(--grid-hairline);
	}

	.theme-masterminds-grid .choice-multi .choice-prompt {
		padding: 7px 9px;
		font-size: clamp(17px, 1.35vw, 19px);
		line-height: 1.25;
	}

	.theme-masterminds-grid .choice-multi .choice-options {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px;
	}

	.theme-masterminds-grid .choice-multi .choice-option {
		min-height: 36px;
		padding: 6px 7px;
		font-size: clamp(16px, 1.2vw, 18px);
		line-height: 1.15;
		border-left-width: 4px;
	}


	.theme-masterminds-grid .choice-status {
		font-size: 14px;
	}

	.theme-masterminds-grid .classification-shell {
		max-width: none;
		gap: 8px;
	}

	.theme-masterminds-grid .body-classification:has(.classification-row:nth-child(7)) .classification-shell {
		gap: 2px;
	}

	.theme-masterminds-grid .classification-lead {
		font-size: clamp(18px, 1.4vw, 20px);
		line-height: 1.3;
	}

	.theme-masterminds-grid .classification-list {
		gap: 7px;
	}

	.theme-masterminds-grid .body-classification:has(.classification-row:nth-child(7)) .classification-list {
		gap: 4px;
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(7)) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(12)) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.theme-masterminds-grid .classification-row {
		gap: 6px 10px;
		padding: 8px 10px;
		border: 2px solid var(--grid-hairline);
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(7)) .classification-row {
		grid-template-columns: minmax(0, 1fr);
		align-content: start;
		gap: 4px 7px;
		padding: 5px 7px;
	}

	.theme-masterminds-grid .classification-text {
		font-size: clamp(17px, 1.3vw, 19px);
		line-height: 1.25;
	}

	.theme-masterminds-grid .classification-options {
		justify-content: flex-start;
		gap: 5px;
	}

	.theme-masterminds-grid .classification-option {
		min-width: 0;
		min-height: 34px;
		padding: 6px 8px;
		font-size: clamp(15px, 1.1vw, 16px);
		line-height: 1.1;
	}

	.theme-masterminds-grid .body-classification:has(.classification-row:nth-child(7)) .classification-option {
		min-height: 30px;
		padding: 4px 6px;
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(10)) .classification-option {
		font-size: clamp(14px, 1.05vw, 15px);
	}


	.theme-masterminds-grid .classification-status {
		font-size: 14px;
	}

	.theme-masterminds-grid .body-content-formula {
		--body-gap: 6px;
		--body-pad-top: 6px;
		--body-pad-bottom: 6px;
	}

	.theme-masterminds-grid .body-content-formula .grammar-formula {
		gap: 8px;
	}

	.theme-masterminds-grid .body-content-formula .formula-part {
		min-height: 88px;
		padding: 12px;
	}

	.theme-masterminds-grid .body-content-formula .formula-result {
		min-height: 0;
		padding: 10px 14px;
	}

	.theme-masterminds-grid .body-content-formula .formula-footer {
		padding: 8px 14px;
	}

	.theme-masterminds-grid .body-content-formula .callout {
		padding: 12px 18px;
		font-size: 17px;
	}

	.theme-masterminds-grid .body-content-formula .info-card {
		min-height: 92px;
		padding: 14px;
	}

	.theme-masterminds-grid .body-content-formula .info-card p {
		font-size: 1rem;
	}

	.theme-masterminds-grid .body-reveal.reveal-many {
		--body-gap: 6px;
		--body-pad-top: 6px;
		--body-pad-bottom: 6px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-grid {
		gap: 5px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-card,
	.theme-masterminds-grid .body-reveal.reveal-many .reveal-card.text-only .reveal-copy {
		min-height: 100px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-cover {
		padding: 10px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-cover span {
		font-size: 16px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-cover strong {
		font-size: 1.6rem;
	}
}

/* Low-height projectors trade empty chrome for one additional content row. */
@media (min-width: 821px) and (max-height: 800px) {
	.theme-masterminds-grid .slide-frame > .grid-utility {
		padding-top: 5px;
		padding-bottom: 4px;
	}

	.theme-masterminds-grid .slide-header {
		padding-top: 8px;
		padding-bottom: 6px;
	}

	.theme-masterminds-grid .slide-header h1 {
		font-size: clamp(28px, 3vw, 38px);
	}

	.theme-masterminds-grid .slide-note {
		padding: 8px 14px;
	}

	.theme-masterminds-grid .body-reveal.reveal-many {
		--body-gap: 2px;
		--body-pad-top: 0;
		--body-pad-bottom: 0;
	}

	.theme-masterminds-grid .body-reveal.reveal-many .reveal-grid {
		gap: 4px;
	}

	.theme-masterminds-grid .body-choice-multi .choice-shell {
		gap: 5px;
	}

	.theme-masterminds-grid .choice-multi:has(.choice-item:nth-child(7)) .choice-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 4px;
	}

	.theme-masterminds-grid .body-choice-multi:has(.choice-item:nth-child(7)) .choice-shell {
		gap: 4px;
	}

	.theme-masterminds-grid .body-choice-multi:has(.choice-item:nth-child(7)) .choice-item {
		padding: 6px;
	}

	.theme-masterminds-grid .body-choice-multi:has(.choice-item:nth-child(7)) .choice-option {
		min-height: 34px;
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(10)) {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(7)):not(:has(.classification-row:nth-child(8))) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(12)) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
/* ---------- cloze ---------- */

.theme-masterminds-grid .cloze-word-bank {
	background: transparent;
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .cloze-bank-label {
	color: var(--accent);
}

.theme-masterminds-grid .cloze-word {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .cloze-passage {
	font-family: var(--mono);
	font-size: clamp(18px, 1.6vw, 24px);
	line-height: 1.75;
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .cloze-blank select {
	color: var(--accent);
	background: var(--paper);
	border: 1px solid var(--accent);
	border-radius: 0;
}

.theme-masterminds-grid .cloze-blank select:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

/* ---------- ordering ---------- */

.theme-masterminds-grid .ordering-row {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .ordering-row p {
	font-family: var(--mono);
}

.theme-masterminds-grid .ordering-row.good {
	background: var(--green-soft);
	border-color: #94ac8a;
}

.theme-masterminds-grid .ordering-row.bad {
	background: var(--red-soft);
	border-color: #c99f96;
}

.theme-masterminds-grid .ordering-number {
	color: var(--dark);
	background: var(--grid-blush);
	border-radius: 0;
}

.theme-masterminds-grid .ordering-controls button {
	color: var(--ink);
	background: transparent;
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .ordering-controls button:hover,
.theme-masterminds-grid .ordering-controls button:focus-visible {
	color: var(--ink);
	background: var(--accent-soft);
	border-color: var(--accent);
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

/* ---------- shared activity chrome ---------- */

.theme-masterminds-grid .activity-button {
	color: var(--ink);
	background: transparent;
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .activity-button.primary {
	color: var(--grid-cream);
	background: var(--dark);
	border-color: var(--dark);
}

.theme-masterminds-grid .activity-button.subtle {
	color: var(--muted);
	background: transparent;
	border-color: var(--grid-hairline-soft);
}

.theme-masterminds-grid .activity-button:hover,
.theme-masterminds-grid .activity-button:focus-visible {
	filter: none;
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

/* ---------- video ---------- */

.theme-masterminds-grid .video-player {
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

/* ---------- reveal ---------- */

.theme-masterminds-grid .reveal-card {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .reveal-card.revealed {
	border-top: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .reveal-cover {
	color: var(--grid-cream);
	background: var(--dark);
}

.theme-masterminds-grid .reveal-cover span {
	color: var(--grid-blush);
}

.theme-masterminds-grid .reveal-cover strong {
	font-family: var(--serif);
	font-weight: 400;
}

.theme-masterminds-grid .reveal-cover:focus-visible {
	outline: 2px solid var(--grid-highlight);
	outline-offset: -5px;
}

.theme-masterminds-grid .reveal-content:has(.reveal-emoji):not(:has(img)) {
	background: var(--paper);
}

.theme-masterminds-grid .reveal-emoji {
	background: var(--accent-soft);
}

.theme-masterminds-grid .reveal-copy h2 {
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--accent);
}

.theme-masterminds-grid .reveal-copy p {
	font-family: var(--mono);
	line-height: 1.45;
}

/* ---------- marked passage ---------- */

.theme-masterminds-grid .marked-passage {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .marker-stat {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .marker-swatch {
	border-radius: 0;
}

.theme-masterminds-grid .marker-token:hover,
.theme-masterminds-grid .marker-token:focus-visible {
	background: var(--accent-soft);
}

.theme-masterminds-grid .marker-token:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 1px;
}

/* ---------- tips dialog ---------- */

.theme-masterminds-grid .slide-tips-dialog {
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-top: 1px solid var(--grid-hairline);
	border-radius: 0;
	box-shadow: 0 24px 70px rgba(10, 36, 49, 0.4);
}

.theme-masterminds-grid .tips-header {
	background: var(--accent-soft);
	border-bottom: 1px solid var(--grid-hairline);
}

.theme-masterminds-grid .tips-header h2 {
	font-family: var(--serif);
	font-weight: 500;
}

.theme-masterminds-grid .tips-eyebrow {
	color: var(--accent);
}

.theme-masterminds-grid .tips-close {
	color: var(--ink);
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-radius: 0;
}

.theme-masterminds-grid .tips-close:hover,
.theme-masterminds-grid .tips-close:focus-visible {
	border-color: var(--accent);
	outline: 2px solid var(--accent);
	outline-offset: 2px;
}

.theme-masterminds-grid .tips-list li {
	font-family: var(--mono);
	font-size: clamp(0.95rem, 2vw, 1.08rem);
	background: var(--paper);
	border: 1px solid var(--grid-hairline);
	border-left: 4px solid var(--grid-blush);
	border-radius: 0;
	box-shadow: none;
}

.theme-masterminds-grid .tips-list li::before {
	color: var(--dark);
	background: var(--grid-blush);
	border-radius: 0;
}

/* ---------- deck nav ---------- */

.theme-masterminds-grid .deck-nav {
	background: var(--dark);
	border: 1px solid var(--grid-hairline-cream);
	border-radius: 0;
}

.theme-masterminds-grid .deck-nav a {
	background: rgba(232, 201, 184, 0.1);
	border-radius: 0;
}

.theme-masterminds-grid .deck-nav a:focus-visible {
	outline: 2px solid var(--grid-highlight);
	outline-offset: 2px;
}

.theme-masterminds-grid .deck-nav strong {
	color: var(--grid-blush);
}

.theme-masterminds-grid .deck-nav span {
	color: #849aa5;
}

.theme-masterminds-grid .deck-nav .tips-trigger {
	color: var(--dark);
	background: var(--grid-blush);
	border: 1px solid var(--grid-blush);
	border-radius: 0;
}

.theme-masterminds-grid .deck-nav .tips-trigger:hover,
.theme-masterminds-grid .deck-nav .tips-trigger:focus-visible {
	background: #f0d7c9;
	outline: 2px solid var(--grid-highlight);
	outline-offset: 2px;
}

.theme-masterminds-grid .deck-nav a,
.theme-masterminds-grid .deck-nav button,
.theme-masterminds-grid .deck-nav span,
.theme-masterminds-grid .deck-nav strong {
	white-space: nowrap;
}

@media (min-width: 821px) {
	body.theme-masterminds-grid:not([data-slide-kind="title"]) .deck-nav {
		top: 3px;
		bottom: auto;
		gap: 4px;
		padding: 3px 6px;
		font-size: 11px;
	}

	body.theme-masterminds-grid:not([data-slide-kind="title"]) .deck-nav a,
	body.theme-masterminds-grid:not([data-slide-kind="title"]) .deck-nav button,
	body.theme-masterminds-grid:not([data-slide-kind="title"]) .deck-nav span,
	body.theme-masterminds-grid:not([data-slide-kind="title"]) .deck-nav strong {
		padding: 3px 6px;
	}
}

/* ---------- responsive ---------- */

@media (max-width: 820px) {
	.theme-masterminds-grid .grid-utility {
		gap: 8px;
		font-size: 10px;
	}


	.theme-masterminds-grid .title-slide .grid-utility {
		right: 24px;
		left: 24px;
	}

	.theme-masterminds-grid .slide-frame > .grid-utility {
		padding-inline: 24px;
	}

	.theme-masterminds-grid .flow-line {
		grid-template-columns: 1fr;
		width: 100%;
	}


	.theme-masterminds-grid .info-card-grid,
	.theme-masterminds-grid .info-card-grid.cards-two,
	.theme-masterminds-grid .info-card-grid.cards-three,
	.theme-masterminds-grid .info-card-grid.cards-four,
	.theme-masterminds-grid .info-card-grid.cards-many {
		grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
	}

	.theme-masterminds-grid .layout-grid.grid-two,
	.theme-masterminds-grid .layout-grid.grid-balanced {
		grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	}

	.theme-masterminds-grid .title-footer {
		padding: 12px 24px;
	}

	.theme-masterminds-grid .slide-frame::before {
		display: none;
	}

	.theme-masterminds-grid .split-copy {
		padding-left: 0;
		padding-top: 18px;
		border-left: 0;
		border-top: 1px solid var(--grid-hairline);
	}

	.theme-masterminds-grid .callout {
		border-left-width: 4px;
	}
}

@media (min-width: 720px) and (max-width: 820px) {
	.theme-masterminds-grid .choice-multi .choice-list,
	.theme-masterminds-grid .classification-list:has(.classification-row:nth-child(7)) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.theme-masterminds-grid .choice-multi .choice-options {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 5px;
	}

	.theme-masterminds-grid .choice-multi .choice-item {
		gap: 6px;
		padding: 7px;
	}

	.theme-masterminds-grid .choice-multi .choice-option {
		min-height: 36px;
		padding: 6px 7px;
	}

	.theme-masterminds-grid .classification-row {
		gap: 6px 10px;
		padding: 8px 10px;
	}
}
