/* Shared theme tokens — used by the main app (via style.css) and login page */

:root {
  --red:      #ff2e4c;
  --red-dark: #cc1a34;
  --accent:   #00d4ff;
  --accent2:  #00a8cc;
  --accent-glow: rgba(0,212,255,.15);
  --accent-glow2: rgba(0,212,255,.08);
  --bg:       #060a14;
  --bg2:      #0c1222;
  --bg3:      #111a30;
  --bg4:      #182240;
  --border:   #1a2744;
  --border2:  #243456;
  --text:     #e4ecf8;
  --text2:    #98adc8;
  --muted:    #5a6f94;
  --green:    #00ff88;
  --yellow:   #ffd600;
  --orange:   #ff7b00;
  --blue:     #3d8bff;
  --purple:   #a855f7;
  --cyan:     #00e5ff;
  --pink:     #ff4081;
  --radius:   6px;
  --radius2:  10px;
  --font:         'IBM Plex Sans', 'Segoe UI', system-ui, sans-serif;
  --font-display: 'IBM Plex Sans', 'Segoe UI', system-ui, sans-serif;
  --font-mono:    'IBM Plex Mono', 'Cascadia Code', Consolas, monospace;
  --mono:         var(--font-mono);
  --shadow:   0 1px 4px rgba(0,0,0,.4), 0 0 20px rgba(0,212,255,.04);
  --shadow-lg: 0 4px 24px rgba(0,0,0,.45), 0 0 40px rgba(0,212,255,.06);
  --glow:     0 0 12px rgba(0,212,255,.2);
  --glow-sm:  0 0 6px rgba(0,212,255,.15);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(0,212,255,.04) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 100%, rgba(168,85,247,.03) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(12,18,34,.9) 100%);
}

/* Midnight Slate Theme */
body.theme-midnight {
  --bg:       #0b0f19;
  --bg2:      #111827;
  --bg3:      #1f2937;
  --bg4:      #374151;
  --border:   #1f2937;
  --border2:  #374151;
  --text:     #f9fafb;
  --text2:    #d1d5db;
  --muted:    #6b7280;
  --accent:   #3b82f6;
  --accent2:  #2563eb;
  --accent-glow: rgba(59,130,246,.15);
  --accent-glow2: rgba(59,130,246,.08);
  --glow:     0 0 12px rgba(59,130,246,.2);
  --glow-sm:  0 0 6px rgba(59,130,246,.15);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(59,130,246,.06) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 100%, rgba(37,99,235,.04) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(17,24,39,.95) 100%);
}

/* Enterprise Light Theme */
body.theme-light {
  --bg:       #f8fafc;
  --bg2:      #ffffff;
  --bg3:      #f1f5f9;
  --bg4:      #e2e8f0;
  --border:   #cbd5e1;
  --border2:  #94a3b8;
  --text:     #0f172a;
  --text2:    #334155;
  --muted:    #64748b;
  --accent:   #2563eb;
  --accent2:  #1d4ed8;
  --accent-glow: rgba(37,99,235,.08);
  --accent-glow2: rgba(37,99,235,.04);
  --glow:     0 2px 8px rgba(37,99,235,.1);
  --glow-sm:  0 1px 4px rgba(37,99,235,.05);
  --shadow:   0 1px 3px rgba(0,0,0,.05), 0 1px 2px rgba(0,0,0,.02);
  --shadow-lg: 0 4px 6px -1px rgba(0,0,0,.05), 0 2px 4px -1px rgba(0,0,0,.02);
  --red:      #dc2626;
  --green:    #16a34a;
  --yellow:   #ca8a04;
  --orange:   #ea580c;
  --blue:     #2563eb;
  --purple:   #9333ea;
  --cyan:     #0891b2;
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(37,99,235,.03) 0%, transparent 60%);
  --card-bg: #ffffff;
}

/* Fortinet Red Theme */
body.theme-fortired {
  --bg:       #0d0808;
  --bg2:      #140d0d;
  --bg3:      #1f1414;
  --bg4:      #2e1f1f;
  --border:   #2e1f1f;
  --border2:  #473030;
  --text:     #fcf7f7;
  --text2:    #e5cfcf;
  --muted:    #9e8181;
  --accent:   #ff3b30;
  --accent2:  #d62828;
  --accent-glow: rgba(255,59,48,.15);
  --accent-glow2: rgba(255,59,48,.08);
  --glow:     0 0 12px rgba(255,59,48,.25);
  --glow-sm:  0 0 6px rgba(255,59,48,.18);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(255,59,48,.05) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 100%, rgba(214,40,40,.03) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(20,13,13,.95) 100%);
}

/* Cyberpunk Neon */
body.theme-neon-dark {
  --accent:   #00f0ff;
  --accent2:  #00b4d8;
  --accent-glow: rgba(0,240,255,.18);
  --accent-glow2: rgba(0,240,255,.09);
  --bg:       #050810;
  --bg2:      #0a1020;
  --bg3:      #101828;
  --bg4:      #182038;
  --border:   #1a2848;
  --border2:  #243060;
  --text:     #eef6ff;
  --text2:    #9eb4d4;
  --muted:    #5a7094;
  --green:    #00ff9d;
  --purple:   #d946ef;
  --pink:     #ff2d95;
  --glow:     0 0 14px rgba(0,240,255,.28);
  --glow-sm:  0 0 8px rgba(0,240,255,.2);
  --shadow:   0 1px 4px rgba(0,0,0,.5), 0 0 24px rgba(217,70,239,.06);
  --shadow-lg: 0 4px 28px rgba(0,0,0,.5), 0 0 48px rgba(0,240,255,.08);
  --bg-gradient: radial-gradient(ellipse 70% 45% at 15% 0%, rgba(217,70,239,.08) 0%, transparent 55%), radial-gradient(ellipse 60% 50% at 85% 100%, rgba(0,240,255,.07) 0%, transparent 50%), radial-gradient(ellipse 50% 30% at 50% 50%, rgba(255,45,149,.03) 0%, transparent 60%);
  --card-bg: linear-gradient(145deg, var(--bg2) 0%, rgba(16,24,40,.92) 100%);
}

/* Obsidian Pro */
body.theme-obsidian {
  --bg:       #080c0a;
  --bg2:      #0e1411;
  --bg3:      #151c18;
  --bg4:      #1e2822;
  --border:   #1a2420;
  --border2:  #2a3830;
  --text:     #e8f2ec;
  --text2:    #9bb5a8;
  --muted:    #5c7368;
  --accent:   #10b981;
  --accent2:  #059669;
  --accent-glow: rgba(16,185,129,.16);
  --accent-glow2: rgba(16,185,129,.08);
  --green:    #34d399;
  --red:      #f87171;
  --yellow:   #fbbf24;
  --glow:     0 0 12px rgba(16,185,129,.22);
  --glow-sm:  0 0 6px rgba(16,185,129,.14);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(16,185,129,.06) 0%, transparent 60%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(14,20,17,.96) 100%);
}

/* Ocean Depth */
body.theme-ocean {
  --bg:       #041018;
  --bg2:      #081820;
  --bg3:      #0c2430;
  --bg4:      #123040;
  --border:   #0f2a38;
  --border2:  #1a3d50;
  --text:     #e0f4f8;
  --text2:    #8ec5d4;
  --muted:    #4a7a8a;
  --accent:   #2dd4bf;
  --accent2:  #14b8a6;
  --accent-glow: rgba(45,212,191,.16);
  --accent-glow2: rgba(45,212,191,.08);
  --cyan:     #5eead4;
  --blue:     #38bdf8;
  --glow:     0 0 12px rgba(45,212,191,.22);
  --glow-sm:  0 0 6px rgba(45,212,191,.14);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(45,212,191,.07) 0%, transparent 60%), radial-gradient(ellipse 50% 40% at 100% 80%, rgba(56,189,248,.05) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(8,24,32,.95) 100%);
}

/* Amethyst Dusk */
body.theme-amethyst {
  --bg:       #0c0814;
  --bg2:      #130f1c;
  --bg3:      #1c1628;
  --bg4:      #282038;
  --border:   #221a32;
  --border2:  #342a4a;
  --text:     #f0e8fc;
  --text2:    #b8a8d4;
  --muted:    #7a6894;
  --accent:   #a78bfa;
  --accent2:  #8b5cf6;
  --accent-glow: rgba(167,139,250,.18);
  --accent-glow2: rgba(167,139,250,.09);
  --purple:   #c084fc;
  --pink:     #f472b6;
  --glow:     0 0 14px rgba(167,139,250,.25);
  --glow-sm:  0 0 8px rgba(167,139,250,.16);
  --bg-gradient: radial-gradient(ellipse 75% 50% at 30% 0%, rgba(167,139,250,.09) 0%, transparent 55%), radial-gradient(ellipse 55% 45% at 90% 100%, rgba(244,114,182,.05) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(19,15,28,.95) 100%);
}

/* Solar Ops */
body.theme-solar {
  --bg:       #100c06;
  --bg2:      #181208;
  --bg3:      #221a0c;
  --bg4:      #302414;
  --border:   #2a2010;
  --border2:  #403018;
  --text:     #faf4e8;
  --text2:    #c9b896;
  --muted:    #8a7558;
  --accent:   #f59e0b;
  --accent2:  #d97706;
  --accent-glow: rgba(245,158,11,.18);
  --accent-glow2: rgba(245,158,11,.09);
  --green:    #84cc16;
  --red:      #ef4444;
  --yellow:   #fcd34d;
  --orange:   #fb923c;
  --glow:     0 0 12px rgba(245,158,11,.24);
  --glow-sm:  0 0 6px rgba(245,158,11,.16);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(245,158,11,.08) 0%, transparent 60%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(24,18,8,.96) 100%);
}

/* Matrix Terminal */
body.theme-matrix {
  --bg:       #020402;
  --bg2:      #040804;
  --bg3:      #080f08;
  --bg4:      #0c160c;
  --border:   #0a140a;
  --border2:  #142014;
  --text:     #b8ffc8;
  --text2:    #6bdc82;
  --muted:    #3d8f4a;
  --accent:   #00ff41;
  --accent2:  #00cc33;
  --accent-glow: rgba(0,255,65,.14);
  --accent-glow2: rgba(0,255,65,.07);
  --green:    #00ff41;
  --red:      #ff4444;
  --yellow:   #a3e635;
  --glow:     0 0 10px rgba(0,255,65,.2);
  --glow-sm:  0 0 5px rgba(0,255,65,.12);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(0,255,65,.04) 0%, transparent 60%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(4,8,4,.98) 100%);
  --font-display: var(--font-mono);
}

/* Graphite Minimal */
body.theme-graphite {
  --bg:       #0e0e10;
  --bg2:      #141416;
  --bg3:      #1c1c1f;
  --bg4:      #26262b;
  --border:   #222226;
  --border2:  #323238;
  --text:     #ececf0;
  --text2:    #a8a8b3;
  --muted:    #6b6b78;
  --accent:   #94a3b8;
  --accent2:  #64748b;
  --accent-glow: rgba(148,163,184,.12);
  --accent-glow2: rgba(148,163,184,.06);
  --glow:     0 0 8px rgba(148,163,184,.12);
  --glow-sm:  0 0 4px rgba(148,163,184,.08);
  --shadow:   0 1px 3px rgba(0,0,0,.35);
  --shadow-lg: 0 4px 16px rgba(0,0,0,.4);
  --bg-gradient: none;
  --card-bg: var(--bg2);
}

/* Arctic Nord (default app theme) */
body.theme-arctic {
  --bg:       #0b0e14;
  --bg2:      #12161f;
  --bg3:      #1a1f2b;
  --bg4:      #242b3a;
  --border:   #1e2533;
  --border2:  #2a3347;
  --text:     #e8edf5;
  --text2:    #9aa8be;
  --muted:    #5c6b82;
  --accent:   #4d9fff;
  --accent2:  #3b7fd4;
  --accent-glow: rgba(77,159,255,.14);
  --accent-glow2: rgba(77,159,255,.07);
  --red:      #ff4d4d;
  --green:    #3dd68c;
  --yellow:   #ffd600;
  --orange:   #ff8c42;
  --blue:     #4d9fff;
  --purple:   #9b7aff;
  --cyan:     #4dd4ff;
  --radius:   8px;
  --radius2:  12px;
  --glow:     0 0 12px rgba(77,159,255,.18);
  --glow-sm:  0 0 6px rgba(77,159,255,.12);
  --bg-gradient: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(77,159,255,.05) 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 100%, rgba(61,127,212,.04) 0%, transparent 50%);
  --card-bg: linear-gradient(135deg, var(--bg2) 0%, rgba(18,22,31,.95) 100%);
}
