/* =============================================================
   SQB PULSE —— 主题包
   -------------------------------------------------------------
   载入顺序：pulse.css（结构与排版） → theme.css（本文件，只覆盖颜色变量）
   生效方式：<html data-theme="国庆主题id">，由后台「主题皮肤」页写入 settings.site_theme
   新增主题：① 这里加一段 [data-theme="id"] ② app/Models/Theme.php 注册元数据
   ============================================================= */

/* 视觉层总序（整改 #14：把整套皮肤的「单一事实源 / 加载顺序」写在这里，避免再陷入特异性战争）：
   1) pulse.css       结构与排版 + 全部语义变量（:root 里定义，唯一事实源）
   2) theme.css       本文件，只覆盖颜色类语义变量（[data-theme="id"]），不写 !important
   3) fx.css          视觉增强层（开关 site_fx），纯动效/光效类，不碰语义变量
   4) ui-flat.css     扁平化覆盖层（开关 ui_flat），仅改圆角/阴影/按钮观感
   5) partnership.css 渠道合作页专属，⚠️ 必须排在所有通用层之后（同特异性靠顺序定胜负）
   规则：任何「颜色/字号」一律走 pulse.css 的语义变量，主题只在 (2) 覆盖变量；
        严禁在 (3)(4)(5) 用整文件 !important 覆盖变量 —— 真要覆盖就改 (2) 的变量值。 */

/* 顶栏一级菜单墨色：pulse.css 默认给「源站深藏青 #002742」，但页面**总是**带
   data-theme 属性（默认 dawn），所以不能写成 `[data-theme]{...}` —— 那会把默认主题
   的深藏青也一起覆盖回 --ink，等于白改。只有「换过主题」时才需要跟着主文字色走，
   否则国庆红/端午绿主题的顶栏会留在一块死板的深藏青上，与整站配色打架。
   放在所有主题段之前：与各 [data-theme="id"] 同特异性，靠载入顺序取胜。 */
html:not([data-theme="dawn"]){ --nav-ink:var(--ink); }

/* -------------------------------------------------------------
   1) dawn —— 晨曦白（默认基线，变量在 pulse.css 里定义，此处仅兜底）
   ------------------------------------------------------------- */
[data-theme="dawn"]{
  --ribbon:linear-gradient(90deg,var(--brand),var(--brand-2) 45%,var(--brand-3) 75%,#e0509a);
}

/* -------------------------------------------------------------
   2) national —— 国庆节 · 国旗红 + 五星金
   ------------------------------------------------------------- */
[data-theme="national"]{
  --bg:#fff6f4; --bg-2:#ffe9e4; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.82); --surface-2:rgba(255,255,255,.95);
  --surface-3:rgba(178,20,31,.05);
  --line:rgba(178,20,31,.14); --line-2:rgba(178,20,31,.26); --line-3:rgba(178,20,31,.38);
  --ink:#3d0a0e; --ink-2:#6a2027; --muted:#96606a; --dim:#b98e95;
  --brand:#d7212d; --brand-2:#e8452c; --brand-3:#a8101d;
  --accent:#b8860b; --accent-2:#2e8b57; --gold:#b8860b;
  --grad:linear-gradient(100deg,#c8102e 0%,#e0392b 42%,#f0a41c 78%,#ffd24a 100%);
  --grad-soft:linear-gradient(100deg,rgba(200,16,46,.12),rgba(240,164,28,.12));
  --shadow-card:0 22px 50px -30px rgba(160,20,30,.32);
  --shadow-soft:0 10px 30px -18px rgba(160,20,30,.28);
  --shadow-drop:0 40px 80px -40px rgba(160,20,30,.34);
  --ribbon:linear-gradient(90deg,#c8102e 0 62%,#ffd24a 62% 100%);
}

/* -------------------------------------------------------------
   3) party —— 建党节 · 党旗红金
   ------------------------------------------------------------- */
[data-theme="party"]{
  --bg:#fff8f3; --bg-2:#ffeadb; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(176,20,28,.05);
  --line:rgba(176,20,28,.14); --line-2:rgba(176,20,28,.26); --line-3:rgba(176,20,28,.38);
  --ink:#3a0b0c; --ink-2:#6d2220; --muted:#9c6357; --dim:#c1958a;
  --brand:#c0141c; --brand-2:#8f1016; --brand-3:#d4af37;
  --accent:#a8842a; --accent-2:#7a5c12; --gold:#c8a02c;
  --grad:linear-gradient(100deg,#b4141c 0%,#cf2a22 46%,#d4af37 100%);
  --grad-soft:linear-gradient(100deg,rgba(180,20,28,.12),rgba(212,175,55,.14));
  --shadow-card:0 22px 50px -30px rgba(150,25,20,.32);
  --shadow-soft:0 10px 30px -18px rgba(150,25,20,.26);
  --shadow-drop:0 40px 80px -40px rgba(150,25,20,.32);
  --ribbon:linear-gradient(90deg,#b4141c 0 70%,#d4af37 70% 100%);
}

/* -------------------------------------------------------------
   4) army —— 建军节 · 军旗红 + 橄榄绿 + 八一金
   ------------------------------------------------------------- */
[data-theme="army"]{
  --bg:#f7f8f2; --bg-2:#edf0e2; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(75,107,58,.06);
  --line:rgba(64,92,50,.16); --line-2:rgba(64,92,50,.28); --line-3:rgba(64,92,50,.40);
  --ink:#1f2a1a; --ink-2:#3f5136; --muted:#6b7a5e; --dim:#9aa891;
  --brand:#b4141e; --brand-2:#8c5a12; --brand-3:#4b6b3a;
  --accent:#4b6b3a; --accent-2:#d9a520; --gold:#c8901a;
  --grad:linear-gradient(100deg,#a8121c 0%,#c2452a 40%,#d9a520 74%,#7f9a4a 100%);
  --grad-soft:linear-gradient(100deg,rgba(168,18,28,.12),rgba(75,107,58,.14));
  --shadow-card:0 22px 50px -30px rgba(40,60,30,.32);
  --shadow-soft:0 10px 30px -18px rgba(40,60,30,.26);
  --shadow-drop:0 40px 80px -40px rgba(40,60,30,.32);
  --ribbon:linear-gradient(90deg,#a8121c 0 40%,#d9a520 40% 66%,#4b6b3a 66% 100%);
}

/* -------------------------------------------------------------
   5) mourning —— 悼念日 · 素白肃穆（全站去色）
   ------------------------------------------------------------- */
[data-theme="mourning"]{
  --bg:#f3f4f5; --bg-2:#e8e9eb; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(20,22,26,.05);
  --line:rgba(20,22,26,.14); --line-2:rgba(20,22,26,.26); --line-3:rgba(20,22,26,.38);
  --ink:#15171b; --ink-2:#3d4148; --muted:#6b7079; --dim:#9aa0a8;
  --brand:#4a4f57; --brand-2:#6b7079; --brand-3:#2c3037;
  --accent:#5a6068; --accent-2:#4a4f57; --gold:#6b7079;
  --grad:linear-gradient(100deg,#2c3037 0%,#4a4f57 52%,#7c828b 100%);
  --grad-soft:linear-gradient(100deg,rgba(44,48,55,.10),rgba(107,112,121,.10));
  --nav-bg:rgba(255,255,255,.88);
  --shadow-card:0 22px 50px -32px rgba(20,22,26,.30);
  --shadow-soft:0 10px 30px -18px rgba(20,22,26,.26);
  --shadow-drop:0 40px 80px -44px rgba(20,22,26,.32);
  --ribbon:linear-gradient(90deg,#2c3037,#6b7079,#2c3037);
}
/* 去色：只作用于图片与视频，避免整页 filter 破坏固定定位与吸顶 */
html[data-theme="mourning"] img,
html[data-theme="mourning"] video{filter:grayscale(1) contrast(.96)}
html[data-theme="mourning"] .cosmos__aurora,
html[data-theme="mourning"] .pointer-glow,
html[data-theme="mourning"] .scanline,
html[data-theme="mourning"] .vstage__scan{display:none}
html[data-theme="mourning"] .hero__ring,
html[data-theme="mourning"] .portal__ring{border-color:rgba(20,22,26,.14)}

/* -------------------------------------------------------------
   6) teacher —— 教师节 · 桃李春晖（暖橙 + 常青绿）
   ------------------------------------------------------------- */
[data-theme="teacher"]{
  --bg:#fffaf3; --bg-2:#fdf0e0; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(176,102,40,.06);
  --line:rgba(150,92,36,.16); --line-2:rgba(150,92,36,.28); --line-3:rgba(150,92,36,.40);
  --ink:#3a2413; --ink-2:#6b4a2c; --muted:#8f7358; --dim:#bda189;
  --brand:#d9702a; --brand-2:#e59a3c; --brand-3:#2f8f5b;
  --accent:#2f8f5b; --accent-2:#2f8f5b; --gold:#c8901a;
  --grad:linear-gradient(100deg,#d9702a 0%,#e59a3c 46%,#f0c46a 72%,#2f8f5b 100%);
  --grad-soft:linear-gradient(100deg,rgba(217,112,42,.12),rgba(47,143,91,.10));
  --shadow-card:0 22px 50px -30px rgba(140,80,20,.30);
  --shadow-soft:0 10px 30px -18px rgba(140,80,20,.26);
  --shadow-drop:0 40px 80px -40px rgba(140,80,20,.32);
  --ribbon:linear-gradient(90deg,#d9702a,#f0c46a 50%,#2f8f5b);
}

/* -------------------------------------------------------------
   7) dragon —— 端午节 · 青艾粽叶
   ------------------------------------------------------------- */
[data-theme="dragon"]{
  --bg:#f6f7f0; --bg-2:#e9eee0; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(31,122,90,.06);
  --line:rgba(31,97,74,.16); --line-2:rgba(31,97,74,.28); --line-3:rgba(31,97,74,.40);
  --ink:#152a22; --ink-2:#2f4f43; --muted:#5f7d70; --dim:#95ada2;
  --brand:#1f7a5a; --brand-2:#3f9d5f; --brand-3:#8a6b2f;
  --accent:#8a6b2f; --accent-2:#1f7a5a; --gold:#a8842a;
  --grad:linear-gradient(100deg,#166b4e 0%,#2f9a63 44%,#7fae4a 70%,#c8a44a 100%);
  --grad-soft:linear-gradient(100deg,rgba(31,122,90,.12),rgba(200,164,74,.12));
  --shadow-card:0 22px 50px -30px rgba(24,80,60,.30);
  --shadow-soft:0 10px 30px -18px rgba(24,80,60,.26);
  --shadow-drop:0 40px 80px -40px rgba(24,80,60,.32);
  --ribbon:linear-gradient(90deg,#166b4e,#3f9d5f 55%,#c8a44a);
}

/* -------------------------------------------------------------
   8) midautumn —— 中秋节 · 月白金桂 + 夜蓝
   ------------------------------------------------------------- */
[data-theme="midautumn"]{
  --bg:#f8f7f2; --bg-2:#eef0f6; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(31,58,110,.06);
  --line:rgba(31,58,110,.14); --line-2:rgba(31,58,110,.26); --line-3:rgba(31,58,110,.38);
  --ink:#131f38; --ink-2:#33456b; --muted:#5f6f92; --dim:#98a4be;
  --brand:#1f3a6e; --brand-2:#3a5aa0; --brand-3:#c99a12;
  --accent:#c99a12; --accent-2:#1f3a6e; --gold:#c99a12;
  --grad:linear-gradient(100deg,#1f3a6e 0%,#4a63a8 42%,#c99a12 78%,#f0cf6a 100%);
  --grad-soft:linear-gradient(100deg,rgba(31,58,110,.12),rgba(201,154,18,.14));
  --shadow-card:0 22px 50px -30px rgba(24,42,80,.30);
  --shadow-soft:0 10px 30px -18px rgba(24,42,80,.26);
  --shadow-drop:0 40px 80px -40px rgba(24,42,80,.34);
  --ribbon:linear-gradient(90deg,#1f3a6e,#4a63a8 45%,#c99a12);
}

/* -------------------------------------------------------------
   9) spring —— 春节 · 中国红 + 明黄
   ------------------------------------------------------------- */
[data-theme="spring"]{
  --bg:#fff5f2; --bg-2:#ffe6df; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(196,18,34,.05);
  --line:rgba(196,18,34,.14); --line-2:rgba(196,18,34,.26); --line-3:rgba(196,18,34,.38);
  --ink:#3d0a0c; --ink-2:#6d2421; --muted:#9a6558; --dim:#c2978c;
  --brand:#c8102e; --brand-2:#e6392c; --brand-3:#e8b62c;
  --accent:#c8901a; --accent-2:#c8102e; --gold:#e8b62c;
  --grad:linear-gradient(100deg,#c8102e 0%,#e0392b 40%,#f0a41c 74%,#ffdd66 100%);
  --grad-soft:linear-gradient(100deg,rgba(200,16,46,.12),rgba(232,182,44,.14));
  --shadow-card:0 22px 50px -30px rgba(160,20,26,.32);
  --shadow-soft:0 10px 30px -18px rgba(160,20,26,.28);
  --shadow-drop:0 40px 80px -40px rgba(160,20,26,.34);
  --ribbon:linear-gradient(90deg,#c8102e 0 55%,#e8b62c 55% 100%);
}

/* -------------------------------------------------------------
   10) lantern —— 元宵节 · 灯火团圆
   ------------------------------------------------------------- */
[data-theme="lantern"]{
  --bg:#fff8f2; --bg-2:#ffead9; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(199,44,44,.05);
  --line:rgba(199,44,44,.14); --line-2:rgba(199,44,44,.26); --line-3:rgba(199,44,44,.38);
  --ink:#3a1210; --ink-2:#6b2c24; --muted:#9a6a58; --dim:#c29b8c;
  --brand:#d3232a; --brand-2:#e8762c; --brand-3:#f0b23c;
  --accent:#e8762c; --accent-2:#d3232a; --gold:#e0a72c;
  --grad:linear-gradient(100deg,#d3232a 0%,#e8592c 46%,#f0a83c 78%,#ffd98a 100%);
  --grad-soft:linear-gradient(100deg,rgba(211,35,42,.12),rgba(240,168,60,.14));
  --shadow-card:0 22px 50px -30px rgba(170,50,30,.30);
  --shadow-soft:0 10px 30px -18px rgba(170,50,30,.26);
  --shadow-drop:0 40px 80px -40px rgba(170,50,30,.32);
  --ribbon:linear-gradient(90deg,#d3232a,#f0a83c,#d3232a);
}

/* -------------------------------------------------------------
   11) qingming —— 清明节 · 烟雨青
   ------------------------------------------------------------- */
[data-theme="qingming"]{
  --bg:#f3f8f7; --bg-2:#e5efee; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(42,92,84,.06);
  --line:rgba(42,92,84,.14); --line-2:rgba(42,92,84,.26); --line-3:rgba(42,92,84,.38);
  --ink:#152622; --ink-2:#2f4c46; --muted:#5f7d76; --dim:#95ada8;
  --brand:#3d7c6f; --brand-2:#5a9c8c; --brand-3:#8fa9a0;
  --accent:#3d7c6f; --accent-2:#5a9c8c; --gold:#8a9a6a;
  --grad:linear-gradient(100deg,#356f63 0%,#5a9c8c 52%,#9ab4a8 100%);
  --grad-soft:linear-gradient(100deg,rgba(53,111,99,.12),rgba(154,180,168,.14));
  --shadow-card:0 22px 50px -30px rgba(30,70,62,.28);
  --shadow-soft:0 10px 30px -18px rgba(30,70,62,.24);
  --shadow-drop:0 40px 80px -40px rgba(30,70,62,.30);
  --ribbon:linear-gradient(90deg,#356f63,#9ab4a8);
}

/* -------------------------------------------------------------
   12) labor —— 劳动节 · 奋斗红 + 藏青
   ------------------------------------------------------------- */
[data-theme="labor"]{
  --bg:#f6f7fb; --bg-2:#e9ecf6; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.84); --surface-2:rgba(255,255,255,.96);
  --surface-3:rgba(28,42,80,.05);
  --line:rgba(28,42,80,.14); --line-2:rgba(28,42,80,.26); --line-3:rgba(28,42,80,.38);
  --ink:#141c30; --ink-2:#33415f; --muted:#5f6c88; --dim:#98a2b8;
  --brand:#c22b2b; --brand-2:#1c2a50; --brand-3:#e0602c;
  --accent:#1c2a50; --accent-2:#c22b2b; --gold:#c8901a;
  --grad:linear-gradient(100deg,#c22b2b 0%,#d9532c 46%,#2b3a66 100%);
  --grad-soft:linear-gradient(100deg,rgba(194,43,43,.12),rgba(28,42,80,.12));
  --shadow-card:0 22px 50px -30px rgba(24,34,70,.30);
  --shadow-soft:0 10px 30px -18px rgba(24,34,70,.26);
  --shadow-drop:0 40px 80px -40px rgba(24,34,70,.32);
  --ribbon:linear-gradient(90deg,#c22b2b,#2b3a66);
}

/* -------------------------------------------------------------
   13) children —— 儿童节 · 烂漫彩
   ------------------------------------------------------------- */
[data-theme="children"]{
  --bg:#fffdf6; --bg-2:#fff4e0; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(255,107,61,.06);
  --line:rgba(58,90,140,.14); --line-2:rgba(58,90,140,.24); --line-3:rgba(58,90,140,.36);
  --ink:#20293f; --ink-2:#41506e; --muted:#6d7c98; --dim:#a3afc4;
  --brand:#ff6b3d; --brand-2:#21a1e0; --brand-3:#ffb020;
  --accent:#21a1e0; --accent-2:#28c07a; --gold:#ffb020;
  --grad:linear-gradient(100deg,#ff6b3d 0%,#ffb020 34%,#28c07a 64%,#21a1e0 100%);
  --grad-soft:linear-gradient(100deg,rgba(255,107,61,.14),rgba(33,161,224,.12));
  --shadow-card:0 22px 50px -30px rgba(60,90,140,.26);
  --shadow-soft:0 10px 30px -18px rgba(60,90,140,.22);
  --shadow-drop:0 40px 80px -40px rgba(60,90,140,.28);
  --ribbon:linear-gradient(90deg,#ff6b3d,#ffb020 30%,#28c07a 62%,#21a1e0);
}

/* -------------------------------------------------------------
   14) qixi —— 七夕 · 星河粉
   ------------------------------------------------------------- */
[data-theme="qixi"]{
  --bg:#fff6fa; --bg-2:#ffe8f2; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(150,60,140,.06);
  --line:rgba(150,60,140,.15); --line-2:rgba(150,60,140,.26); --line-3:rgba(150,60,140,.38);
  --ink:#33122e; --ink-2:#5e2b52; --muted:#8c5f80; --dim:#bd9bb2;
  --brand:#d6457f; --brand-2:#8a5cf6; --brand-3:#f0a0c0;
  --accent:#8a5cf6; --accent-2:#d6457f; --gold:#e0a0b8;
  --grad:linear-gradient(100deg,#d6457f 0%,#b055d6 46%,#8a5cf6 78%,#6fc0f0 100%);
  --grad-soft:linear-gradient(100deg,rgba(214,69,127,.12),rgba(138,92,246,.12));
  --shadow-card:0 22px 50px -30px rgba(120,40,110,.28);
  --shadow-soft:0 10px 30px -18px rgba(120,40,110,.24);
  --shadow-drop:0 40px 80px -40px rgba(120,40,110,.30);
  --ribbon:linear-gradient(90deg,#d6457f,#8a5cf6);
}

/* -------------------------------------------------------------
   15) chongyang —— 重阳节 · 茱萸金 + 秋叶橙
   ------------------------------------------------------------- */
[data-theme="chongyang"]{
  --bg:#fdf9f1; --bg-2:#f7ecd8; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(150,100,20,.06);
  --line:rgba(150,100,20,.16); --line-2:rgba(150,100,20,.28); --line-3:rgba(150,100,20,.40);
  --ink:#33260f; --ink-2:#5e4a24; --muted:#8c7550; --dim:#bfa987;
  --brand:#c47a1a; --brand-2:#a8842a; --brand-3:#7a8f3a;
  --accent:#7a8f3a; --accent-2:#c47a1a; --gold:#c8901a;
  --grad:linear-gradient(100deg,#c47a1a 0%,#d9a520 44%,#a8a03a 72%,#7a8f3a 100%);
  --grad-soft:linear-gradient(100deg,rgba(196,122,26,.12),rgba(122,143,58,.12));
  --shadow-card:0 22px 50px -30px rgba(120,80,20,.28);
  --shadow-soft:0 10px 30px -18px rgba(120,80,20,.24);
  --shadow-drop:0 40px 80px -40px rgba(120,80,20,.30);
  --ribbon:linear-gradient(90deg,#c47a1a,#7a8f3a);
}

/* -------------------------------------------------------------
   16) newyear —— 元旦 · 万象更新
   ------------------------------------------------------------- */
[data-theme="newyear"]{
  --bg:#fdf6f6; --bg-2:#f6e9ee; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(60,60,140,.05);
  --line:rgba(60,60,140,.14); --line-2:rgba(60,60,140,.25); --line-3:rgba(60,60,140,.36);
  --ink:#1c2140; --ink-2:#3d4570; --muted:#6b7396; --dim:#a0a6c0;
  --brand:#d7263d; --brand-2:#8a5cf6; --brand-3:#e8b62c;
  --accent:#8a5cf6; --accent-2:#d7263d; --gold:#e8b62c;
  --grad:linear-gradient(100deg,#d7263d 0%,#a33fd6 46%,#3f6ff6 76%,#e8b62c 100%);
  --grad-soft:linear-gradient(100deg,rgba(215,38,61,.12),rgba(63,111,246,.10));
  --shadow-card:0 22px 50px -30px rgba(60,60,140,.28);
  --shadow-soft:0 10px 30px -18px rgba(60,60,140,.24);
  --shadow-drop:0 40px 80px -40px rgba(60,60,140,.30);
  --ribbon:linear-gradient(90deg,#d7263d,#a33fd6 40%,#3f6ff6 70%,#e8b62c);
}

/* -------------------------------------------------------------
   17) arbor —— 植树节 · 春林绿
   ------------------------------------------------------------- */
[data-theme="arbor"]{
  --bg:#f3fbf5; --bg-2:#e4f4e9; --bg-3:#ffffff;
  --surface:rgba(255,255,255,.86); --surface-2:rgba(255,255,255,.97);
  --surface-3:rgba(30,110,70,.06);
  --line:rgba(30,110,70,.14); --line-2:rgba(30,110,70,.26); --line-3:rgba(30,110,70,.38);
  --ink:#132a1e; --ink-2:#2f5240; --muted:#5f816f; --dim:#95b3a5;
  --brand:#2e8b57; --brand-2:#5cb85c; --brand-3:#a8c840;
  --accent:#2e8b57; --accent-2:#8ab04a; --gold:#c8901a;
  --grad:linear-gradient(100deg,#1f7a4a 0%,#43a463 46%,#8ab04a 78%,#c8d060 100%);
  --grad-soft:linear-gradient(100deg,rgba(31,122,74,.12),rgba(138,176,74,.12));
  --shadow-card:0 22px 50px -30px rgba(24,80,52,.28);
  --shadow-soft:0 10px 30px -18px rgba(24,80,52,.24);
  --shadow-drop:0 40px 80px -40px rgba(24,80,52,.30);
  --ribbon:linear-gradient(90deg,#1f7a4a,#8ab04a);
}

/* -------------------------------------------------------------
   18) deepspace —— 深空（暗色，保留给需要夜间氛围的场景）
   ------------------------------------------------------------- */
[data-theme="deepspace"]{
  --bg:#03050c; --bg-2:#060a15; --bg-3:#080d1c;
  --surface:rgba(255,255,255,.04); --surface-2:rgba(255,255,255,.07);
  --surface-3:rgba(255,255,255,.05);
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.16); --line-3:rgba(255,255,255,.35);
  --ink:#eaf0ff; --ink-2:#b9c6e6; --muted:#7d8db4; --dim:#5a6788;
  --brand:#2b8bff; --brand-2:#6f6bff; --brand-3:#a25cff;
  --accent:#4fe3ff; --accent-2:#7dffc4; --gold:#ffcc66;
  --grad:linear-gradient(100deg,#2b8bff 0%,#6f6bff 26%,#a25cff 52%,#d24fd2 74%,#ff5f9e 100%);
  --grad-soft:linear-gradient(100deg,rgba(43,139,255,.16),rgba(154,107,255,.14),rgba(224,79,176,.13));
  --nav-bg:rgba(4,7,15,.72); --sheet-bg:rgba(3,5,12,.94);
  --mega-bg:#141b2e;                  /* 深空：面板外框底（深灰蓝实底） */
  --mega-band:rgba(255,255,255,.06);  /* 深空：内容区底（比外框亮一档） */
  --mega-pill:transparent;            /* 深空：三级药丸（透明底 + 细边） */
  --mega-head-bg:rgba(255,255,255,.10);/* 深空：二级悬停药丸 / 占位瓦片底 */
  --mega-head-bg-on:rgba(120,160,255,.16);/* 深空：二级/三级悬停激活 */
  --overlay:rgba(2,4,10,.86); --media-bg:#05080f;
  --shadow-card:0 24px 70px -34px rgba(0,0,0,.9);
  --shadow-soft:0 18px 50px -30px rgba(0,0,0,.75);
  --shadow-drop:0 44px 96px -36px rgba(0,0,0,.88);
  --ribbon:linear-gradient(90deg,#2b8bff,#9a6bff,#ff5f9e);
}
html[data-theme="deepspace"] .cosmos canvas{display:block}
html[data-theme="deepspace"] .cosmos__aurora{mix-blend-mode:screen;opacity:.55}
html[data-theme="deepspace"] .cosmos__noise{mix-blend-mode:overlay;opacity:.05}
html[data-theme="deepspace"] .casecard::after{
  background:linear-gradient(180deg,rgba(4,7,15,.34),rgba(4,7,15,.80) 46%,rgba(4,7,15,.96));
}
html[data-theme="deepspace"] .casecard--plate::after{
  background:linear-gradient(180deg,rgba(4,7,15,0) 30%,rgba(4,7,15,.90) 64%,rgba(4,7,15,.98) 100%);
}
html[data-theme="deepspace"] .casecard__bg{opacity:.42}
html[data-theme="deepspace"] .casecard:hover .casecard__bg{opacity:.55}
html[data-theme="deepspace"] .casecard h3{color:var(--ink);text-shadow:0 2px 18px rgba(3,5,12,.9)}
html[data-theme="deepspace"] .casecard p{color:var(--ink-2);text-shadow:0 2px 14px rgba(3,5,12,.85)}
html[data-theme="deepspace"] .casecard__cat{color:var(--accent)}
html[data-theme="deepspace"] .casecard--plate .casecard__bg{opacity:1}
html[data-theme="deepspace"] .metric b .counter{background:linear-gradient(180deg,#ffffff,#93a9dc);-webkit-background-clip:text;background-clip:text}
html[data-theme="deepspace"] .aura__cell img{filter:grayscale(1) brightness(2.4);opacity:.7}
html[data-theme="deepspace"] .device__media{background:linear-gradient(180deg,#ffffff 0%,#f4f7fc 62%,#e8edf7 100%)}
html[data-theme="deepspace"] .vstage__frame{box-shadow:0 0 0 7px rgba(255,255,255,.05),0 48px 96px -32px rgba(43,139,255,.78),0 0 90px -30px rgba(162,92,255,.6)}
html[data-theme="deepspace"] ::-webkit-scrollbar-track{background:#04070f}
html[data-theme="deepspace"] ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2b8bff,#9a6bff);border-color:#04070f}
