/* СГЕНЕРИРОВАНО app/gen-palettes.py из palettes.json — руками не править.
   Темы кабинета, кроме «Марпла» (он — :root в style.css). */

:root[data-palette="dusk"] {
  --ember: #C08F96;
  --accent: #F6DBC0;
  --accent-hi: #F9EBDB;
  --coral: #D8BFC3;
  --rose: #502D55;
  --cream: #FCFBF6;
  --bg-top: #341D37;
  --bg-mid: #241426;
  --bg-bot: #160D18;
  --ink: #FCFBF6;
  --accent-ink: #F9EBDB;
  --on-accent: #120A13;
  --ink-dim: rgba(252, 251, 246, 0.85);
  --ink-mute: rgba(252, 251, 246, 0.62);
  --glass-bg: rgba(52, 29, 55, 0.55);
  --band0: #502D55;
  --shield0: #502D55;
  --band1: #935073;
  --shield1: #935073;
  --band2: #C08F96;
  --shield2: #F6DBC0;
  --band3: #EFD1BB;
  --shield3: #F8F4E9;
  --blob0: rgba(80, 45, 85, 0.42);
  --blob1: rgba(147, 80, 115, 0.34);
  --blob2: rgba(192, 143, 150, 0.32);
  --btn-glow: rgba(216, 191, 195, 0.6);
  --btn-glow-hi: rgba(216, 191, 195, 0.75);
  --shield-glow: rgba(80, 45, 85, 0.45);
}
:root[data-palette="dusk"][data-theme="light"] {
  --bg-top: #D5C1CA;
  --bg-mid: #CBB6BF;
  --bg-bot: #B19BA5;
  --ink: #23181D;
  --ink-dim: rgba(35, 24, 29, 0.82);
  --ink-mute: rgba(35, 24, 29, 0.74);
  --hairline: rgba(74, 48, 61, 0.12);
  --hairline-2: rgba(74, 48, 61, 0.07);
  --glass-bg: rgba(214, 192, 202, 0.9);
  --card-bg: rgba(214, 192, 202, 0.94);
  --shell-bg: rgba(214, 192, 202, 0.3);
  --field-bg: rgba(204, 182, 192, 0.86);
  --shadow: 0 24px 60px -24px rgba(100, 68, 84, 0.28);
  --card-shadow: 0 10px 30px -14px rgba(100, 68, 84, 0.3);
  --accent-ink: #584531;
  --coral: #935073;
  --btn-glow: rgba(147, 80, 115, 0.45); --btn-glow-hi: rgba(147, 80, 115, 0.6);
  --scrim-day-0: rgba(57, 36, 46, 0.28); --scrim-day-1: rgba(57, 36, 46, 0.16); --scrim-day-2: rgba(57, 36, 46, 0.26);
}

:root[data-palette="forest"] {
  --ember: #53806D;
  --accent: #8EB69B;
  --accent-hi: #BFD8C7;
  --coral: #B0CCBB;
  --rose: #163832;
  --cream: #F0F9F2;
  --bg-top: #0E2421;
  --bg-mid: #0B2B26;
  --bg-bot: #051F20;
  --ink: #F0F9F2;
  --accent-ink: #BFD8C7;
  --on-accent: #04191A;
  --ink-dim: rgba(240, 249, 242, 0.85);
  --ink-mute: rgba(240, 249, 242, 0.62);
  --glass-bg: rgba(14, 36, 33, 0.55);
  --band0: #163832;
  --shield0: #163832;
  --band1: #235347;
  --shield1: #235347;
  --band2: #8EB69B;
  --shield2: #8EB69B;
  --band3: #DAF1DE;
  --shield3: #DAF1DE;
  --blob0: rgba(22, 56, 50, 0.42);
  --blob1: rgba(35, 83, 71, 0.34);
  --blob2: rgba(83, 128, 109, 0.32);
  --btn-glow: rgba(176, 204, 187, 0.6);
  --btn-glow-hi: rgba(176, 204, 187, 0.75);
  --shield-glow: rgba(22, 56, 50, 0.45);
}
:root[data-palette="forest"][data-theme="light"] {
  --bg-top: #BECAC6;
  --bg-mid: #B3C0BC;
  --bg-bot: #98A5A1;
  --ink: #161D1B;
  --ink-dim: rgba(22, 29, 27, 0.82);
  --ink-mute: rgba(22, 29, 27, 0.74);
  --hairline: rgba(44, 61, 56, 0.12);
  --hairline-2: rgba(44, 61, 56, 0.07);
  --glass-bg: rgba(190, 203, 199, 0.9);
  --card-bg: rgba(190, 203, 199, 0.94);
  --shell-bg: rgba(190, 203, 199, 0.3);
  --field-bg: rgba(179, 192, 188, 0.86);
  --shadow: 0 24px 60px -24px rgba(63, 85, 78, 0.28);
  --card-shadow: 0 10px 30px -14px rgba(63, 85, 78, 0.3);
  --accent-ink: #33513E;
  --coral: #235347;
  --btn-glow: rgba(35, 83, 71, 0.45); --btn-glow-hi: rgba(35, 83, 71, 0.6);
  --scrim-day-0: rgba(33, 47, 43, 0.28); --scrim-day-1: rgba(33, 47, 43, 0.16); --scrim-day-2: rgba(33, 47, 43, 0.26);
}

:root[data-palette="garnet"] {
  --ember: #DB5477;
  --accent: #EB8097;
  --accent-hi: #F4B8C4;
  --coral: #EFB6C1;
  --rose: #831535;
  --cream: #FCF0F1;
  --bg-top: #550E22;
  --bg-mid: #450714;
  --bg-bot: #1F0309;
  --ink: #FCF0F1;
  --accent-ink: #F4B8C4;
  --on-accent: #190207;
  --ink-dim: rgba(252, 240, 241, 0.85);
  --ink-mute: rgba(252, 240, 241, 0.62);
  --glass-bg: rgba(85, 14, 34, 0.55);
  --band0: #831535;
  --shield0: #831535;
  --band1: #CD305D;
  --shield1: #CD305D;
  --band2: #EB8097;
  --shield2: #EB8097;
  --band3: #F8DADC;
  --shield3: #F8DADC;
  --blob0: rgba(131, 21, 53, 0.42);
  --blob1: rgba(205, 48, 93, 0.34);
  --blob2: rgba(219, 84, 119, 0.32);
  --btn-glow: rgba(239, 182, 193, 0.6);
  --btn-glow-hi: rgba(239, 182, 193, 0.75);
  --shield-glow: rgba(131, 21, 53, 0.45);
}
:root[data-palette="garnet"][data-theme="light"] {
  --bg-top: #E5BAC0;
  --bg-mid: #DCAFB5;
  --bg-bot: #C2949A;
  --ink: #2B1418;
  --ink-dim: rgba(43, 20, 24, 0.82);
  --ink-mute: rgba(43, 20, 24, 0.74);
  --hairline: rgba(91, 36, 48, 0.12);
  --hairline-2: rgba(91, 36, 48, 0.07);
  --glass-bg: rgba(232, 186, 192, 0.9);
  --card-bg: rgba(232, 186, 192, 0.94);
  --shell-bg: rgba(232, 186, 192, 0.3);
  --field-bg: rgba(222, 175, 181, 0.86);
  --shadow: 0 24px 60px -24px rgba(123, 54, 68, 0.28);
  --card-shadow: 0 10px 30px -14px rgba(123, 54, 68, 0.3);
  --accent-ink: #79293E;
  --coral: #CD305D;
  --btn-glow: rgba(205, 48, 93, 0.45); --btn-glow-hi: rgba(205, 48, 93, 0.6);
  --scrim-day-0: rgba(71, 26, 36, 0.28); --scrim-day-1: rgba(71, 26, 36, 0.16); --scrim-day-2: rgba(71, 26, 36, 0.26);
}

:root[data-palette="graphite"] {
  --ember: #7C7C87;
  --accent: #F2F2F5;
  --accent-hi: #F9F9FA;
  --coral: #C4C4CA;
  --rose: #3E3E45;
  --cream: #FFFFFF;
  --bg-top: #28282D;
  --bg-mid: #232327;
  --bg-bot: #0E0E10;
  --ink: #FFFFFF;
  --accent-ink: #F9F9FA;
  --on-accent: #0B0B0D;
  --ink-dim: rgba(255, 255, 255, 0.85);
  --ink-mute: rgba(255, 255, 255, 0.62);
  --glass-bg: rgba(40, 40, 45, 0.55);
  --band0: #0E0E10;
  --shield0: #3E3E45;
  --band1: #3E3E45;
  --shield1: #63636E;
  --band2: #9A9AA6;
  --shield2: #9A9AA6;
  --band3: #F2F2F5;
  --shield3: #F2F2F5;
  --blob0: rgba(14, 14, 16, 0.42);
  --blob1: rgba(62, 62, 69, 0.34);
  --blob2: rgba(124, 124, 135, 0.32);
  --btn-glow: rgba(196, 196, 202, 0.6);
  --btn-glow-hi: rgba(196, 196, 202, 0.75);
  --shield-glow: rgba(62, 62, 69, 0.45);
}
:root[data-palette="graphite"][data-theme="light"] {
  --bg-top: #C7C7CA;
  --bg-mid: #BCBCC0;
  --bg-bot: #A1A1A5;
  --ink: #1B1B1D;
  --ink-dim: rgba(27, 27, 29, 0.82);
  --ink-mute: rgba(27, 27, 29, 0.74);
  --hairline: rgba(56, 56, 61, 0.12);
  --hairline-2: rgba(56, 56, 61, 0.07);
  --glass-bg: rgba(199, 199, 202, 0.9);
  --card-bg: rgba(199, 199, 202, 0.94);
  --shell-bg: rgba(199, 199, 202, 0.3);
  --field-bg: rgba(188, 188, 192, 0.86);
  --shadow: 0 24px 60px -24px rgba(79, 79, 84, 0.28);
  --card-shadow: 0 10px 30px -14px rgba(79, 79, 84, 0.3);
  --accent-ink: #49494B;
  --coral: #63636E;
  --btn-glow: rgba(99, 99, 110, 0.45); --btn-glow-hi: rgba(99, 99, 110, 0.6);
  --scrim-day-0: rgba(43, 43, 46, 0.28); --scrim-day-1: rgba(43, 43, 46, 0.16); --scrim-day-2: rgba(43, 43, 46, 0.26);
  --band0: #505056; --band1: #63636E; --band2: #9A9AA6; --band3: #F2F2F5;
  --blob0: rgba(80, 80, 86, 0.42); --blob1: rgba(99, 99, 110, 0.34);
}

/* образцы тем — .swatch[data-p] в карточке «Оформление» */
.swatch[data-p="marple"] { background: linear-gradient(90deg, #D83A5E 0%, #D83A5E 25%, #FF6F5C 25%, #FF6F5C 50%, #FFAB5C 50%, #FFAB5C 75%, #FFE6C2 75%, #FFE6C2 100%); }
.swatch[data-p="dusk"] { background: linear-gradient(90deg, #502D55 0%, #502D55 25%, #935073 25%, #935073 50%, #F6DBC0 50%, #F6DBC0 75%, #F8F4E9 75%, #F8F4E9 100%); }
.swatch[data-p="forest"] { background: linear-gradient(90deg, #163832 0%, #163832 25%, #235347 25%, #235347 50%, #8EB69B 50%, #8EB69B 75%, #DAF1DE 75%, #DAF1DE 100%); }
.swatch[data-p="garnet"] { background: linear-gradient(90deg, #831535 0%, #831535 25%, #CD305D 25%, #CD305D 50%, #EB8097 50%, #EB8097 75%, #F8DADC 75%, #F8DADC 100%); }
.swatch[data-p="graphite"] { background: linear-gradient(90deg, #3E3E45 0%, #3E3E45 25%, #63636E 25%, #63636E 50%, #9A9AA6 50%, #9A9AA6 75%, #F2F2F5 75%, #F2F2F5 100%); }
