/* SageArchive — type roles (The Index)
 * Requires tokens.css. Every role below is a complete declaration:
 * family, size, weight, line-height and tracking together.
 * Archivo carries what the app says. Literata carries what the user
 * said or wrote. JetBrains Mono carries machine output only.
 */

.sa-display {
  font-family: var(--sa-font-display);
  font-size: 46px;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.04em;
  color: var(--sa-text-1);
}

.sa-note-title {
  font-family: var(--sa-font-display);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: -0.028em;
  color: var(--sa-text-1);
}

.sa-heading {
  font-family: var(--sa-font-ui);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.018em;
  color: var(--sa-text-1);
}

/* The answer block. Widest type the user reads. */
.sa-answer {
  font-family: var(--sa-font-read);
  font-size: 20px;
  font-weight: 400;
  line-height: 1.66;
  letter-spacing: 0;
  color: var(--sa-text-1);
  max-width: var(--sa-measure-answer);
  text-wrap: pretty;
}

/* Transcripts, converted handwriting, long-form. */
.sa-read {
  font-family: var(--sa-font-read);
  font-size: 16.5px;
  font-weight: 400;
  line-height: 1.64;
  letter-spacing: 0;
  color: var(--sa-text-1);
  max-width: var(--sa-measure-read);
  text-wrap: pretty;
}

.sa-list-title {
  font-family: var(--sa-font-ui);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -0.008em;
  color: var(--sa-text-1);
}

.sa-ui {
  font-family: var(--sa-font-ui);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0;
  color: var(--sa-text-2);
}

.sa-caption {
  font-family: var(--sa-font-ui);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--sa-text-3);
}

/* Section labels. All-caps lives here and nowhere else. */
.sa-label {
  font-family: var(--sa-font-mono);
  font-size: 10px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--sa-text-3);
}

/* Timestamps, counts, durations, sizes. Always tabular. */
.sa-mono {
  font-family: var(--sa-font-mono);
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  color: var(--sa-text-3);
}

/* ── Rules ──────────────────────────────────────────────────
   Negative tracking scales with size: -0.04em at display, 0
   below 16 px. Never track UI text tighter than 0.
   Archivo weights: 400, 600, 700. Literata: 400, 600 only.
   Literata's opsz axis is bound to point size — do not pin it.
   All-caps only in .sa-label, never above 11 px.
   Italic is reserved for quoted material inside a transcript.
   ─────────────────────────────────────────────────────────── */
