:root {
    /* --- 品牌与主题色（源自设计方案 5.1 色彩方案） --- */
    --color-health: #FF8C00;   /* 沙棘橙 - 大健康 */
    --color-energy: #228B22;   /* 光能绿 - 新能源 */
    --color-culture: #8B0000;  /* 晋商红 - 文化旅游 */
    --color-primary: #003366;  /* 深蓝 - 主色调 */
    --color-bg-warm: #FFFAF0;  /* 暖白底色 */
    --color-accent-gold: #DAA520; /* 点缀金色 */
    --color-surface: #ffffff;
    --color-surface-muted: #f3f6fb;
    --color-text-dark: #1f2b3d;
    --color-text-light: #ffffff;
    --color-muted: #5d6b82;
    --color-border: #dfe5ef;
    --color-link: var(--color-primary);
    --color-link-hover: var(--color-health);
    /* 兼容旧命名 */
    --color-secondary: var(--color-health);
    --color-accent: var(--color-energy);
    --color-background-light: var(--color-bg-warm);
    --color-background-dark: #0d2140;
    --color-background-surface: var(--color-surface);

    /* --- 主题变量（默认核心主题） --- */
    --theme-color: var(--color-accent-gold);
    --theme-contrast: var(--color-text-light);
    --theme-soft: rgba(218, 165, 32, 0.12);
    --theme-gradient: linear-gradient(135deg, #305a8d, #DAA520);

    /* --- 字体系统 --- */
    --font-family-heading: "Noto Sans SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
    --font-family-body: "Noto Sans SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
    --font-family-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;
    --font-family-main: var(--font-family-body);
    --font-size-base: 16px;
    --font-size-h1: 2.8rem;
    --font-size-h2: 2.2rem;
    --font-size-h3: 1.6rem;
    --font-size-h4: 1.25rem;
    --font-size-small: 0.95rem;

    /* --- 间距系统 --- */
    --spacing-2xs: 0.35rem;
    --spacing-xs: 0.5rem;
    --spacing-sm: 0.85rem;
    --spacing-md: 1.25rem;
    --spacing-lg: 1.85rem;
    --spacing-xl: 2.6rem;
    --spacing-xxl: 4rem;
    --spacing-3xl: 6rem;

    /* --- 圆角与阴影 --- */
    --border-radius-sm: 6px;
    --border-radius-md: 10px;
    --border-radius-lg: 16px;
    --border-radius-full: 999px;
    --box-shadow-sm: 0 6px 16px rgba(0, 0, 0, 0.08);
    --box-shadow-md: 0 10px 30px rgba(0, 0, 0, 0.12);
    --box-shadow-lg: 0 18px 44px rgba(0, 0, 0, 0.14);

    /* --- 布局 --- */
    --max-width: 1220px;
}

body.theme-health {
    --theme-color: var(--color-health);
    --theme-contrast: #fff;
    --theme-soft: rgba(255, 140, 0, 0.12);
    --theme-gradient: linear-gradient(135deg, #ffb347, #ff8c00, #ff6a00);
}

body.theme-energy {
    --theme-color: var(--color-energy);
    --theme-contrast: #fff;
    --theme-soft: rgba(34, 139, 34, 0.12);
    --theme-gradient: linear-gradient(135deg, #39c17f, #228B22, #0f6c1a);
}

body.theme-culture {
    --theme-color: var(--color-culture);
    --theme-contrast: #fff;
    --theme-soft: rgba(139, 0, 0, 0.12);
    --theme-gradient: linear-gradient(135deg, #b63a2e, #8B0000, #5f0000);
}

body.theme-core {
    --theme-color: var(--color-primary);
    --theme-contrast: #fff;
    --theme-soft: rgba(0, 51, 102, 0.12);
    --theme-gradient: linear-gradient(135deg, #305a8d, #003366);
}
