/* Hallmark · macrostructure: Long Document · tone: editorial · anchor hue: vermilion (24)
 * theme: custom · vibe: "archival palm-leaf, vermilion rubrication, phonetic order"
 * paper-band: light · display-style: high-contrast-serif · accent-hue: warm-red
 * pre-emit critique: P5 H5 E5 S5 R5 V4
 */

:root {
  /* Fonts */
  --font-display: 'Playfair Display', Charter, 'Bitstream Charter', Georgia, serif;
  --font-body:    Charter, 'Bitstream Charter', 'Sitka Text', 'Tiro Devanagari Sanskrit',
                  'Noto Serif Devanagari', Cambria, Georgia, serif;
  --font-mono:    ui-monospace, 'Cascadia Code', 'Fira Mono', monospace;

  /* Type scale */
  --text-xs:   0.8125rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  2rem;
  --text-4xl:  2.5rem;

  /* Spacing (4pt scale) */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;

  /* Radii */
  --radius-sm: 3px;
  --radius-md: 6px;
  --radius-lg: 12px;

  /* Easings */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in:     cubic-bezier(0.4, 0, 1, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  /* Durations */
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 350ms;

  /* ── Light mode ──────────────────────────────────────────────────────────── */

  /* Surface — olive-parchment, not warm amber */
  --color-paper:      oklch(96.5% 0.010 105);
  --color-paper-2:    oklch(92%   0.013 105);
  --color-paper-3:    oklch(87%   0.016 105);

  /* Ink */
  --color-text:       oklch(13%   0.012 105);
  --color-text-2:     oklch(44%   0.010 105);

  /* Accent — vermilion (manuscript rubrication), NOT saffron */
  --color-accent:     oklch(49%   0.185  24);
  --color-accent-2:   oklch(41%   0.080 255);

  /* Chrome */
  --color-border:     oklch(84%   0.012 105);
  --color-focus:      oklch(49%   0.185  24);
  --color-rule:       oklch(79%   0.014 105);

  /* Code */
  --color-code-bg:    oklch(91%   0.012 105);
  --color-code-text:  oklch(27%   0.018 105);

  /* Selection */
  --color-selection:  oklch(87%   0.040  24);

  /* ── Phonetic color vocabulary (light) ─────────────────────────────────── */
  /* Vowels — by vowel grade */
  --color-phoneme-a:         oklch(58% 0.130  70);  /* a, ā  — ochre */
  --color-phoneme-i:         oklch(53% 0.175  28);  /* i, ī  — terracotta */
  --color-phoneme-u:         oklch(46% 0.110 305);  /* u, ū  — plum */
  --color-phoneme-r:         oklch(48% 0.130 148);  /* ṛ, ṝ, ḷ — forest */
  --color-phoneme-e:         oklch(43% 0.120 265);  /* e, ai, o, au — indigo */

  /* Consonants — by place of articulation */
  --color-phoneme-guttural:  oklch(44% 0.090 230);  /* ka-varga  (क ख ग घ ङ) */
  --color-phoneme-palatal:   oklch(48% 0.110 155);  /* ca-varga  (च छ ज झ ञ) */
  --color-phoneme-retroflex: oklch(47% 0.140  40);  /* ṭa-varga  (ट ठ ड ढ ण) */
  --color-phoneme-dental:    oklch(47% 0.090  90);  /* ta-varga  (त थ द ध न) */
  --color-phoneme-labial:    oklch(48% 0.130 340);  /* pa-varga  (प फ ब भ म) */
}

/* ── Dark mode (system preference) ──────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
  body[a="auto"] {
    --color-paper:      oklch(9.5%  0.010 260);  /* cool indigo-black */
    --color-paper-2:    oklch(15%   0.012 260);
    --color-paper-3:    oklch(20%   0.015 260);
    --color-text:       oklch(92%   0.008 105);  /* warm off-white */
    --color-text-2:     oklch(67%   0.008 105);
    --color-accent:     oklch(67%   0.155  24);  /* bright vermilion */
    --color-accent-2:   oklch(63%   0.090 255);  /* light indigo */
    --color-border:     oklch(22%   0.014 260);
    --color-focus:      oklch(67%   0.155  24);
    --color-rule:       oklch(24%   0.014 260);
    --color-code-bg:    oklch(14%   0.012 260);
    --color-code-text:  oklch(88%   0.010 105);
    --color-selection:  oklch(21%   0.055  24);

    /* Phonetic — +15% lightness, −0.02 chroma */
    --color-phoneme-a:         oklch(72% 0.110  70);
    --color-phoneme-i:         oklch(68% 0.155  28);
    --color-phoneme-u:         oklch(62% 0.090 305);
    --color-phoneme-r:         oklch(63% 0.110 148);
    --color-phoneme-e:         oklch(58% 0.100 265);
    --color-phoneme-guttural:  oklch(60% 0.070 230);
    --color-phoneme-palatal:   oklch(63% 0.090 155);
    --color-phoneme-retroflex: oklch(62% 0.120  40);
    --color-phoneme-dental:    oklch(63% 0.070  90);
    --color-phoneme-labial:    oklch(63% 0.110 340);
  }
}

/* ── Dark mode (explicit toggle) ────────────────────────────────────────── */
body[a="dark"] {
  --color-paper:      oklch(9.5%  0.010 260);
  --color-paper-2:    oklch(15%   0.012 260);
  --color-paper-3:    oklch(20%   0.015 260);
  --color-text:       oklch(92%   0.008 105);
  --color-text-2:     oklch(67%   0.008 105);
  --color-accent:     oklch(67%   0.155  24);
  --color-accent-2:   oklch(63%   0.090 255);
  --color-border:     oklch(22%   0.014 260);
  --color-focus:      oklch(67%   0.155  24);
  --color-rule:       oklch(24%   0.014 260);
  --color-code-bg:    oklch(14%   0.012 260);
  --color-code-text:  oklch(88%   0.010 105);
  --color-selection:  oklch(21%   0.055  24);

  --color-phoneme-a:         oklch(72% 0.110  70);
  --color-phoneme-i:         oklch(68% 0.155  28);
  --color-phoneme-u:         oklch(62% 0.090 305);
  --color-phoneme-r:         oklch(63% 0.110 148);
  --color-phoneme-e:         oklch(58% 0.100 265);
  --color-phoneme-guttural:  oklch(60% 0.070 230);
  --color-phoneme-palatal:   oklch(63% 0.090 155);
  --color-phoneme-retroflex: oklch(62% 0.120  40);
  --color-phoneme-dental:    oklch(63% 0.070  90);
  --color-phoneme-labial:    oklch(63% 0.110 340);
}
