/* ============================================================
   品牌设计令牌 · 睦犀软件工坊（唯一事实源 · 官网引用副本）
   9 族 × 10 阶（Brand/Coral/Gold/Teal/Success/Warning/Danger/Info/Gray）
   每阶标注 --xxx-N 与 .text-* /.bg-* /.b-* 工具类。
   改风格只动这里；组件与页面只引用 var()。
   品牌主色睦犀橙 #EF8F1F（项目决策，取代基线暖金 #D4913E）。
   ============================================================ */
:root{
  /* ===== 品牌主色（睦犀橙）10 阶 · 保留项目既有阶值 ===== */
  --brand-50:#fff8ee;   /* 浅底 */
  --brand-100:#fdf4e9;
  --brand-200:#fce6ce;
  --brand-300:#f9d6ac;
  --brand-400:#f6c184;
  --brand-500:#ef8f1f;  /* 标准 */
  --brand-600:#e07a10;  /* 按压/文字 */
  --brand-700:#b36b17;
  --brand-800:#834f11;
  --brand-900:#5b360c;

  /* ===== 辅助色 Coral（促销/秒杀/价格强调）10 阶 ===== */
  --coral-50:#fff3ee;
  --coral-100:#ffe2d8;
  --coral-200:#ffc5b2;
  --coral-300:#ffa183;
  --coral-400:#ff7a55;
  --coral-500:#ff5722;
  --coral-600:#ee4415;
  --coral-700:#c5340e;
  --coral-800:#9e2c0f;
  --coral-900:#7a2611;

  /* ===== 辅助色 Gold（会员/积分/评分/优惠券）10 阶 ===== */
  --gold-50:#fffdeb;
  --gold-100:#fff3c4;
  --gold-200:#ffe794;
  --gold-300:#ffd75c;
  --gold-400:#ffcb33;
  --gold-500:#ffb020;
  --gold-600:#e09508;
  --gold-700:#b87708;
  --gold-800:#8f5d0e;
  --gold-900:#734c11;

  /* ===== 辅助色 Teal（点缀/数据可视化/分类标签）10 阶 ===== */
  --teal-50:#f0fdfa;
  --teal-100:#ccfbf1;
  --teal-200:#99f6e4;
  --teal-300:#5eead4;
  --teal-400:#2dd4bf;
  --teal-500:#14b8a6;
  --teal-600:#0d9488;
  --teal-700:#0f766e;
  --teal-800:#115e59;
  --teal-900:#134e4a;

  /* ===== 语义色 Success（支付成功/完成/营业中）10 阶 ===== */
  --success-50:#e6f7ef;
  --success-100:#c8eddb;
  --success-200:#95dcc2;
  --success-300:#5fc7a3;
  --success-400:#46bc90;
  --success-500:#36b37e;  /* 标准 */
  --success-600:#2a9b6c;
  --success-700:#1f7a54;
  --success-800:#165c3f;
  --success-900:#0e3f2b;

  /* ===== 语义色 Warning（待接单/超时预警）10 阶 ===== */
  --warning-50:#fff4e0;
  --warning-100:#ffe9c2;
  --warning-200:#ffd699;
  --warning-300:#ffc266;
  --warning-400:#ffb340;
  --warning-500:#ffab00;
  --warning-600:#e09000;
  --warning-700:#b37000;
  --warning-800:#855400;
  --warning-900:#573600;

  /* ===== 语义色 Danger（删除/退款失败/错误）10 阶 ===== */
  --danger-50:#ffe9e3;
  --danger-100:#ffd3c9;
  --danger-200:#ffa793;
  --danger-300:#ff7a5c;
  --danger-400:#ff6a47;
  --danger-500:#ff5630;
  --danger-600:#e8401c;
  --danger-700:#bf3116;
  --danger-800:#962613;
  --danger-900:#6e1c10;

  /* ===== 语义色 Info（进行中/配送/链接/说明）= 原辅助品牌色 ===== */
  --info-50:#e8efff;
  --info-100:#c9dbff;
  --info-200:#9cbcff;
  --info-300:#6f9dff;
  --info-400:#4f86ff;
  --info-500:#2f6bff;
  --info-600:#1f54e0;
  --info-700:#1740b0;
  --info-800:#14328a;
  --info-900:#0f2466;

  /* ===== 中性灰 Gray 10 阶 ===== */
  --gray-50:#f7f5f0;
  --gray-100:#f0ede6;
  --gray-200:#e2e5ea;
  --gray-300:#d7dae0;
  --gray-400:#9ca3af;
  --gray-500:#7b828c;
  --gray-600:#6b7280;
  --gray-700:#494f57;
  --gray-800:#2a2e36;
  --gray-900:#0c0e14;

  /* 中性语义别名（保留，manage/uniapp 不受影响） */
  --bg:#ffffff;
  --surface:var(--gray-50);
  --surface-2:var(--gray-100);
  --line:var(--gray-200);
  --line-soft:var(--gray-100);
  --text:var(--gray-900);
  --text-soft:var(--gray-600);
  --text-faint:var(--gray-400);

  /* 语义浅底别名（保留） */
  --success-bg:var(--success-50);
  --warning-bg:var(--warning-50);
  --danger-bg:var(--danger-50);
  --info-bg:var(--info-50);

  /* 语义主色单值别名（供组件直接引用，对应各色标准阶 500） */
  --brand:var(--brand-500);
  --success:var(--success-500);
  --warning:var(--warning-500);
  --danger:var(--danger-500);
  --info:var(--info-500);

  /* 辅助品牌色别名（保留，原 brand-2 = info） */
  --brand-2-100:var(--info-100);
  --brand-2-200:var(--info-200);
  --brand-2-300:var(--info-300);
  --brand-2-400:var(--info-400);
  --brand-2-500:var(--info-500);
  --brand-2-600:var(--info-600);
  --brand-2-700:var(--info-700);
  --brand-2-800:var(--info-800);
  --brand-2-900:var(--info-900);

  /* 价格色（额外语义，不进 9 族） */
  --price:#e8552d;
  --price-bg:#fdeee8;

  /* 字体 */
  --font-ui:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --fs-12:12px; --fs-13:13px; --fs-14:14px; --fs-15:15px; --fs-17:17px; --fs-20:20px;
  --fw-400:400; --fw-500:500; --fw-600:600; --fw-700:700;
  --lh-tight:1.3; --lh-base:1.5;

  /* 间距（8rpx 基线网格 = 预览 4px；4/8 步进，含 20 补全） */
  --sp-4:4px; --sp-8:8px; --sp-12:12px; --sp-16:16px; --sp-20:20px; --sp-24:24px; --sp-32:32px;

  /* 圆角（8rpx 倍数：8/16/24/32/40rpx = 预览 4/8/12/16/20px） */
  --r-sm:8px; --r-md:12px; --r-lg:16px; --r-xl:20px; --r-pill:999px;

  /* 阴影（elevation） */
  --sh-0:none;
  --sh-1:0 1px 2px rgba(42,29,12,.04), 0 2px 8px rgba(42,29,12,.04);
  --sh-2:0 4px 16px rgba(42,29,12,.08);
  --sh-3:0 8px 32px rgba(42,29,12,.12);

  /* 暗黑（管理端左侧二级菜单）· 与奶油底形成对比，品牌橙做强调 */
  --dark-bg:#1f2430;
  --dark-surface:#272d3a;
  --dark-line:rgba(255,255,255,.08);
  --dark-text:#eef0f3;
  --dark-text-soft:#c2c8d2;
  --dark-text-faint:#828b99;
  --dark-hover:rgba(255,255,255,.06);
  --dark-active-bg:rgba(239,143,31,.16);
  --dark-active-text:#ff9d33;

  /* 动效 */
  --motion:160ms cubic-bezier(.4,0,.2,1);

  /* 第三方渠道品牌色（仅第三方渠道相关组件使用，不与自有品牌色混用） */
  --wx-brand:#07c160;   --wx-brand-soft:#e8f8ef;   /* 微信绿 */
  --ali-brand:#1677ff;  --ali-brand-soft:#e8f1ff;  /* 支付宝蓝 */
}

/* ============================================================
   颜色工具类（9 族 × 10 阶）· 与 design-tokens.css 同事实源
   .text-xxx-N 文字色 / .bg-xxx-N 背景色 / .b-xxx-N 边框色
   ============================================================ */
.text-brand-500{color:var(--brand-500)}.bg-brand-500{background:var(--brand-500)}.b-brand-500{border-color:var(--brand-500)}
.text-brand-600{color:var(--brand-600)}.bg-brand-600{background:var(--brand-600)}.b-brand-600{border-color:var(--brand-600)}
.text-brand-50{color:var(--brand-50)}.bg-brand-50{background:var(--brand-50)}.b-brand-50{border-color:var(--brand-50)}
.text-brand-200{color:var(--brand-200)}.bg-brand-200{background:var(--brand-200)}.b-brand-200{border-color:var(--brand-200)}

.text-teal-500{color:var(--teal-500)}.bg-teal-500{background:var(--teal-500)}.b-teal-500{border-color:var(--teal-500)}
.text-teal-600{color:var(--teal-600)}.bg-teal-600{background:var(--teal-600)}.b-teal-600{border-color:var(--teal-600)}
.text-teal-50{color:var(--teal-50)}.bg-teal-50{background:var(--teal-50)}.b-teal-50{border-color:var(--teal-50)}

.text-coral-500{color:var(--coral-500)}.bg-coral-500{background:var(--coral-500)}.b-coral-500{border-color:var(--coral-500)}

.text-gold-500{color:var(--gold-500)}.bg-gold-500{background:var(--gold-500)}.b-gold-500{border-color:var(--gold-500)}

.text-success-500{color:var(--success-500)}.bg-success-500{background:var(--success-500)}.b-success-500{border-color:var(--success-500)}
.text-success-bg{background:var(--success-bg)}

.text-warning-500{color:var(--warning-500)}.bg-warning-500{background:var(--warning-500)}.b-warning-500{border-color:var(--warning-500)}
.text-warning-bg{background:var(--warning-bg)}

.text-danger-500{color:var(--danger-500)}.bg-danger-500{background:var(--danger-500)}.b-danger-500{border-color:var(--danger-500)}

.text-info-500{color:var(--info-500)}.bg-info-500{background:var(--info-500)}.b-info-500{border-color:var(--info-500)}
.text-info-bg{background:var(--info-bg)}

.text-gray-400{color:var(--gray-400)}.bg-gray-400{background:var(--gray-400)}.b-gray-400{border-color:var(--gray-400)}
.text-gray-500{color:var(--gray-500)}.bg-gray-500{background:var(--gray-500)}.b-gray-500{border-color:var(--gray-500)}
.text-gray-600{color:var(--gray-600)}.bg-gray-600{background:var(--gray-600)}.b-gray-600{border-color:var(--gray-600)}
.text-gray-700{color:var(--gray-700)}.bg-gray-700{background:var(--gray-700)}.b-gray-700{border-color:var(--gray-700)}
.text-gray-900{color:var(--gray-900)}.bg-gray-900{background:var(--gray-900)}.b-gray-900{border-color:var(--gray-900)}

/* 通用文字/背景工具 */
.text-soft{color:var(--text-soft)}
.text-faint{color:var(--text-faint)}
.text-muted{color:var(--text-faint)}
.bg-surface{background:var(--surface)}
.bg-surface-2{background:var(--surface-2)}
.bg-white{background:var(--bg)}
.b-line{border-color:var(--line)}
