/* ── themes.css ──────────────────────────────────────────────────────────────
   Color token definitions for all SaaDhaGaa themes.
   Load BEFORE style.css — this file sets the full color palette so all
   downstream sheets can consume theme-aware tokens.

   Theme switching: set [data-theme="dark-gold|dark-teal|dark-indigo|dark-rose"]
   on <html>. The :root block provides dark-gold defaults so the app works even
   without an explicit data-theme attribute (e.g., before JS runs).

   Persistence: theme name stored in localStorage key "sgd.colorTheme".
   The inline anti-FOUC script in index.html reads this key and sets
   data-theme on <html> before any CSS renders, eliminating flash.
*/

/* ── State / status colors — constant across all themes ─────────────────────
   These are semantic (success/error/warning/info) and intentionally
   NOT part of the accent/brand color palette. */
:root {
  --success:        #10b981;
  --success-bg:     rgba(16, 185, 129, 0.10);
  --error:          #ef4444;
  --error-bg:       rgba(239,  68,  68, 0.12);
  --warning:        #f59e0b;
  --warning-bg:     rgba(245, 158,  11, 0.10);
  --info:           #3b82f6;
  --info-bg:        rgba( 59, 130, 246, 0.10);
}

/* ══════════════════════════════════════════════════════════════════════════
   THEME: Dark Gold  (default)
   Deep navy background — warm gold accents.
   This is the canonical SaaDhaGaa look.
══════════════════════════════════════════════════════════════════════════ */
:root,
[data-theme="dark-gold"] {
  /* Page / surface backgrounds */
  --bg:              #0B1426;
  --bg-surface:      rgba(15, 23, 42, 0.95);
  --surface-bg:      linear-gradient(135deg, rgba(15, 23, 42, 0.90), rgba(20, 30, 50, 0.85));

  /* Card border */
  --card-border:     rgba(212, 175, 55, 0.30);

  /* Text hierarchy */
  --text:            #FFFFFF;
  --text-secondary:  #e2e8f0;
  --muted:           #CBD5E1;
  --text-muted:      #94a3b8;
  --text-faint:      #64748b;

  /* Brand accent */
  --accent-1:        #D4AF37;
  --accent-2:        #F4D03F;
  --accent-gradient: linear-gradient(90deg, #D4AF37, #F4D03F);
  --surface-border:  rgba(212, 175, 55, 0.30);
  --primary:         #D4AF37;
  --primary-text:    #111827;

  /* Buttons */
  --btn-primary-bg:       linear-gradient(135deg, #D4AF37, #F4D03F);
  --btn-primary-text:     #111827;
  --btn-primary-shadow:   rgba(212, 175, 55, 0.30);
  --btn-secondary-text:   #CBD5E1;
  --btn-secondary-border: rgba(203, 213, 225, 0.30);

  /* UI chrome */
  --header-accent:   #D4AF37;
  --scrollbar-thumb: rgba(212, 175, 55, 0.25);
  --scrollbar-track: rgba( 15,  23, 42, 0.50);

  /* Backward-compat aliases (used by login.css, register.css, etc.) */
  --bg-card:   rgba(15, 23, 42, 0.90);
  --card-bg:   rgba(15, 23, 42, 0.90);
  --text-main: #FFFFFF;
}

/* ══════════════════════════════════════════════════════════════════════════
   THEME: Dark Teal
   Deep ocean tones — teal/cyan accents.
══════════════════════════════════════════════════════════════════════════ */
[data-theme="dark-teal"] {
  --bg:              #071519;
  --bg-surface:      rgba(7, 35, 42, 0.95);
  --surface-bg:      linear-gradient(135deg, rgba(7, 35, 42, 0.90), rgba(10, 42, 50, 0.85));

  --card-border:     rgba(13, 148, 136, 0.35);

  --text:            #F0FDFA;
  --text-secondary:  #CCFBF1;
  --muted:           #99F6E4;
  --text-muted:      #5EEAD4;
  --text-faint:      #2DD4BF;

  --accent-1:        #0D9488;
  --accent-2:        #14B8A6;
  --accent-gradient: linear-gradient(90deg, #0D9488, #14B8A6);
  --surface-border:  rgba(13, 148, 136, 0.35);
  --primary:         #0D9488;
  --primary-text:    #011c19;

  --btn-primary-bg:       linear-gradient(135deg, #0D9488, #14B8A6);
  --btn-primary-text:     #011c19;
  --btn-primary-shadow:   rgba(13, 148, 136, 0.35);
  --btn-secondary-text:   #99F6E4;
  --btn-secondary-border: rgba(153, 246, 228, 0.35);

  --header-accent:   #14B8A6;
  --scrollbar-thumb: rgba(13, 148, 136, 0.30);
  --scrollbar-track: rgba( 7,  35,  42, 0.50);

  --bg-card:   rgba(7, 35, 42, 0.90);
  --card-bg:   rgba(7, 35, 42, 0.90);
  --text-main: #F0FDFA;
}

/* ══════════════════════════════════════════════════════════════════════════
   THEME: Dark Indigo
   Space-dark background — electric indigo/violet accents.
══════════════════════════════════════════════════════════════════════════ */
[data-theme="dark-indigo"] {
  --bg:              #0A0D1A;
  --bg-surface:      rgba(10, 13, 40, 0.95);
  --surface-bg:      linear-gradient(135deg, rgba(10, 13, 40, 0.90), rgba(15, 20, 52, 0.85));

  --card-border:     rgba(99, 102, 241, 0.35);

  --text:            #F1F5F9;
  --text-secondary:  #E0E7FF;
  --muted:           #C7D2FE;
  --text-muted:      #A5B4FC;
  --text-faint:      #818CF8;

  --accent-1:        #6366F1;
  --accent-2:        #818CF8;
  --accent-gradient: linear-gradient(90deg, #6366F1, #818CF8);
  --surface-border:  rgba(99, 102, 241, 0.35);
  --primary:         #6366F1;
  --primary-text:    #0f0c29;

  --btn-primary-bg:       linear-gradient(135deg, #6366F1, #818CF8);
  --btn-primary-text:     #0f0c29;
  --btn-primary-shadow:   rgba(99, 102, 241, 0.35);
  --btn-secondary-text:   #C7D2FE;
  --btn-secondary-border: rgba(199, 210, 254, 0.35);

  --header-accent:   #818CF8;
  --scrollbar-thumb: rgba(99, 102, 241, 0.30);
  --scrollbar-track: rgba(10,  13,  40, 0.50);

  --bg-card:   rgba(10, 13, 40, 0.90);
  --card-bg:   rgba(10, 13, 40, 0.90);
  --text-main: #F1F5F9;
}

/* ══════════════════════════════════════════════════════════════════════════
   THEME: Dark Rose
   Deep burgundy tones — rose / crimson accents.
══════════════════════════════════════════════════════════════════════════ */
[data-theme="dark-rose"] {
  --bg:              #130A0F;
  --bg-surface:      rgba(30, 10, 20, 0.95);
  --surface-bg:      linear-gradient(135deg, rgba(30, 10, 20, 0.90), rgba(40, 15, 30, 0.85));

  --card-border:     rgba(244, 63, 94, 0.35);

  --text:            #FFF1F2;
  --text-secondary:  #FECDD3;
  --muted:           #FDA4AF;
  --text-muted:      #FB7185;
  --text-faint:      #F43F5E;

  --accent-1:        #F43F5E;
  --accent-2:        #FB7185;
  --accent-gradient: linear-gradient(90deg, #F43F5E, #FB7185);
  --surface-border:  rgba(244, 63, 94, 0.35);
  --primary:         #F43F5E;
  --primary-text:    #1a0008;

  --btn-primary-bg:       linear-gradient(135deg, #F43F5E, #FB7185);
  --btn-primary-text:     #1a0008;
  --btn-primary-shadow:   rgba(244, 63, 94, 0.35);
  --btn-secondary-text:   #FDA4AF;
  --btn-secondary-border: rgba(253, 164, 175, 0.35);

  --header-accent:   #FB7185;
  --scrollbar-thumb: rgba(244,  63,  94, 0.30);
  --scrollbar-track: rgba( 30,  10,  20, 0.50);

  --bg-card:   rgba(30, 10, 20, 0.90);
  --card-bg:   rgba(30, 10, 20, 0.90);
  --text-main: #FFF1F2;
}
