/* Nuqasm design tokens — single source of truth */
:root {
  color-scheme: dark;
  --bg:        #0a0a0b;
  --bg-2:      #0f0f11;
  --surface:   #131317;
  --surface-2: #17171c;
  --line:      #24242b;
  --line-2:    #1b1b21;
  --line-hot:  #3a3a44;

  --ink:       #ece8df;
  --ink-2:     #c8c4ba;
  --mute:      #7e7a71;
  --mute-2:    #555049;

  --sig:       #b8924e;
  --sig-2:     #cbb07a;
  --ok:        #6db5a2;
  --ok-dim:    #2d6a5f;
  --route-plum:#5a4d7a;

  --wash-gold:  rgba(184,146,78,.08);
  --wash-gold-2:rgba(184,146,78,.04);
  --wash-teal:  rgba(45,106,95,.055);
  --wash-plum:  rgba(90,77,122,.065);
  --bar-route:  linear-gradient(90deg, transparent 0%, rgba(45,106,95,.45) 18%, rgba(90,77,122,.52) 50%, rgba(184,146,78,.48) 82%, transparent 100%);

  --font-disp: "Fraunces", "Times New Roman", serif;
  --font-body: "IBM Plex Sans", system-ui, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;

  --maxw: 1320px;
  --gutter: clamp(1.25rem, 3vw, 2.5rem);

  /* Motion & shape */
  --ease: cubic-bezier(.2, .7, .2, 1);
  --dur: .28s;
  --radius-sm: 3px;
  --radius-md: 6px;

  /* Typography scale (mono chrome) */
  --text-xs: .62rem;
  --text-sm: .68rem;
  --text-md: .72rem;
  --text-label: .58rem;
  --track-wide: .14em;
  --track-wider: .16em;

  /* Surfaces */
  --shadow-panel: 0 1px 0 rgba(255,255,255,.04) inset, 0 20px 48px rgba(0,0,0,.18);
  --shadow-focus: 0 0 0 1px rgba(45,106,95,.35), 0 0 16px rgba(90,77,122,.12), 0 0 24px rgba(184,146,78,.08);
  --gradient-primary: linear-gradient(135deg, #a67d3d 0%, #b8924e 35%, #cbb07a 70%, #8f7048 100%);
  --gradient-primary-hover: linear-gradient(135deg, #b8924e 0%, #d4c08e 45%, #cbb07a 100%);
  --gradient-surface: linear-gradient(180deg, rgba(255,255,255,.025) 0%, transparent 42%);
  --gradient-route: linear-gradient(90deg, var(--ok-dim), var(--route-plum), var(--sig));
  --gradient-route-hover: linear-gradient(90deg, #357568, #6d5f94, var(--sig-2));
  --on-route: #faf7f2;
  --btn-fill: var(--surface);
  --btn-fill-alt: var(--bg-2);
  --btn-fill-hover: linear-gradient(135deg, rgba(45,106,95,.16), rgba(90,77,122,.11) 52%, rgba(184,146,78,.09));
  --btn-text: var(--ink-2);
  --btn-text-hover: var(--ink);

  /* Section rhythm */
  --section-pad-y: clamp(4.5rem, 9vw, 8rem);
  --section-head-gap: clamp(2.5rem, 5vw, 3.75rem);
  --section-intro-gap: clamp(1.75rem, 3vw, 2.5rem);
  --section-body-gap: clamp(2rem, 4vw, 3rem);
  --section-stack-gap: clamp(1rem, 2vw, 1.35rem);
}
