/**
 * INK-GAG · 制作台运维台主题
 * 主题 id 与制作台 UI_THEMES 对齐；html[data-igs-theme] + .sa-theme-dark
 * v1.1.0 · 2026-08-20 · 登录换肤 / 令牌软色 / 与 admin.css v1.3 配套
 */

:root {
  --sa-glow-a: rgba(232, 164, 160, 0.14);
  --sa-glow-b: rgba(212, 168, 106, 0.1);
  --sa-bg-top: #14110f;
  --sa-bg-end: #090807;
  --sa-grid-line: rgba(255, 236, 214, 0.4);
  --sa-grid-opacity: 0.04;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(18, 16, 14, 0.94);
  --sa-rail-bg: rgba(18, 16, 14, 0.96);
  --sa-mark-ink: #1a1018;
  --sa-btn-primary-ink: #1a1018;
  --sa-theme-transit: background 0.45s ease, color 0.3s ease, border-color 0.3s ease,
    box-shadow 0.3s ease;
}

/* —— 砚台朱砂（运维默认气质，与制作台同 id） —— */
html[data-igs-theme='cinnabar'],
html:not([data-igs-theme]) {
  --sa-bg: #0b0a09;
  --sa-ink: #12100e;
  --sa-elev: #171411;
  --sa-surface: rgba(255, 246, 236, 0.04);
  --sa-surface-2: rgba(255, 246, 236, 0.07);
  --sa-line: rgba(255, 236, 214, 0.11);
  --sa-line-strong: rgba(212, 168, 106, 0.32);
  --sa-text: #f6f0e6;
  --sa-muted: rgba(246, 240, 230, 0.58);
  --sa-gold: #d4a86a;
  --sa-rose: #e8a4a0;
  --sa-ok: #7bc9a0;
  --sa-warn: #e8a05a;
  --sa-danger: #e07070;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.4);
  --sa-glow-a: rgba(196, 92, 72, 0.16);
  --sa-glow-b: rgba(212, 168, 106, 0.12);
  --sa-bg-top: #1a1410;
  --sa-bg-end: #0a0806;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(36, 30, 26, 0.94);
  --sa-rail-bg: rgba(26, 22, 20, 0.96);
}

/* —— 青藤宣纸 —— */
html[data-igs-theme='paper'] {
  --sa-bg: #ebe4d4;
  --sa-ink: #f2eee4;
  --sa-elev: #fffcf5;
  --sa-surface: rgba(20, 32, 28, 0.04);
  --sa-surface-2: rgba(31, 107, 88, 0.08);
  --sa-line: rgba(20, 32, 28, 0.12);
  --sa-line-strong: rgba(31, 107, 88, 0.35);
  --sa-text: #14201c;
  --sa-muted: rgba(20, 32, 28, 0.58);
  --sa-gold: #1f6b58;
  --sa-rose: #c45c28;
  --sa-ok: #1b6b45;
  --sa-warn: #a65c2e;
  --sa-danger: #b04040;
  --sa-shadow: 0 18px 40px rgba(20, 32, 28, 0.12);
  --sa-glow-a: rgba(31, 107, 88, 0.16);
  --sa-glow-b: rgba(196, 92, 40, 0.12);
  --sa-bg-top: #f4f0e6;
  --sa-bg-end: #e0d8c8;
  --sa-grid-line: rgba(31, 107, 88, 0.35);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.72);
  --sa-card-bg: rgba(255, 252, 245, 0.94);
  --sa-rail-bg: rgba(255, 252, 245, 0.96);
  --sa-mark-ink: #fffcf5;
  --sa-btn-primary-ink: #fffcf5;
}

/* —— 晨雾青瓷 —— */
html[data-igs-theme='celadon'] {
  --sa-bg: #dfeae7;
  --sa-ink: #e8f1ef;
  --sa-elev: #f7fcfa;
  --sa-surface: rgba(14, 36, 40, 0.055);
  --sa-surface-2: rgba(26, 110, 100, 0.12);
  --sa-line: rgba(14, 36, 40, 0.16);
  --sa-line-strong: rgba(26, 110, 100, 0.48);
  --sa-text: #0f2428;
  --sa-muted: rgba(15, 36, 40, 0.64);
  --sa-gold: #1f6f68;
  --sa-rose: #a85a2e;
  --sa-ok: #176b4f;
  --sa-warn: #8f5028;
  --sa-danger: #a83c3c;
  --sa-shadow: 0 14px 32px rgba(14, 36, 40, 0.1);
  --sa-glow-a: rgba(26, 110, 100, 0.14);
  --sa-glow-b: rgba(168, 90, 46, 0.1);
  --sa-bg-top: #eef6f4;
  --sa-bg-end: #d0ddd9;
  --sa-grid-line: rgba(26, 110, 100, 0.28);
  --sa-grid-opacity: 0.035;
  --sa-field-bg: #ffffff;
  --sa-card-bg: #ffffff;
  --sa-rail-bg: #f8fcfb;
  --sa-mark-ink: #f4faf8;
  --sa-btn-primary-ink: #f4faf8;
}

/* —— 竹影茶室 —— */
html[data-igs-theme='bamboo'] {
  --sa-bg: #e4e2cf;
  --sa-ink: #e7e6d6;
  --sa-elev: #f3f2e6;
  --sa-surface: rgba(26, 38, 24, 0.04);
  --sa-surface-2: rgba(61, 107, 58, 0.08);
  --sa-line: rgba(26, 38, 24, 0.12);
  --sa-line-strong: rgba(61, 107, 58, 0.35);
  --sa-text: #1a2618;
  --sa-muted: rgba(26, 38, 24, 0.58);
  --sa-gold: #3d6b3a;
  --sa-rose: #8f6b2e;
  --sa-ok: #2f6b36;
  --sa-warn: #8a5528;
  --sa-danger: #a84840;
  --sa-shadow: 0 18px 40px rgba(26, 38, 24, 0.12);
  --sa-glow-a: rgba(61, 107, 58, 0.16);
  --sa-glow-b: rgba(143, 107, 46, 0.12);
  --sa-bg-top: #f0efe4;
  --sa-bg-end: #d8d6c0;
  --sa-grid-line: rgba(61, 107, 58, 0.3);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.72);
  --sa-card-bg: rgba(243, 242, 230, 0.95);
  --sa-rail-bg: rgba(250, 249, 240, 0.96);
  --sa-mark-ink: #f3f2e6;
  --sa-btn-primary-ink: #f3f2e6;
}

/* —— 霜月银杏 —— */
html[data-igs-theme='frost'] {
  --sa-bg: #e8ebf0;
  --sa-ink: #eceef2;
  --sa-elev: #f7f8fb;
  --sa-surface: rgba(30, 36, 44, 0.04);
  --sa-surface-2: rgba(61, 95, 122, 0.08);
  --sa-line: rgba(30, 36, 44, 0.12);
  --sa-line-strong: rgba(61, 95, 122, 0.35);
  --sa-text: #1e242c;
  --sa-muted: rgba(30, 36, 44, 0.58);
  --sa-gold: #3d5f7a;
  --sa-rose: #c49a3c;
  --sa-ok: #2f6b58;
  --sa-warn: #9a6a28;
  --sa-danger: #b04848;
  --sa-shadow: 0 18px 40px rgba(30, 36, 44, 0.12);
  --sa-glow-a: rgba(61, 95, 122, 0.16);
  --sa-glow-b: rgba(196, 154, 60, 0.12);
  --sa-bg-top: #f4f6f9;
  --sa-bg-end: #dde2ea;
  --sa-grid-line: rgba(61, 95, 122, 0.28);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.78);
  --sa-card-bg: rgba(247, 248, 251, 0.95);
  --sa-rail-bg: rgba(255, 255, 255, 0.96);
  --sa-mark-ink: #f7f8fb;
  --sa-btn-primary-ink: #f7f8fb;
}

/* —— 远山薄岚 —— */
html[data-igs-theme='dawn'] {
  --sa-bg: #e6ecf2;
  --sa-ink: #e9eef4;
  --sa-elev: #f5f8fb;
  --sa-surface: rgba(26, 40, 52, 0.04);
  --sa-surface-2: rgba(74, 111, 138, 0.08);
  --sa-line: rgba(26, 40, 52, 0.12);
  --sa-line-strong: rgba(74, 111, 138, 0.35);
  --sa-text: #1a2834;
  --sa-muted: rgba(26, 40, 52, 0.58);
  --sa-gold: #4a6f8a;
  --sa-rose: #7a8f6a;
  --sa-ok: #3a7a68;
  --sa-warn: #8a6540;
  --sa-danger: #b04848;
  --sa-shadow: 0 18px 40px rgba(26, 40, 52, 0.12);
  --sa-glow-a: rgba(74, 111, 138, 0.16);
  --sa-glow-b: rgba(122, 143, 106, 0.12);
  --sa-bg-top: #f2f5f8;
  --sa-bg-end: #d5dee8;
  --sa-grid-line: rgba(74, 111, 138, 0.28);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.75);
  --sa-card-bg: rgba(245, 248, 251, 0.95);
  --sa-rail-bg: rgba(252, 253, 255, 0.96);
  --sa-mark-ink: #f5f8fb;
  --sa-btn-primary-ink: #f5f8fb;
}

/* —— 霁雪初晴 —— */
html[data-igs-theme='snow'] {
  --sa-bg: #eef4f8;
  --sa-ink: #f6faff;
  --sa-elev: #fcfeff;
  --sa-surface: rgba(26, 48, 64, 0.04);
  --sa-surface-2: rgba(56, 136, 168, 0.08);
  --sa-line: rgba(26, 48, 64, 0.12);
  --sa-line-strong: rgba(56, 136, 168, 0.35);
  --sa-text: #1a3040;
  --sa-muted: rgba(26, 48, 64, 0.58);
  --sa-gold: #3888a8;
  --sa-rose: #5088a8;
  --sa-ok: #2f7a68;
  --sa-warn: #a86840;
  --sa-danger: #b04848;
  --sa-shadow: 0 18px 40px rgba(26, 48, 64, 0.1);
  --sa-glow-a: rgba(56, 136, 168, 0.16);
  --sa-glow-b: rgba(80, 136, 168, 0.1);
  --sa-bg-top: #f8fbfe;
  --sa-bg-end: #dce8f0;
  --sa-grid-line: rgba(56, 136, 168, 0.28);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.8);
  --sa-card-bg: rgba(252, 254, 255, 0.96);
  --sa-rail-bg: rgba(255, 255, 255, 0.96);
  --sa-mark-ink: #fcfeff;
  --sa-btn-primary-ink: #fcfeff;
}

/* —— 樱昼清露 —— */
html[data-igs-theme='sakura'] {
  --sa-bg: #f8eef2;
  --sa-ink: #fff8fa;
  --sa-elev: #fffbfd;
  --sa-surface: rgba(64, 32, 40, 0.04);
  --sa-surface-2: rgba(232, 120, 152, 0.1);
  --sa-line: rgba(64, 32, 40, 0.12);
  --sa-line-strong: rgba(232, 120, 152, 0.35);
  --sa-text: #3a2030;
  --sa-muted: rgba(58, 32, 48, 0.58);
  --sa-gold: #e87898;
  --sa-rose: #c87888;
  --sa-ok: #4a8a68;
  --sa-warn: #c87840;
  --sa-danger: #c04858;
  --sa-shadow: 0 18px 40px rgba(58, 32, 48, 0.1);
  --sa-glow-a: rgba(232, 120, 152, 0.18);
  --sa-glow-b: rgba(200, 120, 136, 0.12);
  --sa-bg-top: #fff8fb;
  --sa-bg-end: #f0dce4;
  --sa-grid-line: rgba(232, 120, 152, 0.3);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.8);
  --sa-card-bg: rgba(255, 251, 253, 0.96);
  --sa-rail-bg: rgba(255, 255, 255, 0.96);
  --sa-mark-ink: #fffbfd;
  --sa-btn-primary-ink: #fffbfd;
}

/* —— 杏霞晴空 —— */
html[data-igs-theme='apricot'] {
  --sa-bg: #f8eee4;
  --sa-ink: #fffaf4;
  --sa-elev: #fffdf9;
  --sa-surface: rgba(64, 36, 20, 0.04);
  --sa-surface-2: rgba(232, 120, 80, 0.1);
  --sa-line: rgba(64, 36, 20, 0.12);
  --sa-line-strong: rgba(232, 120, 80, 0.35);
  --sa-text: #3a2418;
  --sa-muted: rgba(58, 36, 24, 0.58);
  --sa-gold: #e87850;
  --sa-rose: #c87840;
  --sa-ok: #4a8a58;
  --sa-warn: #c87840;
  --sa-danger: #c04840;
  --sa-shadow: 0 18px 40px rgba(58, 36, 24, 0.1);
  --sa-glow-a: rgba(232, 120, 80, 0.18);
  --sa-glow-b: rgba(200, 120, 64, 0.12);
  --sa-bg-top: #fff8f2;
  --sa-bg-end: #f0e0d0;
  --sa-grid-line: rgba(232, 120, 80, 0.28);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.8);
  --sa-card-bg: rgba(255, 253, 249, 0.96);
  --sa-rail-bg: rgba(255, 255, 255, 0.96);
  --sa-mark-ink: #fffdf9;
  --sa-btn-primary-ink: #fffdf9;
}

/* —— 荷风晓色 —— */
html[data-igs-theme='lotus'] {
  --sa-bg: #eef6f0;
  --sa-ink: #f8fffa;
  --sa-elev: #fbfffc;
  --sa-surface: rgba(24, 48, 40, 0.04);
  --sa-surface-2: rgba(104, 184, 160, 0.1);
  --sa-line: rgba(24, 48, 40, 0.12);
  --sa-line-strong: rgba(104, 184, 160, 0.35);
  --sa-text: #183028;
  --sa-muted: rgba(24, 48, 40, 0.58);
  --sa-gold: #68b8a0;
  --sa-rose: #e87898;
  --sa-ok: #3a8a68;
  --sa-warn: #c87850;
  --sa-danger: #c04858;
  --sa-shadow: 0 18px 40px rgba(24, 48, 40, 0.1);
  --sa-glow-a: rgba(104, 184, 160, 0.18);
  --sa-glow-b: rgba(232, 120, 152, 0.12);
  --sa-bg-top: #f6fffa;
  --sa-bg-end: #dceee4;
  --sa-grid-line: rgba(104, 184, 160, 0.28);
  --sa-grid-opacity: 0.05;
  --sa-field-bg: rgba(255, 255, 255, 0.8);
  --sa-card-bg: rgba(251, 255, 252, 0.96);
  --sa-rail-bg: rgba(255, 255, 255, 0.96);
  --sa-mark-ink: #fbfffc;
  --sa-btn-primary-ink: #fbfffc;
}

/* —— 夜藤墨色 —— */
html[data-igs-theme='ink'] {
  --sa-bg: #0f1311;
  --sa-ink: #141916;
  --sa-elev: #1e2622;
  --sa-surface: rgba(231, 226, 214, 0.04);
  --sa-surface-2: rgba(92, 188, 154, 0.1);
  --sa-line: rgba(231, 226, 214, 0.12);
  --sa-line-strong: rgba(92, 188, 154, 0.35);
  --sa-text: #e7e2d6;
  --sa-muted: rgba(154, 165, 156, 0.85);
  --sa-gold: #5cbc9a;
  --sa-rose: #e09a62;
  --sa-ok: #6dbe8e;
  --sa-warn: #d4925a;
  --sa-danger: #e07070;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.45);
  --sa-glow-a: rgba(92, 188, 154, 0.16);
  --sa-glow-b: rgba(224, 154, 98, 0.1);
  --sa-bg-top: #1a2420;
  --sa-bg-end: #0c100e;
  --sa-field-bg: rgba(0, 0, 0, 0.32);
  --sa-card-bg: rgba(30, 38, 34, 0.94);
  --sa-rail-bg: rgba(22, 28, 26, 0.96);
  --sa-mark-ink: #0e1412;
  --sa-btn-primary-ink: #0e1412;
}

/* —— 夏夜萤火 —— */
html[data-igs-theme='firefly'] {
  --sa-bg: #0c1018;
  --sa-ink: #10141c;
  --sa-elev: #1a2030;
  --sa-surface: rgba(228, 232, 239, 0.04);
  --sa-surface-2: rgba(110, 168, 201, 0.1);
  --sa-line: rgba(228, 232, 239, 0.12);
  --sa-line-strong: rgba(110, 168, 201, 0.35);
  --sa-text: #e4e8ef;
  --sa-muted: rgba(154, 166, 184, 0.85);
  --sa-gold: #6ea8c9;
  --sa-rose: #e0b35a;
  --sa-ok: #6db89a;
  --sa-warn: #d4a05a;
  --sa-danger: #e07070;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.45);
  --sa-glow-a: rgba(110, 168, 201, 0.16);
  --sa-glow-b: rgba(224, 179, 90, 0.12);
  --sa-bg-top: #161c28;
  --sa-bg-end: #080c14;
  --sa-field-bg: rgba(0, 0, 0, 0.32);
  --sa-card-bg: rgba(26, 32, 48, 0.94);
  --sa-rail-bg: rgba(18, 24, 36, 0.96);
  --sa-mark-ink: #0c1018;
  --sa-btn-primary-ink: #0c1018;
}

/* —— 丝绒玫瑰 —— */
html[data-igs-theme='velvet'] {
  --sa-bg: #0e060a;
  --sa-ink: #14080e;
  --sa-elev: #1a0a12;
  --sa-surface: rgba(242, 221, 184, 0.04);
  --sa-surface-2: rgba(196, 74, 106, 0.12);
  --sa-line: rgba(242, 221, 184, 0.12);
  --sa-line-strong: rgba(196, 74, 106, 0.4);
  --sa-text: #f2ddb8;
  --sa-muted: rgba(242, 221, 184, 0.58);
  --sa-gold: #f2ddb8;
  --sa-rose: #c44a6a;
  --sa-ok: #7bc9a0;
  --sa-warn: #e8a05a;
  --sa-danger: #e07080;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
  --sa-glow-a: rgba(196, 74, 106, 0.2);
  --sa-glow-b: rgba(242, 221, 184, 0.1);
  --sa-bg-top: #1a0c12;
  --sa-bg-end: #080406;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(26, 10, 18, 0.94);
  --sa-rail-bg: rgba(18, 8, 14, 0.96);
  --sa-mark-ink: #1a0a12;
  --sa-btn-primary-ink: #1a0a12;
}

/* —— 碧玉镜湖 —— */
html[data-igs-theme='jade'] {
  --sa-bg: #041012;
  --sa-ink: #061418;
  --sa-elev: #0a1e22;
  --sa-surface: rgba(212, 232, 200, 0.04);
  --sa-surface-2: rgba(58, 154, 136, 0.12);
  --sa-line: rgba(212, 232, 200, 0.12);
  --sa-line-strong: rgba(58, 154, 136, 0.4);
  --sa-text: #d4e8c8;
  --sa-muted: rgba(212, 232, 200, 0.58);
  --sa-gold: #3a9a88;
  --sa-rose: #d4e8c8;
  --sa-ok: #6dbe8e;
  --sa-warn: #d4a05a;
  --sa-danger: #e07070;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.45);
  --sa-glow-a: rgba(58, 154, 136, 0.18);
  --sa-glow-b: rgba(212, 232, 200, 0.08);
  --sa-bg-top: #0a1c1c;
  --sa-bg-end: #020a0c;
  --sa-field-bg: rgba(0, 0, 0, 0.32);
  --sa-card-bg: rgba(10, 30, 34, 0.94);
  --sa-rail-bg: rgba(6, 20, 24, 0.96);
  --sa-mark-ink: #061418;
  --sa-btn-primary-ink: #061418;
}

/* —— 星河夜宴 —— */
html[data-igs-theme='starry'] {
  --sa-bg: #080612;
  --sa-ink: #0a0818;
  --sa-elev: #12102a;
  --sa-surface: rgba(200, 212, 240, 0.04);
  --sa-surface-2: rgba(139, 124, 240, 0.12);
  --sa-line: rgba(200, 212, 240, 0.12);
  --sa-line-strong: rgba(139, 124, 240, 0.4);
  --sa-text: #c8d4f0;
  --sa-muted: rgba(200, 212, 240, 0.58);
  --sa-gold: #8b7cf0;
  --sa-rose: #c8d4f0;
  --sa-ok: #6db89a;
  --sa-warn: #e0b35a;
  --sa-danger: #e07090;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
  --sa-glow-a: rgba(139, 124, 240, 0.2);
  --sa-glow-b: rgba(200, 212, 240, 0.1);
  --sa-bg-top: #12102a;
  --sa-bg-end: #060410;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(18, 16, 42, 0.94);
  --sa-rail-bg: rgba(10, 8, 24, 0.96);
  --sa-mark-ink: #0a0818;
  --sa-btn-primary-ink: #0a0818;
}

/* —— 宫灯绛焰 —— */
html[data-igs-theme='lantern'] {
  --sa-bg: #0a0303;
  --sa-ink: #100505;
  --sa-elev: #1a0a0a;
  --sa-surface: rgba(232, 200, 120, 0.04);
  --sa-surface-2: rgba(216, 72, 72, 0.12);
  --sa-line: rgba(232, 200, 120, 0.12);
  --sa-line-strong: rgba(216, 72, 72, 0.4);
  --sa-text: #f0e0c8;
  --sa-muted: rgba(232, 200, 120, 0.58);
  --sa-gold: #e8c878;
  --sa-rose: #d84848;
  --sa-ok: #7bc9a0;
  --sa-warn: #e8a05a;
  --sa-danger: #e06060;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
  --sa-glow-a: rgba(216, 72, 72, 0.2);
  --sa-glow-b: rgba(232, 200, 120, 0.12);
  --sa-bg-top: #1a0808;
  --sa-bg-end: #060202;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(26, 10, 10, 0.94);
  --sa-rail-bg: rgba(16, 5, 5, 0.96);
  --sa-mark-ink: #100505;
  --sa-btn-primary-ink: #100505;
}

/* —— 桃夭春色 —— */
html[data-igs-theme='peach'] {
  --sa-bg: #120c10;
  --sa-ink: #1a1014;
  --sa-elev: #221820;
  --sa-surface: rgba(255, 232, 224, 0.04);
  --sa-surface-2: rgba(240, 160, 176, 0.12);
  --sa-line: rgba(255, 232, 224, 0.12);
  --sa-line-strong: rgba(240, 160, 176, 0.4);
  --sa-text: #ffe8e0;
  --sa-muted: rgba(255, 232, 224, 0.58);
  --sa-gold: #f0a0b0;
  --sa-rose: #ffe8e0;
  --sa-ok: #7bc9a0;
  --sa-warn: #e8a05a;
  --sa-danger: #e07080;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.45);
  --sa-glow-a: rgba(240, 160, 176, 0.18);
  --sa-glow-b: rgba(255, 232, 224, 0.08);
  --sa-bg-top: #1e1418;
  --sa-bg-end: #0c080a;
  --sa-field-bg: rgba(0, 0, 0, 0.32);
  --sa-card-bg: rgba(34, 24, 32, 0.94);
  --sa-rail-bg: rgba(20, 14, 18, 0.96);
  --sa-mark-ink: #1a1014;
  --sa-btn-primary-ink: #1a1014;
}

/* —— 琥珀凝光 —— */
html[data-igs-theme='amber'] {
  --sa-bg: #080604;
  --sa-ink: #0c0804;
  --sa-elev: #161208;
  --sa-surface: rgba(240, 200, 112, 0.04);
  --sa-surface-2: rgba(224, 144, 64, 0.12);
  --sa-line: rgba(240, 200, 112, 0.12);
  --sa-line-strong: rgba(224, 144, 64, 0.4);
  --sa-text: #f0e0c0;
  --sa-muted: rgba(240, 200, 112, 0.58);
  --sa-gold: #e09040;
  --sa-rose: #f0c870;
  --sa-ok: #7bc9a0;
  --sa-warn: #e8a05a;
  --sa-danger: #e07070;
  --sa-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
  --sa-glow-a: rgba(224, 144, 64, 0.2);
  --sa-glow-b: rgba(240, 200, 112, 0.1);
  --sa-bg-top: #181208;
  --sa-bg-end: #060402;
  --sa-field-bg: rgba(0, 0, 0, 0.35);
  --sa-card-bg: rgba(22, 18, 8, 0.94);
  --sa-rail-bg: rgba(12, 8, 4, 0.96);
  --sa-mark-ink: #0c0804;
  --sa-btn-primary-ink: #0c0804;
}

/* —— 壳层氛围（随主题） —— */
.sa-shell {
  background:
    radial-gradient(ellipse 80% 50% at 10% -5%, var(--sa-glow-a), transparent 50%),
    radial-gradient(ellipse 60% 40% at 95% 100%, var(--sa-glow-b), transparent 45%),
    linear-gradient(180deg, var(--sa-bg-top) 0%, var(--sa-bg) 40%, var(--sa-bg-end) 100%);
  transition: var(--sa-theme-transit);
}

.sa-shell::before {
  opacity: var(--sa-grid-opacity);
  background-image:
    linear-gradient(var(--sa-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--sa-grid-line) 1px, transparent 1px);
}

.sa-login__gate {
  background:
    linear-gradient(165deg, var(--sa-surface-2), transparent 48%),
    color-mix(in srgb, var(--sa-card-bg) 92%, transparent);
}

.sa-login__mark,
.sa-btn--primary {
  color: var(--sa-mark-ink);
}

.sa-login__field input,
.sa-login__row input,
.sa-form input,
.sa-form select,
.sa-form textarea,
.sa-toolbar input,
.sa-toolbar select {
  background: var(--sa-field-bg);
}

.sa-rail {
  background: var(--sa-rail-bg);
}

.sa-card,
.sa-drawer,
.sa-modal__panel {
  background: var(--sa-card-bg);
}

html:not(.sa-theme-dark) .sa-btn--primary {
  color: var(--sa-btn-primary-ink);
}

html:not(.sa-theme-dark) .sa-login__mark {
  color: var(--sa-mark-ink);
}

/* —— 切换闪过渡 —— */
html.sa-theme-flash .sa-shell {
  animation: sa-theme-flash 0.42s ease;
}

@keyframes sa-theme-flash {
  0% {
    filter: brightness(1.12) saturate(1.08);
  }
  100% {
    filter: none;
  }
}

/* —— 主题选择器 —— */
.sa-theme-pick {
  position: relative;
}

.sa-theme-pick > summary {
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid var(--sa-line);
  background: var(--sa-surface);
  color: var(--sa-text);
  cursor: pointer;
  font-size: 0.78rem;
  user-select: none;
}

.sa-theme-pick > summary::-webkit-details-marker {
  display: none;
}

.sa-theme-pick > summary:hover {
  border-color: var(--sa-line-strong);
  background: var(--sa-surface-2);
}

.sa-theme-pick__dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--sa-gold), var(--sa-rose));
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--sa-gold) 25%, transparent);
}

.sa-theme-pick__panel {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 40;
  width: min(420px, calc(100vw - 48px));
  max-height: min(68vh, 520px);
  overflow: auto;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid var(--sa-line);
  background: var(--sa-card-bg);
  box-shadow: var(--sa-shadow);
  backdrop-filter: blur(12px);
}

.sa-theme-pick__hd {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
}

.sa-theme-pick__hd strong {
  font-size: 0.85rem;
}

.sa-theme-pick__hd span {
  font-size: 0.72rem;
  color: var(--sa-muted);
}

.sa-theme-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 10px;
}

.sa-theme-filter {
  border: 1px solid var(--sa-line);
  background: transparent;
  color: var(--sa-muted);
  border-radius: 999px;
  padding: 4px 10px;
  font: inherit;
  font-size: 0.72rem;
  cursor: pointer;
}

.sa-theme-filter.is-on {
  color: var(--sa-text);
  border-color: var(--sa-line-strong);
  background: var(--sa-surface-2);
}

.sa-theme-group {
  margin: 8px 0 6px;
  font-size: 0.72rem;
  color: var(--sa-muted);
}

.sa-theme-grid__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.sa-theme-card {
  position: relative;
  display: grid;
  gap: 4px;
  text-align: left;
  padding: 10px;
  border-radius: 12px;
  border: 1px solid var(--sa-line);
  background: var(--sa-surface);
  color: var(--sa-text);
  cursor: pointer;
  font: inherit;
}

.sa-theme-card:hover {
  border-color: var(--sa-line-strong);
}

.sa-theme-card.is-on {
  border-color: var(--sa-line-strong);
  box-shadow: 0 0 0 1px var(--sa-gold);
}

.sa-theme-card__badge {
  position: absolute;
  top: 6px;
  right: 8px;
  font-style: normal;
  font-size: 0.65rem;
  color: var(--sa-rose);
}

.sa-theme-card__swatch {
  display: flex;
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 2px;
}

.sa-theme-card__swatch i {
  flex: 1;
}

.sa-theme-card b {
  font-size: 0.78rem;
}

.sa-theme-card small {
  color: var(--sa-muted);
  font-size: 0.68rem;
  line-height: 1.35;
}

.sa-theme-pick__foot {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.sa-theme-pick__foot .sa-hint {
  margin: 0;
  flex: 1;
  min-width: 140px;
}

@media (max-width: 720px) {
  .sa-theme-pick__panel {
    right: auto;
    left: 0;
  }
  .sa-theme-grid__row {
    grid-template-columns: 1fr;
  }
}
