/* =========================================================================
   deskin.css — 「去 AI 脸」设计修正层  (Star Shield · Ink & Vermeil)
   -------------------------------------------------------------------------
   加载位置：system/index.html · agent/index.html · login/index.html 的
             **最后一个** <link>，确保在 style/theme/enhance/ui/ux2 之后覆盖。

   设计母题来自品牌自身：登录页 favicon 本就是「盾牌 + 金色星」。
   于是建立一套有立场、非默认的视觉系统：
     · 墨青 ink  —— 结构与填充（盾）
     · 赤金 vermeil —— 强调与标记（星）
   花哨只花在一个地方：那点金。其余一律克制。

   被替换掉的「AI 模板特征」：
     1. 紫靛→紫罗兰渐变品牌色 (#4338ca→#7c3aed / #5b4cf5)  → 墨青平涂
     2. 18+ 处 135deg 品牌渐变（按钮/logo/头像/开关/分页）    → 全部拉平
     3. 紫调阴影 rgba(67,56,202,.06~.22)                    → 中性收紧阴影
     4. 8~20px 圆角混用、无层级                              → 容器/控件/标记三级圆角
     5. 背景极光渐变弥散 (aurora)                            → 平涂 + 移动端账簿细网格
     6. 每张卡片都做 hover 上浮 + 过渡                        → 只改描边对比，不上浮
     7. 全大写 tracking 眉标 "ADMIN CONSOLE"                 → 见 JS 文案改动
     8. 符号当图标 ★/⚠                                        → 项目自有 SVG 图标
   回滚方式：删除三个入口里的 deskin.css 引用即可，无需改动其它文件。
   ========================================================================= */

/* =========================================================================
   1. 令牌层 —— 墨青 / 赤金
   ========================================================================= */
:root{
  /* 品牌：墨青（盾） */
  --brand-1:#123c4a;          /* 深墨青：主填充 */
  --brand-2:#123c4a;          /* 与 brand-1 同值 → 让历史渐变自动拉平 */
  --brand:#155e6e;            /* 中墨青：链接 / 激活 / 描边 */
  --brand-strong:#0d2c37;
  --brand-weak:#e7eff0;
  --brand-weak-2:#d3e3e5;

  /* 强调：赤金（星）—— 全站唯一允许"亮"的颜色 */
  --accent:#a9762b;
  --accent-soft:#f7efdf;
  --accent-line:rgba(169,118,43,.32);

  /* 语义色：去饱和，避免 AI 味的高饱和撞色 */
  --success:#1c7a52; --success-weak:#e6f3ec;
  --warn:#a9762b; --warn-weak:#f8f0e0;
  --danger:#a63d3d; --danger-weak:#f8eaea;
  --info:#2a5f8f; --info-weak:#e8eff6;
  --cyan:#1a6b73; --cyan-weak:#e5f0f1;
  --purple:#5a5470; --purple-weak:#eeecf2;   /* 刻意压暗：紫色不再是主角 */
  /* --violet 在旧代码里被当图表"卡密"系列色，但从未定义过 →
     浏览器一直回退到 #8b5cf6（正是 AI 紫）。这里给它一个明确的、非紫的值。 */
  --violet:#a9762b;

  /* 基底：冷中性，偏灰蓝 —— 不是奶油色，也不是近黑 */
  --bg:#f2f4f4; --bg-2:#e9eded;
  --surface:#ffffff; --surface-2:#f7f9f9; --surface-3:#edf1f1;
  --line:#e2e8e8; --line-strong:#ccd8d8;
  --text-1:#111f1e; --text-2:#3f5a58; --text-3:#6b8482; --text-4:#98aaa8;

  /* 圆角：建立层级（原来 8~20px 混用且无层级） */
  --radius-s:6px;    /* 标记 / 标签 */
  --radius:8px;      /* 控件：按钮 / 输入 / 分页 */
  --radius-l:12px;   /* 容器：卡片 / 面板 */
  --radius-xl:16px;  /* 浮层：弹窗 / 抽屉 */

  /* 阴影：中性、收紧 —— 原为紫色弥散 rgba(67,56,202,.06~.22) */
  --shadow-s:0 1px 2px rgba(16,38,36,.05);
  --shadow:0 1px 3px rgba(16,38,36,.07);
  --shadow-l:0 6px 18px rgba(16,38,36,.09);
  --shadow-xl:0 18px 46px rgba(16,38,36,.16);

  /* 字体：保留系统栈（生产环境不引外部字体），但补上中文与现代字形回退 */
  --font:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",
         "Hiragino Sans GB","Noto Sans CJK SC","Source Han Sans SC",
         "Microsoft YaHei UI","Microsoft YaHei",Helvetica,Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}

/* 浅色态：以同特异性 (0,1,1) 压过 ui.css 的 html:not(.dark) 块 */
html:not(.dark){
  --brand-1:#123c4a; --brand-2:#123c4a; --brand:#155e6e;
  --brand-weak:#e7eff0; --brand-weak-2:#d3e3e5;
  --accent:#a9762b; --accent-soft:#f7efdf; --accent-line:rgba(169,118,43,.32);
  --bg:#f2f4f4; --bg-2:#e9eded;
  --surface:#ffffff; --surface-2:#f7f9f9; --surface-3:#edf1f1;
  --line:#e2e8e8; --line-strong:#ccd8d8;
  --text-1:#111f1e; --text-2:#3f5a58; --text-3:#6b8482; --text-4:#98aaa8;
  --radius-s:6px; --radius:8px; --radius-l:12px; --radius-xl:16px;
  --shadow-s:0 1px 2px rgba(16,38,36,.05);
  --shadow:0 1px 3px rgba(16,38,36,.07);
  --shadow-l:0 6px 18px rgba(16,38,36,.09);
  --shadow-xl:0 18px 46px rgba(16,38,36,.16);
}

/* 暗色态：以同特异性 (0,1,1) 压过 theme.css / ui.css 的 html.dark 块 */
html.dark{
  --brand-1:#2d7f8c; --brand-2:#2d7f8c; --brand:#4fb0bd;
  --brand-strong:#0a2229;
  --brand-weak:rgba(79,176,189,.13); --brand-weak-2:rgba(79,176,189,.22);
  --accent:#d4a350; --accent-soft:rgba(212,163,80,.13); --accent-line:rgba(212,163,80,.34);
  --success:#4cbb87; --success-weak:rgba(76,187,135,.13);
  --warn:#d4a350;    --warn-weak:rgba(212,163,80,.13);
  --danger:#e8787a;  --danger-weak:rgba(232,120,122,.13);
  --info:#6aa6dd;    --info-weak:rgba(106,166,221,.13);
  --cyan:#4fb7bf;    --cyan-weak:rgba(79,183,191,.13);
  --purple:#9a94b3;  --purple-weak:rgba(154,148,179,.13);
  --bg:#0c1313; --bg-2:#101a1a;
  --surface:#141d1d; --surface-2:#1a2525; --surface-3:#213030;
  --line:#243232; --line-strong:#334646;
  --text-1:#e7efee; --text-2:#a7bcba; --text-3:#7c9391; --text-4:#5c7270;
  --shadow-s:0 1px 2px rgba(0,0,0,.40);
  --shadow:0 2px 10px rgba(0,0,0,.44);
  --shadow-l:0 8px 26px rgba(0,0,0,.52);
  --shadow-xl:0 22px 60px rgba(0,0,0,.62);
  color-scheme:dark;
}

/* =========================================================================
   2. 背景：撤掉极光弥散，改平涂 + 账簿细网格
   ========================================================================= */
html body,
html.dark body{
  background-color:var(--bg) !important;
  background-image:
    repeating-linear-gradient(0deg,  rgba(18,60,74,.028) 0 1px, transparent 1px 30px),
    repeating-linear-gradient(90deg, rgba(18,60,74,.028) 0 1px, transparent 1px 30px) !important;
  background-attachment:fixed !important;
}
html.dark body{
  background-color:var(--bg) !important;
  background-image:
    repeating-linear-gradient(0deg,  rgba(160,200,205,.030) 0 1px, transparent 1px 30px),
    repeating-linear-gradient(90deg, rgba(160,200,205,.030) 0 1px, transparent 1px 30px) !important;
  background-attachment:fixed !important;
}

::selection{background:var(--brand-weak-2) !important;color:var(--text-1) !important}
::-webkit-scrollbar-thumb{background:var(--line-strong) !important;border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:var(--brand-weak-2) !important}

/* =========================================================================
   3. 拉平全部品牌渐变 → 墨青平涂
      历史代码里渐变都引用 var(--brand-1/2)，令牌同值即自动拉平；
      下面补掉仍写死 hex 的几处。
   ========================================================================= */
.brand-logo,.login-logo,.about-logo,.app-avatar,.avatar,.avatar-sm,
.modal-head svg,.stat-icon{
  background:var(--brand-1) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:none !important;
}
.btn.primary{
  background:var(--brand-1) !important;
  background-image:none !important;
  border-color:var(--brand-1) !important;
  color:#fff !important;
  box-shadow:0 1px 2px rgba(16,38,36,.20) !important;
}
.btn.primary:hover{background:var(--brand-strong) !important;filter:none !important;
  box-shadow:0 2px 8px rgba(16,38,36,.24) !important}
.btn.primary:active{filter:none !important;transform:translateY(1px)}
.btn.success{background:var(--success) !important;border-color:var(--success) !important;
  background-image:none !important;color:#fff !important;box-shadow:none !important}
.btn.danger{background:var(--danger) !important;border-color:var(--danger) !important;
  background-image:none !important;color:#fff !important;box-shadow:none !important}
.btn.danger-ghost{background:var(--danger-weak) !important;color:var(--danger) !important;
  border-color:var(--danger-weak) !important}
.link,a{color:var(--brand)}
.page-title::before{
  background:var(--accent) !important;background-image:none !important;
  width:3px;height:14px;border-radius:1px;
}
.nav-sub.active::before,.app-card.current::after{
  background:var(--accent) !important;background-image:none !important;
}
.bar-fill{background:var(--brand) !important;background-image:none !important}
.switch.on{background:var(--brand) !important;background-image:none !important}
.pager-btn.active{background:var(--brand-1) !important;background-image:none !important;
  border-color:var(--brand-1) !important;color:#fff !important;box-shadow:none !important}
html.dark .seg button.on,
html:not(.dark) .seg button.on{
  background:var(--brand-1) !important;background-image:none !important;color:#fff !important;
}
.nav-sub.active{
  background:var(--brand-weak) !important;background-image:none !important;
  color:var(--brand) !important;box-shadow:none !important;
}
.remember input:checked+.remember-box{background:var(--brand-1) !important;background-image:none !important}

/* 底部导航激活态：撤掉紫渐变胶囊与渐变指示条 */
.bottom-nav .bn-item.active svg,
.bottom-nav .bn-item.on svg{
  background:var(--brand-weak) !important;background-image:none !important;
  transform:none !important;
}
.bottom-nav .bn-item.active::before,
.bottom-nav .bn-item.on::before{
  background:var(--accent) !important;background-image:none !important;
  width:20px;height:2px;border-radius:0 0 2px 2px;
}
.bottom-nav .bn-item.active,.bottom-nav .bn-item.on,
.bn-item.active{color:var(--brand) !important}

/* 表格 / 列表 hover：紫 → 中性 */
table.tbl tbody tr:hover,
table.data tbody tr:hover,
table.data.compact tbody tr:hover{background:var(--surface-3) !important}
table.tbl tbody tr:hover td{border-bottom-color:var(--line) !important}

/* 输入聚焦：紫 → 墨青 */
.input:focus,.select:focus,textarea.input:focus{
  border-color:var(--brand) !important;
  box-shadow:0 0 0 3px var(--brand-weak) !important;
}
.remember input:focus-visible+.remember-box{box-shadow:0 0 0 3px var(--brand-weak) !important}
.accent-color{accent-color:var(--brand)}

/* 骨架屏流动高光：降到中性，避免紫光 */
.skeleton::after{background:linear-gradient(90deg,transparent,rgba(18,60,74,.06),transparent) !important}
html.dark .skeleton::after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent) !important}

/* =========================================================================
   4. 圆角层级：浮层 16 / 容器 12 / 控件 8 / 标记 6
   ========================================================================= */
.card,.stat,.stat-card,.mini-stat,.log-item{border-radius:var(--radius-l)}
.modal{border-radius:var(--radius-xl)}
.modal-head svg,.nav-group-head,.nav-sub{border-radius:var(--radius)}
.btn{border-radius:var(--radius)}
.btn.sm{border-radius:var(--radius-s)}
.btn.lg{border-radius:var(--radius)}
.input,.select,textarea.input{border-radius:var(--radius)}
.pager-btn,.icon-btn{border-radius:var(--radius)}
.tag,.badge,.chip{border-radius:var(--radius-s)}
.avatar{border-radius:var(--radius)}
.avatar-sm{border-radius:var(--radius-s)}
.brand-logo{border-radius:10px}
.stat-icon{border-radius:var(--radius)}

/* =========================================================================
   5. 影子：只留中性描边感，去掉「每张卡片一团紫雾」
   ========================================================================= */
.card,.stat,.stat-card,.app-card{box-shadow:var(--shadow-s)}
.card:hover,.app-card:hover{box-shadow:var(--shadow)}
.modal{box-shadow:var(--shadow-xl)}

/* 反 AI 项：卡片一律不再 hover 上浮（"每张卡都弹一下"是生成式默认动作） */
.card:hover,.stat:hover,.stat-card:hover,.stat-card.clickable:hover,
.app-card:hover,.app-card.active,.stat-click:hover{
  transform:none !important;
}
.card:hover{border-color:var(--line-strong)}
.app-card:hover,.stat-card.clickable:hover{
  border-color:var(--brand) !important;box-shadow:var(--shadow) !important;
}
.app-card.active{box-shadow:none !important;border-color:var(--brand) !important}
.app-card.active::after{width:3px;background:var(--accent) !important}

/* 徽标类：统一走柔色，不用高饱和 */
.tag.brand,.card-title .count,.badge.brand{
  background:var(--brand-weak) !important;color:var(--brand) !important;
}
.tag.g,.badge.green{background:var(--success-weak) !important;color:var(--success) !important}
.tag.r,.badge.red{background:var(--danger-weak) !important;color:var(--danger) !important}
.tag.o,.badge.orange{background:var(--warn-weak) !important;color:var(--warn) !important}
.tag.b,.badge.blue{background:var(--info-weak) !important;color:var(--info) !important}
.tag.p{background:var(--purple-weak) !important;color:var(--purple) !important}
.tag.c{background:var(--cyan-weak) !important;color:var(--cyan) !important}
.badge.gray{background:var(--surface-3) !important;color:var(--text-3) !important}

/* =========================================================================
   6. 排版：给页面建立声音，而不是"默认字体栈 + 三档字号"
   ========================================================================= */
body{font-family:var(--font);-webkit-font-smoothing:antialiased;
  font-feature-settings:"kern" 1,"liga" 1;font-kerning:normal}
.topbar-title{font-weight:650;letter-spacing:-.01em}
.page-title{font-weight:650;letter-spacing:-.012em}
.card-title{font-weight:640;letter-spacing:-.006em}
.brand-name{font-weight:660;letter-spacing:-.005em}
/* 眉标去「全大写 + 拉开字距」的模板感 */
.brand-sub{font-size:10px;font-weight:500;letter-spacing:.02em;text-transform:none;
  color:var(--text-4)}
/* 数字：等宽数字对齐，便于扫读表格与金额 */
table.tbl td,.big-num,.stat b,.stat-card b,.mini-stat b,
.log-amount,.mono{font-variant-numeric:tabular-nums}
.mono,.log-item .mono{font-family:var(--mono);font-size:12px}
/* 字段提示：行内小图标（不用 flex，避免破坏原本的行内文本流与换行） */
.ico-i{
  display:inline-block;width:1em;height:1em;flex:none;
  vertical-align:-.13em;margin-right:.28em;opacity:.9;color:var(--warn);
}
.field-hint .ico-i{vertical-align:-.12em}
.field-hint b{font-weight:600}
.empty .big svg{color:var(--text-3)}

/* 行内代码：原先没有任何样式，是浏览器默认等宽体，观感粗糙 */
code,.code-pill{
  font-family:var(--mono);font-size:.92em;padding:1px 5px;border-radius:var(--radius-s);
  background:var(--surface-3);color:var(--text-1);border:1px solid var(--line);
  white-space:nowrap;
}

/* =========================================================================
   7. 强调色（赤金）：只在"标记 / 焦点 / 状态点"出现 —— 品牌的一点胆量
   ========================================================================= */
/* 品牌标：墨青方块 + 右上角一点金 */
.brand-logo{position:relative}
.brand-logo::after{
  content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 0 2px var(--brand-1);
}
.nav-sub.active .dot{background:var(--accent) !important;box-shadow:0 0 0 3px var(--accent-soft) !important}
.nav-sub.active{color:var(--brand) !important}
.nav-group.open>.nav-group-head{background:var(--brand-weak) !important;
  color:var(--brand-strong) !important;box-shadow:none !important}
.nav-group.open>.nav-group-head .g-ico{color:var(--accent) !important}
.nav-group-head .g-ico{color:var(--brand)}
.nav-sub:hover,.nav-group-head:hover{background:var(--surface-3) !important;color:var(--text-1) !important}
.nav-sub:active,.nav-group-head:active{background:var(--surface-3) !important}
.card-title svg{color:var(--brand) !important}
.bn-item.active svg{color:var(--brand-strong)}
.menu-tag{background:var(--accent) !important;color:#fff !important;border-radius:3px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ico-warn{color:var(--warn)}

/* 空状态：图标容器改素净描边，去掉发光圈 */
.empty svg,.empty-state .es-ico svg{color:var(--text-3)}
.empty svg{background:var(--surface-3) !important;box-shadow:none !important}
.empty .big svg{width:30px;height:30px;color:var(--text-3)}
.empty .big,.empty svg{filter:none !important}
html.dark .empty svg,html:not(.dark) .empty svg{background:var(--surface-3) !important}

/* 代理端小图标药丸 */
.uc-tip-ico{background:var(--success-weak) !important;color:var(--success) !important}
.uc-tip-ico.warn{background:var(--warn-weak) !important;color:var(--warn) !important}
.uc-tip-ico svg{width:12px;height:12px}

/* =========================================================================
   8. 玻璃层：把紫调虹彩换成中性冷玻璃
   ========================================================================= */
html:not(.dark){
  --g-sidebar:rgba(255,255,255,.78);
  --g-topbar:rgba(255,255,255,.72);
  --g-drawer:rgba(255,255,255,.94);
  --g-bottomnav:rgba(255,255,255,.86);
  --g-modal:rgba(255,255,255,.94);
  --g-input:rgba(255,255,255,.80);
  --g-thead:rgba(237,241,241,.94);
  --g-seg:rgba(233,237,237,.86);
  --g-soft:rgba(18,60,74,.022);
  --g-hover:rgba(18,60,74,.045);
  --g-row-hover:rgba(18,60,74,.045);
  --g-zebra:rgba(18,60,74,.018);
}
html.dark{
  --g-sidebar:rgba(16,24,24,.60);
  --g-topbar:rgba(12,19,19,.62);
  --g-drawer:rgba(16,24,24,.92);
  --g-bottomnav:rgba(12,19,19,.84);
  --g-modal:rgba(20,29,29,.90);
  --g-input:rgba(9,15,15,.50);
  --g-thead:rgba(32,44,44,.84);
  --g-seg:rgba(9,15,15,.44);
  --g-soft:rgba(255,255,255,.020);
  --g-hover:rgba(255,255,255,.045);
  --g-row-hover:rgba(79,176,189,.075);
  --g-zebra:rgba(255,255,255,.018);
  --g-mask:rgba(4,8,8,.66);
}
/* 撤掉 ui.css 给"贴边容器"加的装饰性投影（侧栏/顶栏那圈雾），
   但卡片与弹窗的层级投影必须在后面显式恢复，
   否则会被本条一起清成 none（弹窗会失去浮层感）。 */
.sidebar,.topbar,.drawer{box-shadow:none}
.sidebar{border-right:1px solid var(--line) !important}
.topbar{border-bottom:1px solid var(--line) !important;
  box-shadow:inset 0 2px 0 var(--accent) !important}
.modal{border:1px solid var(--line-strong) !important;
  box-shadow:var(--shadow-xl) !important}
.card{box-shadow:var(--shadow-s) !important}
.card:hover{box-shadow:var(--shadow) !important}
.stat,.stat-card,.app-card{box-shadow:var(--shadow-s) !important}
/* .stat:hover 在 theme.css 里带紫色辉光，特异性高于上面的单类选择器，
   必须以 html.dark / html:not(.dark) 前缀显式压掉，否则悬停仍泛紫。 */
html.dark .stat:hover,html:not(.dark) .stat:hover{
  border-color:var(--brand) !important;
  box-shadow:var(--shadow) !important;
  transform:none !important;
}

/* =========================================================================
   9. 动效克制：去掉"每张卡都淡入上浮"的生成式默认
   ========================================================================= */
#page-content{animation:none !important}
.modal{animation:deskinPop .20s cubic-bezier(.2,.8,.3,1) !important}
@keyframes deskinPop{from{opacity:0;transform:translateY(6px)}}
.modal-mask{animation:none !important}
.skeleton::after{animation-duration:1.7s}
.card,.stat,.stat-card,.app-card,.btn,.icon-btn{transition:background .15s,border-color .15s,box-shadow .15s !important}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important}
}

/* =========================================================================
   10. 登录页：账簿纸张质感，替代紫青极光
   ========================================================================= */
.login-page,
html.dark .login-page{
  background-color:var(--bg) !important;
  background-image:
    repeating-linear-gradient(0deg,  rgba(18,60,74,.030) 0 1px, transparent 1px 26px),
    repeating-linear-gradient(90deg, rgba(18,60,74,.030) 0 1px, transparent 1px 26px) !important;
  background-attachment:fixed !important;
}
html.dark .login-page{
  background-image:
    repeating-linear-gradient(0deg,  rgba(160,200,205,.032) 0 1px, transparent 1px 26px),
    repeating-linear-gradient(90deg, rgba(160,200,205,.032) 0 1px, transparent 1px 26px) !important;
}
/* 撤掉模糊光斑 */
.login-page::before,.login-page::after{display:none !important}
.login-card,
html.dark .login-card{
  background:var(--surface) !important;
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius-xl) !important;
  box-shadow:var(--shadow-xl) !important;
  padding-top:34px;
}
/* 卡片顶部一道金色标记线 —— 全页唯一"亮"的地方 */
.login-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:var(--accent);border-radius:var(--radius-xl) var(--radius-xl) 0 0;
}
.login-card{position:relative;overflow:hidden}
.login-logo{animation:none !important}
.login-title{font-weight:660;letter-spacing:-.01em}
.login-sub{color:var(--text-3)}
.login-btn{
  background:var(--brand-1) !important;background-image:none !important;
  letter-spacing:.06em;font-weight:600;border-radius:var(--radius) !important;
  box-shadow:0 1px 2px rgba(16,38,36,.22) !important;
}
.login-btn:hover{background:var(--brand-strong) !important;box-shadow:0 3px 10px rgba(16,38,36,.26) !important}
.login-btn.success{background:var(--success) !important;animation:none !important}
.role-tab{border-radius:var(--radius-s)}
.role-tab.active{color:var(--brand) !important;box-shadow:var(--shadow-s) !important}
.role-tabs{border-radius:var(--radius) !important}
#theme-float{border-radius:var(--radius) !important}
#theme-float:hover{color:var(--brand) !important;border-color:var(--brand) !important}
.captcha-img{border-radius:var(--radius) !important}
#auth-checking .spinner{border-top-color:var(--brand) !important}

/* =========================================================================
   11. 代理端专属收敛
   agent/style.css 末尾有一段「鲜艳配色增强」，里面是**硬编码紫**
   （#4338ca / #7c3aed / #5b4cf5 / #ede9fe），不引用令牌，
   因此必须逐条点掉，否则代理端会残留渐变紫（按钮/统计卡/分页/开关/标签）。
   ========================================================================= */
/* 统计卡强调块：从品牌渐变 → 墨青平涂 */
.stat.accent{
  background:var(--brand-1) !important;background-image:none !important;
  border:none !important;color:#fff !important;box-shadow:none !important;
}
/* 侧栏导航（代理端用 .nav-item） */
.nav-item.active{background:var(--brand-weak) !important;color:var(--brand) !important}
.nav-item.active .nav-badge{background:var(--brand) !important;color:#fff !important}
/* 分段控件 */
.seg button.on{color:var(--brand) !important}
/* 标签 / 徽标 / 图标底 */
.tag{background:var(--brand-weak) !important;color:var(--brand) !important}
.badge.brand{background:var(--brand-weak) !important;color:var(--brand) !important}
.stat-icon{background:var(--brand-weak) !important;color:var(--brand) !important}
.card-title svg{color:var(--brand) !important}
/* 分页器（代理端用 .pager .pbtn） */
.pager .pbtn.on{background:var(--brand) !important;border-color:var(--brand) !important;color:#fff !important}
.pager .pbtn:hover:not(:disabled){border-color:var(--brand) !important;color:var(--brand) !important}
/* 开关（代理端用 .switch input:checked + .knob） */
.switch input:checked + .knob{background:var(--brand) !important;background-image:none !important}
/* 价格/说明文字 */
.price-note b{color:var(--brand) !important}
/* 应用卡与可点统计卡 */
.app-card:hover,.stat-click:hover{
  border-color:var(--brand) !important;box-shadow:var(--shadow) !important;
}
.app-card.active{border-color:var(--brand) !important;box-shadow:none !important}
/* 底部导航（代理端） */
.bn-item.active{color:var(--brand) !important}
.bn-item.active svg{background:var(--brand-weak) !important;background-image:none !important}

/* =========================================================================
   12. 移动端：沿用既有断点，只做令牌与层级修正
   ========================================================================= */
@media (max-width:768px){
  :root{--m-radius:12px;--m-radius-sm:8px}
  html.dark{--m-radius:12px;--m-radius-sm:8px}
  .card{border-radius:var(--radius-l) !important;box-shadow:var(--shadow-s) !important}
  .stat-card{border-radius:var(--radius-l) !important}
  .modal{border-radius:var(--radius-xl) !important}
  .topbar{box-shadow:inset 0 2px 0 var(--accent) !important}
  #page-content{animation:none !important}
}
@media (max-width:400px){
  .content{padding:12px 10px 80px}
}
