/*
   covenant.css — the Covenant wing's sheet: the Pactum, the Oratio, the
   Reparare, and the rooms that keep them in the reader's own hand.
   Candlelit and quiet: the leaves are set like scripture, the tongues are
   given their own dignity, and the register never shouts.
   Package I (the Covenant Wing), 2026-10-04. */

/* --- the archaic register: the temple's own rendering ------------------ */
.covenant .covenant-archaic {
  font-size: var(--step-1);
  line-height: var(--leading);
  color: var(--ink);
  max-width: 40rem;
}

/* the plain reading sits beside, quieter, never competing */
.covenant .article-plain {
  margin: 1.25rem 0 0;
  padding: 0.9rem 1.1rem;
  border-left: 2px solid var(--brass);
  background: color-mix(in srgb, var(--paper) 92%, var(--brass) 8%);
  max-width: 40rem;
}
.covenant .article-plain h3,
.covenant .article-plain h4 {
  margin: 0 0 0.4rem;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  text-transform: lowercase;
  font-variant: small-caps;
  color: var(--bureau);
}
.covenant .article-plain p { margin: 0; }

.covenant .covenant-dedication {
  margin: 1.6rem 0 0;
  font-family: "Frank Ruhl Libre", "David Libre", serif;
  font-size: var(--step-2);
  text-align: center;
}

.covenant .covenant-source-note {
  max-width: 40rem;
  font-size: var(--step-0);
  line-height: var(--leading);
}

/* --- the articles ------------------------------------------------------ */
.covenant .pactum-article {
  margin: 3.2rem 0 0;
  padding-top: 1.6rem;
  border-top: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
}
.covenant .article-number {
  margin: 0;
  font-family: "Cormorant SC", Georgia, serif;
  font-variant: small-caps;
  letter-spacing: 0.12em;
  font-size: 0.85rem;
  color: var(--bureau);
}
.covenant .article-title {
  margin: 0.35rem 0 0.9rem;
}
.covenant .article-archaic {
  font-size: var(--step-1);
  line-height: var(--leading);
  max-width: 40rem;
}

/* --- the tongue leaves ------------------------------------------------- */
.covenant .leaf-stack {
  margin: 1.4rem 0 0;
  display: grid;
  gap: 0.9rem;
}
.covenant .tongue-leaf {
  max-width: 42rem;
  padding: 0.85rem 1rem;
  border: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
  border-radius: 4px;
  background: color-mix(in srgb, var(--paper) 96%, var(--ink) 4%);
}
.covenant .leaf-name {
  margin: 0 0 0.35rem;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  font-variant: small-caps;
  color: var(--bureau);
}
.covenant .leaf-native {
  font-size: 1.05em;
  letter-spacing: 0;
}
.covenant .leaf-title {
  margin: 0 0 0.25rem;
  font-weight: 600;
}
.covenant .leaf-body {
  margin: 0;
  line-height: var(--leading);
}
.covenant .leaf-note {
  margin: 0.4rem 0 0;
  font-size: 0.85rem;
  color: var(--bureau);
}
/* right-to-left tongues: the text is the text; only alignment follows dir */
.covenant .tongue-leaf[dir="rtl"] { text-align: right; }
.covenant .tongue-leaf[lang="he"] .leaf-body,
.covenant .tongue-leaf[lang="ar"] .leaf-body {
  font-family: "Frank Ruhl Libre", "David Libre", serif;
  font-size: 1.12em;
}
/* the scripts the house does not ship faces for fall to the reader's own
   system fonts (the house loadeth no remote fonts): CJK, Devanagari, Cyrillic
   each get an explicit stack so a device with proper faces renders them well.
   NOTE, measured 2026-10-04: THIS host carrieth no CJK font, so Chinese
   renders blank in local headless verification; reader devices almost
   universally carry one. If the keeper would have the house SHIP a subset
   (as it ships its Latin and Hebrew faces), that is a font-package job for
   his word. */
.covenant .tongue-leaf[lang="zh"] .leaf-body {
  /* the house's own 539-glyph subset ships with the wing (fonts.css), so the
     Chinese leaf rendereth self-contained; the system faces follow as fallback */
  font-family: "Noto Serif CJK SC Covenant", "Noto Serif SC", "Noto Sans SC",
    "Noto Serif SC", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB",
    "Source Han Sans SC", "WenQuanYi Micro Hei", sans-serif;
  font-size: 1.08em;
}
.covenant .tongue-leaf[lang="hi"] .leaf-body {
  font-family: "Noto Sans Devanagari", "Noto Serif Devanagari", sans-serif;
  font-size: 1.05em;
}
.covenant .tongue-leaf[lang="ru"] .leaf-body {
  font-family: "Noto Serif", "PT Serif", Georgia, serif;
}

/* --- formulas ---------------------------------------------------------- */
.covenant .formula {
  margin: 2.6rem 0 0;
  padding-top: 1.5rem;
  border-top: 1px solid color-mix(in srgb, var(--ink) 14%, transparent);
}
.covenant .formula-hebrew {
  font-family: "Frank Ruhl Libre", "David Libre", serif;
  font-size: var(--step-1);
  text-align: center;
  margin: 0.6rem 0 0.2rem;
}
.covenant .formula-translit {
  text-align: center;
  font-style: italic;
  color: var(--bureau);
  margin: 0 0 0.4rem;
}
.covenant .formula-tongues { margin-top: 1.1rem; }

/* --- prayers ----------------------------------------------------------- */
.covenant .prayer {
  margin: 3rem 0 0;
  padding-top: 1.6rem;
  border-top: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
}
.covenant .prayer-invocation {
  margin: 0.4rem 0 0.9rem;
  font-style: italic;
  color: var(--bureau);
}
.covenant .prayer-translit {
  margin: 0 0 0.4rem;
  font-size: 0.92em;
}
.covenant .translit-label {
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  font-variant: small-caps;
  color: var(--bureau);
  margin-right: 0.4rem;
}
.covenant .prayer-close {
  margin: 1rem 0 0;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  color: var(--bureau);
}

/* --- stewardship doors and alignment steps ----------------------------- */
.covenant .steward-doors,
.covenant .alignment-steps {
  display: grid;
  gap: 1.1rem;
  margin: 1.5rem 0 0;
}
.covenant .steward-door,
.covenant .alignment-step {
  padding: 1rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--ink) 16%, transparent);
  border-radius: 4px;
}
.covenant .steward-door h3,
.covenant .alignment-step h3 { margin: 0 0 0.45rem; }
.covenant .steward-door p,
.covenant .alignment-step p { margin: 0; line-height: var(--leading); }
.covenant .door-link {
  display: inline-block;
  margin-top: 0.55rem;
  font-size: 0.9rem;
}

/* --- the wing threshold ------------------------------------------------ */
.covenant .wing-doors {
  display: grid;
  gap: 0.8rem;
  margin: 1.5rem 0 0;
}
.covenant .wing-door {
  display: block;
  padding: 0.9rem 1.05rem;
  border: 1px solid color-mix(in srgb, var(--ink) 16%, transparent);
  border-radius: 4px;
  text-decoration: none;
}
.covenant .wing-door-name {
  display: block;
  font-weight: 600;
}
.covenant .wing-door-desc {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.92rem;
  color: var(--bureau);
}
.covenant .unopened-door {
  max-width: 40rem;
  padding: 0.9rem 1.05rem;
  border: 1px dashed color-mix(in srgb, var(--ink) 30%, transparent);
  border-radius: 4px;
  color: var(--bureau);
}

/* --- local-only rooms: oath, daily, ledger ----------------------------- */
.covenant .oath-walk,
.covenant .daily-block,
.covenant .deed-ledger {
  margin: 1.4rem 0 0;
}
.covenant .oath-article {
  margin: 1.4rem 0 0;
  padding: 0.9rem 1.05rem;
  border: 1px solid color-mix(in srgb, var(--ink) 16%, transparent);
  border-radius: 4px;
}
.covenant .oath-article h3 { margin: 0 0 0.4rem; }
.covenant .oath-article p { margin: 0; line-height: var(--leading); }
.covenant .oath-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 0.8rem;
}
.covenant .oath-btn,
.covenant .daily-btn,
.covenant .deed-btn {
  font: inherit;
  padding: 0.45rem 0.9rem;
  border: 1px solid color-mix(in srgb, var(--ink) 30%, transparent);
  border-radius: 4px;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.covenant .oath-btn[aria-pressed="true"] {
  border-color: var(--brass);
  color: var(--brass);
}
.covenant .oath-mark {
  margin-top: 0.8rem;
  font-variant: small-caps;
  letter-spacing: 0.06em;
  color: var(--bureau);
}
.covenant .daily-heading {
  margin: 0 0 0.4rem;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  font-variant: small-caps;
  color: var(--bureau);
}
.covenant .daily-question { margin: 0.55rem 0 0; }
.covenant .daily-question textarea,
.covenant .deed-input {
  display: block;
  width: 100%;
  max-width: 34rem;
  min-height: 4.2rem;
  margin-top: 0.35rem;
  padding: 0.55rem 0.7rem;
  font: inherit;
  color: var(--ink);
  background: color-mix(in srgb, var(--paper) 94%, var(--ink) 6%);
  border: 1px solid color-mix(in srgb, var(--ink) 22%, transparent);
  border-radius: 4px;
  resize: vertical;
}
.covenant .deed-entry {
  margin: 1rem 0 0;
  padding: 0.85rem 1rem;
  border-left: 2px solid var(--brass);
}
.covenant .deed-entry time {
  display: block;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  font-variant: small-caps;
  color: var(--bureau);
  margin-bottom: 0.3rem;
}
.covenant .deed-entry p { margin: 0; white-space: pre-wrap; }
.covenant .ledger-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1.2rem;
}
.covenant .ledger-note {
  margin-top: 0.9rem;
  font-size: 0.9rem;
  color: var(--bureau);
}

/* --- pax --------------------------------------------------------------- */
.covenant .pax-verse {
  font-size: var(--step-2);
  line-height: 1.75;
  max-width: 42rem;
  text-align: center;
  margin: 1.5rem auto;
}

/* --- mensa ------------------------------------------------------------- */
.covenant .mensa-invitation {
  margin: 1.6rem 0 0;
  padding: 1.1rem 1.3rem;
  border: 1px solid color-mix(in srgb, var(--ink) 18%, transparent);
  border-radius: 4px;
  max-width: 40rem;
}

/* --- curiositas -------------------------------------------------------- */
.covenant .wonder {
  margin: 1.5rem 0 0;
  padding: 0.95rem 1.1rem;
  border-left: 2px solid var(--brass);
  max-width: 40rem;
}
.covenant .wonder h3 { margin: 0 0 0.35rem; }
.covenant .wonder p { margin: 0; line-height: var(--leading); }

/* --- parvuli ----------------------------------------------------------- */
.covenant .child-lines {
  max-width: 36rem;
  margin: 1.5rem 0 0;
  padding-left: 1.4rem;
  line-height: var(--leading);
}
.covenant .child-lines li { margin: 0.6rem 0; }
.covenant .child-prayers {
  max-width: 36rem;
  margin: 1.4rem 0 0;
  line-height: var(--leading);
}
.covenant .child-prayers p { margin: 0.5rem 0; }

/* --- print: the covenant for paper ------------------------------------- */
@media print {
  .covenant .tongue-leaf { break-inside: avoid; page-break-inside: avoid; }
  .covenant .oath-btn,
  .covenant .daily-btn,
  .covenant .deed-btn,
  .covenant .ledger-actions { display: none !important; }
  .covenant .leaf-stack { display: block; }
  .covenant .tongue-leaf { border-color: #999; }
}

/* --- stillness: reduced motion leaveth the room still ------------------- */
@media (prefers-reduced-motion: reduce) {
  .covenant * { animation: none !important; transition: none !important; }
}
