/* ════════════════════════════════════════════════════════════════
   CRM 视觉体系 v2 · PRD-202（松哥 2026-09-24「全家桶升级」）
   设计语言对齐 目标拆解玻璃刷新（09-22 targets-glass）与经营看板：
   三色光斑舞台 + 玻璃卡片 + 蓝紫渐变 + 数字等宽（tabular-nums）。
   · 所有规则挂在 body.v2 作用域下——页面按 <body class="v2"> 逐个 opt-in，
     未升级页（登录/看板/门户/leads/ERP）零影响。
   · 壳层导航、深色侧栏、纯白顶栏为 PRD-130/132/138/139 测试锁死项，本文件不碰。
   · 选择器权重 body.v2 .x（2 类）天然压过页内旧规则 .x（1 类），无需 !important。
   ════════════════════════════════════════════════════════════════ */

/* ── 舞台：三色光斑（蓝/紫/青，低透明度） ── */
body.v2 {
  background:
    radial-gradient(1000px 560px at 6% -8%, rgba(45,108,223,.22), transparent 58%),
    radial-gradient(820px 460px at 96% 2%, rgba(124,58,237,.18), transparent 58%),
    radial-gradient(760px 460px at 50% 112%, rgba(6,182,212,.14), transparent 58%),
    #f4f5f9;
  font-variant-numeric: tabular-nums;
}
/* crm.html 壳内 iframe（?embed=1）：壳自带底色，光斑免挂防双重背景 */
html.embed body.v2 { background: #f6f7fb; }

/* ── 玻璃卡片 ── */
body.v2 .mgmt-panel,
body.v2 .account-card,
body.v2 .card,
body.v2 .tablewrap {
  background: rgba(255,255,255,.74);
  -webkit-backdrop-filter: blur(18px) saturate(1.5);
  backdrop-filter: blur(18px) saturate(1.5);
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 18px;
  box-shadow: 0 8px 28px rgba(30,41,90,.07);
}

/* ── 标题层级：渐变字 + 字距 ── */
body.v2 h2, body.v2 h3 { letter-spacing: .01em; }
body.v2 .container > h2 { color: transparent; background: linear-gradient(90deg,#1e3a8a,#6d28d9); -webkit-background-clip: text; background-clip: text; border-left-color: #7c3aed; }
body.v2 .v2-listhead h2 { color: transparent; }

/* ── 表格：渐变表头 + 斑马 + 悬停 ── */
body.v2 thead th {
  background: linear-gradient(90deg, rgba(45,108,223,.10), rgba(124,58,237,.10));
  color: #37306b;
  border-bottom: 1px solid rgba(124,58,237,.18);
}
body.v2 tbody tr:nth-child(odd) > td { background: rgba(99,102,241,.05); }
body.v2 tbody tr:nth-child(even) > td { background: rgba(255,255,255,.42); }
body.v2 tbody tr:hover > td { background: rgba(224,231,255,.9); }

/* ── 按钮分级：唯一主操作=蓝紫渐变；次级/行内=柔和胶囊 ── */
body.v2 button:not(.secondary):not(.chip-x):not(.th-filter-btn):not(.filter-opt):not(.btn-del-sm):not(.btn-disable):not(.btn-rename):not(.btn-reset):not(.btn-kpi) {
  background: linear-gradient(135deg,#2563eb,#7c3aed);
  box-shadow: 0 4px 14px rgba(76,70,210,.26);
}
body.v2 button:not(.secondary):not(.chip-x):not(.th-filter-btn):not(.filter-opt):not(.btn-del-sm):not(.btn-disable):not(.btn-rename):not(.btn-reset):not(.btn-kpi):hover {
  background: linear-gradient(135deg,#1d4ed8,#6d28d9);
}
body.v2 button.secondary { background: rgba(255,255,255,.72); color: #475569; border: 1px solid #dbe1ea; box-shadow: none; }
body.v2 .btn-del-sm,
body.v2 .btn-disable {
  background: #fff1f2; color: #be123c; border: 1px solid #fecdd3;
  padding: 5px 12px; font-size: 12px; border-radius: 999px; font-weight: 600; box-shadow: none;
}
body.v2 .btn-del-sm:hover, body.v2 .btn-disable:hover { background: #ffe4e6; filter: none; transform: none; }
body.v2 .btn-rename {
  background: #eef4ff; color: #1d4ed8; border: 1px solid #dbe7ff;
  padding: 5px 12px; font-size: 12px; border-radius: 999px; font-weight: 600; box-shadow: none;
}
body.v2 .btn-reset {
  background: #f4f6fa; color: #475569; border: 1px solid #e2e8f0;
  padding: 5px 12px; font-size: 12px; border-radius: 999px; font-weight: 600; box-shadow: none;
}
body.v2 .btn-kpi {
  background: linear-gradient(135deg,rgba(37,99,235,.12),rgba(124,58,237,.14));
  color: #4338ca; border: 1px solid rgba(99,102,241,.3);
  padding: 5px 14px; font-size: 12px; border-radius: 999px; font-weight: 700; box-shadow: none;
}
body.v2 .btn-kpi:hover { filter: brightness(.97); transform: none; }

/* ── 表单控件：玻璃底 + 蓝紫聚焦环 ── */
body.v2 input:not([type=checkbox]), body.v2 select, body.v2 textarea {
  background: rgba(255,255,255,.85); border: 1.5px solid #e2e8f0; border-radius: 10px;
}
body.v2 input:focus, body.v2 select:focus, body.v2 textarea:focus {
  border-color: #6366f1; outline: none; box-shadow: 0 0 0 3px rgba(99,102,241,.15);
}

/* ── 组别 chips / 角色徽章：玻璃胶囊 ── */
body.v2 .chip { background: rgba(255,255,255,.88); border-color: #e0e7ff; color: #3b3f6b; box-shadow: 0 1px 4px rgba(67,56,202,.07); }
body.v2 .badge-role { background: linear-gradient(135deg,rgba(37,99,235,.12),rgba(124,58,237,.14)); color: #4338ca; border: 1px solid rgba(99,102,241,.25); }

/* ── 配置折叠抽屉（销售管理：新增/组别 降级入口） ── */
body.v2 details.v2-cfg { margin: 0 0 20px; }
body.v2 details.v2-cfg > summary {
  list-style: none; cursor: pointer; user-select: none;
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 18px; border-radius: 999px; font-size: 13px; font-weight: 600; color: #475569;
  background: rgba(255,255,255,.82); border: 1px solid #e3e8f3;
  box-shadow: 0 2px 8px rgba(30,41,90,.06);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  transition: color .18s, border-color .18s, background .18s;
}
body.v2 details.v2-cfg > summary:hover { color: #4338ca; border-color: #c7d2fe; }
body.v2 details.v2-cfg[open] > summary { color: #4338ca; border-color: #c7d2fe; background: #f5f6ff; margin-bottom: 14px; }
body.v2 details.v2-cfg > summary::-webkit-details-marker { display: none; }

/* ── 名单头行：标题 + 搜索框 同行两端 ── */
body.v2 .v2-listhead { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
body.v2 .v2-listhead h2 { margin-bottom: 0 !important; }
body.v2 .v2-search {
  padding: 8px 14px; border-radius: 999px; border: 1.5px solid #e2e8f0;
  font-size: 13px; min-width: 240px; background: rgba(255,255,255,.85);
  transition: border-color .18s, box-shadow .18s;
}
body.v2 .v2-search:focus { border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99,102,241,.14); }

/* ── 通知条轻玻璃化 ── */
body.v2 .msg { -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-radius: 12px; }
