/*
  Story page (story.html, generated by scripts/build-story.js).
  A long, plain reading page on top of main-layout.css's tokens and fonts.
*/

html, body {
  /* main-layout.css sizes the background to the whole page; on a page this
     long that stretches it, so pin it to the viewport instead. */
  background-attachment: fixed;
}

.story {
  max-width: 760px;
  margin: 0 auto;
  padding: var(--space-lg) var(--space-md) var(--space-xxl);
  line-height: 1.6;
  font-size: var(--text-lg);
}

.story h1,
.story h2 {
  font-family: NEUROPOL, sans-serif;
  color: var(--primary-action);
  letter-spacing: 0.5px;
  line-height: 1.3;
}

.story h1 {
  font-size: 2rem;
  margin-bottom: var(--space-sm);
}

.story h2 {
  font-size: 1.1rem;
  margin-bottom: var(--space-sm);
}

.story p + p {
  margin-top: var(--space-sm);
}

.story a {
  color: var(--primary-action);
}

.story a:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 2px;
}

.story section,
.story nav,
.story header,
.story footer {
  margin-top: var(--space-xl);
}

.story-notice {
  padding: var(--space-md);
  background: var(--background-overlay);
  border-left: 3px solid var(--primary-action);
  border-radius: 6px;
  color: var(--text-secondary);
  font-size: var(--text-base);
}

.story-notice strong {
  color: var(--text-primary);
}

.logline {
  font-style: italic;
  color: var(--text-secondary);
}

.story ul,
.story ol {
  padding-left: var(--space-lg);
}

.story-toc ol {
  columns: 3 8em;
}

.credit-role {
  color: var(--text-secondary);
}

.credit-role::after {
  content: ':';
}

.story-page {
  padding: var(--space-md);
  background: rgba(0, 0, 0, 0.55);
  border-radius: 6px;
}

.summary {
  color: var(--text-primary);
}

.panels {
  margin-top: var(--space-md);
}

.panels > li + li {
  margin-top: var(--space-md);
}

.panel-desc {
  color: var(--text-secondary);
  font-style: italic;
}

.line {
  margin-top: var(--space-xs);
}

.speaker {
  font-weight: bold;
  color: var(--text-primary);
}

.via {
  color: var(--text-secondary);
}

.read-link {
  margin-top: var(--space-md);
}

.read-link a {
  font-family: NEUROPOL, sans-serif;
  font-size: var(--text-base);
}

.story-footer {
  color: var(--text-secondary);
  font-size: var(--text-base);
}
