/* ============================================================================
   SecuryTik — Theme palettes
   ----------------------------------------------------------------------------
   Two themes ship across the SecuryTik ecosystem (auth portal + marketing
   sites + license server error pages):

   - samm-default : light palette (the shipped default; high-contrast)
   - samm-dark    : the classic SAMM dark look

   themes.css is loaded BEFORE app.css; :root carries the samm-default palette
   so pages with no data-theme still render correctly. app.css consumes only
   these custom properties, so changing data-theme reskins the whole app with
   no reload.

   Tokens (26): --bg --bg-elev --bg-elev-2 --bg-hover --surface --surface-2
   --border --border-strong --fg --fg-muted --fg-dim --primary --primary-hov
   --primary-fg --accent --accent-hov --warn --danger --danger-hov --info
   --violet --ring --shadow-sm --shadow --shadow-lg --grid-line

   These two palettes are copied verbatim from the SAMM project
   (/tmp/current/samm/Dashboard _ SAMM_files/themes.css) to keep the ecosystem
   visually identical to the existing SAMM admin.
   ============================================================================ */

/* ---- samm-default — the shipped default (light palette, high-contrast) ----
   Contrast raised ~40% over the original (two ~20% passes): muted/dim text
   dropped two slate steps, borders darkened, page bg pulled further off the
   white cards, shadows deepened. fg sits near pure black. */
:root,
html[data-theme="samm-default"] {
  --bg:           #e2e8f1;
  --bg-elev:      #ffffff;
  --bg-elev-2:    #dde5f1;
  --bg-hover:     #d6e0f0;
  --surface:      #ffffff;
  --surface-2:    #e6ecf4;
  --border:       #b9c7de;
  --border-strong:#93a6c6;
  --fg:           #05080f;
  --fg-muted:     #1e293b;
  --fg-dim:       #334155;
  --primary:      #2563eb;
  --primary-hov:  #1d4ed8;
  --primary-fg:   #ffffff;
  --accent:       #059669;
  --accent-hov:   #047857;
  --warn:         #d97706;
  --danger:       #dc2626;
  --danger-hov:   #b91c1c;
  --info:         #0891b2;
  --violet:       #7c3aed;
  --ring:         rgba(37,99,235,.50);
  --shadow-sm:    0 1px 2px rgba(15,23,42,.10);
  --shadow:       0 4px 12px rgba(15,23,42,.16);
  --shadow-lg:    0 10px 30px rgba(15,23,42,.27);
  --grid-line:    rgba(15,23,42,.085);
}

/* ---- samm-dark — the historical dark look -------------------------------- */
html[data-theme="samm-dark"] {
  --bg:           #0b0f1a;
  --bg-elev:      #111827;
  --bg-elev-2:    #1a2233;
  --bg-hover:     #1d2738;
  --surface:      #131a2a;
  --surface-2:    #1a2233;
  --border:       #232b3d;
  --border-strong:#2e3850;
  --fg:           #e6eaf2;
  --fg-muted:     #9aa3b8;
  --fg-dim:       #6b7591;
  --primary:      #3b82f6;
  --primary-hov:  #2563eb;
  --primary-fg:   #ffffff;
  --accent:       #10b981;
  --accent-hov:   #059669;
  --warn:         #f59e0b;
  --danger:       #ef4444;
  --danger-hov:   #dc2626;
  --info:         #06b6d4;
  --violet:       #a78bfa;
  --ring:         rgba(59,130,246,.45);
  --shadow-sm:    0 1px 2px rgba(0,0,0,.3);
  --shadow:       0 4px 12px rgba(0,0,0,.35);
  --shadow-lg:    0 10px 30px rgba(0,0,0,.45);
  --grid-line:    rgba(255,255,255,.05);
}
