/* Design tokens · copied literally from DESIGN.md. No colour or size lives outside this file. */
:root {
  /* surfaces */
  --surface: #FAF7F0;
  --surface-raised: #F1EADC;
  --surface-inverse: #1D1813;

  /* ink */
  --ink: #1A1612;
  --ink-muted: #5B5147;
  --ink-inverse: #F4EEE2;

  /* accent: liturgical rubric red */
  --accent: #9B2B1D;
  --accent-ink: #FFFFFF;
  --accent-soft: #F4E4DC;

  /* functional */
  --gilt: #A77A2C;
  --gilt-on-dark: #D8B26A;
  --line: #DCD2C1;
  --focus: #9B2B1D;
  --success: #2F6A3B;
  --danger: #B3261E;
  --scrim: rgba(29, 24, 19, 0.62);

  /* type */
  --font-display: "Fraunces", "Iowan Old Style", Georgia, serif;
  --font-body: "Source Serif 4", "Iowan Old Style", Georgia, serif;
  --lh-head: 1.15;
  --lh-body: 1.7;
  --tracking-head: -0.015em;

  --step--1: clamp(0.83rem, 0.8rem + 0.2vw, 0.94rem);
  --step-0: clamp(1.05rem, 1rem + 0.25vw, 1.15rem);
  --step-1: clamp(1.31rem, 1.2rem + 0.5vw, 1.5rem);
  --step-2: clamp(1.64rem, 1.4rem + 1vw, 2rem);
  --step-3: clamp(2.05rem, 1.7rem + 1.8vw, 2.66rem);
  --step-4: clamp(2.4rem, 1.9rem + 2.6vw, 3.4rem);
  --step-5: clamp(2.8rem, 2.1rem + 3.8vw, 4.6rem);

  /* space */
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px; --sp-5: 24px;
  --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px; --sp-10: 128px; --sp-11: 160px;

  --width-text: 64ch;
  --width-content: 1120px;
  --width-wide: 1440px;
  --gutter: clamp(1rem, 4vw, 3rem);

  /* shape */
  --radius: 0;
  --arch: 999px 999px 0 0;
  --border: 1px solid var(--line);
  --hairline: 1px;
  --rule-gilt: 2px solid var(--gilt);
  --cross: 14px;
  --tap: 44px;
  --tap-mobile: 48px;
  --dock-h: 56px;

  /* motion */
  --ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-fast: 160ms;
  --dur-base: 300ms;
  --dur-slow: 700ms;
}

/* Arabic pages: Naskh faces, taller lines, no tracking */
:root:lang(ar) {
  --font-display: "Amiri", "Noto Naskh Arabic", serif;
  --font-body: "Noto Naskh Arabic", "Amiri", serif;
  --lh-head: 1.35;
  --lh-body: 1.9;
  --tracking-head: 0;
  --step-0: clamp(1.12rem, 1.06rem + 0.3vw, 1.25rem);
}
