/* =====================================================================
   Threshold · design tokens
   Mortgage brokers and lenders. Light is "Open house"; dark is "Lamplight".
   --plum is the one accent (buttons, links, the chosen loan, the estimate).
   --apricot is a warm doorway light, for fills only (the step under the lit words, the doorway, deposit bars, the summary panels); text on it is ink. --apricot-ink is its text colour.
   --ok marks what you qualify for; --alert marks invalid fields and figures to check before you rely on them.
   ===================================================================== */
:root {
  color-scheme: light;
  --paper: #f5f6f3;
  --card: #ffffff;
  --well: #e9ebe5;
  --line: #d7dad2;
  --ink: #121a22;
  --ink-2: #36404a;
  --muted: #57606a;
  --plum: #6b2a7a;
  --plum-2: #561f63;
  --on-plum: #ffffff;
  --plum-soft: #f1e3f3;
  --apricot: #ffb98a;
  --apricot-soft: #fdeee3;
  --apricot-ink: #8a4510;
  --ok: #1d6b45;
  --alert: #b3261e;
  --focus: #6b2a7a;
  --shadow-card: 0 1px 2px rgba(18, 26, 34, 0.06), 0 18px 36px -26px rgba(18, 26, 34, 0.42);
  --shadow-lift: 0 30px 60px -30px rgba(18, 26, 34, 0.5);

  --display: "Spectral", Georgia, serif;
  --body: "Golos Text", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: "Fira Mono", ui-monospace, Menlo, monospace;

  --fs-h1: clamp(44px, 6vw, 88px);
  --fs-h2: clamp(32px, 3.9vw, 56px);
  --fs-h3: 22px;
  --fs-lead: clamp(17.5px, 1.35vw, 20.5px);
  --fs-body: 16.5px;
  --fs-small: 15px;
  --fs-label: 12px;

  --wrap: 1200px;
  --gutter: max(20px, 4vw);
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 40px; --s-7: 64px; --s-8: 104px;

  --r-s: 8px;
  --r-m: 14px;
  --r-l: 22px;
  --r-pill: 999px;

  --ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --snap: cubic-bezier(0.34, 1.56, 0.64, 1);
  --d-fast: 150ms;
  --d: 300ms;
  --d-slow: 900ms;
}

/* ---------- Lamplight ---------- */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --paper: #0f1418;
    --card: #171e24;
    --well: #12181d;
    --line: #2a333b;
    --ink: #eef1f3;
    --ink-2: #ced5db;
    --muted: #9ca5ae;
    --plum: #d9a2e6;
    --plum-2: #e8c4f0;
    --on-plum: #2a0a33;
    --plum-soft: #26182b;
    --apricot: #ffb98a;
    --apricot-soft: #2a1f17;
    --apricot-ink: #ffb98a;
    --ok: #7fd6a0;
    --alert: #ff9a90;
    --focus: #d9a2e6;
    --shadow-card: 0 1px 0 rgba(255, 255, 255, 0.03) inset, 0 16px 34px -20px rgba(0, 0, 0, 0.85);
    --shadow-lift: 0 30px 60px -26px rgba(0, 0, 0, 0.9);
  }
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --paper: #0f1418;
  --card: #171e24;
  --well: #12181d;
  --line: #2a333b;
  --ink: #eef1f3;
  --ink-2: #ced5db;
  --muted: #9ca5ae;
  --plum: #d9a2e6;
  --plum-2: #e8c4f0;
  --on-plum: #2a0a33;
  --plum-soft: #26182b;
  --apricot: #ffb98a;
  --apricot-soft: #2a1f17;
  --apricot-ink: #ffb98a;
  --ok: #7fd6a0;
  --alert: #ff9a90;
  --focus: #d9a2e6;
  --shadow-card: 0 1px 0 rgba(255, 255, 255, 0.03) inset, 0 16px 34px -20px rgba(0, 0, 0, 0.85);
  --shadow-lift: 0 30px 60px -26px rgba(0, 0, 0, 0.9);
}
