/* EdQuest classroom slide deck styles.
 *
 * Used inside <deck-stage> elements. The shadow-piercing
 * ::slotted(*) rules in deck-stage.js handle stacking + scaling.
 * This file just defines the *contents* of each slide.
 *
 * Authored at 1920×1080. Do not introduce media queries - the
 * deck-stage component scales the canvas uniformly.
 */

:root {
  --type-display: 168px;
  --type-hero: 120px;
  --type-title: 76px;
  --type-subtitle: 44px;
  --type-body: 30px;
  --type-small: 24px;
  --type-mono: 26px;
  --type-mono-sm: 24px;

  /* Slides are full-bleed horizontally - no left/right frame. Vertical
     breathing room only. (Layouts that want a little edge breathing room set
     their own small inset; the global frame is gone.) */
  --pad-x: 0px;
  --pad-top: 56px;
  --pad-bottom: 56px;
  --gap-title: 56px;
  --gap-item: 28px;

  --ink: #1a1715;
  --ink-soft: #3d3835;
  --ink-mute: #87807a;
  --paper: #faf7f1;
  --paper-2: #f0ebe0;
  --paper-3: #e6dfd1;
  --orange: #ff8844;
  --orange-deep: #d96321;
  --rule: rgba(26, 23, 21, 0.14);
  --rule-strong: rgba(26, 23, 21, 0.28);
}

deck-stage section {
  background: var(--paper);
  color: var(--ink);
  padding: var(--pad-top) var(--pad-x) var(--pad-bottom);
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  font-family: 'Geist', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* ===== Type ===== */
.deck-serif { font-family: 'Noticia Text', 'Iowan Old Style', Georgia, serif; }
.deck-sans  { font-family: 'Geist', 'Helvetica Neue', Helvetica, Arial, sans-serif; }
.deck-mono  { font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace; }

deck-stage .display {
  font-family: 'Noticia Text', Georgia, serif;
  font-size: var(--type-display);
  font-weight: 500;
  line-height: 0.92;
  letter-spacing: -0.02em;
  text-wrap: balance;
}
deck-stage .title {
  font-family: 'Noticia Text', Georgia, serif;
  font-size: var(--type-title);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -0.015em;
  text-wrap: balance;
  margin: 0;
}
deck-stage .subtitle {
  font-family: 'Noticia Text', Georgia, serif;
  font-style: italic;
  font-weight: 400;
  font-size: var(--type-subtitle);
  line-height: 1.15;
  color: var(--ink-soft);
  margin: 0;
  text-wrap: balance;
}
deck-stage .body {
  font-size: var(--type-body);
  font-weight: 400;
  line-height: 1.42;
  color: var(--ink-soft);
  text-wrap: pretty;
  margin: 0;
}
deck-stage .small {
  font-size: var(--type-small);
  line-height: 1.4;
  color: var(--ink-soft);
  margin: 0;
}
deck-stage .mono-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: var(--type-mono);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-mute);
  white-space: nowrap;
}
deck-stage .mono-num {
  font-family: 'JetBrains Mono', monospace;
  font-weight: 500;
  color: var(--orange-deep);
}
deck-stage .accent { color: var(--orange-deep); }

/* ===== Chrome on every slide ===== */
deck-stage .chrome-top {
  position: absolute;
  top: 44px;
  left: var(--pad-x);
  right: var(--pad-x);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: var(--type-mono-sm);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-mute);
  white-space: nowrap;
}
deck-stage .chrome-top .crumb { display: flex; gap: 18px; align-items: center; }
deck-stage .chrome-top .crumb .dot { width: 6px; height: 6px; background: var(--orange); border-radius: 50%; display: inline-block; }
deck-stage .chrome-bottom {
  position: absolute;
  bottom: 44px;
  left: var(--pad-x);
  right: var(--pad-x);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-family: 'JetBrains Mono', monospace;
  font-size: var(--type-mono-sm);
  letter-spacing: 0.1em;
  color: var(--ink-mute);
  white-space: nowrap;
}
deck-stage .logo-mark { height: 44px; opacity: 0.75; display: block; }
deck-stage .rule-thin { height: 1px; background: var(--rule); border: 0; margin: 0; }
deck-stage .rule-strong { height: 2px; background: var(--ink); border: 0; margin: 0; }
deck-stage .rule-orange { height: 3px; background: var(--orange); border: 0; margin: 0; width: 72px; }

/* ===== Watermark Q ===== */
deck-stage .watermark-q {
  position: absolute;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}
deck-stage .watermark-q.tr { top: -120px; right: -160px; width: 920px; height: 920px; opacity: 0.07; }
deck-stage .watermark-q.br { bottom: -200px; right: -180px; width: 1000px; height: 1000px; opacity: 0.06; }
deck-stage .watermark-q.bl { bottom: -260px; left: -200px; width: 1100px; height: 1100px; opacity: 0.05; }
deck-stage .watermark-q.divider-bg { top: -180px; right: -240px; width: 1400px; height: 1400px; opacity: 0.1; }
deck-stage section > *:not(.watermark-q) { z-index: 1; }
deck-stage section > *:not(.watermark-q):not(.chrome-top):not(.chrome-bottom) { position: relative; }

/* ============================= COVERS ============================= */

/* Cover A - editorial split, big serif left */
deck-stage .cover-a { padding: 0; display: grid; grid-template-columns: 1fr; height: 100%; }
deck-stage .cover-a .inner { padding: 80px var(--pad-x) 80px; display: flex; flex-direction: column; justify-content: space-between; height: 100%; box-sizing: border-box; }
deck-stage .cover-a .meta-top { display: flex; justify-content: space-between; align-items: flex-start; }
deck-stage .cover-a .logo { height: 96px; }
deck-stage .cover-a .stamp { border: 1px solid var(--ink); padding: 14px 22px; font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.18em; text-transform: uppercase; color: var(--ink); white-space: nowrap; }
deck-stage .cover-a h1.display { font-size: 140px; max-width: 1500px; }
deck-stage .cover-a .subtitle { margin-top: 32px; max-width: 1200px; font-size: 48px; }
deck-stage .cover-a .meta-bottom { display: grid; grid-template-columns: repeat(4, 1fr); gap: 48px; padding-top: 32px; border-top: 1px solid var(--rule); }
deck-stage .cover-a .meta-bottom .lbl { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); margin-bottom: 8px; }
deck-stage .cover-a .meta-bottom .val { font-family: 'Noticia Text', serif; font-size: 30px; color: var(--ink); }

/* Cover B - orange panel */
deck-stage .cover-b { padding: 0; display: grid; grid-template-columns: 720px 1fr; height: 100%; }
deck-stage .cover-b .panel { background: var(--orange); color: #1a1715; padding: 80px 72px; display: flex; flex-direction: column; justify-content: space-between; box-sizing: border-box; }
deck-stage .cover-b .panel .logo { height: 120px; filter: brightness(0); opacity: 0.85; }
deck-stage .cover-b .panel .module { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.16em; text-transform: uppercase; }
deck-stage .cover-b .panel .module .big { display: block; font-family: 'Noticia Text', serif; font-size: 220px; line-height: 0.9; letter-spacing: -0.04em; font-weight: 500; text-transform: none; margin-top: 8px; }
deck-stage .cover-b .panel .panel-meta { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; line-height: 1.7; white-space: pre-line; }
deck-stage .cover-b .right { padding: 100px 88px; display: flex; flex-direction: column; justify-content: center; gap: 32px; }
deck-stage .cover-b .right .eyebrow { color: var(--orange-deep); }
deck-stage .cover-b .right h1 { font-size: 108px; }
deck-stage .cover-b .right .subtitle { font-size: 38px; max-width: 900px; }
deck-stage .cover-b .meta-row { display: flex; gap: 56px; padding-top: 24px; border-top: 1px solid var(--rule); margin-top: 16px; flex-wrap: wrap; }
deck-stage .cover-b .meta-row .val { font-family: 'Noticia Text', serif; font-size: 32px; margin-top: 8px; }

/* Cover C - centered editorial */
deck-stage .cover-c { padding: 0; display: flex; flex-direction: column; align-items: center; text-align: center; height: 100%; box-sizing: border-box; }
deck-stage .cover-c .top { width: 100%; padding: 56px var(--pad-x) 0; display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; }
deck-stage .cover-c .body-center { flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; padding: 0 var(--pad-x); box-sizing: border-box; }
deck-stage .cover-c .quoted { font-family: 'Noticia Text', serif; font-style: italic; font-weight: 400; font-size: 96px; line-height: 1.08; letter-spacing: -0.01em; max-width: 1500px; text-wrap: balance; }
deck-stage .cover-c .quoted .accent { font-style: normal; color: var(--orange-deep); }
deck-stage .cover-c .quoted::before { content: "\201C"; color: var(--orange); font-size: 200px; line-height: 0; vertical-align: -0.32em; margin-right: 12px; font-style: normal; }
deck-stage .cover-c .bottom { width: 100%; padding: 0 var(--pad-x) 56px; display: flex; justify-content: space-between; align-items: flex-end; box-sizing: border-box; }
deck-stage .cover-c .course-title { text-align: left; }
deck-stage .cover-c .course-title .ti { font-family: 'Noticia Text', serif; font-size: 36px; font-weight: 500; }
deck-stage .cover-c .course-title .su { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-mute); margin-top: 6px; white-space: nowrap; }

/* ============================= OBJECTIVES ============================= */
deck-stage .obj-grid { display: grid; gap: 0; border-top: 2px solid var(--ink); border-bottom: 1px solid var(--rule); }
deck-stage .obj-grid.cols-1 { grid-template-columns: 1fr; }
deck-stage .obj-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
deck-stage .obj-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
deck-stage .obj-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
deck-stage .obj-grid .cell { padding: 56px 48px 64px 0; border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 28px; }
deck-stage .obj-grid .cell:nth-child(n+2) { padding-left: 48px; }
deck-stage .obj-grid .cell:last-child { border-right: 0; padding-right: 0; }
deck-stage .obj-grid .cell .num { font-family: 'JetBrains Mono', monospace; font-size: 64px; color: var(--orange-deep); line-height: 1; font-weight: 500; }
deck-stage .obj-grid .cell .verb { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .obj-grid .cell .text { font-family: 'Noticia Text', serif; font-size: 36px; line-height: 1.18; color: var(--ink); text-wrap: pretty; }

/* ============================= AGENDA ============================= */
deck-stage .agenda-list { display: flex; flex-direction: column; }
deck-stage .agenda-row { display: grid; grid-template-columns: 120px 1fr 220px 180px; align-items: baseline; gap: 48px; padding: 28px 0; border-top: 1px solid var(--rule); }
deck-stage .agenda-row:last-child { border-bottom: 1px solid var(--rule); }
deck-stage .agenda-row .n { font-family: 'JetBrains Mono', monospace; font-size: 32px; color: var(--orange-deep); font-weight: 500; }
deck-stage .agenda-row .t { font-family: 'Noticia Text', serif; font-size: 44px; font-weight: 500; color: var(--ink); }
deck-stage .agenda-row .k { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .agenda-row .d { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); color: var(--ink-soft); text-align: right; }

/* ============================= SECTION DIVIDER ============================= */
deck-stage .divider { padding: 0; background: var(--ink); color: var(--paper); height: 100%; box-sizing: border-box; }
deck-stage .divider .chrome-top, deck-stage .divider .chrome-bottom { color: rgba(250,247,241,0.55); }
deck-stage .divider .chrome-top .crumb .dot { background: var(--orange); }
deck-stage .divider .inner { padding: 100px var(--pad-x); height: 100%; box-sizing: border-box; display: grid; grid-template-columns: 600px 1fr; gap: 80px; align-items: center; }
deck-stage .divider .big-num { font-family: 'Noticia Text', serif; font-size: 460px; line-height: 0.82; color: var(--orange); font-weight: 500; letter-spacing: -0.04em; }
deck-stage .divider .right { display: flex; flex-direction: column; gap: 40px; max-width: 1000px; }
deck-stage .divider .part-label { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange); }
deck-stage .divider .part-title { font-family: 'Noticia Text', serif; font-size: 96px; line-height: 1; letter-spacing: -0.015em; font-weight: 500; }
deck-stage .divider .part-body { font-family: 'Noticia Text', serif; font-style: italic; font-size: 36px; line-height: 1.3; color: rgba(250,247,241,0.78); max-width: 880px; }
deck-stage .divider .ticks { display: flex; gap: 48px; padding-top: 32px; border-top: 1px solid rgba(250,247,241,0.18); flex-wrap: wrap; }
deck-stage .divider .ticks .tick { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: rgba(250,247,241,0.55); }
deck-stage .divider .ticks .tick.on { color: var(--paper); }

/* ============================= KEY CONCEPT ============================= */
deck-stage .kc-a .term { font-family: 'Noticia Text', serif; font-size: 132px; line-height: 1; letter-spacing: -0.02em; font-weight: 500; }
deck-stage .kc-a .term .acc { color: var(--orange-deep); }
deck-stage .kc-a .pron { font-family: 'Noticia Text', serif; font-style: italic; font-size: 32px; color: var(--ink-mute); margin-top: 18px; }
deck-stage .kc-a .columns { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; margin-top: var(--gap-title); padding-top: 36px; border-top: 1px solid var(--rule); }
deck-stage .kc-a .col .lbl { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-mute); margin-bottom: 18px; }
deck-stage .kc-a .col .definition { font-family: 'Noticia Text', serif; font-size: 38px; line-height: 1.22; color: var(--ink); }
deck-stage .kc-a .col .example { font-family: 'Noticia Text', serif; font-size: 34px; line-height: 1.28; color: var(--ink); background: var(--paper-2); padding: 28px 32px; border-left: 4px solid var(--orange); }
deck-stage .kc-a .col .example .who { display: block; font-family: 'JetBrains Mono', monospace; font-style: normal; font-size: var(--type-mono-sm); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-mute); margin-top: 16px; }

deck-stage .kc-b .row { display: grid; grid-template-columns: 1fr 760px; gap: 80px; height: 100%; align-items: stretch; }
deck-stage .kc-b .row .text-col { display: flex; flex-direction: column; gap: 36px; padding-top: 20px; }
deck-stage .kc-b .row .text-col .term { font-family: 'Noticia Text', serif; font-size: 96px; line-height: 0.98; letter-spacing: -0.02em; font-weight: 500; }
deck-stage .kc-b .row .text-col .term .acc { color: var(--orange-deep); }
deck-stage .kc-b .row .text-col .lede { font-family: 'Noticia Text', serif; font-size: 36px; line-height: 1.28; color: var(--ink-soft); }
deck-stage .kc-b .row .text-col .bullets { display: flex; flex-direction: column; gap: 18px; margin-top: 8px; }
deck-stage .kc-b .row .text-col .bullets .b { display: grid; grid-template-columns: 56px 1fr; gap: 16px; align-items: baseline; padding: 14px 0; border-top: 1px solid var(--rule); font-family: 'Noticia Text', serif; font-size: 28px; line-height: 1.3; color: var(--ink); }
deck-stage .kc-b .row .text-col .bullets .b .bn { font-family: 'JetBrains Mono', monospace; color: var(--orange-deep); font-size: 24px; }
deck-stage .kc-b .row .visual {
  background:
    repeating-linear-gradient(135deg, rgba(26,23,21,0.05) 0 1px, transparent 1px 14px),
    var(--paper-2);
  border: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 32px;
  position: relative;
}
deck-stage .kc-b .row .visual .vlabel { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); display: flex; justify-content: space-between; }
deck-stage .kc-b .row .visual .vcenter { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1; gap: 12px; text-align: center; }
deck-stage .kc-b .row .visual .vcenter .vinst { font-family: 'JetBrains Mono', monospace; font-size: 28px; color: var(--ink-soft); letter-spacing: 0.06em; }
deck-stage .kc-b .row .visual .vcenter .vsub { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); color: var(--ink-mute); letter-spacing: 0.12em; text-transform: uppercase; }
deck-stage .kc-b .row .visual img.uploaded { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

deck-stage .kc-c { display: flex; flex-direction: column; height: 100%; box-sizing: border-box; padding-top: 140px; padding-bottom: 140px; }
deck-stage .kc-c .top-rail { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 36px; border-bottom: 1px solid var(--rule); }
deck-stage .kc-c .top-rail .l { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .kc-c .top-rail .r { font-family: 'Noticia Text', serif; font-style: italic; font-size: 32px; color: var(--ink-mute); }
deck-stage .kc-c .statement { flex: 1; display: flex; align-items: center; padding: 48px 0; }
deck-stage .kc-c .statement p { font-family: 'Noticia Text', serif; font-size: 108px; line-height: 1.04; letter-spacing: -0.018em; font-weight: 500; margin: 0; text-wrap: balance; }
deck-stage .kc-c .statement p .acc { color: var(--orange-deep); font-style: italic; }
deck-stage .kc-c .attrib { display: flex; justify-content: space-between; align-items: baseline; padding-top: 32px; border-top: 2px solid var(--ink); }
deck-stage .kc-c .attrib .src { font-family: 'Noticia Text', serif; font-size: 30px; color: var(--ink); }
deck-stage .kc-c .attrib .src .who { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); display: block; margin-bottom: 6px; }
deck-stage .kc-c .attrib .pg { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); color: var(--ink-mute); letter-spacing: 0.1em; }

/* ============================= PROCEDURE ============================= */
deck-stage .proc-grid { display: grid; gap: 0; border-top: 2px solid var(--ink); }
deck-stage .proc-grid.cols-1 { grid-template-columns: 1fr; }
deck-stage .proc-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
deck-stage .proc-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
deck-stage .proc-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
deck-stage .proc-grid.cols-5 { grid-template-columns: repeat(5, 1fr); }
deck-stage .proc-grid.cols-6 { grid-template-columns: repeat(6, 1fr); }
deck-stage .proc-step { padding: 36px 36px 40px 0; border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 22px; min-height: 460px; }
deck-stage .proc-step:nth-child(n+2) { padding-left: 36px; }
deck-stage .proc-step:last-child { border-right: 0; padding-right: 0; }
deck-stage .proc-step .top { display: flex; align-items: baseline; gap: 14px; }
deck-stage .proc-step .num { font-family: 'JetBrains Mono', monospace; font-size: 72px; color: var(--orange-deep); line-height: 1; font-weight: 500; }
deck-stage .proc-step .of { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); color: var(--ink-mute); letter-spacing: 0.1em; }
deck-stage .proc-step .verb { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .proc-step .heading { font-family: 'Noticia Text', serif; font-size: 36px; line-height: 1.1; font-weight: 500; color: var(--ink); }
deck-stage .proc-step .desc { font-family: 'Geist', sans-serif; font-size: 24px; line-height: 1.4; color: var(--ink-soft); }
deck-stage .proc-step .checkpoint { margin-top: auto; font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-mute); padding-top: 18px; border-top: 1px dashed var(--rule); }
deck-stage .proc-step .checkpoint b { color: var(--orange-deep); font-weight: 500; }

/* ============================= PITFALLS ============================= */
deck-stage .pit-head { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; padding-bottom: 22px; border-bottom: 2px solid var(--ink); }
deck-stage .pit-head .h { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-mute); display: flex; align-items: center; gap: 14px; }
deck-stage .pit-head .h.bad::before { content: ""; width: 12px; height: 12px; background: var(--ink-mute); display: inline-block; }
deck-stage .pit-head .h.good::before { content: ""; width: 12px; height: 12px; background: var(--orange); display: inline-block; }
deck-stage .pit-list { display: flex; flex-direction: column; }
deck-stage .pit-row { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; padding: 16px 0; border-bottom: 1px solid var(--rule); align-items: baseline; }
deck-stage .pit-row .bad { font-family: 'Noticia Text', serif; font-size: 28px; line-height: 1.22; color: var(--ink-mute); text-decoration: line-through; text-decoration-thickness: 1px; text-decoration-color: var(--ink-mute); }
deck-stage .pit-row .bad .nope { display: block; text-decoration: none; font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); margin-bottom: 6px; }
deck-stage .pit-row .good { font-family: 'Noticia Text', serif; font-size: 28px; line-height: 1.22; color: var(--ink); }
deck-stage .pit-row .good .yep { display: block; font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--orange-deep); margin-bottom: 6px; }

/* ============================= DISCUSSION ============================= */
deck-stage .disc { display: flex; flex-direction: column; height: 100%; box-sizing: border-box; }
deck-stage .disc .top-rail { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 28px; border-bottom: 1px solid var(--rule); margin-top: 60px; }
deck-stage .disc .top-rail .l { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange-deep); }
deck-stage .disc .top-rail .r { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.1em; color: var(--ink-mute); }
deck-stage .disc .question { flex: 1; display: flex; align-items: center; padding: 48px 0 32px; }
deck-stage .disc .question p { font-family: 'Noticia Text', serif; font-size: 104px; line-height: 1.04; letter-spacing: -0.018em; font-weight: 500; margin: 0; text-wrap: balance; }
deck-stage .disc .question p .acc { color: var(--orange-deep); }
deck-stage .disc .prompts { display: grid; gap: 0; padding-top: 28px; border-top: 2px solid var(--ink); }
deck-stage .disc .prompts.cols-1 { grid-template-columns: 1fr; }
deck-stage .disc .prompts.cols-2 { grid-template-columns: repeat(2, 1fr); }
deck-stage .disc .prompts.cols-3 { grid-template-columns: repeat(3, 1fr); }
deck-stage .disc .prompts.cols-4 { grid-template-columns: repeat(4, 1fr); }
deck-stage .disc .prompts .p { padding: 24px 32px 0 0; border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 12px; }
deck-stage .disc .prompts .p:nth-child(n+2) { padding-left: 32px; }
deck-stage .disc .prompts .p:last-child { border-right: 0; padding-right: 0; }
deck-stage .disc .prompts .p .pn { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; color: var(--orange-deep); }
deck-stage .disc .prompts .p .pt { font-family: 'Noticia Text', serif; font-size: 26px; line-height: 1.3; color: var(--ink-soft); font-style: italic; }

/* ============================= SUMMARY ============================= */
deck-stage .sum-head { display: flex; justify-content: space-between; align-items: baseline; }
deck-stage .sum-head .recap { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.16em; text-transform: uppercase; color: var(--orange-deep); }
deck-stage .sum-list { display: flex; flex-direction: column; margin-top: 12px; }
deck-stage .sum-row { display: grid; grid-template-columns: 140px 1fr 320px; gap: 56px; align-items: baseline; padding: 36px 0; border-top: 1px solid var(--rule); }
deck-stage .sum-row:last-child { border-bottom: 1px solid var(--rule); }
deck-stage .sum-row .n { font-family: 'Noticia Text', serif; font-size: 92px; color: var(--orange-deep); line-height: 1; font-weight: 500; letter-spacing: -0.02em; }
deck-stage .sum-row .t { font-family: 'Noticia Text', serif; font-size: 44px; line-height: 1.15; font-weight: 500; color: var(--ink); }
deck-stage .sum-row .m { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); text-align: right; }

/* ============================= RESOURCES ============================= */
deck-stage .res-head { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-mute); display: grid; grid-template-columns: 140px 1fr 220px 180px; gap: 32px; padding-bottom: 18px; border-bottom: 2px solid var(--ink); }
deck-stage .res-head .h-lnk { text-align: right; }
deck-stage .res-list { display: flex; flex-direction: column; }
deck-stage .res-row { display: grid; grid-template-columns: 140px 1fr 220px 180px; gap: 32px; align-items: baseline; padding: 22px 0; border-bottom: 1px solid var(--rule); }
deck-stage .res-row .tag { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .res-row .tag.star { color: var(--orange-deep); }
deck-stage .res-row .ti { font-family: 'Noticia Text', serif; font-size: 32px; line-height: 1.15; font-weight: 500; color: var(--ink); }
deck-stage .res-row .ti .au { display: block; font-family: 'Noticia Text', serif; font-style: italic; font-weight: 400; font-size: 24px; color: var(--ink-mute); margin-top: 4px; }
deck-stage .res-row .typ { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-soft); white-space: nowrap; }
deck-stage .res-row .lnk { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); color: var(--orange-deep); letter-spacing: 0.06em; text-align: right; }

/* ============================= CLOSING ============================= */
deck-stage .close { padding: 0; display: flex; flex-direction: column; height: 100%; box-sizing: border-box; }
deck-stage .close .top { display: flex; justify-content: space-between; align-items: flex-start; padding: 60px var(--pad-x) 0; }
deck-stage .close .top .logo { height: 110px; }
deck-stage .close .mid { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 0 var(--pad-x); }
deck-stage .close .mid .end-stamp { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono); letter-spacing: 0.18em; text-transform: uppercase; color: var(--orange-deep); margin-bottom: 32px; }
deck-stage .close .mid h2 { font-family: 'Noticia Text', serif; font-size: 168px; font-weight: 500; line-height: 0.92; letter-spacing: -0.02em; margin: 0; }
deck-stage .close .mid .sub { font-family: 'Noticia Text', serif; font-style: italic; font-size: 44px; color: var(--ink-soft); margin-top: 32px; max-width: 1200px; }
deck-stage .close .bot { display: grid; gap: 56px; padding: 0 var(--pad-x) 60px; border-top: 1px solid var(--rule); margin-top: 48px; padding-top: 32px; }
deck-stage .close .bot.cols-1 { grid-template-columns: 1fr; }
deck-stage .close .bot.cols-2 { grid-template-columns: repeat(2, 1fr); }
deck-stage .close .bot.cols-3 { grid-template-columns: repeat(3, 1fr); }
deck-stage .close .bot.cols-4 { grid-template-columns: repeat(4, 1fr); }
deck-stage .close .bot .b { display: flex; flex-direction: column; gap: 8px; }
deck-stage .close .bot .b .lbl { font-family: 'JetBrains Mono', monospace; font-size: var(--type-mono-sm); letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-mute); }
deck-stage .close .bot .b .val { font-family: 'Noticia Text', serif; font-size: 30px; color: var(--ink); }
