/* ============================================================
   Elite Suppliez — site themes.
   Each theme only sets design tokens (colors); css/styles.css reads
   them everywhere, so a theme can never leave a component behind.
   Every text/surface pair here is checked for WCAG contrast:
   body text >= 7:1, muted and dim text >= 4.5:1, button label on
   its accent >= 7:1. Keep that bar if you add a theme, and add its
   id to THEMES in lib/config.js and js/theme.js too.
   The default (Onyx) is also the :root fallback.
   ============================================================ */

:root,
[data-theme="onyx"] {
  color-scheme: dark;
  --bg: #0a0a0a;
  --bg-rgb: 10, 10, 10;
  --bg-elevated: #111111;
  --bg-card: #141414;
  --bg-panel: #0c0c0c;
  --bg-deep: #060606;
  --border: #242424;
  --border-soft: #1b1b1b;
  --border-strong: #3f3f3f;
  --text: #f5f5f5;
  --text-strong: #ffffff;
  --text-muted: #a3a3a3;
  --text-dim: #8a8a8a;
  --accent: #ffffff;
  --accent-rgb: 255, 255, 255;
  --accent-ink: #0a0a0a;
  --accent-hover: #e8e8e8;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #121212;
  --skeleton-hi: #1d1d1d;
  --glow-rgb: 255,255,255;
  --glow2-rgb: 140,140,165;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="midnight"] {
  color-scheme: dark;
  --bg: #0a1020;
  --bg-rgb: 10, 16, 32;
  --bg-elevated: #0f172a;
  --bg-card: #121b30;
  --bg-panel: #0c1426;
  --bg-deep: #070c18;
  --border: #22304d;
  --border-soft: #18233b;
  --border-strong: #3b5078;
  --text: #eaf0fb;
  --text-strong: #ffffff;
  --text-muted: #9fb0cc;
  --text-dim: #8496b6;
  --accent: #8ec5ff;
  --accent-rgb: 142, 197, 255;
  --accent-ink: #07111f;
  --accent-hover: #b5d9ff;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #101a2e;
  --skeleton-hi: #1b2a47;
  --glow-rgb: 140,190,255;
  --glow2-rgb: 90,120,255;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="forest"] {
  color-scheme: dark;
  --bg: #0a130e;
  --bg-rgb: 10, 19, 14;
  --bg-elevated: #0f1c15;
  --bg-card: #12211a;
  --bg-panel: #0c1812;
  --bg-deep: #070e0a;
  --border: #1f3a2b;
  --border-soft: #172b20;
  --border-strong: #35604a;
  --text: #ecf6ef;
  --text-strong: #ffffff;
  --text-muted: #a2bdae;
  --text-dim: #86a392;
  --accent: #a8e0bc;
  --accent-rgb: 168, 224, 188;
  --accent-ink: #07140c;
  --accent-hover: #c4ecd3;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #102017;
  --skeleton-hi: #1c3326;
  --glow-rgb: 120,220,160;
  --glow2-rgb: 60,160,110;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="ember"] {
  color-scheme: dark;
  --bg: #120c08;
  --bg-rgb: 18, 12, 8;
  --bg-elevated: #1a120c;
  --bg-card: #1e150e;
  --bg-panel: #150e09;
  --bg-deep: #0c0805;
  --border: #3a2819;
  --border-soft: #2a1c11;
  --border-strong: #5c4028;
  --text: #f8efe6;
  --text-strong: #ffffff;
  --text-muted: #c0a78f;
  --text-dim: #a38c76;
  --accent: #ffa94d;
  --accent-rgb: 255, 169, 77;
  --accent-ink: #1a0e03;
  --accent-hover: #ffc078;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #1a120b;
  --skeleton-hi: #2d2013;
  --glow-rgb: 255,170,80;
  --glow2-rgb: 220,100,60;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="violet"] {
  color-scheme: dark;
  --bg: #0f0b19;
  --bg-rgb: 15, 11, 25;
  --bg-elevated: #151022;
  --bg-card: #19132a;
  --bg-panel: #120d1f;
  --bg-deep: #09060f;
  --border: #2e2448;
  --border-soft: #221a36;
  --border-strong: #4b3b75;
  --text: #f1ecfb;
  --text-strong: #ffffff;
  --text-muted: #b3a6d1;
  --text-dim: #9686bb;
  --accent: #c4b0ff;
  --accent-rgb: 196, 176, 255;
  --accent-ink: #0f0824;
  --accent-hover: #d9cbff;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #160f26;
  --skeleton-hi: #271d41;
  --glow-rgb: 180,150,255;
  --glow2-rgb: 120,90,230;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="mocha"] {
  color-scheme: dark;
  --bg: #15100d;
  --bg-rgb: 21, 16, 13;
  --bg-elevated: #1c1612;
  --bg-card: #211a15;
  --bg-panel: #17120e;
  --bg-deep: #0d0a08;
  --border: #372d25;
  --border-soft: #29211b;
  --border-strong: #574737;
  --text: #f3ebe3;
  --text-strong: #ffffff;
  --text-muted: #bba998;
  --text-dim: #9e8c7b;
  --accent: #e6c9a2;
  --accent-rgb: 230, 201, 162;
  --accent-ink: #1a110a;
  --accent-hover: #f0dbbd;
  --danger: #f87171;
  --on-danger: #1a0505;
  --danger-hover: #fca5a5;
  --hover-row: #1b1511;
  --skeleton-hi: #2f261f;
  --glow-rgb: 230,200,160;
  --glow2-rgb: 170,120,80;
  --vignette-rgb: 0,0,0;
  --vignette-a: 0.7;
  --shadow-rgb: 0,0,0;
  --shadow-k: 1;
  --logo-filter: none;
}

[data-theme="paper"] {
  color-scheme: light;
  --bg: #f5f3ee;
  --bg-rgb: 245, 243, 238;
  --bg-elevated: #ece9e2;
  --bg-card: #ffffff;
  --bg-panel: #faf9f6;
  --bg-deep: #e4e1d9;
  --border: #d9d5cb;
  --border-soft: #e6e3db;
  --border-strong: #b3aea2;
  --text: #151515;
  --text-strong: #000000;
  --text-muted: #52504b;
  --text-dim: #5f5c53;
  --accent: #151515;
  --accent-rgb: 21, 21, 21;
  --accent-ink: #fafafa;
  --accent-hover: #333333;
  --danger: #b91c1c;
  --on-danger: #ffffff;
  --danger-hover: #991b1b;
  --hover-row: #eeebe4;
  --skeleton-hi: #e4e1d9;
  --glow-rgb: 20,20,20;
  --glow2-rgb: 120,110,90;
  --vignette-rgb: 160,155,145;
  --vignette-a: 0.3;
  --shadow-rgb: 60,50,30;
  --shadow-k: 0.35;
  --logo-filter: brightness(0.3);
}

[data-theme="sand"] {
  color-scheme: light;
  --bg: #eee4d3;
  --bg-rgb: 238, 228, 211;
  --bg-elevated: #e6dac5;
  --bg-card: #f8f1e4;
  --bg-panel: #f4ecdc;
  --bg-deep: #ddd0b8;
  --border: #d2c3a8;
  --border-soft: #ddd0b8;
  --border-strong: #a8957a;
  --text: #2a1c0e;
  --text-strong: #150c03;
  --text-muted: #5c4a35;
  --text-dim: #6a553d;
  --accent: #5a3515;
  --accent-rgb: 90, 53, 21;
  --accent-ink: #fbf4e8;
  --accent-hover: #70441d;
  --danger: #b91c1c;
  --on-danger: #ffffff;
  --danger-hover: #991b1b;
  --hover-row: #eadfca;
  --skeleton-hi: #ddd0b8;
  --glow-rgb: 120,80,30;
  --glow2-rgb: 200,150,80;
  --vignette-rgb: 180,160,125;
  --vignette-a: 0.3;
  --shadow-rgb: 70,45,15;
  --shadow-k: 0.35;
  --logo-filter: brightness(0.3);
}

[data-theme="mist"] {
  color-scheme: light;
  --bg: #eaeff5;
  --bg-rgb: 234, 239, 245;
  --bg-elevated: #e0e7f0;
  --bg-card: #ffffff;
  --bg-panel: #f3f6fa;
  --bg-deep: #d6dfeb;
  --border: #cbd5e3;
  --border-soft: #dbe3ee;
  --border-strong: #9aa9c0;
  --text: #0f1b2d;
  --text-strong: #050c18;
  --text-muted: #44546b;
  --text-dim: #4d5e78;
  --accent: #1b3a66;
  --accent-rgb: 27, 58, 102;
  --accent-ink: #f4f8fd;
  --accent-hover: #26508f;
  --danger: #b91c1c;
  --on-danger: #ffffff;
  --danger-hover: #991b1b;
  --hover-row: #e4eaf2;
  --skeleton-hi: #d6dfeb;
  --glow-rgb: 40,90,170;
  --glow2-rgb: 100,150,220;
  --vignette-rgb: 150,165,190;
  --vignette-a: 0.3;
  --shadow-rgb: 20,40,80;
  --shadow-k: 0.35;
  --logo-filter: brightness(0.3);
}

[data-theme="sage"] {
  color-scheme: light;
  --bg: #e8eee3;
  --bg-rgb: 232, 238, 227;
  --bg-elevated: #dfe8d8;
  --bg-card: #f7faf4;
  --bg-panel: #f1f6ed;
  --bg-deep: #d3dfca;
  --border: #c4d3b9;
  --border-soft: #d4e0cb;
  --border-strong: #94aa86;
  --text: #14231a;
  --text-strong: #08140d;
  --text-muted: #43594a;
  --text-dim: #486052;
  --accent: #1f4a2f;
  --accent-rgb: 31, 74, 47;
  --accent-ink: #f3f9ee;
  --accent-hover: #245538;
  --danger: #b91c1c;
  --on-danger: #ffffff;
  --danger-hover: #991b1b;
  --hover-row: #e0e9da;
  --skeleton-hi: #d3dfca;
  --glow-rgb: 50,120,70;
  --glow2-rgb: 140,190,110;
  --vignette-rgb: 150,170,135;
  --vignette-a: 0.3;
  --shadow-rgb: 25,60,35;
  --shadow-k: 0.35;
  --logo-filter: brightness(0.3);
}
