:root,
[data-theme='dark-green'] {
  --zx-bg: #0a0a0a;
  --zx-bg-rgb: 10 10 10;
  --zx-surface: #1a1a1a;
  --zx-surface-rgb: 26 26 26;
  --zx-surface-hover: #2a2a2a;
  --zx-surface-hover-rgb: 42 42 42;
  --zx-text: #e0e0e0;
  --zx-text-rgb: 224 224 224;
  --zx-accent: #00e676;
  --zx-accent-rgb: 0 230 118;
  --zx-on-accent: #0a0a0a;

  --zx-text-muted: rgba(224 224 224, 0.7);
  --zx-text-soft: rgba(224 224 224, 0.1);
  --zx-text-faint: rgba(224 224 224, 0.35);
  --zx-accent-soft: rgba(0 230 118, 0.15);
  --zx-accent-mid: rgba(0 230 118, 0.35);
  --zx-accent-faint: rgba(0 230 118, 0.25);
}

[data-theme='sea-blue'] {
  --zx-bg: #081421;
  --zx-bg-rgb: 8 20 33;
  --zx-surface: #0f2136;
  --zx-surface-rgb: 15 33 54;
  --zx-surface-hover: #173049;
  --zx-surface-hover-rgb: 23 48 73;
  --zx-text: #e0e9ef;
  --zx-text-rgb: 224 233 239;
  --zx-accent: #aaff00;
  --zx-accent-rgb: 170 255 0;
  --zx-on-accent: #081421;

  --zx-text-muted: rgba(224 233 239, 0.7);
  --zx-text-soft: rgba(224 233 239, 0.1);
  --zx-text-faint: rgba(224 233 239, 0.35);
  --zx-accent-soft: rgba(170 255 0, 0.15);
  --zx-accent-mid: rgba(170 255 0, 0.35);
  --zx-accent-faint: rgba(170 255 0, 0.25);
}

[data-theme='synthwave'] {
  --zx-bg: #0d0221;
  --zx-bg-rgb: 13 2 33;
  --zx-surface: #1a0a33;
  --zx-surface-rgb: 26 10 51;
  --zx-surface-hover: #2a1447;
  --zx-surface-hover-rgb: 42 20 71;
  --zx-text: #e6dff2;
  --zx-text-rgb: 230 223 242;
  --zx-accent: #ff2a6d;
  --zx-accent-rgb: 255 42 109;
  --zx-on-accent: #0d0221;

  --zx-text-muted: rgba(230 223 242, 0.7);
  --zx-text-soft: rgba(230 223 242, 0.1);
  --zx-text-faint: rgba(230 223 242, 0.35);
  --zx-accent-soft: rgba(255 42 109, 0.15);
  --zx-accent-mid: rgba(255 42 109, 0.35);
  --zx-accent-faint: rgba(255 42 109, 0.25);
}

[data-theme='retrowave'] {
  --zx-bg: #150b2e;
  --zx-bg-rgb: 21 11 46;
  --zx-surface: #221542;
  --zx-surface-rgb: 34 21 66;
  --zx-surface-hover: #31205a;
  --zx-surface-hover-rgb: 49 32 90;
  --zx-text: #e8e3f5;
  --zx-text-rgb: 232 227 245;
  --zx-accent: #00e5ff;
  --zx-accent-rgb: 0 229 255;
  --zx-on-accent: #150b2e;

  --zx-text-muted: rgba(232 227 245, 0.7);
  --zx-text-soft: rgba(232 227 245, 0.1);
  --zx-text-faint: rgba(232 227 245, 0.35);
  --zx-accent-soft: rgba(0 229 255, 0.15);
  --zx-accent-mid: rgba(0 229 255, 0.35);
  --zx-accent-faint: rgba(0 229 255, 0.25);
}

[data-theme='cyber-cyan'] {
  --zx-bg: #051014;
  --zx-bg-rgb: 5 16 20;
  --zx-surface: #0c1c22;
  --zx-surface-rgb: 12 28 34;
  --zx-surface-hover: #123039;
  --zx-surface-hover-rgb: 18 48 57;
  --zx-text: #d8f0f4;
  --zx-text-rgb: 216 240 244;
  --zx-accent: #00f0ff;
  --zx-accent-rgb: 0 240 255;
  --zx-on-accent: #051014;

  --zx-text-muted: rgba(216 240 244, 0.7);
  --zx-text-soft: rgba(216 240 244, 0.1);
  --zx-text-faint: rgba(216 240 244, 0.35);
  --zx-accent-soft: rgba(0 240 255, 0.15);
  --zx-accent-mid: rgba(0 240 255, 0.35);
  --zx-accent-faint: rgba(0 240 255, 0.25);
}

[data-theme='amber'] {
  --zx-bg: #100b02;
  --zx-bg-rgb: 16 11 2;
  --zx-surface: #1c1507;
  --zx-surface-rgb: 28 21 7;
  --zx-surface-hover: #2a200c;
  --zx-surface-hover-rgb: 42 32 12;
  --zx-text: #f0e8d8;
  --zx-text-rgb: 240 232 216;
  --zx-accent: #ffb300;
  --zx-accent-rgb: 255 179 0;
  --zx-on-accent: #100b02;

  --zx-text-muted: rgba(240 232 216, 0.7);
  --zx-text-soft: rgba(240 232 216, 0.1);
  --zx-text-faint: rgba(240 232 216, 0.35);
  --zx-accent-soft: rgba(255 179 0, 0.15);
  --zx-accent-mid: rgba(255 179 0, 0.35);
  --zx-accent-faint: rgba(255 179 0, 0.25);
}

[data-theme='ember'] {
  --zx-bg: #140806;
  --zx-bg-rgb: 20 8 6;
  --zx-surface: #241009;
  --zx-surface-rgb: 36 16 9;
  --zx-surface-hover: #36180d;
  --zx-surface-hover-rgb: 54 24 13;
  --zx-text: #f2e3dc;
  --zx-text-rgb: 242 227 220;
  --zx-accent: #ff5c1a;
  --zx-accent-rgb: 255 92 26;
  --zx-on-accent: #140806;

  --zx-text-muted: rgba(242 227 220, 0.7);
  --zx-text-soft: rgba(242 227 220, 0.1);
  --zx-text-faint: rgba(242 227 220, 0.35);
  --zx-accent-soft: rgba(255 92 26, 0.15);
  --zx-accent-mid: rgba(255 92 26, 0.35);
  --zx-accent-faint: rgba(255 92 26, 0.25);
}

[data-theme='crimson'] {
  --zx-bg: #120409;
  --zx-bg-rgb: 18 4 9;
  --zx-surface: #210a12;
  --zx-surface-rgb: 33 10 18;
  --zx-surface-hover: #33121d;
  --zx-surface-hover-rgb: 51 18 29;
  --zx-text: #f2dde3;
  --zx-text-rgb: 242 221 227;
  --zx-accent: #ff3355;
  --zx-accent-rgb: 255 51 85;
  --zx-on-accent: #120409;

  --zx-text-muted: rgba(242 221 227, 0.7);
  --zx-text-soft: rgba(242 221 227, 0.1);
  --zx-text-faint: rgba(242 221 227, 0.35);
  --zx-accent-soft: rgba(255 51 85, 0.15);
  --zx-accent-mid: rgba(255 51 85, 0.35);
  --zx-accent-faint: rgba(255 51 85, 0.25);
}

[data-theme='violet'] {
  --zx-bg: #0d0a1c;
  --zx-bg-rgb: 13 10 28;
  --zx-surface: #171229;
  --zx-surface-rgb: 23 18 41;
  --zx-surface-hover: #251d3d;
  --zx-surface-hover-rgb: 37 29 61;
  --zx-text: #e6e0f2;
  --zx-text-rgb: 230 224 242;
  --zx-accent: #9d6bff;
  --zx-accent-rgb: 157 107 255;
  --zx-on-accent: #0d0a1c;

  --zx-text-muted: rgba(230 224 242, 0.7);
  --zx-text-soft: rgba(230 224 242, 0.1);
  --zx-text-faint: rgba(230 224 242, 0.35);
  --zx-accent-soft: rgba(157 107 255, 0.15);
  --zx-accent-mid: rgba(157 107 255, 0.35);
  --zx-accent-faint: rgba(157 107 255, 0.25);
}

[data-theme='teal'] {
  --zx-bg: #041418;
  --zx-bg-rgb: 4 20 24;
  --zx-surface: #0c2027;
  --zx-surface-rgb: 12 32 39;
  --zx-surface-hover: #123239;
  --zx-surface-hover-rgb: 18 50 57;
  --zx-text: #dcf0f2;
  --zx-text-rgb: 220 240 242;
  --zx-accent: #2dd4bf;
  --zx-accent-rgb: 45 212 191;
  --zx-on-accent: #041418;

  --zx-text-muted: rgba(220 240 242, 0.7);
  --zx-text-soft: rgba(220 240 242, 0.1);
  --zx-text-faint: rgba(220 240 242, 0.35);
  --zx-accent-soft: rgba(45 212 191, 0.15);
  --zx-accent-mid: rgba(45 212 191, 0.35);
  --zx-accent-faint: rgba(45 212 191, 0.25);
}

[data-theme='mono'] {
  --zx-bg: #0a0a0a;
  --zx-bg-rgb: 10 10 10;
  --zx-surface: #1a1a1a;
  --zx-surface-rgb: 26 26 26;
  --zx-surface-hover: #2a2a2a;
  --zx-surface-hover-rgb: 42 42 42;
  --zx-text: #e0e0e0;
  --zx-text-rgb: 224 224 224;
  --zx-accent: #e8e8e8;
  --zx-accent-rgb: 232 232 232;
  --zx-on-accent: #0a0a0a;

  --zx-text-muted: rgba(224 224 224, 0.7);
  --zx-text-soft: rgba(224 224 224, 0.1);
  --zx-text-faint: rgba(224 224 224, 0.35);
  --zx-accent-soft: rgba(232 232 232, 0.15);
  --zx-accent-mid: rgba(232 232 232, 0.35);
  --zx-accent-faint: rgba(232 232 232, 0.25);
}

[data-theme='gold'] {
  --zx-bg: #110d04;
  --zx-bg-rgb: 17 13 4;
  --zx-surface: #1e180a;
  --zx-surface-rgb: 30 24 10;
  --zx-surface-hover: #2e250f;
  --zx-surface-hover-rgb: 46 37 15;
  --zx-text: #f0ead8;
  --zx-text-rgb: 240 234 216;
  --zx-accent: #ffd24a;
  --zx-accent-rgb: 255 210 74;
  --zx-on-accent: #110d04;

  --zx-text-muted: rgba(240 234 216, 0.7);
  --zx-text-soft: rgba(240 234 216, 0.1);
  --zx-text-faint: rgba(240 234 216, 0.35);
  --zx-accent-soft: rgba(255 210 74, 0.15);
  --zx-accent-mid: rgba(255 210 74, 0.35);
  --zx-accent-faint: rgba(255 210 74, 0.25);
}

[data-theme='magenta'] {
  --zx-bg: #150419;
  --zx-bg-rgb: 21 4 25;
  --zx-surface: #240b2b;
  --zx-surface-rgb: 36 11 43;
  --zx-surface-hover: #36133f;
  --zx-surface-hover-rgb: 54 19 63;
  --zx-text: #f0dff5;
  --zx-text-rgb: 240 223 245;
  --zx-accent: #ff4fd8;
  --zx-accent-rgb: 255 79 216;
  --zx-on-accent: #150419;

  --zx-text-muted: rgba(240 223 245, 0.7);
  --zx-text-soft: rgba(240 223 245, 0.1);
  --zx-text-faint: rgba(240 223 245, 0.35);
  --zx-accent-soft: rgba(255 79 216, 0.15);
  --zx-accent-mid: rgba(255 79 216, 0.35);
  --zx-accent-faint: rgba(255 79 216, 0.25);
}

[data-theme='triad'] {
  --zx-bg: #090f1a;
  --zx-bg-rgb: 9 15 26;
  --zx-surface: #16212e;
  --zx-surface-rgb: 22 33 46;
  --zx-surface-hover: #263239;
  --zx-surface-hover-rgb: 38 50 57;
  --zx-text: #b8e2d9;
  --zx-text-rgb: 184 226 217;
  --zx-accent: #f1940a;
  --zx-accent-rgb: 241 148 10;
  --zx-on-accent: #090f1a;

  --zx-text-muted: rgba(184 226 217, 0.7);
  --zx-text-soft: rgba(184 226 217, 0.1);
  --zx-text-faint: rgba(184 226 217, 0.35);
  --zx-accent-soft: rgba(241 148 10, 0.15);
  --zx-accent-mid: rgba(241 148 10, 0.35);
  --zx-accent-faint: rgba(241 148 10, 0.25);
}

[data-theme='peach'] {
  --zx-bg: #ffffee;
  --zx-bg-rgb: 255 255 238;
  --zx-surface: #ffccab;
  --zx-surface-rgb: 255 204 171;
  --zx-surface-hover: #ffaa89;
  --zx-surface-hover-rgb: 255 170 137;
  --zx-text: #334433;
  --zx-text-rgb: 51 68 51;
  --zx-accent: #cc4622;
  --zx-accent-rgb: 204 70 34;
  --zx-on-accent: #ffffee;

  --zx-text-muted: rgba(51 68 51, 0.7);
  --zx-text-soft: rgba(51 68 51, 0.1);
  --zx-text-faint: rgba(51 68 51, 0.35);
  --zx-accent-soft: rgba(204 70 34, 0.15);
  --zx-accent-mid: rgba(204 70 34, 0.35);
  --zx-accent-faint: rgba(204 70 34, 0.25);
}

[data-theme='sleven'] {
  --zx-bg: #2d2647;
  --zx-bg-rgb: 45 38 71;
  --zx-surface: #3d3560;
  --zx-surface-rgb: 61 53 96;
  --zx-surface-hover: #4f4580;
  --zx-surface-hover-rgb: 79 69 128;
  --zx-text: #59c1e7;
  --zx-text-rgb: 89 193 231;
  --zx-accent: #f73d5c;
  --zx-accent-rgb: 247 61 92;
  --zx-on-accent: #2d2647;

  --zx-text-muted: rgba(89 193 231, 0.7);
  --zx-text-soft: rgba(89 193 231, 0.1);
  --zx-text-faint: rgba(89 193 231, 0.35);
  --zx-accent-soft: rgba(247 61 92, 0.15);
  --zx-accent-mid: rgba(247 61 92, 0.35);
  --zx-accent-faint: rgba(247 61 92, 0.25);
}

[data-theme='paper'] {
  --zx-bg: #bdbdbd;
  --zx-bg-rgb: 189 189 189;
  --zx-surface: #d0d0d0;
  --zx-surface-rgb: 208 208 208;
  --zx-surface-hover: #e2e2e2;
  --zx-surface-hover-rgb: 226 226 226;
  --zx-text: #181010;
  --zx-text-rgb: 24 16 16;
  --zx-accent: #3093bf;
  --zx-accent-rgb: 48 147 191;
  --zx-on-accent: #bdbdbd;

  --zx-text-muted: rgba(24 16 16, 0.7);
  --zx-text-soft: rgba(24 16 16, 0.1);
  --zx-text-faint: rgba(24 16 16, 0.35);
  --zx-accent-soft: rgba(48 147 191, 0.15);
  --zx-accent-mid: rgba(48 147 191, 0.35);
  --zx-accent-faint: rgba(48 147 191, 0.25);
}

[data-theme='cc-29'] {
  --zx-bg: #f2f0e5;
  --zx-bg-rgb: 242 240 229;
  --zx-surface: #e5ceb4;
  --zx-surface-rgb: 229 206 180;
  --zx-surface-hover: #d3a068;
  --zx-surface-hover-rgb: 211 160 104;
  --zx-text: #45444f;
  --zx-text-rgb: 69 68 79;
  --zx-accent: #cf8acb;
  --zx-accent-rgb: 207 138 203;
  --zx-on-accent: #f2f0e5;

  --zx-text-muted: rgba(69 68 79, 0.7);
  --zx-text-soft: rgba(69 68 79, 0.1);
  --zx-text-faint: rgba(69 68 79, 0.35);
  --zx-accent-soft: rgba(207 138 203, 0.15);
  --zx-accent-mid: rgba(207 138 203, 0.35);
  --zx-accent-faint: rgba(207 138 203, 0.25);
}

[data-theme='twilight'] {
  --zx-bg: #292831;
  --zx-bg-rgb: 41 40 49;
  --zx-surface: #333f58;
  --zx-surface-rgb: 51 63 88;
  --zx-surface-hover: #4a7a96;
  --zx-surface-hover-rgb: 74 122 150;
  --zx-text: #fbbbad;
  --zx-text-rgb: 251 187 173;
  --zx-accent: #ee8695;
  --zx-accent-rgb: 238 134 149;
  --zx-on-accent: #292831;

  --zx-text-muted: rgba(251 187 173, 0.7);
  --zx-text-soft: rgba(251 187 173, 0.1);
  --zx-text-faint: rgba(251 187 173, 0.35);
  --zx-accent-soft: rgba(238 134 149, 0.15);
  --zx-accent-mid: rgba(238 134 149, 0.35);
  --zx-accent-faint: rgba(238 134 149, 0.25);
}

[data-theme='lost-century'] {
  --zx-bg: #4d4539;
  --zx-bg-rgb: 77 69 57;
  --zx-surface: #574852;
  --zx-surface-rgb: 87 72 82;
  --zx-surface-hover: #665466;
  --zx-surface-hover-rgb: 102 84 102;
  --zx-text: #d2c9a5;
  --zx-text-rgb: 210 201 165;
  --zx-accent: #c77b58;
  --zx-accent-rgb: 199 123 88;
  --zx-on-accent: #4d4539;

  --zx-text-muted: rgba(210 201 165, 0.7);
  --zx-text-soft: rgba(210 201 165, 0.1);
  --zx-text-faint: rgba(210 201 165, 0.35);
  --zx-accent-soft: rgba(199 123 88, 0.15);
  --zx-accent-mid: rgba(199 123 88, 0.35);
  --zx-accent-faint: rgba(199 123 88, 0.25);
}

[data-theme='curiosities'] {
  --zx-bg: #46425e;
  --zx-bg-rgb: 70 66 94;
  --zx-surface: #57527a;
  --zx-surface-rgb: 87 82 122;
  --zx-surface-hover: #6a6595;
  --zx-surface-hover-rgb: 106 101 149;
  --zx-text: #ffeecc;
  --zx-text-rgb: 255 238 204;
  --zx-accent: #ff6973;
  --zx-accent-rgb: 255 105 115;
  --zx-on-accent: #46425e;

  --zx-text-muted: rgba(255 238 204, 0.7);
  --zx-text-soft: rgba(255 238 204, 0.1);
  --zx-text-faint: rgba(255 238 204, 0.35);
  --zx-accent-soft: rgba(255 105 115, 0.15);
  --zx-accent-mid: rgba(255 105 115, 0.35);
  --zx-accent-faint: rgba(255 105 115, 0.25);
}

[data-theme='chasm'] {
  --zx-bg: #32313b;
  --zx-bg-rgb: 50 49 59;
  --zx-surface: #463c5e;
  --zx-surface-rgb: 70 60 94;
  --zx-surface-hover: #5d4776;
  --zx-surface-hover-rgb: 93 71 118;
  --zx-text: #85daeb;
  --zx-text-rgb: 133 218 235;
  --zx-accent: #fdfe89;
  --zx-accent-rgb: 253 254 137;
  --zx-on-accent: #32313b;

  --zx-text-muted: rgba(133 218 235, 0.7);
  --zx-text-soft: rgba(133 218 235, 0.1);
  --zx-text-faint: rgba(133 218 235, 0.35);
  --zx-accent-soft: rgba(253 254 137, 0.15);
  --zx-accent-mid: rgba(253 254 137, 0.35);
  --zx-accent-faint: rgba(253 254 137, 0.25);
}

[data-theme='mushroom'] {
  --zx-bg: #2e222f;
  --zx-bg-rgb: 46 34 47;
  --zx-surface: #45293f;
  --zx-surface-rgb: 69 41 63;
  --zx-surface-hover: #443846;
  --zx-surface-hover-rgb: 68 56 70;
  --zx-text: #f2ec8b;
  --zx-text-rgb: 242 236 139;
  --zx-accent: #fbb954;
  --zx-accent-rgb: 251 185 84;
  --zx-on-accent: #2e222f;

  --zx-text-muted: rgba(242 236 139, 0.7);
  --zx-text-soft: rgba(242 236 139, 0.1);
  --zx-text-faint: rgba(242 236 139, 0.35);
  --zx-accent-soft: rgba(251 185 84, 0.15);
  --zx-accent-mid: rgba(251 185 84, 0.35);
  --zx-accent-faint: rgba(251 185 84, 0.25);
}

[data-theme='slimy'] {
  --zx-bg: #0a1a2f;
  --zx-bg-rgb: 10 26 47;
  --zx-surface: #04373b;
  --zx-surface-rgb: 4 55 59;
  --zx-surface-hover: #1a644e;
  --zx-surface-hover-rgb: 26 100 78;
  --zx-text: #d1cb95;
  --zx-text-rgb: 209 203 149;
  --zx-accent: #40985e;
  --zx-accent-rgb: 64 152 94;
  --zx-on-accent: #0a1a2f;

  --zx-text-muted: rgba(209 203 149, 0.7);
  --zx-text-soft: rgba(209 203 149, 0.1);
  --zx-text-faint: rgba(209 203 149, 0.35);
  --zx-accent-soft: rgba(64 152 94, 0.15);
  --zx-accent-mid: rgba(64 152 94, 0.35);
  --zx-accent-faint: rgba(64 152 94, 0.25);
}

[data-theme='virtual-boy'] {
  --zx-bg: #000000;
  --zx-bg-rgb: 0 0 0;
  --zx-surface: #550000;
  --zx-surface-rgb: 85 0 0;
  --zx-surface-hover: #7a0000;
  --zx-surface-hover-rgb: 122 0 0;
  --zx-text: #ef0000;
  --zx-text-rgb: 239 0 0;
  --zx-accent: #ef0000;
  --zx-accent-rgb: 239 0 0;
  --zx-on-accent: #000000;

  --zx-text-muted: rgba(239 0 0, 0.7);
  --zx-text-soft: rgba(239 0 0, 0.1);
  --zx-text-faint: rgba(239 0 0, 0.35);
  --zx-accent-soft: rgba(239 0 0, 0.15);
  --zx-accent-mid: rgba(239 0 0, 0.35);
  --zx-accent-faint: rgba(239 0 0, 0.25);
}

[data-theme='red-poster'] {
  --zx-bg: #e8d6c0;
  --zx-bg-rgb: 232 214 192;
  --zx-surface: #d8c4a8;
  --zx-surface-rgb: 216 196 168;
  --zx-surface-hover: #c9b597;
  --zx-surface-hover-rgb: 201 181 151;
  --zx-text: #000000;
  --zx-text-rgb: 0 0 0;
  --zx-accent: #a1281c;
  --zx-accent-rgb: 161 40 28;
  --zx-on-accent: #e8d6c0;

  --zx-text-muted: rgba(0 0 0, 0.7);
  --zx-text-soft: rgba(0 0 0, 0.1);
  --zx-text-faint: rgba(0 0 0, 0.35);
  --zx-accent-soft: rgba(161 40 28, 0.15);
  --zx-accent-mid: rgba(161 40 28, 0.35);
  --zx-accent-faint: rgba(161 40 28, 0.25);
}

[data-theme='ammo'] {
  --zx-bg: #040c06;
  --zx-bg-rgb: 4 12 6;
  --zx-surface: #112318;
  --zx-surface-rgb: 17 35 24;
  --zx-surface-hover: #1e3a29;
  --zx-surface-hover-rgb: 30 58 41;
  --zx-text: #eeffcc;
  --zx-text-rgb: 238 255 204;
  --zx-accent: #bedc7f;
  --zx-accent-rgb: 190 220 127;
  --zx-on-accent: #040c06;

  --zx-text-muted: rgba(238 255 204, 0.7);
  --zx-text-soft: rgba(238 255 204, 0.1);
  --zx-text-faint: rgba(238 255 204, 0.35);
  --zx-accent-soft: rgba(190 220 127, 0.15);
  --zx-accent-mid: rgba(190 220 127, 0.35);
  --zx-accent-faint: rgba(190 220 127, 0.25);
}

[data-theme='hollow'] {
  --zx-bg: #0f0f1b;
  --zx-bg-rgb: 15 15 27;
  --zx-surface: #232338;
  --zx-surface-rgb: 35 35 56;
  --zx-surface-hover: #3a3a55;
  --zx-surface-hover-rgb: 58 58 85;
  --zx-text: #fafbf6;
  --zx-text-rgb: 250 251 246;
  --zx-accent: #c6b7be;
  --zx-accent-rgb: 198 183 190;
  --zx-on-accent: #0f0f1b;

  --zx-text-muted: rgba(250 251 246, 0.7);
  --zx-text-soft: rgba(250 251 246, 0.1);
  --zx-text-faint: rgba(250 251 246, 0.35);
  --zx-accent-soft: rgba(198 183 190, 0.15);
  --zx-accent-mid: rgba(198 183 190, 0.35);
  --zx-accent-faint: rgba(198 183 190, 0.25);
}

[data-theme='underneath'] {
  --zx-bg: #000000;
  --zx-bg-rgb: 0 0 0;
  --zx-surface: #3a3948;
  --zx-surface-rgb: 58 57 72;
  --zx-surface-hover: #744a88;
  --zx-surface-hover-rgb: 116 74 136;
  --zx-text: #feffdf;
  --zx-text-rgb: 254 255 223;
  --zx-accent: #5072d4;
  --zx-accent-rgb: 80 114 212;
  --zx-on-accent: #000000;

  --zx-text-muted: rgba(254 255 223, 0.7);
  --zx-text-soft: rgba(254 255 223, 0.1);
  --zx-text-faint: rgba(254 255 223, 0.35);
  --zx-accent-soft: rgba(80 114 212, 0.15);
  --zx-accent-mid: rgba(80 114 212, 0.35);
  --zx-accent-faint: rgba(80 114 212, 0.25);
}

[data-theme='carver'] {
  --zx-bg: #000000;
  --zx-bg-rgb: 0 0 0;
  --zx-surface: #402e20;
  --zx-surface-rgb: 64 46 32;
  --zx-surface-hover: #815b3f;
  --zx-surface-hover-rgb: 129 91 63;
  --zx-text: #ffb77d;
  --zx-text-rgb: 255 183 125;
  --zx-accent: #ff5900;
  --zx-accent-rgb: 255 89 0;
  --zx-on-accent: #000000;

  --zx-text-muted: rgba(255 183 125, 0.7);
  --zx-text-soft: rgba(255 183 125, 0.1);
  --zx-text-faint: rgba(255 183 125, 0.35);
  --zx-accent-soft: rgba(255 89 0, 0.15);
  --zx-accent-mid: rgba(255 89 0, 0.35);
  --zx-accent-faint: rgba(255 89 0, 0.25);
}

[data-theme='cozy-christmas'] {
  --zx-bg: #121a16;
  --zx-bg-rgb: 18 26 22;
  --zx-surface: #1f3325;
  --zx-surface-rgb: 31 51 37;
  --zx-surface-hover: #36593b;
  --zx-surface-hover-rgb: 54 89 59;
  --zx-text: #ffb3bf;
  --zx-text-rgb: 255 179 191;
  --zx-accent: #cc2944;
  --zx-accent-rgb: 204 41 68;
  --zx-on-accent: #121a16;

  --zx-text-muted: rgba(255 179 191, 0.7);
  --zx-text-soft: rgba(255 179 191, 0.1);
  --zx-text-faint: rgba(255 179 191, 0.35);
  --zx-accent-soft: rgba(204 41 68, 0.15);
  --zx-accent-mid: rgba(204 41 68, 0.35);
  --zx-accent-faint: rgba(204 41 68, 0.25);
}

[data-theme='winter-forest'] {
  --zx-bg: #eeffff;
  --zx-bg-rgb: 238 255 255;
  --zx-surface: #cdeaf5;
  --zx-surface-rgb: 205 234 245;
  --zx-surface-hover: #9fd4e9;
  --zx-surface-hover-rgb: 159 212 233;
  --zx-text: #332200;
  --zx-text-rgb: 51 34 0;
  --zx-accent: #007744;
  --zx-accent-rgb: 0 119 68;
  --zx-on-accent: #eeffff;

  --zx-text-muted: rgba(51 34 0, 0.7);
  --zx-text-soft: rgba(51 34 0, 0.1);
  --zx-text-faint: rgba(51 34 0, 0.35);
  --zx-accent-soft: rgba(0 119 68, 0.15);
  --zx-accent-mid: rgba(0 119 68, 0.35);
  --zx-accent-faint: rgba(0 119 68, 0.25);
}

[data-theme='thanksgiving'] {
  --zx-bg: #150102;
  --zx-bg-rgb: 21 1 2;
  --zx-surface: #464445;
  --zx-surface-rgb: 70 68 69;
  --zx-surface-hover: #5b495f;
  --zx-surface-hover-rgb: 91 73 95;
  --zx-text: #eeeae7;
  --zx-text-rgb: 238 234 231;
  --zx-accent: #da5a01;
  --zx-accent-rgb: 218 90 1;
  --zx-on-accent: #150102;

  --zx-text-muted: rgba(238 234 231, 0.7);
  --zx-text-soft: rgba(238 234 231, 0.1);
  --zx-text-faint: rgba(238 234 231, 0.35);
  --zx-accent-soft: rgba(218 90 1, 0.15);
  --zx-accent-mid: rgba(218 90 1, 0.35);
  --zx-accent-faint: rgba(218 90 1, 0.25);
}

[data-theme='evangelion'] {
  --zx-bg: #252246;
  --zx-bg-rgb: 37 34 70;
  --zx-surface: #342f5c;
  --zx-surface-rgb: 52 47 92;
  --zx-surface-hover: #473d70;
  --zx-surface-hover-rgb: 71 61 112;
  --zx-text: #cfc9b3;
  --zx-text-rgb: 207 201 179;
  --zx-accent: #8cc54f;
  --zx-accent-rgb: 140 197 79;
  --zx-on-accent: #252246;

  --zx-text-muted: rgba(207 201 179, 0.7);
  --zx-text-soft: rgba(207 201 179, 0.1);
  --zx-text-faint: rgba(207 201 179, 0.35);
  --zx-accent-soft: rgba(140 197 79, 0.15);
  --zx-accent-mid: rgba(140 197 79, 0.35);
  --zx-accent-faint: rgba(140 197 79, 0.25);
}

[data-theme='custom'] {
  --zx-bg: #0a0a0a;
  --zx-bg-rgb: 10 10 10;
  --zx-surface: #1a1a1a;
  --zx-surface-rgb: 26 26 26;
  --zx-surface-hover: #2a2a2a;
  --zx-surface-hover-rgb: 42 42 42;
  --zx-text: #e0e0e0;
  --zx-text-rgb: 224 224 224;
  --zx-accent: #00e676;
  --zx-accent-rgb: 0 230 118;
  --zx-on-accent: #0a0a0a;

  --zx-text-muted: rgba(224 224 224, 0.7);
  --zx-text-soft: rgba(224 224 224, 0.1);
  --zx-text-faint: rgba(224 224 224, 0.35);
  --zx-accent-soft: rgba(0 230 118, 0.15);
  --zx-accent-mid: rgba(0 230 118, 0.35);
  --zx-accent-faint: rgba(0 230 118, 0.25);
}
