/* 화면 테마(0.7.0 P45 ⑥ → 0.9.9 P67 플랫 · 색 테마) — voca.css · vk.css 다음, flat.css 앞에 읽음.
 * <html> 꼬리표(js/theme.js 가 붙임):
 *   data-theme = 색 묶음 이름 <색>-<밝기>: a-light · a-dark · b-… · c-light(기본) · c-dark · d-…
 *   data-color = a | b | c | d (A 차분한 남색 · B 버건디 · C 라일락 퍼플 · D 연녹색)
 *   data-tone  = light | dark — 어두운 바탕에서만 필요한 고침(아래 2절)은 tone 에 걸어 둠
 * 1절은 생성: scripts/themes.json(하린 시안 값) → node scripts/gen-theme.mjs. 색을 바꾸려면 themes.json 만 고치고 다시 돌림(명암비 4.5 표도 함께 나옴).
 * 부품 모양은 css/flat.css 뒤에 읽는 css/soft.css 가 둥근 카드와 떠 있는 메뉴로 조정한다. 여기는 색만.
 * 0.9.8 까지의 네이비/어둡게 두 묶음은 _prev/www-0.9.8-dev/css/theme.css 에 있음. */

/* ── 1. 색 묶음 8개(생성 — node scripts/gen-theme.mjs, 손으로 고치지 말 것) ── */
html[data-theme="a-light"] body.vk{color-scheme:light;--bg:#F6F7F9;--card:#FFFFFF;--border:#E1E5EC;--line-2:#BBC1CB;--tint:#E8ECF3;--tint-soft:#E8ECF3;--surface:#E8ECF3;--chip:#F6F7F9;--pos-chip:#E8ECF3;--primary:#34496E;--primary-deep:#34496E;--on-primary:#FFFFFF;--secondary-btn:#E8ECF3;--acc:#34496E;--acc-deep:#1D2635;--acc-soft:#E8ECF3;--acc-text:#34496E;--fill:#34496E;--on-acc:#FFFFFF;--accent:#34496E;--accent-ring:#34496E;--accent-soft:#34496E;--peri:#34496E;--chip-active:#34496E;--btn:#34496E;--on-btn:#FFFFFF;--bar-a:#34496E;--bar-b:#D5DCE7;--track:#D5DCE7;--hero-line:#D5DCE7;--hero-bg:#E8ECF3;--hero-bd:#E8ECF3;--hero-card:#FFFFFF;--text:#1D2635;--text-2:#5A6475;--text-3:#5A6475;--shadow:none;--grad:#34496E;--grad-soft:#E8ECF3;--grad-bar:#34496E;--player-grad:#FFFFFF;--tab:#FFFFFF;--tab-off:#5A6475;--popup:#FFFFFF;--heat-l:#ADB7C9;--heat-m:#74849E;--good:#2F6FEB;--bad:#D13A3F;--g-no:#C2362B;--g-unsure:#9A6416;--ic-red-bg:#FDE7E7;--ic-red:#D13A3F;--dim:rgba(102,102,102,.92);--drawer:#313131}
html[data-theme="a-dark"] body.vk{color-scheme:dark;--bg:#121720;--card:#1A2130;--border:#283245;--line-2:#4A5467;--tint:#222C40;--tint-soft:#222C40;--surface:#222C40;--chip:#121720;--pos-chip:#222C40;--primary:#A9BBDA;--primary-deep:#A9BBDA;--on-primary:#121720;--secondary-btn:#222C40;--acc:#A9BBDA;--acc-deep:#E6EAF1;--acc-soft:#222C40;--acc-text:#A9BBDA;--fill:#A9BBDA;--on-acc:#121720;--accent:#A9BBDA;--accent-ring:#A9BBDA;--accent-soft:#A9BBDA;--peri:#A9BBDA;--chip-active:#A9BBDA;--btn:#A9BBDA;--on-btn:#121720;--bar-a:#A9BBDA;--bar-b:#2E3A50;--track:#2E3A50;--hero-line:#2E3A50;--hero-bg:#222C40;--hero-bd:#222C40;--hero-card:#1A2130;--text:#E6EAF1;--text-2:#A3ADBF;--text-3:#A3ADBF;--shadow:none;--grad:#A9BBDA;--grad-soft:#222C40;--grad-bar:#A9BBDA;--player-grad:#1A2130;--tab:#1A2130;--tab-off:#A3ADBF;--popup:#1A2130;--heat-l:#4D5A73;--heat-m:#7887A3;--good:#7EA6FF;--bad:#FF7B7E;--g-no:#FF8A80;--g-unsure:#E8B04B;--ic-red-bg:#3B1F28;--ic-red:#FF7B7E;--dim:rgba(0,0,0,.62);--drawer:#1A1F2B}
html[data-theme="b-light"] body.vk{color-scheme:light;--bg:#FAF7F7;--card:#FFFFFF;--border:#EBE1E2;--line-2:#C7BBBD;--tint:#F3E9EA;--tint-soft:#F3E9EA;--surface:#F3E9EA;--chip:#FAF7F7;--pos-chip:#F3E9EA;--primary:#7B2F3E;--primary-deep:#7B2F3E;--on-primary:#FFFFFF;--secondary-btn:#F3E9EA;--acc:#7B2F3E;--acc-deep:#2A1F21;--acc-soft:#F3E9EA;--acc-text:#7B2F3E;--fill:#7B2F3E;--on-acc:#FFFFFF;--accent:#7B2F3E;--accent-ring:#7B2F3E;--accent-soft:#7B2F3E;--peri:#7B2F3E;--chip-active:#7B2F3E;--btn:#7B2F3E;--on-btn:#FFFFFF;--bar-a:#7B2F3E;--bar-b:#E6D6D9;--track:#E6D6D9;--hero-line:#E6D6D9;--hero-bg:#F3E9EA;--hero-bd:#F3E9EA;--hero-card:#FFFFFF;--text:#2A1F21;--text-2:#6A5A5D;--text-3:#6A5A5D;--shadow:none;--grad:#7B2F3E;--grad-soft:#F3E9EA;--grad-bar:#7B2F3E;--player-grad:#FFFFFF;--tab:#FFFFFF;--tab-off:#6A5A5D;--popup:#FFFFFF;--heat-l:#CBACB2;--heat-m:#A6727C;--good:#2F6FEB;--bad:#D13A3F;--g-no:#C2362B;--g-unsure:#9A6416;--ic-red-bg:#FDE7E7;--ic-red:#D13A3F;--dim:rgba(102,102,102,.92);--drawer:#313131}
html[data-theme="b-dark"] body.vk{color-scheme:dark;--bg:#1A1415;--card:#241B1D;--border:#3A2B2E;--line-2:#5F5053;--tint:#2E2124;--tint-soft:#2E2124;--surface:#2E2124;--chip:#1A1415;--pos-chip:#2E2124;--primary:#E2A9B4;--primary-deep:#E2A9B4;--on-primary:#1A1415;--secondary-btn:#2E2124;--acc:#E2A9B4;--acc-deep:#F0E8E9;--acc-soft:#2E2124;--acc-text:#E2A9B4;--fill:#E2A9B4;--on-acc:#1A1415;--accent:#E2A9B4;--accent-ring:#E2A9B4;--accent-soft:#E2A9B4;--peri:#E2A9B4;--chip-active:#E2A9B4;--btn:#E2A9B4;--on-btn:#1A1415;--bar-a:#E2A9B4;--bar-b:#43333A;--track:#43333A;--hero-line:#43333A;--hero-bg:#2E2124;--hero-bd:#2E2124;--hero-card:#241B1D;--text:#F0E8E9;--text-2:#BFAFB2;--text-3:#BFAFB2;--shadow:none;--grad:#E2A9B4;--grad-soft:#2E2124;--grad-bar:#E2A9B4;--player-grad:#241B1D;--tab:#241B1D;--tab-off:#BFAFB2;--popup:#241B1D;--heat-l:#6B5159;--heat-m:#A27A83;--good:#7EA6FF;--bad:#FF7B7E;--g-no:#FF8A80;--g-unsure:#E8B04B;--ic-red-bg:#3B1F28;--ic-red:#FF7B7E;--dim:rgba(0,0,0,.62);--drawer:#1A1F2B}
html[data-theme="c-light"] body.vk,html:not([data-theme]) body.vk{color-scheme:light;--bg:#F0EEF9;--card:#FFFFFF;--border:#DDD8EF;--line-2:#B8B4CB;--tint:#D8D2F8;--tint-soft:#D8D2F8;--surface:#D8D2F8;--chip:#F0EEF9;--pos-chip:#D8D2F8;--primary:#5546BA;--primary-deep:#5546BA;--on-primary:#FFFFFF;--secondary-btn:#D8D2F8;--acc:#5546BA;--acc-deep:#24243C;--acc-soft:#D8D2F8;--acc-text:#5546BA;--fill:#5546BA;--on-acc:#FFFFFF;--accent:#5546BA;--accent-ring:#5546BA;--accent-soft:#5546BA;--peri:#5546BA;--chip-active:#5546BA;--btn:#5546BA;--on-btn:#FFFFFF;--bar-a:#5546BA;--bar-b:#B7B0EF;--track:#B7B0EF;--hero-line:#B7B0EF;--hero-bg:#D8D2F8;--hero-bd:#D8D2F8;--hero-card:#FFFFFF;--text:#24243C;--text-2:#585670;--text-3:#585670;--shadow:none;--grad:#5546BA;--grad-soft:#D8D2F8;--grad-bar:#5546BA;--player-grad:#FFFFFF;--tab:#FFFFFF;--tab-off:#585670;--popup:#FFFFFF;--heat-l:#9F96E2;--heat-m:#7C70CF;--good:#2F6FEB;--bad:#D13A3F;--g-no:#C2362B;--g-unsure:#9A6416;--ic-red-bg:#FDE7E7;--ic-red:#D13A3F;--dim:rgba(102,102,102,.92);--drawer:#313131}
html[data-theme="c-dark"] body.vk{color-scheme:dark;--bg:#191627;--card:#252139;--border:#3E3656;--line-2:#615978;--tint:#342D50;--tint-soft:#342D50;--surface:#342D50;--chip:#191627;--pos-chip:#342D50;--primary:#C3B8FF;--primary-deep:#C3B8FF;--on-primary:#191627;--secondary-btn:#342D50;--acc:#C3B8FF;--acc-deep:#F3F0FF;--acc-soft:#342D50;--acc-text:#C3B8FF;--fill:#C3B8FF;--on-acc:#191627;--accent:#C3B8FF;--accent-ring:#C3B8FF;--accent-soft:#C3B8FF;--peri:#C3B8FF;--chip-active:#C3B8FF;--btn:#C3B8FF;--on-btn:#191627;--bar-a:#C3B8FF;--bar-b:#4C426D;--track:#4C426D;--hero-line:#4C426D;--hero-bg:#342D50;--hero-bd:#342D50;--hero-card:#252139;--text:#F3F0FF;--text-2:#BAB3D1;--text-3:#BAB3D1;--shadow:none;--grad:#C3B8FF;--grad-soft:#342D50;--grad-bar:#C3B8FF;--player-grad:#252139;--tab:#252139;--tab-off:#BAB3D1;--popup:#252139;--heat-l:#6A6092;--heat-m:#9389C5;--good:#7EA6FF;--bad:#FF7B7E;--g-no:#FF8A80;--g-unsure:#E8B04B;--ic-red-bg:#3B1F28;--ic-red:#FF7B7E;--dim:rgba(0,0,0,.62);--drawer:#1A1F2B}
html[data-theme="d-light"] body.vk{color-scheme:light;--bg:#F7F9F6;--card:#FFFFFF;--border:#E0E8E1;--line-2:#B9C3BB;--tint:#E9F2EA;--tint-soft:#E9F2EA;--surface:#E9F2EA;--chip:#F7F9F6;--pos-chip:#E9F2EA;--primary:#46694F;--primary-deep:#46694F;--on-primary:#FFFFFF;--secondary-btn:#E9F2EA;--acc:#46694F;--acc-deep:#1F2A22;--acc-soft:#E9F2EA;--acc-text:#46694F;--fill:#46694F;--on-acc:#FFFFFF;--accent:#46694F;--accent-ring:#46694F;--accent-soft:#46694F;--peri:#46694F;--chip-active:#46694F;--btn:#D4E7D7;--on-btn:#1F3826;--bar-a:#46694F;--bar-b:#D3E2D5;--track:#D3E2D5;--hero-line:#D3E2D5;--hero-bg:#FFFFFF;--hero-bd:#E0E8E1;--hero-card:#FFFFFF;--text:#1F2A22;--text-2:#566458;--text-3:#566458;--shadow:none;--grad:#46694F;--grad-soft:#E9F2EA;--grad-bar:#46694F;--player-grad:#FFFFFF;--tab:#FFFFFF;--tab-off:#566458;--popup:#FFFFFF;--heat-l:#B0C4B4;--heat-m:#7E9985;--good:#2F6FEB;--bad:#D13A3F;--g-no:#C2362B;--g-unsure:#9A6416;--ic-red-bg:#FDE7E7;--ic-red:#D13A3F;--dim:rgba(102,102,102,.92);--drawer:#313131}
html[data-theme="d-dark"] body.vk{color-scheme:dark;--bg:#121713;--card:#19201A;--border:#273127;--line-2:#4B564B;--tint:#202A21;--tint-soft:#202A21;--surface:#202A21;--chip:#121713;--pos-chip:#202A21;--primary:#AFD0B7;--primary-deep:#AFD0B7;--on-primary:#121713;--secondary-btn:#202A21;--acc:#AFD0B7;--acc-deep:#E7EEE8;--acc-soft:#202A21;--acc-text:#AFD0B7;--fill:#AFD0B7;--on-acc:#121713;--accent:#AFD0B7;--accent-ring:#AFD0B7;--accent-soft:#AFD0B7;--peri:#AFD0B7;--chip-active:#AFD0B7;--btn:#AFD0B7;--on-btn:#121713;--bar-a:#AFD0B7;--bar-b:#2D3A2F;--track:#2D3A2F;--hero-line:#2D3A2F;--hero-bg:#202A21;--hero-bd:#202A21;--hero-card:#19201A;--text:#E7EEE8;--text-2:#A6B5A9;--text-3:#A6B5A9;--shadow:none;--grad:#AFD0B7;--grad-soft:#202A21;--grad-bar:#AFD0B7;--player-grad:#19201A;--tab:#19201A;--tab-off:#A6B5A9;--popup:#19201A;--heat-l:#4E6051;--heat-m:#7B9481;--good:#7EA6FF;--bad:#FF7B7E;--g-no:#FF8A80;--g-unsure:#E8B04B;--ic-red-bg:#3B1F28;--ic-red:#FF7B7E;--dim:rgba(0,0,0,.62);--drawer:#1A1F2B}
/* ── 1 끝 ── */

/* ── 2. 어두운 꼴 고침(tone dark) ── */
html[data-tone="dark"]{color-scheme:dark}
html[data-theme="a-dark"]{background:#121720}html[data-theme="b-dark"]{background:#1A1415}html[data-theme="c-dark"]{background:#111820}html[data-theme="d-dark"]{background:#121713}
html[data-tone="dark"] body.vk .fbk.b i{color:var(--bg)} /* 밝은 빨강 동그라미 위 흰 「!」 → 어두운 글자 */
html[data-tone="dark"] body.vk svg [stroke="#fff"]{stroke:var(--card)}
