/* The Wire Branch — the rooms.
   Each document is a recovered artefact from a different venue and decade.
   The reading spine (measure, size, leading, pager) is fixed in style.css.
   Here we change only the chrome: masthead, headings, accent, paper.
   Discipline: no costume. The prose carries the register; the design is the
   paper it is printed on, not a second performance. */

/* Shared masthead scaffolding the rooms restyle */
.masthead .doc-venue { color: var(--text-light); }
.masthead .doc-title { line-height: 1.12; }
.masthead .doc-deck { color: var(--text-light); }
.masthead .doc-byline { color: var(--text-light); }
.masthead .meta { margin: 0; }

/* ═══════════════════════════════════════════════════════════════
   REPORT  —  Prologue & Epilogue
   Restricted incident report, 2028. Cold institutional apparatus.
   Mono metadata, ruled, numbered sections. No warmth, no ornament.
   ═══════════════════════════════════════════════════════════════ */

.doc-report { --accent: #303236; }
.doc-report .document { padding-top: 3rem; }
.doc-report .doc-number {
  color: #8a8c90;
}
.doc-report .masthead {
  border-top: 2px solid var(--text);
  border-bottom: 1px solid var(--text);
  padding: 1.4rem 0;
  margin-bottom: 2.6rem;
}
.doc-report .masthead .doc-title,
.doc-report .masthead p:first-child strong {
  font-family: var(--mono);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--text);
}
.doc-report .masthead .meta {
  font-family: var(--mono);
  font-size: 0.8rem;
  line-height: 1.9;
  letter-spacing: 0.01em;
  color: var(--text);
}
.doc-report .masthead .meta strong { font-weight: 700; }
.doc-report .document h2 {
  font-family: var(--mono);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--text);
  margin: 2.4rem 0 1rem;
}
.doc-report .document h3 {
  font-family: var(--mono);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: var(--text-light);
  margin: 1.6rem 0 0.8rem;
}
.doc-report blockquote {
  font-family: var(--mono);
  font-style: normal;
  font-size: 0.9rem;
  border-left-width: 3px;
  border-color: var(--text);
  color: var(--text);
}
.doc-report hr.scene { display: none; }        /* reports don't use scene breaks */
.doc-report .end-note {
  font-family: var(--mono);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.8rem !important;
  border-top: 1px solid var(--line);
  padding-top: 1.4rem;
}

/* ═══════════════════════════════════════════════════════════════
   THE STRAND  —  Chapter 1
   Popular archaeology/history, faintly National Geographic. 2010.
   A photographic feature magazine: bold display title, all-caps kicker,
   an ochre rule, an italic deck, a drop cap. Warm, confident.
   ═══════════════════════════════════════════════════════════════ */

.doc-strand { --room-accent: #b8860b; }
.doc-strand .masthead { text-align: center; margin-bottom: 3rem; }
.doc-strand .doc-venue {
  font-family: var(--sans);
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--room-accent);
  margin-bottom: 1.4rem;
}
.doc-strand .doc-venue em { font-style: normal; }
.doc-strand .doc-title {
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--text);
  margin-bottom: 1rem;
}
.doc-strand .doc-deck {
  font-size: 1.12rem;
  font-style: italic;
  line-height: 1.45;
  max-width: 28rem;
  margin: 0 auto 1.4rem;
}
.doc-strand .doc-byline {
  font-family: var(--sans);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-light);
  position: relative;
  padding-top: 1.2rem;
}
.doc-strand .doc-byline::before {
  content: ""; position: absolute; top: 0; left: 50%;
  transform: translateX(-50%);
  width: 44px; height: 2px; background: var(--room-accent);
}
.doc-strand .doc-byline em { font-style: normal; }
.doc-strand .body > p.first::first-letter {
  float: left;
  font-size: 3.6rem;
  line-height: 0.82;
  font-weight: 700;
  padding: 0.35rem 0.6rem 0 0;
  color: var(--text);
}
.doc-strand hr.scene::before { content: "\2756"; color: var(--room-accent); }  /* ❖ */

/* ═══════════════════════════════════════════════════════════════
   THE COMMON READER  —  Chapter 2
   Literary essay journal, 2014. Restraint, elegance, whitespace.
   Centred small-caps venue, refined title, italic deck. Cool, quiet.
   ═══════════════════════════════════════════════════════════════ */

.doc-commonreader .masthead { text-align: center; margin-bottom: 3.2rem; }
.doc-commonreader .doc-venue {
  font-variant: small-caps;
  font-size: 0.95rem;
  letter-spacing: 0.14em;
  color: var(--text-light);
  margin-bottom: 1.5rem;
}
.doc-commonreader .doc-venue em { font-style: normal; }
.doc-commonreader .doc-title {
  font-size: 2.2rem;
  font-style: italic;
  font-weight: normal;
  color: var(--text);
  margin-bottom: 0.9rem;
}
.doc-commonreader .doc-deck {
  font-size: 1rem;
  letter-spacing: 0.02em;
  color: var(--text-light);
}
.doc-commonreader .doc-byline {
  font-size: 0.9rem;
  font-variant: small-caps;
  letter-spacing: 0.1em;
  margin-top: 1.4rem;
}
.doc-commonreader .doc-byline em { font-style: normal; }
.doc-commonreader hr.scene::before { content: "\00A7"; color: var(--line); }  /* § */

/* ═══════════════════════════════════════════════════════════════
   HELIX  —  Chapter 3
   Modern popular science, 2020. Clean sans headings over serif body.
   Confident deck, a cool science accent. Contemporary, bright.
   ═══════════════════════════════════════════════════════════════ */

.doc-helix { --room-accent: #1f7a75; }
.doc-helix .masthead {
  border-top: 3px solid var(--room-accent);
  padding-top: 1.4rem;
  margin-bottom: 2.8rem;
}
.doc-helix .doc-venue {
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--room-accent);
  margin-bottom: 1rem;
}
.doc-helix .doc-venue em { font-style: normal; }
.doc-helix .doc-title {
  font-family: var(--sans);
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--text);
  margin-bottom: 0.9rem;
}
.doc-helix .doc-deck {
  font-family: var(--sans);
  font-size: 1.05rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--text-light);
}
.doc-helix .doc-byline {
  font-family: var(--sans);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-light);
  margin-top: 1.2rem;
}
.doc-helix .doc-byline em { font-style: normal; }
.doc-helix hr.scene::before { content: "\25CF"; color: var(--room-accent); font-size: 0.5rem; }  /* ● */

/* ═══════════════════════════════════════════════════════════════
   THE CONCOURSE  —  Chapter 4
   Policy quarterly, 2021. Sober, columnar gravitas. Small caps,
   a serious serif, a double rule. Named sections as subheads. Navy.
   ═══════════════════════════════════════════════════════════════ */

.doc-concourse { --room-accent: #2b3b52; }
.doc-concourse .masthead {
  border-top: 1px solid var(--text);
  border-bottom: 1px solid var(--text);
  padding: 1.5rem 0;
  margin-bottom: 2.8rem;
  text-align: center;
}
.doc-concourse .doc-venue {
  font-variant: small-caps;
  font-size: 0.9rem;
  letter-spacing: 0.16em;
  color: var(--room-accent);
  margin-bottom: 1.1rem;
}
.doc-concourse .doc-venue em { font-style: normal; }
.doc-concourse .doc-title {
  font-size: 2.15rem;
  font-weight: normal;
  letter-spacing: 0.01em;
  color: var(--text);
  margin-bottom: 0.8rem;
}
.doc-concourse .doc-deck {
  font-size: 0.98rem;
  font-style: italic;
  color: var(--text-light);
}
.doc-concourse .document h2 {
  font-variant: small-caps;
  font-size: 1.35rem;
  letter-spacing: 0.06em;
  color: var(--room-accent);
  margin: 2.6rem 0 1rem;
  padding-bottom: 0.4rem;
  border-bottom: 1px solid var(--line);
}
.doc-concourse hr.scene::before { content: "\2014\2003\2014"; color: var(--line); letter-spacing: 0; }

/* ═══════════════════════════════════════════════════════════════
   ANTHEMIS — BLOG  —  Chapter 5
   AI-lab public blog post, 2026. Sans throughout, light, airy.
   "Posted by" byline. The register of a real lab's blog. Restrained.
   ═══════════════════════════════════════════════════════════════ */

.doc-anthemis-blog { --room-accent: #5a6b52; }
.doc-anthemis-blog .document { font-family: var(--sans); padding-top: 2.6rem; }
.doc-anthemis-blog .document p { font-size: 1.08rem; line-height: 1.75; }
.doc-anthemis-blog .masthead {
  margin-bottom: 2.2rem;
  padding-bottom: 1.3rem;
  border-bottom: 1px solid var(--line);
}
/* first venue line = the blog's name, as a small category tag */
.doc-anthemis-blog .doc-venue {
  font-family: var(--sans);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--room-accent);
  margin-bottom: 0.55rem;
}
.doc-anthemis-blog .doc-venue em { font-style: normal; }
/* second venue line = the date, demoted to a plain dateline */
.doc-anthemis-blog .doc-venue + .doc-venue {
  font-size: 0.85rem;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: var(--text-light);
  margin-bottom: 1.1rem;
}
.doc-anthemis-blog .doc-title {
  font-family: var(--sans);
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -0.028em;
  color: var(--text);
  margin-bottom: 1rem;
}
.doc-anthemis-blog .doc-byline {
  font-family: var(--sans);
  font-size: 0.9rem;
  color: var(--text-light);
  letter-spacing: 0;
  text-transform: none;
}
.doc-anthemis-blog .doc-byline em { font-style: normal; }
.doc-anthemis-blog .document h2 {
  font-family: var(--sans);
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--text);
  margin: 2.4rem 0 0.8rem;
}
.doc-anthemis-blog hr.scene::before { content: "\2022\2003\2022\2003\2022"; color: var(--line); font-size: 0.7rem; }

/* ═══════════════════════════════════════════════════════════════
   ANTHEMIS — RETROSPECTIVE  —  Chapter 6
   Ten-year programme retrospective, 2036. Formal institutional volume.
   Print-like, austere, numbered. Cooler and tighter than the blog.
   ═══════════════════════════════════════════════════════════════ */

.doc-anthemis-report { --room-accent: #3a4750; }
.doc-anthemis-report .masthead {
  text-align: center;
  border-bottom: 3px double var(--text);
  padding-bottom: 1.6rem;
  margin-bottom: 2.8rem;
}
.doc-anthemis-report .doc-venue {
  font-family: var(--sans);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-light);
  line-height: 1.9;
  margin-bottom: 1.2rem;
}
.doc-anthemis-report .doc-venue em { font-style: normal; }
.doc-anthemis-report .doc-title {
  font-family: var(--sans);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: var(--text);
}
.doc-anthemis-report .document h2 {
  font-family: var(--sans);
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--room-accent);
  margin: 2.4rem 0 0.9rem;
}
.doc-anthemis-report hr.scene::before { content: "\2014\2003\2014"; color: var(--line); }

/* ═══════════════════════════════════════════════════════════════
   AR-19  —  Chapter 7
   2066. Never published anywhere. No venue, no masthead, no apparatus.
   The absence *is* the register — legible only because every other page
   wore a costume. Barest type, most air, set a touch larger and slower.
   ═══════════════════════════════════════════════════════════════ */

/* Nothing here composes. No centring, no rule, no accent, no ornament, no
   masthead — the title just begins, flush left, the same size as the prose
   that follows it. Every other document was dressed; this one is undressed,
   and that is the whole of its design. */
.doc-ar19 .document { padding-top: 3rem; }
.doc-ar19 .doc-number { color: #c2c4c6; }
.doc-ar19 .masthead {
  text-align: left;
  margin-bottom: 2.4rem;
}
.doc-ar19 .doc-title {
  font-weight: normal;
  font-size: 1.18rem;
  letter-spacing: 0;
  color: var(--text);
  margin-bottom: 0.2rem;
}
.doc-ar19 .doc-subtitle {
  font-weight: normal;
  font-size: 1.18rem;
  letter-spacing: 0;
  text-transform: none;
  color: var(--text);
  margin-bottom: 1.2rem;
}
.doc-ar19 .masthead .meta {
  font-size: 1rem;
  font-style: normal;
  color: var(--text-light);
  line-height: 1.6;
}
.doc-ar19 hr.scene { margin: 2.2rem 0; }
.doc-ar19 hr.scene::before { content: ""; }   /* just white space between passages */

/* ═══════════════════════════════════════════════════════════════
   CORRESPONDENCE  —  Coda
   A private letter. Serif, human, left-aligned. Salutation and
   signature as a letter sets them. The decoded fragment as an OCR
   block: monospace, degraded, unsettling.
   ═══════════════════════════════════════════════════════════════ */

.doc-letter .masthead {
  margin-bottom: 2.6rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid var(--line);
}
.doc-letter .doc-venue {
  font-size: 0.95rem;
  font-style: italic;
  color: var(--text-light);
}
.doc-letter .document p { font-size: 1.14rem; }
.doc-letter blockquote {
  font-family: var(--mono);
  font-style: normal;
  font-size: 0.86rem;
  line-height: 1.75;
  color: #55575b;
  background: #ecebe6;
  border-left: 3px solid var(--line);
  padding: 1.1rem 1.2rem;
  margin: 1.6rem 0;
}
.doc-letter blockquote p { font-size: 0.86rem !important; margin-bottom: 0.4rem; }
.doc-letter blockquote p:last-child { margin-bottom: 0; }
.doc-letter hr.scene::before { content: ""; display: inline-block; width: 24px; height: 1px; background: var(--line); vertical-align: middle; }
.doc-letter .end-note { font-style: italic; font-weight: normal; }

/* ═══════════════════════════════════════════════════════════════
   FRAME  —  A Note on Authorship
   The book's own voice, out of costume. Site default serif.
   ═══════════════════════════════════════════════════════════════ */

.doc-frame .masthead { text-align: center; margin-bottom: 3rem; }
.doc-frame .doc-title {
  font-weight: normal;
  font-size: 1.9rem;
  color: var(--text);
  position: relative;
  padding-bottom: 1.2rem;
}
.doc-frame .doc-title::after {
  content: ""; position: absolute; bottom: 0; left: 50%;
  transform: translateX(-50%);
  width: 44px; height: 1px; background: var(--line);
}
.doc-frame .document p:first-of-type { }
.doc-frame hr.scene::before { content: "\2727"; color: var(--line); }
