/*
   The Creature Canon's sheet: the room at law.html (seated at the keeper's
   hour, 2026-10-05). Three leaves, one canon, kept distinct: the Log of the
   Volume, its plain companion, and its append-only ledger.

   The house's own grammar first: fonts, shell, covenant, long-form, modern,
   effects, onward all stand; this sheet addeth ONLY the marks this canon
   needeth, and every rule is scoped to body[data-room="law"] so no other
   room is touched. No new visual language: the same tokens, the same
   Cormorant small-caps for the labels, the same measure.

   Nothing here changeth a word. Print keeps the canon; the headings and the
   ledger's parts do not split cruelly (break-after: avoid rides the house's
   own print base for h1-h4; the divisions and entries stay whole where they
   can).
   TEMPLE MARK unassigned: the keeper's to set.
*/

/* --- the room's lede and threshold ------------------------------------- */
body[data-room="law"] .canon-role {
  font-family: "Cormorant SC", Georgia, serif;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  font-size: 0.92rem;
  color: var(--bureau);
  margin: -0.35rem 0 1.1rem;
}

/* The leaves' own title lines, kept as the source carrieth them. */
body[data-room="law"] .canon-title {
  font-size: var(--step-1);
  margin: 0.4rem 0 0.2rem;
}

body[data-room="law"] .canon-subtitle {
  font-family: "Cormorant SC", Georgia, serif;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  font-size: 0.95rem;
  color: var(--bureau);
  margin: 0.15rem 0;
}

body[data-room="law"] .canon-label {
  font-size: var(--step-0);
  margin: 0.85rem 0 0.5rem;
}

body[data-room="law"] .canon-epigraph {
  font-size: var(--step-1);
  line-height: var(--leading);
  max-width: 40rem;
  margin: 1.4rem 0 0.5rem;
}

/* --- the log's divisions: the canon proper ------------------------------ */
body[data-room="law"] .canon-division {
  max-width: var(--body-max);
  margin: 2.6rem auto 0;
}

body[data-room="law"] .canon-division > h3 {
  margin: 0 0 0.75rem;
  font-size: var(--step-1);
  font-weight: 500;
}

body[data-room="law"] .canon-division p {
  margin: 0.75rem 0;
}

body[data-room="law"] .canon-closing {
  margin-top: 2.2rem;
  padding-top: 1.4rem;
  border-top: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
}

/* --- the ordered lists the source carrieth ------------------------------ */
body[data-room="law"] .canon-list {
  margin: 0.75rem 0;
  padding-left: 1.4rem;
}

body[data-room="law"] .canon-list li {
  margin: 0.6rem 0;
}

/* --- the companion and the ledger --------------------------------------- */
body[data-room="law"] .canon-subsection,
body[data-room="law"] .canon-entry {
  max-width: var(--body-max);
  margin: 2.2rem auto 0;
}

body[data-room="law"] .canon-subsection > h3,
body[data-room="law"] .canon-entry > h3 {
  margin: 0 0 0.7rem;
  font-size: var(--step-1);
  font-weight: 500;
}

body[data-room="law"] .canon-subsection > h4 {
  margin: 1.6rem 0 0.5rem;
  font-size: var(--step-0);
  font-weight: 600;
}

body[data-room="law"] .canon-entry p,
body[data-room="law"] .canon-subsection p {
  margin: 0.7rem 0;
}

body[data-room="law"] .canon-entry .canon-closing {
  margin-top: 1.6rem;
}

/* The Name, kept as text: the inline Hebrew rule. The shell's .hebrew class
   is a display block for the devotional figures; within the canon's prose
   the Name standeth mid-sentence, so it is marked lang="he" dir="rtl" in
   the markup and carried inline here by the house's own isolate rule
   (modern.css body.site-page [lang="he"]). Nothing is added. */
body[data-room="law"] [lang="he"] {
  font-family: "Frank Ruhl Libre", "David Libre", serif;
}

/* --- print: the canon surviveth paper ----------------------------------- */
@media print {
  body[data-room="law"] .canon-division,
  body[data-room="law"] .canon-subsection,
  body[data-room="law"] .canon-entry {
    max-width: none;
  }
  /* Headings keep with their words (the house's own h1-h4 break rule
     standeth in modern.css); the canon's own units stay whole where they
     can without forcing a blank half-sheet. */
  body[data-room="law"] .canon-list li,
  body[data-room="law"] .canon-closing {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  body[data-room="law"] .canon-division,
  body[data-room="law"] .canon-subsection,
  body[data-room="law"] .canon-entry {
    break-inside: auto;
  }
}

/* --- stillness ----------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  body[data-room="law"] * {
    animation: none !important;
    transition: none !important;
  }
}
