/* GRAVITISM General Reader — paragraph layers.
   Loaded after reader.css. Colours are relative (currentColor), so the
   layers stay correct in the night theme too. Layers never depend on the
   font alone: memory = italic + thin side rule; letter = indented both sides. */

.story-column p.memory {
  font-family: var(--memory-font, Lora, Georgia, serif);
  font-size: var(--memory-size, 1em);
  font-style: italic;
  padding-left: 0.9em;
  border-left: 1px solid color-mix(in srgb, currentColor 28%, transparent);
}

.story-column p.narration,
.story-column p.dialogue {
  font-style: normal;
}

.story-column p.letter {
  margin-left: 2.2em;
  margin-right: 2.2em;
}

.story-column p.scene-break {
  text-align: center;
  text-indent: 0;
  margin: 1.1em 0;
  letter-spacing: 0.3em;
  opacity: 0.7;
}

.story-column p.signature {
  text-align: right;
  font-style: italic;
  margin-top: 1.4em;
}

.story-column p.footnote {
  font-size: 0.78em;
  line-height: 1.5;
  margin-top: 2.2em;
  padding-top: 0.8em;
  border-top: 1px solid color-mix(in srgb, currentColor 22%, transparent);
  opacity: 0.85;
}
.story-column p.footnote + p.footnote {
  margin-top: 0.6em;
  padding-top: 0;
  border-top: 0;
}

.story-column p.reader-notice {
  font-size: 0.82em;
  font-style: italic;
  text-align: center;
  opacity: 0.7;
  margin-bottom: 1.6em;
}

.reader-cover-wrap img[src=""] {
  visibility: hidden;
}

/* Consecutive memory paragraphs share one unbroken side rule. */
.story-column p.memory:has(+ p.memory) {
  margin-bottom: 0;
  padding-bottom: 0.94em;
}

/* Layers used by "And Silence…" (and available to every book). */
.story-column p.epigraph {
  text-align: center;
  font-style: italic;
  letter-spacing: 0.04em;
  margin: 0.4em 0 2.6em;
  opacity: 0.8;
}
.story-column p.dedication {
  text-align: center;
  font-style: italic;
  margin: 0.15em 0;
}
.story-column p.dedication:first-child { margin-top: 4em; }
.story-column p.part-title {
  font-size: 1.15em;
  letter-spacing: 0.12em;
  margin: 0.4em 0 1.8em;
}
.story-column p.refrain {
  font-style: italic;
  margin-top: 1.6em;
}
.story-column p.pause {
  white-space: pre-line;
  text-align: center;
  line-height: 1.25;
  margin: 1.2em 0;
  opacity: 0.7;
}
.story-column p.signature + p.signature { margin-top: 0.2em; }

/* Play layers: stage directions and speech. */
.story-column p.stage {
  font-style: italic;
  font-size: 0.94em;
  opacity: 0.85;
  margin: 1.1em 0;
}
.story-column p.speech { font-style: normal; }
.story-column p.epigraph { white-space: pre-line; }

/* Plays with several characters: speaker name, cast list, closing note. */
.story-column p.speech .speaker {
  font-variant: small-caps;
  letter-spacing: 0.06em;
  font-weight: 600;
  margin-right: 0.25em;
}
.story-column p.cast {
  margin: 0.3em 0;
}
.story-column p.cast:first-child {
  font-variant: small-caps;
  letter-spacing: 0.06em;
  margin-bottom: 0.8em;
}
.story-column p.afterword {
  font-size: 0.86em;
  font-style: italic;
  text-align: center;
  margin-top: 3em;
  opacity: 0.8;
}
.story-column p.speech .direction {
  font-style: italic;
  opacity: 0.85;
}
/* Quoted verse inside prose (e.g. Sa'di in "The Tunic"). */
.story-column p.verse {
  font-style: italic;
  white-space: pre-line;
  margin: 1em 0 1em 2.2em;
}
/* Short pieces / poems: one item per piece, line breaks kept. */
.story-column p.poem {
  white-space: pre-line;
  margin: 0.4em 0;
}
.story-column p.poem + p.scene-break { margin: 1.6em 0; }

/* Letters Without a Name (book 03): letter headings in a handwritten script. */
body[data-book="03"] .story-column p.part-title{
  font-family:"Lavishly Yours", cursive;
  font-size:2.35em;
  font-weight:400;
  font-style:normal;
  letter-spacing:0;
  text-transform:none;
  line-height:1.15;
  margin:0.1em 0 1.1em;
}
