/* SM Смета — палитры интерфейса (выбор в профиле, ключ prefs «palette», атрибут <html data-palette>).
   Переопределяют только токены base.css; компоненты палитр не знают. «Классик» = base.css без правок.
   Селектор [data-palette][data-theme] — чтобы светлая палитра не побеждала тёмную тему при равной специфичности. */

/* ── Ирис: фиолетовый + коралл, Manrope ── */
[data-palette="iris"][data-theme="light"] {
  --paper: #f5f4fa; --ink: #1c1b2e; --ink-rgb: 28, 27, 46; --muted: #6a6884; --faint: #9b99b3;
  --card: rgba(255, 255, 255, .82); --card-solid: #ffffff; --hover-solid: #efedf7;
  --accent: #6b5bd6; --accent-dark: #5646c2; --accent-rgb: 107, 91, 214; --accent-soft: rgba(107, 91, 214, .12);
  --mandarin: #ff6b57; --switch-track: #d6d3e6;
  --sidebar-bg: rgba(240, 238, 248, .7); --sticky-head-bg: rgba(247, 246, 252, .96); --subrow-bg: rgba(255, 255, 255, .5);
  --blob-1: #d9d2f7; --blob-2: #ffd9d2; --blob-3: #e4e0f5;
  --focus-from: #6b5bd6; --focus-to: #8a5fd8; --focus-glow-1: #8f80ff; --focus-glow-2: #ff8a79;
  --head: "Manrope", -apple-system, "Segoe UI", sans-serif;
}
[data-palette="iris"][data-theme="dark"] {
  --paper: #141420; --ink: #e9e8f4; --ink-rgb: 233, 232, 244; --muted: #9d9bb8; --faint: #6f6d8a;
  --card: rgba(34, 34, 50, .76); --card-solid: #1d1d2c; --hover-solid: #262638;
  --accent: #9d90ff; --accent-dark: #b2a8ff; --accent-rgb: 157, 144, 255; --accent-soft: rgba(157, 144, 255, .16);
  --mandarin: #ff8a79; --switch-track: #3c3b52;
  --sidebar-bg: rgba(24, 24, 36, .6); --sticky-head-bg: rgba(29, 29, 44, .96); --subrow-bg: rgba(20, 20, 32, .4);
  --blob-1: #262450; --blob-2: #3a2226; --blob-3: #1f2040;
  --focus-from: #4b3fb0; --focus-to: #6a48b8; --focus-glow-1: #8f80ff; --focus-glow-2: #d06a5c;
  --head: "Manrope", -apple-system, "Segoe UI", sans-serif;
}

/* ── Мята: бирюза + мандарин, Sora ── */
[data-palette="mint"][data-theme="light"] {
  --paper: #f2f6f5; --ink: #15262b; --ink-rgb: 21, 38, 43; --muted: #5f747a; --faint: #91a3a8;
  --card: rgba(255, 255, 255, .82); --card-solid: #ffffff; --hover-solid: #eaf1ef;
  --accent: #158f7c; --accent-dark: #107865; --accent-rgb: 21, 143, 124; --accent-soft: rgba(21, 143, 124, .12);
  --mandarin: #f2a33a; --switch-track: #cfdcd8;
  --sidebar-bg: rgba(233, 240, 238, .7); --sticky-head-bg: rgba(245, 249, 248, .96); --subrow-bg: rgba(255, 255, 255, .5);
  --blob-1: #c6e6df; --blob-2: #fbe3c2; --blob-3: #d8ebe6;
  --focus-from: #158f7c; --focus-to: #1a9e98; --focus-glow-1: #3fc4ab; --focus-glow-2: #f2a33a;
  --head: "Sora", -apple-system, "Segoe UI", sans-serif;
}
[data-palette="mint"][data-theme="dark"] {
  --paper: #101a1c; --ink: #e3ecec; --ink-rgb: 227, 236, 236; --muted: #8fa3a6; --faint: #66797c;
  --card: rgba(26, 40, 43, .76); --card-solid: #172427; --hover-solid: #1f2f32;
  --accent: #4fd1b8; --accent-dark: #74dcc8; --accent-rgb: 79, 209, 184; --accent-soft: rgba(79, 209, 184, .16);
  --mandarin: #f6b65d; --switch-track: #33474a;
  --sidebar-bg: rgba(19, 30, 32, .6); --sticky-head-bg: rgba(23, 36, 39, .96); --subrow-bg: rgba(16, 26, 28, .4);
  --blob-1: #163a37; --blob-2: #3a2c17; --blob-3: #17303a;
  --focus-from: #12655a; --focus-to: #167a78; --focus-glow-1: #3fc4ab; --focus-glow-2: #c98a3a;
  --head: "Sora", -apple-system, "Segoe UI", sans-serif;
}

/* ── Небо: белые карточки без стекла, голубой, малые скругления, Golos Text ── */
[data-palette="sky"][data-theme="light"] {
  --paper: #f7f9fc; --ink: #172033; --ink-rgb: 23, 32, 51; --muted: #66708a; --faint: #98a1b6;
  --card: #ffffff; --card-solid: #ffffff; --hover-solid: #f0f3f9; --border: rgba(23, 32, 51, .08);
  --accent: #2b7de9; --accent-dark: #1f68c8; --accent-rgb: 43, 125, 233; --accent-soft: rgba(43, 125, 233, .11);
  --mandarin: #22b8cf; --switch-track: #d3dae6; --radius: 12px;
  --sidebar-bg: rgba(255, 255, 255, .85); --sticky-head-bg: rgba(255, 255, 255, .97); --subrow-bg: rgba(247, 249, 252, .6);
  --glass-edge: rgba(255, 255, 255, 0); --blob-1: #d7e6fb; --blob-2: #d3f1f5; --blob-3: #e6edf7;
  --focus-from: #2b7de9; --focus-to: #2a92d8; --focus-glow-1: #63a3ff; --focus-glow-2: #22b8cf;
  --head: "Golos Text", -apple-system, "Segoe UI", sans-serif;
}
[data-palette="sky"][data-theme="dark"] {
  --paper: #0f141c; --ink: #e6eaf2; --ink-rgb: 230, 234, 242; --muted: #8f99ad; --faint: #66708a;
  --card: #161c26; --card-solid: #161c26; --hover-solid: #1e2532; --border: rgba(230, 234, 242, .08);
  --accent: #63a3ff; --accent-dark: #86b8ff; --accent-rgb: 99, 163, 255; --accent-soft: rgba(99, 163, 255, .15);
  --mandarin: #4fd0e6; --switch-track: #2f3a4e; --radius: 12px;
  --sidebar-bg: rgba(19, 25, 34, .8); --sticky-head-bg: rgba(22, 28, 38, .97); --subrow-bg: rgba(15, 20, 28, .4);
  --glass-edge: rgba(255, 255, 255, .05); --blob-1: #162a48; --blob-2: #133a42; --blob-3: #172236;
  --focus-from: #1f5bb0; --focus-to: #1f6fa8; --focus-glow-1: #63a3ff; --focus-glow-2: #2fb0c8;
  --head: "Golos Text", -apple-system, "Segoe UI", sans-serif;
}

/* ── Лайм на графите: зелёный + лайм, Sora ── */
[data-palette="lime"][data-theme="light"] {
  --paper: #f2f4f2; --ink: #1a1f1c; --ink-rgb: 26, 31, 28; --muted: #66706a; --faint: #97a19b;
  --card: rgba(255, 255, 255, .82); --card-solid: #ffffff; --hover-solid: #eaefea;
  --accent: #1f9d5a; --accent-dark: #17824a; --accent-rgb: 31, 157, 90; --accent-soft: rgba(31, 157, 90, .12);
  --mandarin: #a9c22c; --switch-track: #d1d8d1;
  --sidebar-bg: rgba(233, 237, 233, .7); --sticky-head-bg: rgba(246, 248, 246, .96); --subrow-bg: rgba(255, 255, 255, .5);
  --blob-1: #cde9d6; --blob-2: #ecf3b8; --blob-3: #dfe7df;
  --focus-from: #1f9d5a; --focus-to: #2f8f6a; --focus-glow-1: #5ccf86; --focus-glow-2: #c9e04a;
  --head: "Sora", -apple-system, "Segoe UI", sans-serif;
}
[data-palette="lime"][data-theme="dark"] {
  --paper: #121513; --ink: #e6eae6; --ink-rgb: 230, 234, 230; --muted: #93a097; --faint: #6a756e;
  --card: rgba(28, 33, 29, .78); --card-solid: #191d1a; --hover-solid: #222823;
  --accent: #6fe38a; --accent-dark: #8dedA2; --accent-rgb: 111, 227, 138; --accent-soft: rgba(111, 227, 138, .14);
  --mandarin: #d8f05a; --switch-track: #33403a;
  --sidebar-bg: rgba(21, 24, 22, .6); --sticky-head-bg: rgba(25, 29, 26, .96); --subrow-bg: rgba(18, 21, 19, .4);
  --blob-1: #173a26; --blob-2: #313a17; --blob-3: #1a2a20;
  --focus-from: #176e43; --focus-to: #2a6f4f; --focus-glow-1: #5ccf86; --focus-glow-2: #b0c73a;
  --head: "Sora", -apple-system, "Segoe UI", sans-serif;
}

/* ── Индиго-лайт: «Классик» светлее и чище, серифный Fraunces ── */
[data-palette="indigo"][data-theme="light"] {
  --paper: #f5f6fa; --muted: #6a6f80; --card: rgba(255, 255, 255, .84); --card-solid: #ffffff; --hover-solid: #eef0f6;
  --accent: #4c5fd7; --accent-dark: #3b4dc0; --accent-rgb: 76, 95, 215; --accent-soft: rgba(76, 95, 215, .11);
  --mandarin: #e6a94f; --sidebar-bg: rgba(238, 240, 246, .7); --sticky-head-bg: rgba(248, 249, 252, .96);
  --blob-1: #d2d8f7; --blob-2: #f6e3c4; --blob-3: #dfe6f5;
  --focus-from: #4c5fd7; --focus-to: #5a4fd0; --focus-glow-1: #7c8cf0; --focus-glow-2: #9a5fd8;
  --head: "Fraunces", "Iowan Old Style", "Palatino", Georgia, serif;
}
[data-palette="indigo"][data-theme="dark"] {
  --accent: #9aa6f0; --accent-dark: #b3bcf5; --accent-rgb: 154, 166, 240; --accent-soft: rgba(154, 166, 240, .16);
  --mandarin: #e6a94f; --sidebar-bg: rgba(26, 27, 34, .6);
  --head: "Fraunces", "Iowan Old Style", "Palatino", Georgia, serif;
}

/* ── Выбор палитры в профиле ── */
.palettes { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; max-width: 900px; }
.palette { position: relative; display: grid; gap: 8px; padding: 10px; border: 1.5px solid var(--border); border-radius: 14px;
  background: var(--card-solid); cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.palette:hover { border-color: var(--border-strong); }
.palette:has(input:checked) { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.palette:has(input:focus-visible) { outline: 2px solid var(--accent); outline-offset: 2px; }
.palette input { position: absolute; opacity: 0; pointer-events: none; }
.palette svg { display: block; width: 100%; height: auto; border-radius: 9px; }
.palette-name { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-weight: 650; font-size: 13.5px; }
.palette-name .check { display: none; width: 18px; height: 18px; border-radius: 50%; background: var(--accent); color: #fff; place-items: center; }
.palette:has(input:checked) .palette-name .check { display: grid; }
.palette-note { color: var(--muted); font-size: 12px; line-height: 1.4; margin: 0; }
