:root,
[data-theme="minimal-dark"] {
  --color-bg-primary: #0a0a0a;
  --color-bg-secondary: #141414;
  --color-bg-tertiary: #1f1f1f;
  --color-text-primary: #f5f5f5;
  --color-text-secondary: #999999;
  --color-text-tertiary: #555555;
  --color-accent: #ffffff;
  --color-border: rgba(255,255,255,0.08);
  --color-bubble-user: #262626;
  --color-bubble-character: #171717;
  --color-bubble-text: #f5f5f5;
  --color-shadow: rgba(0,0,0,0.5);
  --glass-blur: 0px;
  --glass-bg: rgba(20,20,20,0.9);
  --bg-image: none;
  --transition-speed: 0.3s;
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 22px;
  --radius-xl: 32px;
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
}

[data-theme="minimal-light"] {
  --color-bg-primary: #fafafa;
  --color-bg-secondary: #f0f0f0;
  --color-bg-tertiary: #e5e5e5;
  --color-text-primary: #0a0a0a;
  --color-text-secondary: #666666;
  --color-text-tertiary: #999999;
  --color-accent: #000000;
  --color-border: rgba(0,0,0,0.08);
  --color-bubble-user: #e5e5e5;
  --color-bubble-character: #f0f0f0;
  --color-bubble-text: #0a0a0a;
  --color-shadow: rgba(0,0,0,0.08);
  --glass-blur: 0px;
  --glass-bg: rgba(255,255,255,0.9);
  --bg-image: none;
}

[data-theme="glass-dark"] {
  --color-bg-primary: #0f0f1f;
  --color-bg-secondary: rgba(40,40,70,0.35);
  --color-bg-tertiary: rgba(60,60,95,0.5);
  --color-text-primary: #f0f0ff;
  --color-text-secondary: rgba(240,240,255,0.65);
  --color-text-tertiary: rgba(240,240,255,0.35);
  --color-accent: #a5b4fc;
  --color-border: rgba(255,255,255,0.14);
  --color-bubble-user: rgba(99,102,241,0.28);
  --color-bubble-character: rgba(255,255,255,0.08);
  --color-bubble-text: #f0f0ff;
  --color-shadow: rgba(0,0,0,0.6);
  --glass-blur: 22px;
  --glass-bg: rgba(30,30,55,0.45);
  --bg-image:
    radial-gradient(circle at 15% 15%, rgba(139,92,246,0.35) 0%, transparent 45%),
    radial-gradient(circle at 85% 85%, rgba(59,130,246,0.28) 0%, transparent 45%),
    linear-gradient(180deg, #0f0f1f 0%, #1a1a3a 100%);
}

[data-theme="glass-light"] {
  --color-bg-primary: #eef2ff;
  --color-bg-secondary: rgba(255,255,255,0.55);
  --color-bg-tertiary: rgba(255,255,255,0.75);
  --color-text-primary: #1a1a2e;
  --color-text-secondary: rgba(26,26,46,0.62);
  --color-text-tertiary: rgba(26,26,46,0.38);
  --color-accent: #6366f1;
  --color-border: rgba(0,0,0,0.06);
  --color-bubble-user: rgba(99,102,241,0.16);
  --color-bubble-character: rgba(255,255,255,0.72);
  --color-bubble-text: #1a1a2e;
  --color-shadow: rgba(100,100,150,0.15);
  --glass-blur: 22px;
  --glass-bg: rgba(255,255,255,0.6);
  --bg-image:
    radial-gradient(circle at 20% 10%, #dbeafe 0%, transparent 55%),
    radial-gradient(circle at 80% 80%, #fce7f3 0%, transparent 55%),
    linear-gradient(180deg, #eef2ff 0%, #f5f3ff 100%);
}

[data-theme="starry"] {
  --color-bg-primary: #0a0620;
  --color-bg-secondary: rgba(30,20,70,0.7);
  --color-bg-tertiary: rgba(50,30,110,0.65);
  --color-text-primary: #eae4ff;
  --color-text-secondary: rgba(234,228,255,0.65);
  --color-text-tertiary: rgba(234,228,255,0.35);
  --color-accent: #c4b5fd;
  --color-border: rgba(196,181,253,0.18);
  --color-bubble-user: #3a2a7e;
  --color-bubble-character: #1a103a;
  --color-bubble-text: #eae4ff;
  --color-shadow: rgba(30,10,60,0.6);
  --glass-blur: 14px;
  --glass-bg: rgba(26,16,58,0.55);
  --bg-image:
    radial-gradient(1px 1px at 20% 30%, #fff 50%, transparent 100%),
    radial-gradient(1px 1px at 70% 15%, #fff 50%, transparent 100%),
    radial-gradient(1px 1px at 45% 65%, #fff 50%, transparent 100%),
    radial-gradient(1px 1px at 85% 55%, #fff 50%, transparent 100%),
    radial-gradient(1.5px 1.5px at 30% 85%, #fff 50%, transparent 100%),
    radial-gradient(1px 1px at 60% 40%, rgba(196,181,253,0.9) 50%, transparent 100%),
    radial-gradient(ellipse at 25% 15%, rgba(196,181,253,0.15) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 70%, rgba(139,92,246,0.15) 0%, transparent 50%),
    linear-gradient(180deg, #0a0620 0%, #1a103a 100%);
}

[data-theme="warm-healing"] {
  --color-bg-primary: #fef6ee;
  --color-bg-secondary: rgba(252,233,214,0.75);
  --color-bg-tertiary: rgba(247,220,192,0.85);
  --color-text-primary: #3d2817;
  --color-text-secondary: rgba(61,40,23,0.62);
  --color-text-tertiary: rgba(61,40,23,0.4);
  --color-accent: #d97706;
  --color-border: rgba(217,119,6,0.14);
  --color-bubble-user: #fed7aa;
  --color-bubble-character: #fce9d6;
  --color-bubble-text: #3d2817;
  --color-shadow: rgba(180,100,30,0.15);
  --glass-blur: 12px;
  --glass-bg: rgba(254,246,238,0.75);
  --bg-image:
    radial-gradient(circle at 20% 10%, #fed7aa 0%, transparent 55%),
    radial-gradient(circle at 80% 90%, #fecdd3 0%, transparent 55%),
    linear-gradient(180deg, #fef6ee 0%, #fce9d6 100%);
}

/* 粉色治愈 */
[data-theme="pink-healing"] {
  --color-bg-primary: #fff5f8;
  --color-bg-secondary: rgba(255,232,240,0.78);
  --color-bg-tertiary: rgba(255,214,228,0.9);
  --color-text-primary: #4a1f2f;
  --color-text-secondary: rgba(74,31,47,0.64);
  --color-text-tertiary: rgba(74,31,47,0.4);
  --color-accent: #ec4899;
  --color-border: rgba(236,72,153,0.14);
  --color-bubble-user: #fbcfe8;
  --color-bubble-character: #fff0f5;
  --color-bubble-text: #4a1f2f;
  --color-shadow: rgba(236,72,153,0.13);
  --glass-blur: 14px;
  --glass-bg: rgba(255,245,248,0.76);
  --bg-image:
    radial-gradient(circle at 18% 12%, rgba(251,207,232,0.9) 0%, transparent 50%),
    radial-gradient(circle at 82% 22%, rgba(254,205,211,0.65) 0%, transparent 46%),
    radial-gradient(circle at 78% 88%, rgba(255,228,230,0.9) 0%, transparent 54%),
    linear-gradient(180deg, #fff5f8 0%, #ffe8f0 100%);
}

/* 海洋蓝 */
[data-theme="ocean-blue"] {
  --color-bg-primary: #061525;
  --color-bg-secondary: rgba(13,39,64,0.82);
  --color-bg-tertiary: rgba(20,67,103,0.78);
  --color-text-primary: #e5f7ff;
  --color-text-secondary: rgba(229,247,255,0.68);
  --color-text-tertiary: rgba(229,247,255,0.4);
  --color-accent: #38bdf8;
  --color-border: rgba(56,189,248,0.18);
  --color-bubble-user: #075985;
  --color-bubble-character: #0b263f;
  --color-bubble-text: #e5f7ff;
  --color-shadow: rgba(0,30,60,0.55);
  --glass-blur: 16px;
  --glass-bg: rgba(8,35,58,0.62);
  --bg-image:
    radial-gradient(circle at 20% 12%, rgba(56,189,248,0.28) 0%, transparent 48%),
    radial-gradient(circle at 80% 88%, rgba(14,165,233,0.22) 0%, transparent 52%),
    radial-gradient(ellipse at 50% 100%, rgba(6,182,212,0.18) 0%, transparent 58%),
    linear-gradient(180deg, #061525 0%, #082f49 100%);
}

/* 海洋白 */
[data-theme="ocean-white"] {
  --color-bg-primary: #f3fbff;
  --color-bg-secondary: rgba(224,244,255,0.78);
  --color-bg-tertiary: rgba(204,235,250,0.86);
  --color-text-primary: #123047;
  --color-text-secondary: rgba(18,48,71,0.64);
  --color-text-tertiary: rgba(18,48,71,0.4);
  --color-accent: #0284c7;
  --color-border: rgba(2,132,199,0.13);
  --color-bubble-user: #bae6fd;
  --color-bubble-character: #ffffff;
  --color-bubble-text: #123047;
  --color-shadow: rgba(14,116,144,0.13);
  --glass-blur: 16px;
  --glass-bg: rgba(243,251,255,0.76);
  --bg-image:
    radial-gradient(circle at 16% 12%, rgba(186,230,253,0.85) 0%, transparent 52%),
    radial-gradient(circle at 82% 78%, rgba(207,250,254,0.9) 0%, transparent 54%),
    linear-gradient(180deg, #f3fbff 0%, #e0f7ff 100%);
}

/* 治愈绿白 */
[data-theme="green-healing-light"] {
  --color-bg-primary: #f7fff8;
  --color-bg-secondary: rgba(231,248,235,0.82);
  --color-bg-tertiary: rgba(210,239,219,0.9);
  --color-text-primary: #1f3a2b;
  --color-text-secondary: rgba(31,58,43,0.64);
  --color-text-tertiary: rgba(31,58,43,0.4);
  --color-accent: #22c55e;
  --color-border: rgba(34,197,94,0.13);
  --color-bubble-user: #bbf7d0;
  --color-bubble-character: #ffffff;
  --color-bubble-text: #1f3a2b;
  --color-shadow: rgba(34,120,70,0.12);
  --glass-blur: 14px;
  --glass-bg: rgba(247,255,248,0.78);
  --bg-image:
    radial-gradient(circle at 18% 14%, rgba(187,247,208,0.88) 0%, transparent 52%),
    radial-gradient(circle at 84% 82%, rgba(220,252,231,0.95) 0%, transparent 56%),
    radial-gradient(ellipse at 50% 100%, rgba(134,239,172,0.28) 0%, transparent 60%),
    linear-gradient(180deg, #f7fff8 0%, #eafbea 100%);
}

[data-theme="mono-starfield"] {
  --color-bg-primary: #050505;
  --color-bg-secondary: rgba(16,16,16,0.82);
  --color-bg-tertiary: rgba(28,28,28,0.88);
  --color-text-primary: #f3f3f3;
  --color-text-secondary: rgba(243,243,243,0.68);
  --color-text-tertiary: rgba(243,243,243,0.38);
  --color-accent: #f5f5f5;
  --color-border: rgba(255,255,255,0.08);
  --color-bubble-user: #1f1f1f;
  --color-bubble-character: #0f0f0f;
  --color-bubble-text: #f3f3f3;
  --color-shadow: rgba(0,0,0,0.62);
  --glass-blur: 18px;
  --glass-bg: rgba(18,18,18,0.6);
  --bg-image:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,0.28) 0 1px, transparent 1.2px),
    radial-gradient(circle at 28% 36%, rgba(255,255,255,0.18) 0 1px, transparent 1.2px),
    radial-gradient(circle at 46% 14%, rgba(255,255,255,0.22) 0 1px, transparent 1.2px),
    radial-gradient(circle at 62% 28%, rgba(255,255,255,0.14) 0 1px, transparent 1.2px),
    radial-gradient(circle at 78% 12%, rgba(255,255,255,0.26) 0 1px, transparent 1.2px),
    radial-gradient(circle at 88% 46%, rgba(255,255,255,0.2) 0 1px, transparent 1.2px),
    radial-gradient(circle at 18% 72%, rgba(255,255,255,0.16) 0 1px, transparent 1.2px),
    radial-gradient(circle at 36% 82%, rgba(255,255,255,0.24) 0 1px, transparent 1.2px),
    radial-gradient(circle at 58% 68%, rgba(255,255,255,0.12) 0 1px, transparent 1.2px),
    radial-gradient(circle at 72% 84%, rgba(255,255,255,0.2) 0 1px, transparent 1.2px),
    radial-gradient(circle at 90% 76%, rgba(255,255,255,0.18) 0 1px, transparent 1.2px),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,0.04) 0%, transparent 42%),
    radial-gradient(circle at 50% 50%, rgba(255,255,255,0.08) 0%, transparent 68%),
    linear-gradient(180deg, #050505 0%, #0d0d0d 100%);
}

/* ==================== 新增：玻璃系列主题 ==================== */

/* 1. 极光毛玻璃 (浅色高亮) */
[data-theme="frosted-aurora"] {
  --color-bg-primary: #eef5f6;
  /* 极高透明度的容器背景，展现毛玻璃质感 */
  --color-bg-secondary: rgba(255, 255, 255, 0.45);
  --color-bg-tertiary: rgba(255, 255, 255, 0.65);
  --color-text-primary: #0f292d;
  --color-text-secondary: rgba(15, 41, 45, 0.65);
  --color-text-tertiary: rgba(15, 41, 45, 0.4);
  --color-accent: #0d9488;
  /* 略带白色的高光边框，模拟玻璃边缘折射 */
  --color-border: rgba(255, 255, 255, 0.45);
  --color-bubble-user: rgba(13, 148, 136, 0.18);
  --color-bubble-character: rgba(255, 255, 255, 0.7);
  --color-bubble-text: #0f292d;
  --color-shadow: rgba(13, 148, 136, 0.08);
  /* 超强模糊 */
  --glass-blur: 28px;
  --glass-bg: rgba(255, 255, 255, 0.4);
  /* 极光多彩背景光源 */
  --bg-image:
    radial-gradient(circle at 10% 20%, rgba(45, 212, 191, 0.35) 0%, transparent 50%),
    radial-gradient(circle at 90% 10%, rgba(99, 102, 241, 0.3) 0%, transparent 50%),
    radial-gradient(circle at 50% 80%, rgba(244, 63, 94, 0.2) 0%, transparent 60%),
    linear-gradient(135deg, #e0f2fe 0%, #f0fdf4 100%);
}

/* 2. 液态星云 (深色液态流光) */
[data-theme="liquid-nebula"] {
  --color-bg-primary: #0b091a;
  --color-bg-secondary: rgba(20, 15, 45, 0.45);
  --color-bg-tertiary: rgba(40, 25, 80, 0.6);
  --color-text-primary: #f3efff;
  --color-text-secondary: rgba(243, 239, 255, 0.65);
  --color-text-tertiary: rgba(243, 239, 255, 0.4);
  --color-accent: #ec4899;
  --color-border: rgba(255, 255, 255, 0.15);
  --color-bubble-user: rgba(236, 72, 153, 0.25);
  --color-bubble-character: rgba(255, 255, 255, 0.06);
  --color-bubble-text: #f3efff;
  --color-shadow: rgba(0, 0, 0, 0.5);
  --glass-blur: 22px;
  --glass-bg: rgba(15, 10, 35, 0.55);
  /* 霓虹液态星云背景 */
  --bg-image:
    radial-gradient(circle at 80% 20%, rgba(236, 72, 153, 0.45) 0%, transparent 55%),
    radial-gradient(circle at 20% 80%, rgba(59, 130, 246, 0.4) 0%, transparent 60%),
    radial-gradient(circle at 50% 50%, rgba(139, 92, 246, 0.3) 0%, transparent 50%),
    linear-gradient(180deg, #0b091a 0%, #1c0d3a 100%);
}

/* 3. 液态琥珀 (暖金流光) */
[data-theme="liquid-amber"] {
  --color-bg-primary: #180f02;
  --color-bg-secondary: rgba(40, 25, 10, 0.45);
  --color-bg-tertiary: rgba(70, 40, 15, 0.6);
  --color-text-primary: #fef3c7;
  --color-text-secondary: rgba(254, 243, 199, 0.7);
  --color-text-tertiary: rgba(254, 243, 199, 0.4);
  --color-accent: #f59e0b;
  --color-border: rgba(254, 243, 199, 0.15);
  --color-bubble-user: rgba(245, 158, 11, 0.25);
  --color-bubble-character: rgba(255, 255, 255, 0.06);
  --color-bubble-text: #fef3c7;
  --color-shadow: rgba(0, 0, 0, 0.6);
  --glass-blur: 24px;
  --glass-bg: rgba(30, 18, 5, 0.5);
  /* 熔岩/琥珀液态渐变背景 */
  --bg-image:
    radial-gradient(circle at 25% 20%, rgba(245, 158, 11, 0.45) 0%, transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(239, 68, 68, 0.35) 0%, transparent 55%),
    radial-gradient(circle at 75% 15%, rgba(251, 191, 36, 0.25) 0%, transparent 45%),
    linear-gradient(180deg, #180f02 0%, #291503 100%);
}


/* 动效开关：设置里可关闭 */
[data-anim="off"] * {
  animation: none !important;
  transition: none !important;
}
