/* Local tweaks: ASCII diagrams are the centerpiece, so widen the
   code block and pull the font down so 80-char-wide diagrams fit. */
.diagram {
  font-family: var(--font-mono);
  background: var(--bg-code);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 1.4em 1.6em;
  margin: 0.4em 0;
  font-size: 19px;
  line-height: 1.45;
  color: var(--text-secondary);
  white-space: pre;
  overflow-x: auto;
}
.diagram.small { font-size: 16px; line-height: 1.4; }
.diagram .a { color: var(--red); }      /* attack-flavored */
.diagram .d { color: var(--green); }    /* defense-flavored */
.diagram .k { color: var(--cyan); }     /* key actor / label */
.diagram .m { color: var(--text-muted); font-style: italic; }

/* Demo cue card — high-contrast slide for stage glance.
   Command lives in a giant mono block. */
.demo-cue {
  background: linear-gradient(135deg, var(--green-dim), transparent);
  border: 1px solid var(--green);
  border-left: 6px solid var(--green);
  border-radius: 10px;
  padding: 1.4em 1.8em;
  margin: 0.6em 0 1em 0;
}
.demo-cue .cmd {
  font-family: var(--font-mono);
  font-size: 44px;
  font-weight: 600;
  color: var(--green);
  letter-spacing: -0.01em;
  display: block;
  margin: 0.3em 0;
}
.demo-cue .watch {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--text-muted);
  margin-bottom: 0.4em;
}
.demo-cue ul {
  margin-top: 0.6em;
  list-style: none;
}
.demo-cue li {
  font-size: 24px;
  padding-left: 1.2em;
  position: relative;
  color: var(--text-primary);
}
.demo-cue li::before {
  content: "▸";
  position: absolute;
  left: 0;
  color: var(--green);
}

/* RFC chip — tiny pill for citing specs inline */
.rfc {
  font-family: var(--font-mono);
  font-size: 0.75em;
  padding: 0.15em 0.5em;
  border-radius: 4px;
  background: var(--cyan-dim);
  color: var(--cyan);
  border: 1px solid var(--border);
  white-space: nowrap;
}

/* Tighter spacing on diagram-heavy slides */
.slide.diagram-slide h2 { margin-bottom: 0.25em; }
.slide.diagram-slide .section-label { margin-bottom: 0.8em; }
.slide.diagram-slide p { font-size: 26px; margin-bottom: 0.4em; }

.lede {
  font-size: 30px;
  color: var(--text-primary);
  margin-bottom: 0.6em;
  max-width: 80%;
}
.lede em { color: var(--cyan); font-style: normal; }

/* Primitive footer — names the mcp-authflow module doing the work
   on a defense slide, so the "watch the primitive land" promise from
   the talk description is visible per-defense, not just on slide 29. */
.primitive-footer {
  font-family: var(--font-mono);
  font-size: 18px;
  color: var(--text-secondary);
  margin-top: 1.1em;
  padding-top: 0.6em;
  border-top: 1px dashed var(--border);
  letter-spacing: 0.01em;
}
.primitive-footer::before {
  content: "↳ mcp-authflow · ";
  color: var(--cyan);
  font-weight: 600;
}
.primitive-footer code {
  background: transparent;
  border: none;
  color: var(--accent);
  padding: 0;
}
