/* keypot themes. carbon + paper live in app.css; every theme here defines the full token set.
   Keep THEMES in public/js/prefs.js in sync (bg / sub / text / accent) for the swatch previews. */

/* abyss: deep midnight blue, one cold cyan */
[data-theme='abyss'] {
  --bg: #0f1420;
  --bg-2: #151b29;
  --surface: #192133;
  --line: #243048;
  --text: #d5e1ef;
  --sub: #607091;
  --sub-2: #34405a;
  --accent: #4fd6e8;
  --accent-ink: #0b1220;
  --accent-soft: rgba(79, 214, 232, 0.12);
  --err: #ff6b81;
  --err-soft: rgba(255, 107, 129, 0.13);
  --ok: #7ee0a8;
  --ok-soft: rgba(126, 224, 168, 0.12);
  --shadow: 0 20px 60px rgba(2, 6, 16, 0.6);
  --grid: rgba(120, 180, 255, 0.035);
  color-scheme: dark;
}

/* grove: forest floor, moss accent */
[data-theme='grove'] {
  --bg: #151a16;
  --bg-2: #1b211c;
  --surface: #202721;
  --line: #2d362e;
  --text: #dfe4d2;
  --sub: #6c7867;
  --sub-2: #3f4a3f;
  --accent: #a6cc5c;
  --accent-ink: #131a10;
  --accent-soft: rgba(166, 204, 92, 0.13);
  --err: #ec7a5f;
  --err-soft: rgba(236, 122, 95, 0.13);
  --ok: #8fd19e;
  --ok-soft: rgba(143, 209, 158, 0.12);
  --shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  --grid: rgba(200, 255, 190, 0.03);
  color-scheme: dark;
}

/* dusk: violet hour, peach light */
[data-theme='dusk'] {
  --bg: #1c1826;
  --bg-2: #221d2f;
  --surface: #282236;
  --line: #352d47;
  --text: #ece3f3;
  --sub: #7e7194;
  --sub-2: #4a405e;
  --accent: #ffb48a;
  --accent-ink: #1c1826;
  --accent-soft: rgba(255, 180, 138, 0.13);
  --err: #ff6b9a;
  --err-soft: rgba(255, 107, 154, 0.13);
  --ok: #9ee6b8;
  --ok-soft: rgba(158, 230, 184, 0.12);
  --shadow: 0 20px 60px rgba(8, 4, 18, 0.55);
  --grid: rgba(220, 190, 255, 0.035);
  color-scheme: dark;
}

/* ember: banked coals, an orange that glows */
[data-theme='ember'] {
  --bg: #171312;
  --bg-2: #1e1817;
  --surface: #241d1b;
  --line: #342927;
  --text: #f0e2d9;
  --sub: #7d6962;
  --sub-2: #4b3e3a;
  --accent: #ff7a3d;
  --accent-ink: #1a0f0a;
  --accent-soft: rgba(255, 122, 61, 0.13);
  --err: #ff4f7b;
  --err-soft: rgba(255, 79, 123, 0.14);
  --ok: #b5d97a;
  --ok-soft: rgba(181, 217, 122, 0.12);
  --shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
  --grid: rgba(255, 170, 120, 0.03);
  color-scheme: dark;
}

/* phosphor: green CRT on black glass */
[data-theme='phosphor'] {
  --bg: #0a0d0a;
  --bg-2: #0f140f;
  --surface: #131a13;
  --line: #1e2a1f;
  --text: #b9f5c3;
  --sub: #3f7d4b;
  --sub-2: #234029;
  --accent: #3dff6e;
  --accent-ink: #041006;
  --accent-soft: rgba(61, 255, 110, 0.1);
  --err: #ff5f56;
  --err-soft: rgba(255, 95, 86, 0.13);
  --ok: #9dffb3;
  --ok-soft: rgba(157, 255, 179, 0.1);
  --shadow: 0 20px 60px rgba(0, 0, 0, 0.7);
  --grid: rgba(61, 255, 110, 0.035);
  color-scheme: dark;
}

/* fjord: arctic slate, frost blue */
[data-theme='fjord'] {
  --bg: #2b303b;
  --bg-2: #313744;
  --surface: #363d4b;
  --line: #424a5a;
  --text: #e5e9f0;
  --sub: #848ea2;
  --sub-2: #525b6e;
  --accent: #88c0d0;
  --accent-ink: #232832;
  --accent-soft: rgba(136, 192, 208, 0.14);
  --err: #e8838b;
  --err-soft: rgba(232, 131, 139, 0.15);
  --ok: #a3be8c;
  --ok-soft: rgba(163, 190, 140, 0.14);
  --shadow: 0 20px 60px rgba(10, 14, 22, 0.45);
  --grid: rgba(236, 239, 244, 0.035);
  color-scheme: dark;
}

/* graphite: no colour at all, white is the accent */
[data-theme='graphite'] {
  --bg: #1b1b1c;
  --bg-2: #212122;
  --surface: #262627;
  --line: #333335;
  --text: #d6d6d6;
  --sub: #707072;
  --sub-2: #444446;
  --accent: #ffffff;
  --accent-ink: #141414;
  --accent-soft: rgba(255, 255, 255, 0.08);
  --err: #ff6161;
  --err-soft: rgba(255, 97, 97, 0.13);
  --ok: #a8e6a1;
  --ok-soft: rgba(168, 230, 161, 0.1);
  --shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  --grid: rgba(255, 255, 255, 0.025);
  color-scheme: dark;
}

/* sakura: cream paper, blossom pink */
[data-theme='sakura'] {
  --bg: #fbf4ef;
  --bg-2: #f4e8e2;
  --surface: #fffaf7;
  --line: #ead7d0;
  --text: #4a3a41;
  --sub: #a3868f;
  --sub-2: #d9c3c5;
  --accent: #df4f7c;
  --accent-ink: #ffffff;
  --accent-soft: rgba(223, 79, 124, 0.1);
  --err: #c8341f;
  --err-soft: rgba(200, 52, 31, 0.09);
  --ok: #2f9e6e;
  --ok-soft: rgba(47, 158, 110, 0.1);
  --shadow: 0 20px 50px rgba(120, 60, 80, 0.13);
  --grid: rgba(120, 40, 70, 0.04);
  color-scheme: light;
}

/* sandstone: desert rock, terracotta */
[data-theme='sandstone'] {
  --bg: #ede3d1;
  --bg-2: #e4d7c1;
  --surface: #f5eddf;
  --line: #d5c4a8;
  --text: #3b3025;
  --sub: #917d63;
  --sub-2: #c4b192;
  --accent: #b9532a;
  --accent-ink: #fff8ef;
  --accent-soft: rgba(185, 83, 42, 0.11);
  --err: #a3194a;
  --err-soft: rgba(163, 25, 74, 0.09);
  --ok: #4f7f3a;
  --ok-soft: rgba(79, 127, 58, 0.11);
  --shadow: 0 20px 50px rgba(90, 60, 20, 0.15);
  --grid: rgba(80, 50, 10, 0.045);
  color-scheme: light;
}

/* lagoon: pale sea glass, deep teal */
[data-theme='lagoon'] {
  --bg: #eef4f3;
  --bg-2: #e2ecea;
  --surface: #f7fbfa;
  --line: #cfdedb;
  --text: #1e3739;
  --sub: #758f8d;
  --sub-2: #b9cdca;
  --accent: #0b8a7e;
  --accent-ink: #ffffff;
  --accent-soft: rgba(11, 138, 126, 0.1);
  --err: #d6336c;
  --err-soft: rgba(214, 51, 108, 0.09);
  --ok: #2b8a3e;
  --ok-soft: rgba(43, 138, 62, 0.1);
  --shadow: 0 20px 50px rgba(20, 60, 60, 0.13);
  --grid: rgba(0, 60, 60, 0.04);
  color-scheme: light;
}
