/*
 * tokens.css — LYRMS Design Token System
 * Extracted from includes/partials/header_styles.php (Phase 5, TOK-01)
 *
 * Load order: AFTER Bootstrap CDN, BEFORE header_styles.php inline block.
 * This file overrides Bootstrap's :root CSS variables and provides theme-aware
 * custom properties consumed by all component rules in header_styles.php.
 *
 * Specificity budget rule:
 * - Prefer Bootstrap :root variable overrides over !important.
 * - !important is permitted ONLY for: (a) dark mode overrides that must beat inline
 *   styles, (b) @media print suppression. Everything else: fix with specificity.
 */

/* ========================================================
   DYNAMIC THEME ENGINE & MODERN VARIABLES
======================================================== */

/* DEFAULT (Master York Rite Palette — oklch v3.0) */
:root {
  /* === OKLCH COLOR SYSTEM === */
  --bg:       oklch(0.96 0.008 80);
  --surface:  oklch(0.99 0.004 80);
  --surface2: oklch(0.93 0.010 80);
  --border:   oklch(0.86 0.010 80);
  --gold:     oklch(0.50 0.13 60);
  --gold-dim: oklch(0.42 0.10 60);
  --text:     oklch(0.18 0.015 255);
  --muted:    oklch(0.44 0.012 255);
  --muted2:   oklch(0.62 0.010 255);
  --red:      oklch(0.50 0.18 25);
  --amber:    oklch(0.55 0.15 55);
  --green:    oklch(0.48 0.14 145);
  --blue:     oklch(0.48 0.14 240);

  /* === LEGACY ALIASES — DO NOT DELETE === */
  /* These names are referenced across 30+ PHP files. Removing them breaks the app. */
  --wine-red:     var(--gold);
  --navy:         var(--text);
  --theme-rgb:    136, 19, 55;      /* MUST stay as raw RGB triplet — used in rgba(var(--theme-rgb), ...) */
  --silver:       var(--border);
  --bg-color:     var(--bg);
  --card-bg:      var(--surface);
  --text-primary: var(--text);
  --text-muted:   var(--muted);
  --border-color: var(--border);

  /* === CARD SHADOWS (unchanged) === */
  --card-shadow: 0 1px 3px 0 rgba(0,0,0,0.06), 0 1px 2px -1px rgba(0,0,0,0.04);
  --card-shadow-hover: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -2px rgba(0,0,0,0.05);

  /* === GRADIENTS (updated to reference new oklch tokens) === */
  --grad-1: linear-gradient(135deg, var(--gold), var(--text));
  --grad-2: linear-gradient(135deg, oklch(0.40 0.04 255), var(--text));
  --grad-3: linear-gradient(135deg, oklch(0.48 0.14 240), var(--text));

  /* Layout */
  --sidebar-width: 240px;
}

html[data-bs-theme="dark"] {
    --wine-red: #f87171;
    --theme-rgb: 248, 113, 113;
    --navy: #1e293b;
    --silver: #334155;
    --card-bg: #0f172a;
    --bg-color: #020617;
    --text-primary: #f8fafc;
    --text-muted: #94a3b8;
    --bs-body-bg: #020617;
    --bs-body-color: #f8fafc;
}

/* 1. CHAPTER (Crimson Red) */
body.theme-chapter {
    --wine-red: #b91c1c;
    --theme-rgb: 185, 28, 28;
    --navy: #450a0a;
    --grad-1: linear-gradient(135deg, #b91c1c, #450a0a);
    --grad-2: linear-gradient(135deg, #991b1b, #450a0a);
    --grad-3: linear-gradient(135deg, #7f1d1d, #450a0a);
}
html[data-bs-theme="dark"] body.theme-chapter {
    --wine-red: #fca5a5; --theme-rgb: 252, 165, 165; --navy: #2a0808;
}

/* 2. COUNCIL (Royal Purple) */
body.theme-council {
    --wine-red: #7e22ce;
    --theme-rgb: 126, 34, 206;
    --navy: #3b0764;
    --grad-1: linear-gradient(135deg, #7e22ce, #3b0764);
    --grad-2: linear-gradient(135deg, #6b21a8, #3b0764);
    --grad-3: linear-gradient(135deg, #581c87, #3b0764);
}
html[data-bs-theme="dark"] body.theme-council {
    --wine-red: #d8b4fe; --theme-rgb: 216, 180, 254; --navy: #1e0a2d;
}

/* 3. COMMANDERY (Charcoal Black) */
body.theme-commandery {
    --wine-red: #475569;
    --theme-rgb: 71, 85, 105;
    --navy: #020617;
    --grad-1: linear-gradient(135deg, #334155, #020617);
    --grad-2: linear-gradient(135deg, #1e293b, #020617);
    --grad-3: linear-gradient(135deg, #0f172a, #000000);
}
html[data-bs-theme="dark"] body.theme-commandery {
    --wine-red: #cbd5e1; --theme-rgb: 203, 213, 225; --navy: #000000;
}

/* 4. BUILDING FUND OVERRIDE (For specific reports) */
body.theme-building {
    --wine-red: #0284c7;
    --theme-rgb: 2, 132, 199;
    --navy: #082f49;
    --grad-1: linear-gradient(135deg, #0284c7, #082f49);
    --grad-2: linear-gradient(135deg, #0369a1, #082f49);
    --grad-3: linear-gradient(135deg, #075985, #042f2e);
}
