/* ========== V8.0 弘度设计语言 — Design Tokens ==========
 * 风格定位：政务商务风 · 通透天空蓝 · 蓝色弥散光
 * 品牌主色：#1A56DB (政务蓝 / 品牌信任蓝)
 * 设计三原则：去色 / 收圆(≤10px) / 扁平(蓝色弥散阴影)
 * ============================================================ */
:root {
    /* ====== 设计 Token 使用规范 ======
     * 1. 禁止在代码中直接写死 hex 色值，统一使用本文件 CSS 变量。
     * 2. 响应式断点：原生 @media 不支持 var()，因此以注释形式对齐以下 Token。
     *    --breakpoint-xs: 375px  (超小屏手机)
     *    --breakpoint-sm: 480px  (小屏手机)
     *    --breakpoint-md: 768px  (平板/折叠屏)
     *    --breakpoint-lg: 1024px (平板横屏/小桌面)
     *    --breakpoint-xl: 1280px (桌面)
     *    连续区间配对示例：max-width: 768px 与 min-width: 769px。
     * 3. V5/V7 历史兼容色已集中为 --legacy-*，禁止在新 V8 模块中使用。
     * ============================================================ */

    /* ====== 品牌主色系 ====== */
    --color-primary-rgb: 26, 86, 219;
    --color-charity-rgb: 200, 16, 46;
    --color-success-rgb: 5, 150, 105;
    --color-gold-rgb: 217, 119, 6;
    --color-primary: #1A56DB;
    --color-primary-dark: #1544AD;
    --color-primary-light: #EFF6FF;
    /* 注: --gradient-primary 在下方「渐变库」区段统一定义（line 157），避免与 line 27 旧定义产生覆盖歧义 */

    /* 天空蓝通透（首页Header） */
    --sky-blue: #60A5FA;
    --sky-blue-light: var(--color-primary-light);   /* #EFF6FF，与 --color-primary-light 同色 */
    --sky-blue-dark: var(--color-primary);          /* #1A56DB，与 --color-primary 同色 */
    /* 注: --gradient-sky 在下方「渐变库」区段统一定义（line 158） */

    /* 公益红（仅用于公益页强调/价格） */
    --color-charity: #C8102E;
    --color-charity-light: #FEF2F2;
    /* 注: --gradient-charity 在下方「渐变库」区段统一定义（line 159） */

    /* 功能辅助色（全部降饱和度） */
    --color-health: #059669;
    --color-health-light: #ECFDF5;
    --color-pro: var(--blue-600);                   /* #2563EB，与 --blue-600 同色 */
    --color-pro-light: #DBEAFE;

    /* 中性功能色 */
    --color-market: var(--teal-600);                /* #0D9488，与 --teal-600 同色 */
    --color-gold: var(--amber-500);                 /* #D97706，与 --amber-500 同色 */
    --color-price: var(--red-600);                  /* #DC2626，与 --red-600 同色 */
    --color-success: var(--color-health);           /* #059669，与 --color-health 同色 */
    --color-warning: var(--amber-500);              /* #D97706，与 --color-gold 同色 */
    --color-danger: var(--red-600);                 /* #DC2626，与 --color-price 同色 */

    /* 我的页Header：天空蓝通透（渐变库中已统一定义 --gradient-my-header） */

    /* 灰度系统 */
    --gray-900: #111827;
    --gray-700: #374151;
    --gray-600: #6B7280;
    --gray-400: #9CA3AF;
    --gray-100: #F3F4F6;
    --gray-50: #F9FAFB;

    /* 背景 */
    --bg-page: #F9FAFB;
    --bg-card: #FFFFFF;
    --bg-page-rgb: 249, 250, 251;
    --bg-card-rgb: 255, 255, 255;
    --border-line: #E5E7EB;

    /* 语义色（统一在 line 50-52 引用 — --color-success/warning/danger 已归位到「中性功能色」区段） */

    /* 常用色阶（用于替换历史硬编码 Material 色值） */
    --red-50: #FFEBEE; --red-100: #FFCDD2; --red-200: #FECACA;
    --red-300: #FCA5A5; --red-500: #EF4444; --red-600: #DC2626;
    --red-700: #B91C1C; --red-800: #991B1B; --red-900: #7F1D1D;

    --green-50: #E8F5E9; --green-100: #C8E6C9; --green-600: #16A34A;
    --green-700: #15803D; --green-800: #166534;

    --blue-50: #E3F2FD; --blue-100: #BBDEFB; --blue-500: #3B82F6;
    --blue-600: #2563EB; --blue-700: #1D4ED8;

    --purple-50: #F3E5F5; --purple-100: #E1BEE7; --purple-700: #7B1FA2;
    --purple-800: #6B21A8;

    --teal-50: #E0F2F1; --teal-100: #B2DFDB; --teal-600: #0D9488;
    --teal-700: #0F766E; --teal-800: #115E59;

    --pink-50: #FCE4EC; --pink-100: #F8BBD9; --pink-700: #C2185B;

    --amber-50: #FFFAF5; --amber-100: #FFF3E0; --amber-200: #FFE0B2;
    --amber-300: #FFB74D; --amber-400: #F59E0B; --amber-500: #D97706;
    --amber-800: #92400E;

    --yellow-50: #FFFDF5; --yellow-100: #FFF8E1;

    --orange-50: #FFF7ED; --orange-300: #FDBA74;

    --cyan-50: #E0F7FA; --cyan-700: #00838F; --cyan-800: #085C6B;

    --emerald-50: #D1FAE5; --emerald-200: #A7F3D0;

    --bronze: #CD7F32;

    /* 纸纹背景（项目硬约束：#F6F4EE / #EFEBE0） */
    --paper-50: #F6F4EE;
    --paper-100: #EFEBE0;

    /* RGB 通道（供 rgba 透明场景） */
    --black-rgb: 0, 0, 0;
    --white-rgb: 255, 255, 255;
    --gray-900-rgb: 17, 24, 39;
    --gray-700-rgb: 55, 65, 81;
    --gray-400-rgb: 156, 163, 175;

    /* 圆角规范（收圆 ≤ 10px） */
    --radius-btn: 8px;
    --radius-card: 10px;
    --radius-input: 8px;
    --radius-badge: 6px;
    --radius-modal: 12px;
    --radius-pill: 9999px;

    /* 字号规范（P1-4 补全） */
    --font-size-xs: 12px;
    --font-size-sm: 14px;
    --font-size-base: 16px;
    --font-size-md: 18px;
    --font-size-lg: 20px;
    --font-size-xl: 24px;
    --font-size-2xl: 28px;
    --font-size-3xl: 32px;

    /* 间距规范（P1-4 补全） */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;
    --spacing-2xl: 40px;

    /* 阴影规范 — 蓝色弥散光（核心差异化） */
    --shadow-xs: 0 1px 2px rgba(26, 86, 219, 0.04);
    --shadow-sm: 0 1px 3px rgba(26, 86, 219, 0.06);
    --shadow-md: 0 2px 8px rgba(26, 86, 219, 0.08);
    --shadow-lg: 0 4px 16px rgba(26, 86, 219, 0.10);
    --shadow-xl: 0 8px 32px rgba(26, 86, 219, 0.14);
    --shadow-float: 0 12px 40px rgba(26, 86, 219, 0.16);

    /* 响应式断点（设计Token，供JS/文档使用；原生CSS @media 不支持 var()） */
    --breakpoint-xs: 375px;
    --breakpoint-sm: 480px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 1024px;
    --breakpoint-xl: 1280px;

    /* 排版 */
    --font-h1: 22px; --weight-h1: 700; --line-h1: 1.3; --color-h1: var(--gray-900);
    --font-h2: 17px; --weight-h2: 600; --line-h2: 1.4; --color-h2: var(--gray-700);
    --font-h3: 15px; --weight-h3: 500; --line-h3: 1.4; --color-h3: var(--gray-700);
    --font-body: 14px; --weight-body: 400; --line-body: 1.6; --color-body: var(--gray-700);
    --font-caption: 12px; --weight-caption: 400; --line-caption: 1.5; --color-caption: var(--gray-400);
    --font-price: 18px; --weight-price: 700; --color-price: var(--color-price);
    --font-price-unit: 13px; --weight-price-unit: 400; --color-price-unit: var(--color-price);
    --font-asset-value: 24px; --weight-asset-value: 700; --color-asset-value: var(--gray-900);

    /* 按钮主色 */
    --primary: var(--color-primary);
    --primary-hover: var(--color-primary-dark);
    --primary-light: var(--color-primary-light);

    /* 渐变库（统一权威源 — 禁止在其他区段重复定义） */
    --gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, var(--blue-600) 100%);
    --gradient-sky: linear-gradient(180deg, var(--sky-blue-light) 0%, var(--color-pro-light) 40%, var(--hex-bfdbfe) 80%, var(--bg-card) 100%);
    --gradient-charity: linear-gradient(135deg, var(--color-charity) 0%, var(--red-500) 100%);
    --gradient-fresh: linear-gradient(135deg, var(--emerald-50) 0%, var(--emerald-200) 100%);
    --gradient-warm: linear-gradient(135deg, var(--orange-50) 0%, var(--bg-card) 100%);
    --gradient-pro: linear-gradient(135deg, var(--color-primary) 0%, var(--sky-blue) 100%);
    --gradient-my-header: linear-gradient(180deg, var(--sky-blue-light) 0%, var(--color-pro-light) 50%, var(--hex-bfdbfe) 100%);

    /* V5/V7 历史兼容色（仅用于旧模块，新 V8 模块禁止直接使用） */
    --legacy-orange: #FF9A3C;
    --legacy-orange-dark: #E8892A;
    --legacy-orange-light: #FFF0E0;
    --legacy-red: #E53935;
    --legacy-gold: #FFD700;
    --legacy-purple: #9B59B6;
    --legacy-success: #67C23A;
    --legacy-danger: #F56C6C;
    --legacy-warning: #E6A23C;
    --legacy-info: #409EFF;
    --legacy-text: #1A1A1A;
    --legacy-text-secondary: #666666;
    --legacy-text-light: #999999;
    --legacy-border: #EEEEEE;
    --legacy-bg: #F5F5F5;
    --legacy-bg-page: #f5f5f8;

    /* 页面底部安全留白（底部导航高度 + 安全区） */
    --page-padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 56px);

    /* 悬浮按钮依赖变量 */
    --gap-lg: 1rem;
    --nav-bottom-height: 56px;
    --z-float-btn: 900;


    /* ===== 金刚区（快捷入口）专用色阶 — 与 --legacy-* 共享同色值，避免重复定义 ===== */
    --kingkong-orange: var(--legacy-orange);        /* #FF9A3C，与 --legacy-orange 同色 */
    --kingkong-orange-light: #FFB347;              /* 暖橙亮色渐变端（独有色阶） */
    --kingkong-purple: var(--legacy-purple);       /* #9B59B6，与 --legacy-purple 同色 */
    --kingkong-purple-light: #BB8FCE;              /* 紫亮色渐变端（独有色阶） */
    --kingkong-red: var(--legacy-red);              /* #E53935，与 --legacy-red 同色 */
    --kingkong-red-light: #FF6B6B;                 /* 红亮色渐变端（独有色阶） */
    --kingkong-cyan: #17A2B8;                      /* 日用百货（青主色，独有色阶） */
    --kingkong-cyan-light: #5BC0DE;                /* 青亮色渐变端（独有色阶） */
    --kingkong-yellow: #FFC107;                     /* 弘度外卖（黄主色，独有色阶） */
    --kingkong-yellow-light: #FFD54F;              /* 黄亮色渐变端（独有色阶） */
    --kingkong-blue: #2196F3;                       /* 健康医疗（蓝主色，独有色阶） */
    --kingkong-blue-light: #64B5F6;                /* 蓝亮色渐变端（独有色阶） */
    --kingkong-green: #4CAF50;                      /* 乡村认养（绿主色，独有色阶） */
    --kingkong-green-light: #81C784;               /* 绿亮色渐变端（独有色阶） */
    --kingkong-pink: #E91E63;                       /* 公益关注（粉主色，独有色阶） */
    --kingkong-pink-light: #F06292;                /* 粉亮色渐变端（独有色阶） */
    --kingkong-indigo: #3F51B5;                     /* AI短视频（靛主色，独有色阶） */
    --kingkong-indigo-light: #7986CB;              /* 靛亮色渐变端（独有色阶） */
    --kingkong-amber-deep: #FF9800;                 /* 就业服务（深琥珀主色，独有色阶） */

    /* ===== 自动归集的历史色值 Token（过渡方案，后续按语义重构） ===== */
    --hex-333333: #333333;
    --hex-4caf50: #4CAF50;
    --hex-ff6b35: #FF6B35;
    --hex-f0f0f0: #F0F0F0;
    --hex-ff6b6b: #FF6B6B;
    --hex-e0e0e0: #E0E0E0;
    --hex-ff9800: #FF9800;
    --hex-cccccc: #CCCCCC;
    --hex-667eea: #667EEA;
    --hex-2e7d32: #2E7D32;
    --hex-dddddd: #DDDDDD;
    --hex-888888: #888888;
    --hex-c62828: #C62828;
    --hex-bbbbbb: #BBBBBB;
    --hex-fafafa: #FAFAFA;
    --hex-43a047: #43A047;
    --hex-9c27b0: #9C27B0;
    --hex-e65100: #E65100;
    --hex-e91e63: #E91E63;
    --hex-2196f3: #2196F3;
    --hex-00b4d8: #00B4D8;
    --hex-764ba2: #764BA2;
    --hex-1565c0: #1565C0;
    --hex-e2e8f0: #E2E8F0;
    --hex-1976d2: #1976D2;
    --hex-d32f2f: #D32F2F;
    --hex-64748b: #64748B;
    --hex-475569: #475569;
    --hex-ff6b00: #FF6B00;
    --hex-555555: #555555;
    --hex-ff6a00: #FF6A00;
    --hex-f44336: #F44336;
    --hex-ff8c00: #FF8C00;
    --hex-ff9a5c: #FF9A5C;
    --hex-fff5e6: #FFF5E6;
    --hex-e74c3c: #E74C3C;
    --hex-66bb6a: #66BB6A;
    --hex-f57c00: #F57C00;
    --hex-f1f5f9: #F1F5F9;
    --hex-f8fafc: #F8FAFC;
    --hex-1e293b: #1E293B;
    --hex-1e88e5: #1E88E5;
    --hex-94a3b8: #94A3B8;
    --hex-e85d5d: #E85D5D;
    --hex-ffe4e1: #FFE4E1;
    --hex-c0c8d4: #C0C8D4;
    --hex-5a6a7a: #5A6A7A;
    --hex-e63946: #E63946;
    --hex-ff2e63: #FF2E63;
    --hex-f5f7fa: #F5F7FA;
    --hex-42a5f5: #42A5F5;
    --hex-ff5252: #FF5252;
    --hex-f8f8f8: #F8F8F8;
    --hex-e8e8e8: #E8E8E8;
    --hex-ffc107: #FFC107;
    --hex-ea580c: #EA580C;
    --hex-8e9baa: #8E9BAA;
    --hex-f0f2f5: #F0F2F5;
    --hex-334155: #334155;
    --hex-388e3c: #388E3C;
    --hex-ab47bc: #AB47BC;
    --hex-64b5f6: #64B5F6;
    --hex-ff8f00: #FF8F00;
    --hex-f8f9fa: #F8F9FA;
    --hex-fff5f5: #FFF5F5;
    --hex-f57f17: #F57F17;
    --hex-3d2c2e: #3D2C2E;
    --hex-1a1a2e: #1A1A2E;
    --hex-42b983: #42B983;
    --hex-f9f9f9: #F9F9F9;
    --hex-ffecb3: #FFECB3;
    --hex-fff5f0: #FFF5F0;
    --hex-ff2442: #FF2442;
    --hex-c0c0c0: #C0C0C0;
    --hex-cbd5e1: #CBD5E1;
    --hex-222222: #222222;
    --hex-ff5722: #FF5722;
    --hex-7c3aed: #7C3AED;
    --hex-f8bbd0: #F8BBD0;
    --hex-fffbf5: #FFFBF5;
    --hex-ffa500: #FFA500;
    --hex-ff9500: #FF9500;
    --hex-ffe5d9: #FFE5D9;
    --hex-90caf9: #90CAF9;
    --hex-a5d6a7: #A5D6A7;
    --hex-607d8b: #607D8B;
    --hex-8b7355: #8B7355;
    --hex-b71c1c: #B71C1C;
    --hex-00bcd4: #00BCD4;
    --hex-ffb300: #FFB300;
    --hex-ff9a56: #FF9A56;
    --hex-d9d9d9: #D9D9D9;
    --hex-ff9f00: #FF9F00;
    --hex-00acc1: #00ACC1;
    --hex-f39c12: #F39C12;
    --hex-e67e22: #E67E22;
    --hex-fffbeb: #FFFBEB;
    --hex-ce93d8: #CE93D8;
    --hex-ffa000: #FFA000;
    --hex-81c784: #81C784;
    --hex-f0fdf4: #F0FDF4;
    --hex-ffb88c: #FFB88C;
    --hex-ef9a9a: #EF9A9A;
    --hex-ff6d00: #FF6D00;
    --hex-d4940c: #D4940C;
    --hex-fff0e6: #FFF0E6;
    --hex-fff0e8: #FFF0E8;
    --hex-06a35a: #06A35A;
    --hex-ffe082: #FFE082;
    --hex-ffcc80: #FFCC80;
    --hex-fb923c: #FB923C;
    --hex-00000000: #00000000;
    --hex-a78bfa: #A78BFA;
    --hex-f48fb1: #F48FB1;
    --hex-6a1b9a: #6A1B9A;
    --hex-1677ff: #1677FF;
    --hex-0d47a1: #0D47A1;
    --hex-e0e6f0: #E0E6F0;
    --hex-ff6a1a: #FF6A1A;
    --hex-ffe8cc: #FFE8CC;
    --hex-ff4757: #FF4757;
    --hex-22c55e: #22C55E;
    --hex-ffa726: #FFA726;
    --hex-9e9e9e: #9E9E9E;
    --hex-14b8a6: #14B8A6;
    --hex-757575: #757575;
    --hex-0b5e42: #0B5E42;
    --hex-ff6b2b: #FF6B2B;
    --hex-3f51b5: #3F51B5;
    --hex-6d28d9: #6D28D9;
    --hex-aaaaaa: #AAAAAA;
    --hex-ffb800: #FFB800;
    --hex-7cb342: #7CB342;
    --hex-1b5e20: #1B5E20;
    --hex-00b894: #00B894;
    --hex-e03131: #E03131;
    --hex-ff8a1a: #FF8A1A;
    --hex-4fc3f7: #4FC3F7;
    --hex-ff3b30: #FF3B30;
    --hex-ffd54f: #FFD54F;
    --hex-f06292: #F06292;
    --hex-07c160: #07C160;
    --hex-fef3c7: #FEF3C7;
    --hex-795548: #795548;
    --hex-ff6f00: #FF6F00;
    --hex-ff3cac: #FF3CAC;
    --hex-ebedf0: #EBEDF0;
    --hex-f5f5f7: #F5F5F7;
    --hex-000000: #000000;
    --hex-8e44ad: #8E44AD;
    --hex-1e3a8a: #1E3A8A;
    --hex-fffbe6: #FFFBE6;
    --hex-ef5350: #EF5350;
    --hex-fff4e6: #FFF4E6;
    --hex-f5f9fb: #F5F9FB;
    --hex-ff7675: #FF7675;
    --hex-16213e: #16213E;
    --hex-424242: #424242;
    --hex-ef6c00: #EF6C00;
    --hex-ffdab9: #FFDAB9;
    --hex-f9a825: #F9A825;
    --hex-ff8a80: #FF8A80;
    --hex-f5a623: #F5A623;
    --hex-48cae4: #48CAE4;
    --hex-e0f7ff: #E0F7FF;
    --hex-51cf66: #51CF66;
    --hex-f08c00: #F08C00;
    --hex-ffe8e8: #FFE8E8;
    --hex-fee2e2: #FEE2E2;
    --hex-d1d5db: #D1D5DB;
    --hex-26c6da: #26C6DA;
    --hex-bfdbfe: #BFDBFE;
    --hex-1f2937: #1F2937;
    --hex-bae7ff: #BAE7FF;
    --hex-ffe0b3: #FFE0B3;
    --hex-e8eaf6: #E8EAF6;
    --hex-f1f8e9: #F1F8E9;
    --hex-78909c: #78909C;
    --hex-f0f7da: #F0F7DA;
    --hex-d4b896: #D4B896;
    --hex-8bc34a: #8BC34A;
    --hex-0b1a2e: #0B1A2E;
    --hex-ff8c5a: #FF8C5A;
    --hex-00a085: #00A085;
    --hex-ffa94d: #FFA94D;
    --hex-0a0a1a: #0A0A1A;
    --hex-2d3748: #2D3748;
    --hex-5c6bc0: #5C6BC0;
    --hex-f7f4ee: #F7F4EE;
    --hex-ba68c8: #BA68C8;
    --hex-0097a7: #0097A7;
    --hex-5d4037: #5D4037;
    --hex-ffd8a8: #FFD8A8;
    --hex-fffde7: #FFFDE7;
    --hex-eceff1: #ECEFF1;
    --hex-cfd8dc: #CFD8DC;
    --hex-ffe9e9: #FFE9E9;
    --hex-ffd6d6: #FFD6D6;
    --hex-fff7e6: #FFF7E6;
    --hex-1e40af: #1E40AF;
    --hex-b2ebf2: #B2EBF2;
    --hex-27ae60: #27AE60;
    --hex-fff9f2: #FFF9F2;
    --hex-ff8a65: #FF8A65;
    --hex-8e24aa: #8E24AA;
    --hex-673ab7: #673AB7;
    --hex-5d4e37: #5D4E37;
    --hex-00695c: #00695C;
    --hex-52c41a: #52C41A;
    --hex-ff8e9e: #FF8E9E;
    --hex-0a0e27: #0A0E27;
    --hex-5e35b1: #5E35B1;
    --hex-fcc419: #FCC419;
    --hex-f59f00: #F59F00;
    --hex-718096: #718096;
    --hex-f8f9ff: #F8F9FF;
    --hex-fff5eb: #FFF5EB;
    --hex-fff1e6: #FFF1E6;
    --hex-d4a843: #D4A843;
    --hex-00897b: #00897B;
    --hex-ee5a5a: #EE5A5A;
    --hex-e8f8fa: #E8F8FA;
    --hex-5d3a1a: #5D3A1A;
    --hex-f0f5ff: #F0F5FF;
    --hex-0f1d3a: #0F1D3A;
    --hex-15294d: #15294D;
    --hex-ede9fe: #EDE9FE;
    --hex-fff8f0: #FFF8F0;
    --hex-d35400: #D35400;
    --hex-3498db: #3498DB;
    --hex-ff7043: #FF7043;
    --hex-fff5f7: #FFF5F7;
    --hex-b45309: #B45309;
    --hex-f0f9ff: #F0F9FF;
    --hex-444444: #444444;
    --hex-4ecdc4: #4ECDC4;
    --hex-ff8c42: #FF8C42;
    --hex-ff9a44: #FF9A44;
    --hex-9333ea: #9333EA;
    --hex-85ce61: #85CE61;
    --hex-f08820: #F08820;
    --hex-6abf6e: #6ABF6E;
    --hex-d4880f: #D4880F;
    --hex-b8ecf8: #B8ECF8;
    --hex-f0f5fa: #F0F5FA;
    --hex-f5f8fc: #F5F8FC;
    --hex-ffe4d6: #FFE4D6;
    --hex-fafdff: #FAFDFF;
    --hex-e17055: #E17055;
    --hex-ae8c6e: #AE8C6E;
    --hex-2f9e44: #2F9E44;
    --hex-4dabf7: #4DABF7;
    --hex-20c997: #20C997;
    --hex-da77f2: #DA77F2;
    --hex-e599f7: #E599F7;
    --hex-ff8787: #FF8787;
    --hex-fdcb6e: #FDCB6E;
    --hex-0984e3: #0984E3;
    --hex-ff8f5e: #FF8F5E;
    --hex-ffe0d3: #FFE0D3;
    --hex-fff3bf: #FFF3BF;
    --hex-fff9db: #FFF9DB;
    --hex-d3f9d8: #D3F9D8;
    --hex-e6fce9: #E6FCE9;
    --hex-fb8c00: #FB8C00;
    --hex-03a9f4: #03A9F4;
    --hex-2d6cdf: #2D6CDF;
    --hex-2a2a2a: #2A2A2A;
    --hex-f12711: #F12711;
    --hex-f5af19: #F5AF19;
    --hex-0f9b0f: #0F9B0F;
    --hex-00d2ff: #00D2FF;
    --hex-1a7a5a: #1A7A5A;
    --hex-6d4c41: #6D4C41;
    --hex-cfeef5: #CFEEF5;
    --hex-443322: #443322;
    --hex-26a69a: #26A69A;
    --hex-ffb347: #FFB347;
    --hex-f97316: #F97316;
    --hex-10b981: #10B981;
    --hex-4b5563: #4B5563;
    --hex-ff4444: #FF4444;
    --hex-ffe0e0: #FFE0E0;
    --hex-fff1f0: #FFF1F0;
    --hex-ffccc7: #FFCCC7;
    --hex-e6f7ff: #E6F7FF;
    --hex-ffe7ba: #FFE7BA;
    --hex-e6fffb: #E6FFFB;
    --hex-87e8de: #87E8DE;
    --hex-ffe58f: #FFE58F;
    --hex-f9f0ff: #F9F0FF;
    --hex-efdbff: #EFDBFF;
    --hex-adc6ff: #ADC6FF;
    --hex-fff0f6: #FFF0F6;
    --hex-ffadd2: #FFADD2;
    --hex-fff2e8: #FFF2E8;
    --hex-ffd591: #FFD591;
    --hex-f6ffed: #F6FFED;
    --hex-b7eb8f: #B7EB8F;
    --hex-f0fbff: #F0FBFF;
    --hex-f0f7ff: #F0F7FF;
    --hex-c2410c: #C2410C;
    --hex-065f46: #065F46;
    --hex-4a90e2: #4A90E2;
    --hex-fcd34d: #FCD34D;
    --hex-29b6f6: #29B6F6;
    --hex-3949ab: #3949AB;
    --hex-ffedd5: #FFEDD5;
    --hex-ff8e8e: #FF8E8E;
    --hex-ff4d4f: #FF4D4F;
    --hex-fff0f0: #FFF0F0;
    --hex-faf7f2: #FAF7F2;
    --hex-90a4ae: #90A4AE;
    --hex-ffe0cc: #FFE0CC;
    --hex-ededed: #EDEDED;
    --hex-b8956a: #B8956A;
    --hex-ffa940: #FFA940;
    --hex-b8860b: #B8860B;
    --hex-8d6e63: #8D6E63;
    --hex-7e57c2: #7E57C2;
    --hex-64ffda: #64FFDA;
    --hex-e0245e: #E0245E;
    --hex-d4a017: #D4A017;
    --hex-ff922b: #FF922B;
    --hex-f06595: #F06595;
    --hex-eef5fa: #EEF5FA;
    --hex-ffc9c9: #FFC9C9;
    --hex-ffe3e3: #FFE3E3;
    --hex-37474f: #37474F;
    --hex-fff3d6: #FFF3D6;
    --hex-1a73e8: #1A73E8;
    --hex-4a5568: #4A5568;
    --hex-fff8e0: #FFF8E0;
    --hex-f7971e: #F7971E;
    --hex-ffd200: #FFD200;
    --hex-7f00ff: #7F00FF;
    --hex-e100ff: #E100FF;
    --hex-ff416c: #FF416C;
    --hex-ff4b2b: #FF4B2B;
    --hex-11998e: #11998E;
    --hex-38ef7d: #38EF7D;
    --hex-8e2de2: #8E2DE2;
    --hex-4a00e0: #4A00E0;
    --hex-00b4db: #00B4DB;
    --hex-0083b0: #0083B0;
    --hex-1957b9: #1957B9;
    --hex-a0a0a0: #A0A0A0;
    --hex-e85b5b: #E85B5B;
    --hex-fff8e7: #FFF8E7;
    --hex-e4e8ed: #E4E8ED;
    --hex-886644: #886644;
    --hex-2b7de9: #2B7DE9;
    --hex-f7f7f7: #F7F7F7;
    --hex-34d399: #34D399;
    --hex-edeff2: #EDEFF2;
    --hex-2a2d31: #2A2D31;
    --hex-8b5cf6: #8B5CF6;
    --hex-fed7aa: #FED7AA;
    --hex-ca8a04: #CA8A04;
    --hex-fefce8: #FEFCE8;
    --hex-e0e7ff: #E0E7FF;
    --hex-eef4ff: #EEF4FF;
    --hex-ffb700: #FFB700;
    --hex-4dd0e1: #4DD0E1;
    --hex-fffaf0: #FFFAF0;
    --hex-ffe4ec: #FFE4EC;
    --hex-ffc53d: #FFC53D;
    --hex-4f46e5: #4F46E5;
    --hex-7c4dff: #7C4DFF;
    --hex-651fff: #651FFF;
    --hex-06ad56: #06AD56;
    --hex-b3e5fc: #B3E5FC;
    --hex-81d4fa: #81D4FA;
    --hex-b0bec5: #B0BEC5;
    --hex-44b09e: #44B09E;
    --hex-ff8e53: #FF8E53;
    --hex-ff8a50: #FF8A50;
    --hex-fff5ee: #FFF5EE;
    --hex-fffbf0: #FFFBF0;
    --hex-bdbdbd: #BDBDBD;
    --hex-ec407a: #EC407A;
    --hex-fff9c4: #FFF9C4;
    --hex-b39ddb: #B39DDB;
    --hex-fff176: #FFF176;
    --hex-fdd835: #FDD835;
    --hex-80deea: #80DEEA;
    --hex-ff69b4: #FF69B4;
    --hex-c8c8c8: #C8C8C8;
    --hex-d4e89c: #D4E89C;
    --hex-ffb8b8: #FFB8B8;
    --hex-ffe8b3: #FFE8B3;
    --hex-fafbfc: #FAFBFC;
    --hex-ee5a24: #EE5A24;
    --hex-0f3460: #0F3460;
    --hex-f5e6d3: #F5E6D3;
    --hex-b87333: #B87333;
    --hex-fef3cd: #FEF3CD;
    --hex-bcaaa4: #BCAAA4;
    --hex-0d1f3c: #0D1F3C;
    --hex-f472b6: #F472B6;
    --hex-db2777: #DB2777;
    --hex-e8f4f8: #E8F4F8;
    --hex-a855f7: #A855F7;
    --hex-e07b2c: #E07B2C;
    --hex-0096c7: #0096C7;
    --hex-69db7c: #69DB7C;
    --hex-1c7ed6: #1C7ED6;
    --hex-fab005: #FAB005;
    --hex-fd7e14: #FD7E14;
    --hex-74c0fc: #74C0FC;
    --hex-339af0: #339AF0;
    --hex-ffd43b: #FFD43B;
    --hex-6741d9: #6741D9;
    --hex-74b9ff: #74B9FF;
    --hex-a3d8f4: #A3D8F4;
    --hex-faa2c1: #FAA2C1;
    --hex-d63031: #D63031;
    --hex-90e0ef: #90E0EF;
    --hex-f0f6fa: #F0F6FA;
    --hex-ffb740: #FFB740;
    --hex-ff7b00: #FF7B00;
    --hex-1971c2: #1971C2;
    --hex-495057: #495057;
    --hex-f3d9fa: #F3D9FA;
    --hex-d0ebff: #D0EBFF;
    --hex-e7f5ff: #E7F5FF;
    --hex-fff3ee: #FFF3EE;
    --hex-ffe8de: #FFE8DE;
    --hex-eaeaea: #EAEAEA;
    --hex-f0f9eb: #F0F9EB;
    --hex-f5f8fa: #F5F8FA;
    --hex-f5f6fa: #F5F6FA;
    --hex-f87171: #F87171;
    --hex-a89b9c: #A89B9C;
    --hex-f0e8e6: #F0E8E6;
    --hex-d81b60: #D81B60;
    --hex-008c70: #008C70;
    --hex-7a4e00: #7A4E00;
    --hex-fff3cd: #FFF3CD;
    --hex-856404: #856404;
    --hex-48bb78: #48BB78;
    --hex-fc8181: #FC8181;
    --hex-c53030: #C53030;
    --hex-f0fff4: #F0FFF4;
    --hex-276749: #276749;
    --hex-e6fffa: #E6FFFA;
    --hex-0bc5ea: #0BC5EA;
    --hex-f5fff5: #F5FFF5;
    --hex-ffeb3b: #FFEB3B;
    --hex-667eea20: #667EEA20;
    --hex-1f2a44: #1F2A44;
    --hex-ffd9b8: #FFD9B8;
    --hex-bfe5c4: #BFE5C4;
    --hex-ffc2c2: #FFC2C2;
    --hex-f0f1f3: #F0F1F3;
    --hex-e88a2c: #E88A2C;
    --hex-ffb06a: #FFB06A;
    --hex-8b1e3f: #8B1E3F;
    --hex-0052cc: #0052CC;
    --hex-dcfce7: #DCFCE7;
    --hex-2c3e50: #2C3E50;
    --hex-34495e: #34495E;
    --hex-2d9b6e: #2D9B6E;
    --hex-e6c35c: #E6C35C;
    --hex-f5d76e: #F5D76E;
    --hex-707070: #707070;
    --hex-2a2a4a: #2A2A4A;
    --hex-cc6600: #CC6600;
    --hex-994d00: #994D00;
    --hex-f5eef8: #F5EEF8;
    --hex-c81f2c: #C81F2C;
    --hex-e68a00: #E68A00;
    --hex-e2231a: #E2231A;
    --hex-c41d16: #C41D16;
    --hex-ffecec: #FFECEC;
    --hex-e5e5e5: #E5E5E5;
    --hex-ffd93d: #FFD93D;
    --hex-f0f8f0: #F0F8F0;
    --hex-d0e8d0: #D0E8D0;
    --hex-5daf34: #5DAF34;
    --hex-8b4513: #8B4513;
    --hex-fffef9: #FFFEF9;
    --hex-fff8ea: #FFF8EA;
    --hex-aa8866: #AA8866;
    --hex-ffe0b0: #FFE0B0;
    --hex-664422: #664422;
    --hex-553311: #553311;
    --hex-997755: #997755;
    --hex-fff9ef: #FFF9EF;
    --hex-fff2df: #FFF2DF;
    --hex-ffe8c0: #FFE8C0;
    --hex-e8f4ff: #E8F4FF;
    --hex-ff8a2c: #FF8A2C;
    --hex-f3e5ff: #F3E5FF;
    --hex-e8f8f5: #E8F8F5;
    --hex-b9e4b9: #B9E4B9;
    --hex-b3d4fc: #B3D4FC;
    --hex-f5b7b7: #F5B7B7;
    --hex-d7bde2: #D7BDE2;
    --hex-a3d9d1: #A3D9D1;
    --hex-deb887: #DEB887;
    --hex-bb8fce: #BB8FCE;
    --hex-17a2b8: #17A2B8;
    --hex-5bc0de: #5BC0DE;
    --hex-7986cb: #7986CB;
    --hex-e84118: #E84118;
    --hex-1e3a5f: #1E3A5F;
    --hex-909399: #909399;
    --hex-d1d3db: #D1D3DB;
    --hex-32f08c: #32F08C;
    --hex-0ab861: #0AB861;
    --hex-111214: #111214;
    --hex-fef08a: #FEF08A;
    --hex-4338ca: #4338CA;
    --hex-eef2ff: #EEF2FF;
    --hex-9a3412: #9A3412;
    --hex-ffffff33: #FFFFFF33;
    --hex-fff8e6: #FFF8E6;
    --hex-f093fb: #F093FB;
    --hex-f7f8fa: #F7F8FA;
    --hex-ff4438: #FF4438;
    --hex-2ecc71: #2ECC71;
    --hex-2980b9: #2980B9;
    --hex-f1c40f: #F1C40F;
    --hex-1abc9c: #1ABC9C;
    --hex-16a085: #16A085;
    --hex-d4a574: #D4A574;
    --hex-ffb7c5: #FFB7C5;
    --hex-4ade80: #4ADE80;
    --hex-ffe24d: #FFE24D;
    --hex-78350f: #78350F;
    --hex-6366f1: #6366F1;
    --hex-f5f3ff: #F5F3FF;
    --hex-ddd6fe: #DDD6FE;
    --hex-12b7f5: #12B7F5;
    --hex-0d9ed9: #0D9ED9;
    --hex-ffe5d0: #FFE5D0;
    --hex-ffd0a0: #FFD0A0;
    --hex-ff7b1c: #FF7B1C;
    --hex-009688: #009688;
    --hex-00796b: #00796B;
    --hex-303f9f: #303F9F;
    --hex-f0f0f5: #F0F0F5;
    --hex-ff9100: #FF9100;
    --hex-11002244: #11002244;
    --hex-889922: #889922;
    --hex-fffdf7: #FFFDF7;
    --hex-047857: #047857;
    --hex-56a5ff: #56A5FF;
    --hex-cf1322: #CF1322;
    --hex-558b2f: #558B2F;
    --hex-ad1457: #AD1457;
    --hex-616161: #616161;
    --hex-0960db: #0960DB;
    --hex-ffccb3: #FFCCB3;
    --hex-c17817: #C17817;
    --hex-e8dcc8: #E8DCC8;
    --hex-ffd4d0: #FFD4D0;
    --hex-e0f2fe: #E0F2FE;
    --hex-0288d1: #0288D1;
    --hex-efebe9: #EFEBE9;
    --hex-ffd5b3: #FFD5B3;
    --hex-fffaf3: #FFFAF3;
    --hex-ff7875: #FF7875;
    --hex-73d13d: #73D13D;
    --hex-faad14: #FAAD14;
    --hex-ff4081: #FF4081;
    --hex-7b1fa3: #7B1FA3;
    --hex-a16207: #A16207;
    --hex-f0f4ff: #F0F4FF;
    --hex-faf5ff: #FAF5FF;
    --hex-f89898: #F89898;
    --hex-777777: #777777;
    --hex-f7faf7: #F7FAF7;
    --hex-d7ccc8: #D7CCC8;
    --hex-80cbc4: #80CBC4;
    --hex-8d6e00: #8D6E00;
    --hex-e8ecf0: #E8ECF0;
    --hex-f0f4f8: #F0F4F8;
    --hex-0f2247: #0F2247;
    --hex-ffca28: #FFCA28;
    --hex-f0f8ff: #F0F8FF;
    --hex-e8f0f8: #E8F0F8;
    --hex-93c5fd: #93C5FD;
    --hex-111111: #111111;
    --hex-8e0000: #8E0000;
    --hex-fff8f8: #FFF8F8;
    --hex-a0522d: #A0522D;
    --hex-808080: #808080;
    --hex-880e4f: #880E4F;
    --hex-fafff8: #FAFFF8;
    --hex-e6892e: #E6892E;
    --hex-e8f8fb: #E8F8FB;
    --hex-ffe8dc: #FFE8DC;
    --hex-ffd0b8: #FFD0B8;
    --hex-ae3ec9: #AE3EC9;
    --hex-40c057: #40C057;
    --hex-e67700: #E67700;
    --hex-c92a2a: #C92A2A;
    --hex-fff9f9: #FFF9F9;
    --hex-f8fafd: #F8FAFD;
    --hex-f0f7fa: #F0F7FA;
    --hex-0077b6: #0077B6;
    --hex-5b21b6: #5B21B6;
    --hex-a61e1e: #A61E1E;
    --hex-845ef7: #845EF7;
    --hex-5f3dc4: #5F3DC4;
    --hex-0ca678: #0CA678;
    --hex-e8590c: #E8590C;
    --hex-868e96: #868E96;
    --hex-f783ac: #F783AC;
    --hex-c2255c: #C2255C;
    --hex-212529: #212529;
    --hex-ffd8d8: #FFD8D8;
    --hex-ffefef: #FFEFEF;
    --hex-f0ffd8: #F0FFD8;
    --hex-f7ffeb: #F7FFEB;
    --hex-fff0cc: #FFF0CC;
    --hex-fff7e0: #FFF7E0;
    --hex-e6f7fa: #E6F7FA;
    --hex-d4f2f7: #D4F2F7;
    --hex-eef7e8: #EEF7E8;
    --hex-dff2d4: #DFF2D4;
    --hex-ecf4ff: #ECF4FF;
    --hex-d9eaff: #D9EAFF;
    --hex-f0f5f8: #F0F5F8;
    --hex-b0c4d0: #B0C4D0;
    --hex-f9fbe7: #F9FBE7;
    --hex-ffccbc: #FFCCBC;
    --hex-450a0a: #450A0A;
    --hex-7c2d2d: #7C2D2D;
    --hex-fff8f5: #FFF8F5;
    --hex-ffb088: #FFB088;
    --hex-a1887f: #A1887F;
    --hex-4db6ac: #4DB6AC;
    --hex-ffab91: #FFAB91;
    --hex-d84315: #D84315;
    --hex-9fa8da: #9FA8DA;
    --hex-ffb4a2: #FFB4A2;
    --hex-ff6b81: #FF6B81;
    --hex-ff9a76: #FF9A76;
    --hex-ff7a18: #FF7A18;
    --hex-f7fafc: #F7FAFC;
    --hex-ed64a6: #ED64A6;
    --hex-c6f6d5: #C6F6D5;
    --hex-fed7d7: #FED7D7;
    --hex-ed8936: #ED8936;
    --hex-4caf5033: #4CAF5033;
    --hex-ff9a9e: #FF9A9E;
    --hex-fecfef: #FECFEF;
    --hex-a8edea: #A8EDEA;
    --hex-fed6e3: #FED6E3;
    --hex-d299c2: #D299C2;
    --hex-fef9d7: #FEF9D7;
    --hex-fccb90: #FCCB90;
    --hex-d57eeb: #D57EEB;
    --hex-89f7fe: #89F7FE;
    --hex-66a6ff: #66A6FF;
    --hex-edf2f7: #EDF2F7;
    --hex-e53e3e: #E53E3E;
    --hex-45b7d1: #45B7D1;
    --hex-96ceb4: #96CEB4;
    --hex-ffeaa7: #FFEAA7;
    --hex-dda0dd: #DDA0DD;
    --hex-fff1e0: #FFF1E0;
    --hex-2dd4bf: #2DD4BF;
    --hex-818cf8: #818CF8;
    --hex-9575cd: #9575CD;
    --hex-f5f5dc: #F5F5DC;
    --hex-e8e4c9: #E8E4C9;
    --hex-1890ff: #1890FF;
    --hex-ffe8d6: #FFE8D6;
    --hex-f0f9e8: #F0F9E8;
    --hex-e8f5e0: #E8F5E0;
    --hex-3d8c28: #3D8C28;
    --hex-ffe4c4: #FFE4C4;
    --hex-ffe8b0: #FFE8B0;
    --hex-fff3f3: #FFF3F3;
    --hex-ffe0c0: #FFE0C0;
    --hex-fff5cc: #FFF5CC;
    --hex-fffbe0: #FFFBE0;
    --hex-e0ffe0: #E0FFE0;
    --hex-f0fff0: #F0FFF0;
    --hex-e0e8ff: #E0E8FF;
    --hex-ffe8f0: #FFE8F0;
    --hex-fff0f5: #FFF0F5;
    --hex-f5e0ff: #F5E0FF;
    --hex-faf0ff: #FAF0FF;
    --hex-d6ffe8: #D6FFE8;
    --hex-e8fff2: #E8FFF2;
    --hex-ffe0d6: #FFE0D6;
    --hex-fff9ea: #FFF9EA;
    --hex-d6e8ff: #D6E8FF;
    --hex-eaf2ff: #EAF2FF;
    --hex-ffd8dc: #FFD8DC;
    --hex-fff0f2: #FFF0F2;
    --hex-e8d6ff: #E8D6FF;
    --hex-f5eaff: #F5EAFF;
    --hex-ffecd6: #FFECD6;
    --hex-fff8ee: #FFF8EE;
    --hex-d6ffdd: #D6FFDD;
    --hex-eafff0: #EAFFF0;
    --hex-2d2d2d: #2D2D2D;
    --hex-283593: #283593;
    --hex-e88a30: #E88A30;
    --hex-4a148c: #4A148C;
    --hex-e64a19: #E64A19;
    --hex-e57373: #E57373;
    --hex-764ba220: #764BA220;
    --hex-667eea10: #667EEA10;
    --hex-764ba210: #764BA210;
    --hex-bfc9d9: #BFC9D9;
    --hex-2d3a5c: #2D3A5C;
    --hex-ffb84d: #FFB84D;
    --hex-ffe8d5: #FFE8D5;
    --hex-ffcc02: #FFCC02;

    /* ====== 语义色系统扩展 — P0-4 阶段（2026-07-26）====== */
    /* 用途：为高频 --hex-xxx 提供语义别名，逐步替代直接 var(--hex-xxx) 引用 */
    /* ---- A. 文字色系 ---- */
    --color-text-body: var(--gray-700);             /* #374151 正文色 */
    --color-text-heading: var(--gray-900);          /* #111827 标题色 */
    --color-text-secondary: var(--gray-600);        /* #6B7280 辅助文字 */
    --color-text-tertiary: var(--gray-400);         /* #9CA3AF 次要信息 */
    --color-text-placeholder: var(--hex-94a3b8);    /* #94A3B8 占位符 */
    --color-text-disabled: var(--hex-94a3b8);       /* #94A3B8 禁用态 */
    --color-text-caption: var(--gray-400);          /* #9CA3AF 注释 */
    --color-text-white: #FFFFFF;                      /* 白色文字 */
    --color-text-link: var(--color-primary);        /* #1A56DB 链接 */
    --color-text-price: var(--color-price);         /* #DC2626 价格 */

    /* ---- B. 背景色系 ---- */
    --color-bg-page: var(--bg-page);                /* #F9FAFB 页面背景 */
    --color-bg-card: var(--bg-card);                /* #FFFFFF 卡片背景 */
    --color-bg-base: var(--gray-50);                /* #F9FAFB 基础底色 */
    --color-bg-fill: var(--gray-100);               /* #F3F4F6 填充色 */
    --color-bg-hover: var(--gray-50);               /* #F9FAFB 悬停态 */
    --color-bg-mask: rgba(0,0,0,0.5);               /* 遮罩层 */
    --color-bg-primary: var(--color-primary);       /* #1A56DB 主色背景 */
    --color-bg-primary-light: var(--color-primary-light); /* #EFF6FF 主色浅背景 */
    --color-bg-warning: var(--color-warning);       /* #D97706 警告背景 */
    --color-bg-warning-light: var(--hex-fffbeb);    /* #FFFBEB 警告浅背景 */
    --color-bg-danger-light: var(--color-charity-light); /* #FEF2F2 危险浅背景 */
    --color-bg-success-light: var(--hex-ecfdf5);    /* #ECFDF5 成功浅背景 */
    --color-bg-info-light: var(--blue-50);           /* #E3F2FD 信息浅背景 */

    /* ---- C. 边框色系 ---- */
    --color-border: var(--border-line);             /* #E5E7EB 边框 */
    --color-border-light: var(--hex-e2e8f0);        /* #E2E8F0 浅边框 */
    --color-border-focus: var(--color-primary);     /* #1A56DB 聚焦边框 */
    --color-border-divider: var(--border-line);     /* #E5E7EB 分割线 */
    --color-border-warning: var(--color-warning);   /* #D97706 警告边框 */

    /* ---- D. 状态色系（扩展） ---- */
    --color-info: var(--blue-500);                  /* #3B82F6 信息 */
    --color-info-light: var(--blue-50);             /* #E3F2FD 信息浅色 */
    --color-error: var(--color-danger);              /* #DC2626 错误 */
    --color-error-light: var(--red-50);             /* #FFEBEE 错误浅色 */
    --color-disabled: var(--gray-400);              /* #9CA3AF 禁用色 */

    /* ---- E. 标签色系 ---- */
    --color-tag-red: var(--red-100);                /* #FFCDD2 标签红 */
    --color-tag-blue: var(--blue-100);              /* #BBDEFB 标签蓝 */
    --color-tag-green: var(--green-100);            /* #C8E6C9 标签绿 */
    --color-tag-orange: var(--orange-300);          /* #FDBA74 标签橙 */
    --color-tag-purple: var(--purple-100);          /* #E1BEE7 标签紫 */
    --color-tag-text: var(--gray-700);              /* #374151 标签文字 */
    --color-tag-text-red: var(--red-700);           /* #B91C1C 红标文字 */
    --color-tag-text-blue: var(--blue-700);         /* #1D4ED8 蓝标文字 */
    --color-tag-text-green: var(--green-700);       /* #15803D 绿标文字 */

    /* ---- F. 高频历史色语义化 ---- */
    --color-text-dark: var(--hex-333333);           /* #333333 深色文字（历史 V5 兼容） */
    --color-bg-light: var(--hex-f5f7fa);            /* #F5F7FA 浅灰背景（admin 等） */
    --color-bg-dark: var(--hex-fafafa);             /* #FAFAFA 深灰背景 */
    --color-text-light: var(--hex-666666);          /* #666666 浅灰文字 */
    --color-bg-highlight: var(--hex-fff7e6);        /* #FFF7E6 高亮背景 */
    --color-bg-row-hover: var(--hex-f8fafc);        /* #F8FAFC 行悬停 */
    --color-featured-orange: var(--hex-ff8c00);     /* #FF8C00 促销橙 */
    --color-gradient-red-end: var(--hex-ff5252);    /* #FF5252 红渐变末端 */
    --color-gradient-gold-end: var(--hex-ffa500);   /* #FFA500 金渐变末端 */
    --color-gradient-purple-start: var(--hex-667eea); /* #667EEA 紫渐变起始 */
    --color-gradient-purple-end: var(--hex-764ba2);   /* #764BA2 紫渐变末端 */
    /* 高频补充语义 Token */
    --color-text-muted: var(--hex-888888);           /* #888888 次要文字 */
    --color-text-faint: var(--hex-bbbbbb);           /* #BBBBBB 浅灰文字 */
    --color-border-base: var(--hex-e0e0e0);          /* #E0E0E0 基础边框 */
    --color-border-lighter: var(--hex-f0f0f0);       /* #F0F0F0 轻边框 */
    --color-bg-subtle: var(--hex-f7f7f7);            /* #F7F7F7 灰色背景 */
}
