/* 金诚国际业务管理系统 · 深色主题（2026-10-03 用户裁定：不喜欢浅色，深藏青+金色，专业稳重） */
:root{
  --side-bg:#0d1524; --side-bg2:#101c30; --main-c:#6ea3e8; --side-txt:#c9d6ea; --side-txt2:#7387a3;
  --gold:#c9a45c; --gold-strong:#d8b76d; --gold-soft:rgba(201,164,92,.16);
  --bg:#080e19; --card:#182338; --card2:#212c44; --line:#2c3b58; --txt:#dde6f4; --txt2:#93a6c4;
  --view-bg1:#0b1421; --view-bg2:#080e19;
  --row-odd:#17243b; --row-even:#304867; --row-hover:#415b86;
  --blue:#4f86d6; --blue-soft:rgba(79,134,214,.16);
  --green:#3cb878; --red:#e06c5f; --orange:#e0a04a;
  --radius:10px; --shadow:0 4px 18px rgba(0,0,0,.35);
  --font-ui:"Microsoft YaHei","PingFang SC","Segoe UI",sans-serif; --fs-base:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font-ui);background:var(--bg);color:var(--txt);font-size:var(--fs-base)}
.hidden{display:none!important}
button{font-family:inherit}
::selection{background:rgba(201,164,92,.35)}

/* ---------- 登录 ---------- */
/* 批次六十三：登录页整体改为公司司标色系——深宝蓝藏青（取色自司标横版截图 #16294f 系）+ 金色 */
.login-wrap{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(1100px 620px at 18% -8%,#24407a 0%,transparent 58%),linear-gradient(135deg,#0e1b38 0%,#16294f 55%,#1d315f 100%)}
/* 批次四十六：登录卡排版行间距优化——标题/副标题/提示区呼吸感更好 */
.login-card{width:400px;background:linear-gradient(180deg,#1a2d58 0%,#152449 100%);border:1px solid #2e4676;border-radius:14px;padding:42px 38px 32px;box-shadow:0 24px 80px rgba(4,10,24,.6);text-align:center}
.login-logo{width:64px;height:64px;border-radius:12px;margin-bottom:18px}
.login-card h1{font-size:20px;letter-spacing:2px;color:#f0cd7a;margin:2px 0 0;line-height:1.55;text-shadow:0 0 1px rgba(240,205,122,.5)}
.login-card .sub{color:#c3d2ea;font-size:12px;margin:10px 0 26px;line-height:1.75}
.err{color:var(--red);font-size:12px;min-height:18px;margin-top:10px}
/* 批次六十四：登录表单纵向布局（修复历史遗留 label 与输入框挤叠；手机/桌面统一） */
.login-card .form-row{display:block;text-align:left;margin-bottom:12px}
.login-card .form-row label{display:block;font-size:12.5px;color:#f0cd7a;margin-bottom:5px;font-weight:600}
.login-card .form-row input{width:100%}
.demo-tip{margin-top:18px;padding:12px 12px;background:var(--gold-soft);border:1px solid rgba(201,164,92,.3);border-radius:8px;color:var(--gold-strong);font-size:12px;line-height:1.9}

/* ---------- 布局 ---------- */
.app{display:flex;min-height:100vh}
.sidebar{width:224px;background:linear-gradient(180deg,var(--side-bg) 0%,var(--side-bg2) 100%);color:var(--side-txt);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;border-right:1px solid var(--line)}
.main{margin-left:224px;flex:1;min-width:0}
/* 工作区（内容区）：比顶栏/侧栏更深，让卡片与表格成为视觉主体 */
.view{padding:10px 26px 36px;min-height:calc(100vh - 54px);background:linear-gradient(180deg,var(--view-bg1) 0%,var(--view-bg2) 100%)}
.topbar h2{display:flex;align-items:center;justify-content:center;flex:1;text-align:center}.top-user{font-size:10px;color:var(--txt2);margin-left:8px;white-space:nowrap}.stat-sub{font-size:11px;color:var(--txt2);margin-top:5px}.stat-sub b{color:var(--gold-strong)}
.overdue-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
/* 操作栏按钮：与「详情」蓝色实心按钮明确区分 —— 采用描边风格 */
.btn.okbtn{background:transparent;border:1px solid var(--green);color:#5fd39b;font-weight:600}
.btn.okbtn:hover{background:rgba(60,184,120,.16);color:#7fe0b0}
.btn.rejbtn{background:transparent;border:1px solid var(--red);color:#ff9d92;font-weight:600}
.btn.rejbtn:hover{background:rgba(224,108,95,.16);color:#ffb3a8}
.btn.goldbtn{background:transparent;border:1px solid var(--gold);color:var(--gold-strong);font-weight:600}
.btn.goldbtn:hover{background:var(--gold-soft);color:#e8c988}
[data-theme="light"] .btn.okbtn{color:#177a52}
[data-theme="light"] .btn.rejbtn{color:#b03a2b}
[data-theme="light"] .btn.goldbtn{color:#8a6a2f}
/* 彩色表头：按列语义着色（类名；需压过 [data-theme=light] .tbl th 的变量方案） */
.tbl thead th.t0,.tbl th.t0{background:#1e3a5f!important;color:#cfe2ff!important;border-bottom:2px solid #2f5c96}
.tbl thead th.t1,.tbl th.t1{background:#2d4a3e!important;color:#c9ecd8!important;border-bottom:2px solid #3d6b58}
.tbl thead th.t2,.tbl th.t2{background:#5a3a52!important;color:#f0d4e6!important;border-bottom:2px solid #7d5170}
.tbl thead th.t3,.tbl th.t3{background:#5c4326!important;color:#f5e0bd!important;border-bottom:2px solid #87663a}
.tbl thead th.t4,.tbl th.t4{background:#2f4858!important;color:#cfe6f2!important;border-bottom:2px solid #456a80}
.tbl thead th.t5,.tbl th.t5{background:#553040!important;color:#f7d4d8!important;border-bottom:2px solid #7a4559}
.tbl thead th{text-align:center;vertical-align:middle}
.tbl th.sortable{cursor:pointer;user-select:none}
.tbl th.sortable:hover{filter:brightness(1.22)}
.tbl th .sortarrow{font-size:9px;opacity:.65;margin-left:4px;vertical-align:middle}
.tbl th.sortable.on{box-shadow:inset 0 -3px 0 var(--gold)}
.tbl th.sortable.on .sortarrow{opacity:1;color:var(--gold-strong)}
/* 操作列不换行、按钮紧凑 */
.tbl td.ops{white-space:normal;min-width:230px;line-height:2}
/* 可选按钮（未选中也给有色框，便于识别） */
/* ★★批次八十八修（用户 2026-10-11「员工档案库在职/离职按钮没做出来」根因）：
   本条选择器特异性＝7 个类（0,7,0），压过了 `.btn.seg`(0,2,0) 与 `.btn.seg.on`(0,3,0)，
   导致分段按钮无论选中与否都被强制成「白底深字」——看上去像纯文字，不是按钮。
   修复：把 .seg 一并排除（分段按钮由下方 .btn.seg / .btn.seg.on 专职负责）。 */
.btn:not(.primary):not(.gold):not(.danger):not(.detail):not(.minia):not(.back):not(.seg){
  border-color:var(--line);background:var(--card2);color:var(--txt);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.btn:not(.primary):not(.gold):not(.danger):not(.detail):not(.minia):not(.back):not(.seg):hover{border-color:var(--blue);box-shadow:0 0 0 2px rgba(79,134,214,.22)}
/* 筛选器（待审批/已审批/全部等）未选中也给有色框 */
.btn.seg{border:1px solid var(--line);background:var(--card2);color:var(--txt2);min-width:74px;justify-content:center}
.btn.seg:hover{border-color:var(--blue);color:var(--txt)}
.btn.seg.on{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:600}
[data-theme="light"] .btn.seg.on{color:#fff}
/* 录入方式/模式切换按钮：未选中也有框 */
.entry-mode-btn{border:1px solid var(--line);background:var(--card2);color:var(--txt)}
.entry-mode-btn:hover{border-color:var(--blue)}
.entry-mode-btn.on{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:600}
[data-theme="light"] .entry-mode-btn.on{color:#fff}
/* 操作按钮点击后短暂高亮反馈（搜索/批量上传等）；返回列表红色反馈 */
.btn.flash{background:var(--blue)!important;border-color:var(--blue)!important;color:#fff!important}
.btn.flash-red{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}
a.rowlink-btn{color:var(--blue);cursor:pointer;text-decoration:underline}
[data-theme="light"] .topbar h2{color:#8a6a2f}
[data-theme="light"] .toast{background:#fff;border-color:#cbd5df;color:#1c2b3d}
[data-theme="light"] .toast.err{background:#fdecea;border-color:#e0b4ae;color:#8c2f24}
[data-theme="light"] .modal-mask{background:rgba(28,43,61,.35)}
@media(max-width:1100px){.overdue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.overdue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 图表图例：色块 + 说明，替代长串文字 */
.chart-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:-4px 0 8px;padding:0 2px}
.chart-legend .lg{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--txt2)}
.chart-legend .sw-bar{width:11px;height:11px;border-radius:2px;background:linear-gradient(180deg,var(--gold-strong),var(--gold));display:inline-block}
.chart-legend .sw-line{width:16px;height:0;border-top:2px solid var(--blue);display:inline-block;position:relative}
.chart-legend .sw-line::after{content:'';position:absolute;left:5px;top:-3px;width:6px;height:6px;border-radius:50%;background:var(--card);border:2px solid var(--blue)}
.chart-legend .sw-dash{width:16px;height:0;border-top:2px dashed var(--gold);display:inline-block}
.chart-legend .lg-note{color:var(--txt2);opacity:.75;font-size:11.5px}
[data-theme="light"] .chart-legend .lg{color:#4c5c70;font-weight:600}

/* ---------- 左侧品牌区：LOGO + 中英文名称（简洁专业） ---------- */
/* 批次六十三：品牌区改司标同款藏青底 + 金色描边（与登录页同一色系） */
.side-brand{display:flex;align-items:center;gap:11px;padding:16px 16px 12px;background:linear-gradient(135deg,#1e3260 0%,#152449 100%);border-bottom:1px solid rgba(201,164,92,.38)}
.side-brand img{width:34px;height:34px;flex:0 0 34px;object-fit:contain}
.sb-text{min-width:0;line-height:1.25}
/* 批次八十六（用户令）：LOGO 文字改「金色」——原来 #d8b76d 在藏青底上偏淡、看起来像白字，
   改用更饱和的亮金 + 极轻微金色描边，确保一眼可辨为金色（深浅主题都生效） */
.side-brand b{display:block;color:#f0cd7a;font-size:13.5px;letter-spacing:.3px;font-weight:700;white-space:nowrap;text-shadow:0 0 1px rgba(240,205,122,.55),0 1px 0 rgba(0,0,0,.18)}
.sb-sub{display:block;font-size:8.5px;color:#e0b95f;letter-spacing:.6px;white-space:nowrap;margin-top:2px}
.sb-channel{margin:0 12px 8px;padding:5px 10px;border:1px solid var(--line);border-radius:6px;font-size:11.5px;color:var(--gold-strong);letter-spacing:3px;text-align:center;background:var(--gold-soft)}

#nav{flex:1;padding:6px 10px 10px;overflow-y:auto;overflow-x:hidden}
#nav::-webkit-scrollbar{width:5px}
#nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}
/* 菜单项：单色线性图标 + 文字，选中整行浅金底 + 左侧金条 */
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:7px;cursor:pointer;color:var(--side-txt2);font-size:13.5px;margin-bottom:1px;position:relative;transition:background .15s,color .15s}
.nav-item:hover{background:rgba(201,164,92,.08);color:var(--txt)}
.nav-item.active{background:linear-gradient(90deg,rgba(201,164,92,.20),rgba(201,164,92,.05));color:var(--gold-strong);font-weight:600}
.nav-item.active::before{content:'';position:absolute;left:-10px;top:7px;bottom:7px;width:3px;border-radius:0 2px 2px 0;background:var(--gold)}
.nav-ico{width:17px;height:17px;flex:0 0 17px;opacity:.85}
.nav-item.active .nav-ico{opacity:1;color:var(--gold-strong)}
.nav-tx{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 分组标题：金色小竖线 + 提亮字号与字距；批次六十三：模块名可点击收起/展开本组菜单 */
.nav-group{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--side-txt2);padding:15px 12px 6px;letter-spacing:1.6px;font-weight:600;cursor:pointer;user-select:none}
.nav-group:hover{color:var(--gold-strong)}
.nav-group .ng-bar{width:2px;height:11px;background:var(--gold);opacity:.75;border-radius:1px;flex:0 0 2px}
.nav-group .ng-arrow{width:12px;height:12px;flex:0 0 12px;margin-left:auto;opacity:.55;transition:transform .18s}
.nav-group.g-closed .ng-arrow{transform:rotate(-90deg)}
.nav-group.g-closed .ng-bar{opacity:.35}
.nav-group.g-closed .ng-tx{opacity:.7}
html[data-theme="light"] .nav-group{color:#6b7c90}

/* 折叠按钮 */
.side-fold{display:flex;align-items:center;gap:8px;margin:0 12px 8px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--side-txt2);font-size:11.5px;cursor:pointer;font-family:inherit;transition:.15s}
.side-fold:hover{border-color:var(--gold);color:var(--gold-strong)}
.side-fold svg{width:15px;height:15px;flex:0 0 15px;transition:transform .2s}
.side-fold span{white-space:nowrap;overflow:hidden}

/* 折叠态：只留图标 */
body.side-folded .sidebar{width:60px}
body.side-folded .main{margin-left:60px}
body.side-folded .side-brand{justify-content:center;padding:14px 0 10px}
body.side-folded .sb-text,body.side-folded .sb-channel,body.side-folded .nav-tx,
body.side-folded .side-fold span,body.side-folded .u-meta{display:none}
body.side-folded .side-fold{justify-content:center;margin:0 8px 8px;padding:6px 0}
body.side-folded .nav-item{justify-content:center;padding:10px 0}
body.side-folded .nav-group{justify-content:center;padding:12px 0 5px;cursor:default}
body.side-folded .nav-group .ng-bar{display:none}
body.side-folded .nav-group .ng-arrow{display:none}
body.side-folded .nav-group{font-size:0}
body.side-folded .nav-item.active::before{left:-6px}
body.side-folded .side-user{justify-content:center;padding:12px 0}
body.side-folded .u-meta{display:none}
[data-theme="light"] .side-fold{color:#5b6b7b}
[data-theme="light"] .nav-item{color:#3d4f63}

.side-user{display:flex;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--line)}
.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#a8873f);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.u-meta b{display:block;color:#eef3fa;font-size:13px}
.u-meta span{font-size:11px;color:var(--side-txt2)}
/* 批次六十三：品牌区为司标藏青底，浅色主题下金字/副题也固定为亮金与浅蓝，保证在深底上可读 */
/* 批次八十六：与深色主题统一为饱和亮金（原来用 --gold-strong 偏淡，视觉上近似白字） */
[data-theme="light"] .side-brand b{color:#f0cd7a}
[data-theme="light"] .side-brand .sb-sub{color:#e0b95f}
html[data-theme="light"] .u-meta b{color:#1c2b3d}
html[data-theme="light"] .nav-group{color:#6b7c90}
.icon-btn{margin-left:auto;background:none;border:none;color:var(--side-txt2);font-size:16px;cursor:pointer;padding:4px}
.icon-btn:hover{color:var(--gold-strong)}

/* ---------- 顶栏用户胶囊（方案A） ---------- */
.user-chip{display:flex;align-items:center;gap:8px;padding:4px 11px 4px 4px;border:1px solid var(--line);border-radius:20px;background:var(--card2);cursor:default;max-width:250px}
.user-chip:hover{border-color:var(--gold)}
.uc-av{width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#a8873f);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700}
.uc-txt{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.uc-txt b{font-size:12.5px;color:var(--txt);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.uc-txt i{font-size:10.5px;color:var(--txt2);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-theme="light"] .uc-txt b{color:#16283d}
[data-theme="light"] .uc-txt i{color:#5a6b80}
.btn.ico-btn{display:inline-flex;align-items:center;gap:4px}

/* ---------- 顶栏：标题真正居中（三段栅格：左信息 / 中标题 / 右操作） ---------- */
.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:10px 22px;background:var(--card);border-bottom:1px solid var(--line);min-height:52px}
.topbar h2{font-size:17px;letter-spacing:1px;color:var(--gold-strong);font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-left{display:flex;align-items:center;justify-content:flex-start;min-width:0}
.tb-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
.top-user{font-size:11.5px;color:var(--txt2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}
.env-badge{font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--gold);background:var(--gold-soft);border:1px solid rgba(201,164,92,.45);padding:3px 10px;border-radius:20px;white-space:nowrap}

/* ---------- 通用组件 ---------- */
.btn{border:1px solid var(--line);background:var(--card2);color:var(--txt);padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;transition:.15s}
.btn:hover{border-color:var(--blue);color:#a8c8f0}
.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}
.btn.primary:hover{opacity:.9;color:#fff}
.btn.gold{background:linear-gradient(135deg,var(--gold),#b08c45);border-color:var(--gold);color:#fff}
.btn.gold:hover{opacity:.92;color:#fff}
.btn.danger{color:#ff9d92;border-color:#573030}
.btn.danger:hover{background:rgba(224,108,95,.12);border-color:var(--red);color:#ff9d92}
.btn.sm{padding:4px 10px;font-size:12px;border-radius:6px}
.btn.block{width:100%;padding:11px;font-size:15px;letter-spacing:6px}
/* 批次三十二：返回列表按钮统一有色背景（橙金色，与主题呼应） */
.btn.back{background:rgba(224,164,74,.16);border-color:var(--orange);color:#f0b968;font-weight:600}
.btn.back:hover{background:var(--orange);border-color:var(--orange);color:#fff}
[data-theme="light"] .btn.back{background:rgba(224,164,74,.13);color:#b0751f}
[data-theme="light"] .btn.back:hover{background:var(--orange);border-color:var(--orange);color:#fff}
/* 详情按钮：蓝色小巧按钮（表格每行最左） */
.btn.detail{padding:2px 9px;font-size:11.5px;border-radius:5px;background:var(--blue);border-color:var(--blue);color:#fff;white-space:nowrap;font-weight:500}
.btn.detail:hover{background:#3f74c4;border-color:#3f74c4;color:#fff}
[data-theme="light"] .btn.detail{color:#fff}
/* 审批中心：效率提示 + 抄送按钮 */
.wf-stat{font-size:12px;color:var(--txt2);margin-left:12px;padding:3px 10px;border:1px solid var(--line);border-radius:20px;background:var(--card2);white-space:nowrap}
.wf-stat b{color:var(--gold-strong);font-weight:700}
.wf-stat b.unread{color:#f0938a}
.btn.minia.cc{background:rgba(155,126,222,.16);border-color:#9b7ede;color:#b79df0}
.btn.minia.cc:hover{background:#9b7ede;color:#fff}
.btn.minia.ccok{background:rgba(60,184,120,.14);border-color:var(--green);color:#5fd39b;cursor:pointer}
.btn.minia.ccok:hover{background:var(--green);color:#fff}
/* 审批中心工具栏：小型筛选控件 + 底部分页条 */
.sel-sm{height:30px;padding:0 9px;font-size:12.5px;border:1px solid var(--line);border-radius:6px;background:var(--card2);color:var(--txt);min-width:96px}
.sel-sm:focus{outline:none;border-color:var(--blue)}
select.sel-sm{cursor:pointer}
.pager{display:flex;justify-content:center;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
/* 全站返回顶部（由 route() 统一挂载） */
.pager.auto-top{padding-top:14px;margin-top:18px}
.pager.auto-top .btn{min-width:130px;padding:6px 16px;font-size:12.5px}
.foot-note{text-align:center;font-size:11.5px;color:var(--txt2);padding:2px 0 10px}
/* 工作台：待办卡片 / 季度图 / 折叠指南 ---------- */
.todo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}
.todo-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border:1px solid var(--line);border-left-width:3px;border-radius:8px;background:var(--card2);cursor:pointer;text-align:left;transition:.15s}
.todo-item:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.28)}
.todo-item b{font-size:21px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}
.todo-item span{font-size:12px;color:var(--txt2)}
.todo-item.t-wf{border-left-color:var(--gold)}.todo-item.t-wf b{color:var(--gold-strong)}
.todo-item.t-b2{border-left-color:var(--blue)}.todo-item.t-b2 b{color:#8fb8ee}
.todo-item.t-rej{border-left-color:var(--red)}.todo-item.t-rej b{color:#f0938a}
.todo-item.t-visit{border-left-color:#9b7ede}.todo-item.t-visit b{color:#b79df0}
.todo-item.t-trust{border-left-color:var(--orange)}.todo-item.t-trust b{color:#f0b968}
.todo-item.t-arc{border-left-color:var(--green)}.todo-item.t-arc b{color:#5fd39b}
.chart-wrap{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.chart-wrap svg{flex:1 1 460px;min-width:360px}
.chart-kpi{flex:0 0 232px;display:grid;grid-template-columns:1fr;gap:7px}
.chart-kpi>div{display:flex;flex-direction:column;gap:1px;padding:8px 11px;border:1px solid var(--line);border-radius:7px;background:var(--card2)}
.chart-kpi span{font-size:11.5px;color:var(--txt2)}
.chart-kpi b{font-size:15px;font-weight:700;color:var(--gold-strong);font-variant-numeric:tabular-nums}
.chart-kpi em{font-style:normal;font-size:10.5px;color:var(--txt2)}
.guide-fold summary{cursor:pointer;font-size:14.5px;font-weight:700;color:var(--txt);list-style:none;display:flex;align-items:center;gap:6px;padding:2px 0}
.guide-fold summary::-webkit-details-marker{display:none}
.guide-fold summary::after{content:'▾';color:var(--txt2);font-size:12px;transition:.15s}
.guide-fold[open] summary::after{content:'▴'}
.guide-fold[open] summary{margin-bottom:12px;border-bottom:1px solid var(--line);padding-bottom:8px}
@media(max-width:820px){.chart-kpi{flex:1 1 100%}}
.segbtns{display:inline-flex;gap:4px;margin-left:14px;background:var(--card2);border:1px solid var(--line);border-radius:7px;padding:2px}
/* 分段筛选按钮：未选中也有边框色框，便于识别（与已选中蓝底形成对比） */
.btn.seg{padding:3px 11px;font-size:12px;border:1px solid var(--line);background:var(--card2);border-radius:5px;color:var(--txt);white-space:nowrap;font-weight:500}
.btn.seg:hover{color:var(--txt);border-color:var(--blue);box-shadow:0 0 0 2px rgba(79,134,214,.2)}
.btn.seg.on{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:600}
[data-theme="light"] .btn.seg.on{color:#fff}
.btn.seg em{font-style:normal;opacity:.75;font-size:11px;margin-left:4px}
.tbl th.sortable{cursor:pointer;user-select:none;position:relative}
.tbl th.sortable:hover{background:#12213a;color:#e6eefb}
.tbl th.sortable.on{color:var(--gold-strong)}
.sortarrow{display:inline-block;margin-left:5px;font-size:9.5px;opacity:.55;vertical-align:middle}
.tbl th.sortable.on .sortarrow{opacity:1;color:var(--gold-strong)}
.btn.minia{padding:2px 10px;font-size:11.5px;border-radius:5px;white-space:nowrap;font-weight:500;line-height:1.7;margin:0 3px 0 0}
.btn.minia.ok{background:rgba(60,184,120,.16);border-color:var(--green);color:#5fd39b}
.btn.minia.ok:hover{background:var(--green);color:#fff}
.btn.minia.back{background:rgba(224,164,74,.16);border-color:var(--orange);color:#f0b968}
.btn.minia.back:hover{background:var(--orange);color:#fff}
.btn.minia.give{background:rgba(79,134,214,.16);border-color:var(--blue);color:#8fb8ee}
.btn.minia.give:hover{background:var(--blue);color:#fff}
/* 审批中心表格：深浅错行 + 紧凑不换行 */
.tbl.zebra tbody tr:nth-child(odd){background:var(--row-odd)}
.tbl.zebra tbody tr:nth-child(even){background:var(--row-even)}
.tbl.zebra tbody tr:hover{background:var(--row-hover)}
.tbl.zebra td{vertical-align:middle}
.tbl.zebra td.nowrap{white-space:nowrap;font-size:12px}
.tbl.zebra td.ellip{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tbl.zebra td.ops{white-space:nowrap;text-align:right}
.tbl.zebra thead th{white-space:nowrap;font-size:12.5px}
[data-theme="light"] .tbl.zebra tbody tr:nth-child(odd){background:#f4f7fa}
[data-theme="light"] .tbl.zebra tbody tr:nth-child(even){background:#ffffff}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;margin-bottom:16px}
.card h3{font-size:14.5px;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.card h3 .right{margin-left:auto;font-weight:400}

.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
/* 批次三十四：详情弹窗头部标题绝对居中（左返回按钮/右编辑按钮不挤偏标题），且标题与按钮保持一行 */
#modal .toolbar:has(> #m-cancel){position:relative;flex-wrap:nowrap}
#modal .toolbar:has(> #m-cancel) > b{position:absolute;left:50%;transform:translateX(-50%);margin-left:0!important;white-space:nowrap;pointer-events:none;font-size:15px}
/* 批次三十四：列表操作列按钮一行显示（不换行堆叠） */
.sf-tbl td.ops-nowrap{white-space:nowrap}
/* 批次四十：暗色主题下工具栏输入框与卡片背景几乎同色（用户报「看不到搜索框」）——加深背景+提亮边框保证可见 */
.toolbar input,.toolbar select{height:34px;padding:0 10px;border:1px solid #46608c;border-radius:8px;font-size:13px;background:#10192b;color:var(--txt);min-width:140px;box-shadow:inset 0 1px 3px rgba(0,0,0,.45)}
[data-theme="light"] .toolbar input,[data-theme="light"] .toolbar select{border:1px solid var(--line);background:var(--card2);box-shadow:none}
.toolbar input:focus,.toolbar select:focus{outline:none;border-color:var(--blue)}
.toolbar .sp{flex:1}

input.f,select.f,textarea.f{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-family:inherit;background:var(--card2);color:var(--txt)}
input.f:focus,select.f:focus,textarea.f:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 2px rgba(79,134,214,.18)}
input.f::placeholder,textarea.f::placeholder{color:#93a6c4}
[data-theme="light"] input.f::placeholder,[data-theme="light"] textarea.f::placeholder{color:#63738b}
input::placeholder,textarea::placeholder{color:#93a6c4;opacity:1}
.toolbar input::placeholder{color:#9fb0ca;opacity:1}
[data-theme="light"] .toolbar input::placeholder{color:#63738b}
textarea.f{resize:vertical;min-height:60px}
select.f option{background:var(--card2);color:var(--txt)}
input[type=checkbox],input[type=radio]{accent-color:var(--gold)}

table.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.tbl th{background:var(--th-bg,#0b1628);color:var(--th-txt,#c0d0e8);font-weight:700;text-align:center;padding:10px 10px;border-bottom:2px solid var(--th-bd,#405574);white-space:nowrap;letter-spacing:.15px}
.tbl td{padding:9px 10px;border-bottom:1px solid var(--td-bd,#3a4d6d);vertical-align:middle}
/* 隔行深浅色（斑马纹）：实色强对比，避免视觉疲劳与错行 */
.tbl tbody tr:nth-child(odd){background:var(--row-odd)}
.tbl tbody tr:nth-child(even){background:var(--row-even)}
.tbl tbody tr:hover{background:var(--row-hover)}
.tbl tbody tr:last-child td{border-bottom:none}
/* 浅色主题：表格/卡片/正文加粗提亮，保证白底可读 */
[data-theme="light"] .tbl th{--th-bg:#e8eef6;--th-txt:#16283d;--th-bd:#a9bdd6}
[data-theme="light"] .tbl td{--td-bd:#d3dde8}
[data-theme="light"] table.tbl{border-color:#c3d0de}
[data-theme="light"] .tbl th{font-weight:800}
[data-theme="light"] .tbl td{font-weight:500;color:#1e2e42}
[data-theme="light"] .tbl{zebra-color:#1e2e42}
[data-theme="light"] body{color:#1e2e42}
[data-theme="light"] .card h3{color:#16283d;font-weight:700}
[data-theme="light"] .hint,[data-theme="light"] .toolbar .hint{color:#5a6b80;font-weight:500}
[data-theme="light"] .tbl .empty td{color:#5a6b80}
[data-theme="light"] .nav-item{font-weight:500}
[data-theme="light"] .nav-item.active{font-weight:700}
.tbl .rowlink{cursor:pointer}
.tbl .num{text-align:right;font-variant-numeric:tabular-nums}
.tbl .empty td{text-align:center;color:var(--txt2);padding:26px;background:transparent}

.badge{display:inline-block;padding:2px 9px;border-radius:12px;font-size:11.5px;line-height:18px;white-space:nowrap}
.badge.gold{background:var(--gold-soft);color:var(--gold-strong)}
.badge.blue{background:var(--blue-soft);color:#8fb6ea}
.badge.green{background:rgba(60,184,120,.15);color:#6fd39f}
.badge.red{background:rgba(224,108,95,.16);color:#ff9d92}
.badge.gray{background:rgba(143,161,189,.14);color:var(--txt2)}
.badge.orange{background:rgba(224,160,74,.16);color:#eec27c}

/* ---------- 工作台统计（批次九十三：六卡置顶；批次一百零八：七卡加入未续，金额卡允许换行防溢出） ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-bottom:16px}
@media(max-width:1280px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 14px}
.stat .k{color:var(--txt);font-size:12px;font-weight:600;line-height:1.35}
.stat .v{font-size:21px;font-weight:700;margin-top:6px;font-variant-numeric:tabular-nums;color:var(--txt);white-space:nowrap;overflow-wrap:break-word;word-break:break-all}
.stat .v.gold{color:var(--gold-strong)}
.stat .v.money{font-size:16px;white-space:normal}

/* ---------- 金额链展示条 ---------- */
.chain{display:flex;align-items:stretch;gap:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;margin-bottom:16px;flex-wrap:wrap}
.chain .node{flex:1;min-width:130px;padding:10px 12px;border-radius:8px;background:var(--card2);text-align:center;position:relative}
.chain .node .t{font-size:12px;color:var(--txt2)}
.chain .node .v{font-size:16.5px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums}
.chain .node.minus{background:rgba(224,108,95,.10)}.chain .node.minus .v{color:#ff9d92;font-size:14.5px}
.chain .node.net{background:rgba(60,184,120,.10)}.chain .node.net .v{color:#6fd39f}
.chain .node.final{background:var(--card2);border:1px solid var(--line)}
.chain .node.final .v{color:var(--txt)}
.chain .op{display:flex;align-items:center;justify-content:center;padding:0 8px;font-size:16px;color:var(--txt2);font-weight:700}
.chain .node small{display:block;font-size:11px;color:var(--txt2);margin-top:2px}

/* ---------- 标签页 ---------- */
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px}
.tab{padding:9px 16px;cursor:pointer;font-size:13.5px;color:var(--txt2);border-bottom:2px solid transparent;margin-bottom:-1px}
.tab.active{color:var(--gold-strong);border-bottom-color:var(--gold);font-weight:600}

/* ---------- 弹窗（放大：明细表/长表单需要大页面） ---------- */
.modal-mask{position:fixed;inset:0;background:rgba(4,8,15,.62);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;z-index:50;overflow-y:auto;padding:48px 20px}
.modal{background:var(--card);border:1px solid var(--line);border-radius:14px;width:900px;max-width:98vw;padding:24px 28px;box-shadow:0 30px 90px rgba(0,0,0,.55)}
/* 共保/分期明细独立大窗体：宽屏录入，避免长表横向挤压 */
.modal-mask.grid-modal{padding:18px 22px;align-items:stretch}
.modal-mask.grid-modal .modal{width:min(1500px,calc(100vw - 44px));max-width:none;min-height:calc(100vh - 36px);max-height:calc(100vh - 36px);overflow:auto;padding:28px 32px}
.modal-mask.grid-modal .modal .f[data-grid]{overflow:auto}
.modal-mask.grid-modal .modal .f[data-grid] table{min-width:980px}
.modal-actions-top{display:flex;justify-content:center;gap:12px;position:sticky;top:-28px;z-index:3;padding:8px 0 12px;background:var(--card);border-bottom:1px solid var(--line);margin-bottom:14px}
/* 批次四十六：左上角「← 返回」浮动按钮——绝对定位到 sticky 顶栏左侧（sticky 为定位锚） */
.modal-actions-top .btn.back{position:absolute;left:14px;top:6px;min-width:0}
.search-multi{display:flex;flex-direction:column;gap:6px}.search-multi [data-sm-search]{width:100%;background:var(--card2);color:var(--txt);border:1px solid var(--line);border-radius:6px;padding:7px 9px}.search-multi [data-sm-options]{max-height:180px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:5px 12px}.search-multi label{display:flex;gap:6px;align-items:flex-start;padding:4px;border-bottom:1px solid var(--line);font-size:12px}.modal-actions-top .btn{min-width:110px}.modal h3{font-size:15.5px;margin-bottom:16px;display:flex;align-items:center;gap:10px}.draft-status{font-size:11px;font-weight:400;color:var(--green);margin-left:auto}.modal .form-row{min-width:0}.modal .form-row label{white-space:normal}.modal-mask:not(.grid-modal) .modal{width:min(1200px,96vw)}
.modal .form-row{margin-bottom:12px}
/* 紧凑排版：相邻短字段（日期/数字）自动两列；日期类字段用 grid2 包裹 */
@media(min-width:760px){
  .modal .form-row:has(input[type=date]),.modal .form-row:has(input[type=number]){width:calc(50% - 7px);display:inline-block;vertical-align:top}
  .modal .form-row:has(input[type=date]):nth-of-type(odd),.modal .form-row:has(input[type=number]):nth-of-type(odd){margin-right:14px}
}
.modal .form-sep{font-size:12px;font-weight:700;color:var(--gold-strong);border-bottom:1px dashed rgba(201,164,92,.35);padding:10px 0 5px;margin:6px 0 12px;letter-spacing:1px}
.modal .form-row label{display:block;font-size:12.5px;color:var(--txt);font-weight:600;margin-bottom:5px}
.modal .form-row label .req{color:var(--red)}
.modal .grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.modal .foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
/* grid 明细表：深色行内输入 */
.modal .f[data-grid] table th{color:var(--txt2)}
.modal .f[data-grid] tbody td input{background:var(--card2);color:var(--txt);border-color:var(--line)}
.modal .f[data-grid] tbody td input:focus{border-color:var(--blue);outline:none}
.modal .f[data-grid] tbody tr:hover{background:transparent}
.modal .f[data-grid] tbody tr:nth-child(odd),.modal .f[data-grid] tbody tr:nth-child(even){background:transparent}

/* ---------- 其他 ---------- */
.toast{position:fixed;top:22px;left:50%;transform:translateX(-50%);background:#1d2a44;border:1px solid var(--line);color:#fff;padding:10px 22px;border-radius:8px;font-size:13px;z-index:99;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.toast.err{background:#5c2620;border-color:#7a3a32}
.kv{display:grid;grid-template-columns:170px 1fr;gap:0;font-size:13px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.kv>span{padding:8px 12px;border-bottom:1px solid var(--line);word-break:break-all}
.kv .k{color:var(--txt2);white-space:nowrap;align-self:start}
.kv>span:nth-child(4n+1),.kv>span:nth-child(4n+2){background:var(--row-odd)}
.kv>span:nth-child(4n+3),.kv>span:nth-child(4n){background:var(--row-even)}
[data-theme="light"] .kv>span:nth-child(4n+1),[data-theme="light"] .kv>span:nth-child(4n+2){background:#f4f7fa}
[data-theme="light"] .kv>span:nth-child(4n+3),[data-theme="light"] .kv>span:nth-child(4n){background:#ffffff}
.kv>span:nth-last-child(-n+2){border-bottom:none}
.chain-note{font-size:12px;color:var(--txt2);margin-top:10px;line-height:1.8}
.hint{font-size:12px;color:var(--txt2);line-height:1.7}
.mt8{margin-top:8px}.mt14{margin-top:14px}
@media(max-width:900px){.sidebar{display:none}.main{margin-left:0}.modal .grid2{grid-template-columns:1fr}}

/* ---------- 报表中心与导出 ---------- */
.rep-group{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--txt2);margin:16px 0 10px}
.rep-gcount{background:rgba(143,161,189,.14);color:var(--txt2);border-radius:10px;padding:1px 8px;font-size:11px;font-weight:400}
.rep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));gap:12px}
.rep-card{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--card);display:flex;flex-direction:column;gap:6px;transition:.15s}
.rep-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(0,0,0,.4);transform:translateY(-1px)}
.rep-name{font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rep-meta{font-size:11.5px;color:var(--txt2)}
.rep-remark{font-size:11.5px;color:var(--txt2);line-height:1.55;min-height:34px}
.rep-foot{margin-top:auto;display:flex;gap:8px}
.rep-filters{display:flex;flex-wrap:wrap;gap:10px 16px;padding:12px 14px;background:var(--card2);border:1px solid var(--line);border-radius:10px}
.rep-fitem{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--txt2)}
.rep-fitem .f{height:32px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font-size:12.5px;background:var(--card);color:var(--txt)}
.rep-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.rep-tab{cursor:pointer;padding:7px 14px;font-size:12.5px;border-radius:8px 8px 0 0;color:var(--txt2);border:1px solid transparent;border-bottom:none}
.rep-tab:hover{color:var(--gold-strong)}
.rep-tab.on{background:var(--card);border-color:var(--line);color:var(--gold-strong);font-weight:600;margin-bottom:-1px}
.rep-tab em{font-style:normal;color:var(--txt2);font-size:11px;margin-left:4px}
.rep-scroll{overflow:auto;max-height:60vh;border:1px solid var(--line);border-radius:10px;margin-top:10px}
/* 批次五十三（用户 10-09）：表格下拉查阅时表头（含「筛」筛选行）固定不动——两行均 sticky，筛选行 top 对齐首行高度（th 10px×2 内边距+13px 行高+2px 边框≈40px，取 39px 轻微叠压防漏缝） */
.rep-scroll .tbl thead th{position:sticky;z-index:2;background:#0f1a2e}
.rep-scroll .tbl thead tr:first-child th{top:0}
.rep-scroll .tbl thead tr.sf-filter-row th{top:39px;background:#13203a}
/* 批次八十（用户 10-11 截图反馈：预开发票表头字段名称看不清）：sticky 表头深色背景未适配浅色主题——浅色下补浅底深字 */
[data-theme="light"] .rep-scroll .tbl thead th{background:#e8eef6;color:#16283d;border-bottom:1px solid #a9bdd6}
[data-theme="light"] .rep-scroll .tbl thead tr.sf-filter-row th{background:#dde7f2;color:#16283d}
[data-theme="light"] .tbl thead th{color:#16283d}
.rep-colpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:6px 12px;max-height:180px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12.5px}

/* ---------- 企业微信接入 ---------- */
.or-line{display:flex;align-items:center;gap:10px;margin:16px 0 12px;color:#98a6b8;font-size:12px}
.or-line::before,.or-line::after{content:'';flex:1;height:1px;background:var(--line)}
.btn.wecom{background:#07c160;border-color:#07c160;color:#fff}
.btn.wecom:hover{background:#06ad56;border-color:#06ad56}
.wecom-tip{margin:8px 0 0;text-align:center;font-size:12px;color:#98a6b8}
.wc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2px 18px;margin-top:6px}
.wc-tip{margin-top:14px;padding:12px 14px;background:var(--card2);border:1px solid var(--line);border-radius:10px;font-size:12.5px;line-height:1.95;color:var(--txt2)}
.wc-tip code{background:#0d1524;border-radius:4px;padding:1px 6px;font-size:12px;color:#9fc0ee}
.wc-result{margin-top:12px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--card)}
.wc-steps{display:flex;flex-direction:column;gap:8px}
.wc-step{display:flex;flex-direction:column;gap:2px;font-size:12.5px;padding-left:10px;border-left:3px solid var(--line)}
.wc-step.ok{border-left-color:#07c160}
.wc-step.bad{border-left-color:#e05a5a}
.wc-step.ok b{color:#3cb878}
.wc-step.bad b{color:#e06c5f}
.wc-step span{color:var(--txt2);word-break:break-all}
.wc-ip{margin-top:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}
.wc-ip code{background:rgba(60,184,120,.12);color:#3cb878;border-radius:6px;padding:3px 10px;font-size:13.5px;font-weight:600}
.wc-hint{margin-top:10px;padding:9px 12px;background:var(--gold-soft);border:1px solid rgba(201,164,92,.3);border-radius:8px;font-size:12.5px;color:var(--gold-strong);line-height:1.75}

/* ===== 批次六·B：外部身份门户界面（客户/保司/公估）===== */
.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:6px}
.kpi{border:1px solid var(--line, #e3e7ec);border-radius:10px;padding:14px 16px;background:#fbfcfe}
.kpi-k{font-size:12.5px;color:#5a6875}
.kpi-v{font-size:26px;font-weight:700;margin:6px 0 2px;letter-spacing:.5px}
.kpi-s{font-size:12px;color:#8a97a6}
.kpi-blue{border-left:3px solid #2f6fb5} .kpi-blue .kpi-v{color:#1f5c9c}
.kpi-amber{border-left:3px solid #b08a3e} .kpi-amber .kpi-v{color:#8a6524}
.kpi-green{border-left:3px solid #1c7a4a} .kpi-green .kpi-v{color:#155c37}
.kpi-red{border-left:3px solid #b03030} .kpi-red .kpi-v{color:#932626}
.pg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.pg-head h2{font-size:19px}
.mt6{margin-top:6px} .mt8{margin-top:8px} .mt14{margin-top:14px}
.mb8{margin-bottom:8px}
/* 处理进度时间轴 */
.steps-line{display:flex;flex-wrap:wrap;gap:0;margin-top:8px;position:relative}
.steps-line .step{flex:1;min-width:130px;padding:0 14px 0 0;position:relative}
.steps-line .dot{width:13px;height:13px;border-radius:50%;background:#dfe4ea;border:2px solid #c7cfd9;margin-bottom:8px}
.steps-line .step.done .dot{background:#b08a3e;border-color:#b08a3e;box-shadow:0 0 0 3px rgba(176,138,62,.15)}
.steps-line .step::before{content:'';position:absolute;left:14px;right:0;top:6px;height:2px;background:#e3e7ec}
.steps-line .step:last-child::before{display:none}
.steps-line .step.done::before{background:rgba(176,138,62,.45)}
.steps-line .st{font-size:13.5px;font-weight:600;color:#33414f}
.steps-line .step.done .st{color:#8a6524}
.steps-line .sa{font-size:12px;color:#8a97a6;margin-top:2px}
.num{text-align:right;font-variant-numeric:tabular-nums}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.form-grid .full{grid-column:1/-1}
.form-grid label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:#44515f}
.form-grid input,.form-grid select,.form-grid textarea{padding:8px 10px;border:1px solid #cfd9e5;border-radius:6px;font:inherit;background:#fff}
.form-grid textarea{resize:vertical}
@media(max-width:720px){.form-grid{grid-template-columns:1fr}}

/* ===== 批次八（2026-10-05）：开票申请列表页重设计 + 表单两列网格 ===== */
/* 表格外层兜底：卡片内横向滚动，页面整体不横向溢出（documentElement.scrollWidth === innerWidth） */
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
/* 开票列表：9 列；操作列两行按钮；数值/短字段不拆行；关联一览表可换行限宽 */
.tbl.inv-tbl{table-layout:auto}
.tbl.inv-tbl td.nowrap,.tbl.inv-tbl th.nowrap{white-space:nowrap}
.tbl.inv-tbl td.c-sheetnowrap{white-space:normal;word-break:break-word;max-width:180px}
.tbl.inv-tbl td.ops{min-width:240px;white-space:normal;line-height:1.9}
.tbl.inv-tbl td.ops .ops-line{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.tbl.inv-tbl td.ops .ops-line+.ops-line{margin-top:6px}
.tbl td.c-remark{white-space:normal;word-break:break-word;max-width:200px;color:var(--gold-strong)}
.oa-hint-sm{font-size:12px;line-height:1.5;white-space:nowrap}
/* 开票申请表单：两列网格（.form-grid）——窄屏回落单列；日期/数字字段在网格内不再强制半宽 */
.modal .form-grid{gap:12px 16px}
.modal .form-grid .full{grid-column:1/-1}
.modal .form-grid .form-row,
.modal .form-grid .form-row:has(input[type=date]),
.modal .form-grid .form-row:has(input[type=number]){width:auto!important;display:block!important;margin-right:0!important;margin-bottom:0}
.modal .form-grid label{color:var(--txt);font-weight:600}
.modal .form-grid input.f,.modal .form-grid select.f,.modal .form-grid textarea.f{background:var(--card2);color:var(--txt);border:1px solid var(--line);width:100%}
.modal .form-grid .search-multi{background:transparent}
.modal .form-grid .f.auto-field{background:var(--gold-soft);border:1px dashed var(--gold);color:var(--txt)}
@media(max-width:720px){.modal .form-grid{grid-template-columns:1fr}}
/* 自动带出字段（type:'auto'）对比度：深浅两种主题下标签与取值都清晰 */
.modal .auto-field{color:var(--txt)}
[data-theme="light"] .modal .form-row label{color:#26384b}
[data-theme="light"] .modal .auto-field,
[data-theme="light"] .modal .form-grid .f.auto-field{background:#fbf3e2;border-color:#c9a45c;color:#3a2c14}
/* 录入方式按钮行：可见、有边框、有对比度 */
.modal .entry-mode-btn{border:1px solid var(--gold);background:var(--card2);color:var(--gold-strong);font-weight:600}
.modal .entry-mode-btn:hover{border-color:var(--gold-strong);background:var(--gold-soft)}
.modal .entry-mode-btn.on{background:var(--gold);border-color:var(--gold);color:#fff}
[data-theme="light"] .modal .entry-mode-btn{color:#8a6a2f;border-color:#c9a45c;background:#fff}
[data-theme="light"] .modal .entry-mode-btn.on{color:#fff}

/* ===== 批次九：点击出提示机制（pageTip / fieldTip）+ 员工证件扫码面板 + 一览表合并组子区 ===== */
.page-head{display:flex;justify-content:center;margin-bottom:10px}
.page-tip{display:inline-flex;align-items:center;gap:5px;font-size:16px;font-weight:700;color:var(--txt);cursor:pointer;padding:3px 10px;border-radius:8px}
.page-tip:hover{background:var(--gold-soft)}
.tip-i{font-style:normal;font-size:13px;color:var(--gold-strong);cursor:pointer;opacity:.85;margin-left:3px}
.tip-i:hover{opacity:1}
.tip-pop{position:fixed;z-index:80;background:var(--card);border:1px solid var(--gold);border-radius:10px;box-shadow:0 12px 40px rgba(0,0,0,.5);overflow:hidden}
.tip-pop-h{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--card2);font-weight:700;font-size:13.5px;color:var(--gold-strong);border-bottom:1px solid var(--line)}
.tip-x{margin-left:auto;cursor:pointer;color:var(--txt2);font-size:12px;padding:0 2px}
.tip-x:hover{color:var(--red)}
.tip-text{padding:10px 12px;font-size:12.5px;line-height:1.8;color:var(--txt)}
.tip-tbl{width:100%;border-collapse:collapse;font-size:12.5px}
.tip-tbl td{padding:7px 12px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--txt);line-height:1.7}
.tip-tbl tr:last-child td{border-bottom:none}
.tip-tbl .tt-k{width:118px;color:var(--txt2);white-space:nowrap;font-weight:600}
.tip-guide{padding:9px 12px;border-top:1px solid var(--line);background:var(--card2)}
.tip-guide a{color:var(--gold-strong);font-size:12.5px;text-decoration:underline}
/* 批次六十七：客户资料页描述区分块排版——标题行/正文行上下分离，手机端可读 */
.page-desc{background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:2px 14px}
.page-desc .pd-row{padding:9px 0;border-bottom:1px dashed var(--line);line-height:1.85;font-size:12.5px}
.page-desc .pd-row:last-child{border-bottom:none}
.page-desc .pd-row > b{display:block;color:var(--gold-strong);letter-spacing:.5px;margin-bottom:2px}
.page-desc .pd-txt{display:block;color:var(--txt)}
.subsec{margin-top:14px;border-top:1px dashed var(--line);padding-top:10px}
.subsec-t{font-size:12.5px;font-weight:700;color:var(--gold-strong);margin-bottom:8px;letter-spacing:.5px}
.stage-tbl{font-size:12.5px}
.cert-scan-panel{margin:4px 0 14px;border:1px solid var(--gold);border-radius:10px;padding:10px 14px;background:var(--card2)}
.csp-head{font-weight:700;font-size:13.5px;color:var(--gold-strong);margin-bottom:4px}
.csp-head .hint{margin-left:8px;font-weight:400}
.csp-slot{border:1px solid var(--line);border-radius:8px;padding:8px 12px;margin-top:8px;background:var(--card)}
.csp-title{font-weight:600;font-size:13px;color:var(--txt);margin-bottom:4px}
.csp-filled{margin-top:4px;color:var(--green)}
[data-theme="light"] .page-tip{color:#1c2b3d}
[data-theme="light"] .tip-text,[data-theme="light"] .tip-tbl td{color:#1e2e42}
[data-theme="light"] .cert-scan-panel{background:#fbf7ee}
[data-theme="light"] .csp-slot{background:#fff}
[data-theme="light"] .csp-filled{color:#177a52}

/* ---------- 归档登记 v2 标签页 ---------- */
.arc-tabs{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.arc-tab{padding:8px 16px;border-radius:8px 8px 0 0;cursor:pointer;font-size:14px;color:var(--muted);border-bottom:2px solid transparent;user-select:none}
.arc-tab:hover{color:var(--txt)}
.arc-tab.on{color:var(--gold);border-bottom-color:var(--gold);font-weight:600}
.badge.gold{background:var(--gold-soft);color:var(--gold)}
.mono{font-family:Consolas,'Courier New',monospace}

/* ===== 批次十一（用户 10-06 十条需求）：录入表单分节可收起 + 承保详情标黄 + OCR 识别通道 ===== */
.modal .sec-head{cursor:pointer;user-select:none;display:flex;align-items:center;gap:6px;background:var(--card2);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:6px;padding:7px 10px;margin:10px 0 8px;font-size:12px;font-weight:700;color:var(--gold-strong);letter-spacing:1px}
.modal .sec-head:hover{border-color:var(--gold)}
.modal .sec-arrow{color:var(--gold-strong);font-size:12px}
.modal .form-sep.sep-hl{background:var(--gold);color:#fff;border:none;border-radius:6px;padding:7px 10px;margin:8px 0}
[data-theme="light"] .modal .form-sep.sep-hl{background:#b8933f;color:#fff}
/* sec2 布局：两个字段一行（业务提交录入页）；整行字段（full/grid/textarea/search-multi）自动占满 */
.sec2-wrap .form-row{width:calc(50% - 8px)!important;display:inline-block!important;vertical-align:top;margin-right:0!important}
.sec2-wrap .form-row:nth-of-type(odd){margin-right:14px!important}
.modal .form-row.row-hidden,#modal .form-row.row-hidden,.modal .form-row.row-hidden:has(input),.modal .form-row.row-hidden:has(textarea),.modal .form-row.row-hidden:has(select),.modal .form-row.row-hidden:has(div){display:none!important;width:0!important;margin:0!important;padding:0!important;min-width:0!important}/*批次十六：提交页隐藏系统字段（须压过 sec2-wrap 的 inline-block!important）*/
.sec2-wrap .form-row.full,.sec2-wrap .form-row:has([data-grid]),.sec2-wrap .form-row:has(textarea),.sec2-wrap .form-row:has(.search-multi){width:100%!important;display:block!important;margin-right:0!important}
/* OCR 识别通道面板（上传保单 / 客告盖章件） */
.sheet-ocr-panel{margin:4px 0 10px;border:1px solid var(--gold);border-radius:8px;padding:10px 12px;background:var(--card2)}
.sop-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0}
.sop-row .hint{flex:1;min-width:200px}
.ocr-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border:1.5px solid var(--gold);border-radius:999px;background:var(--gold-soft);color:var(--gold-strong);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s}
.ocr-pill:hover{background:var(--gold);color:#fff}
[data-theme="light"] .ocr-pill{color:#8a6a2f;background:#fff}
[data-theme="light"] .ocr-pill:hover{color:#fff}

/* ===== 批次十三（用户 10-06 追加）：列表列精简 + 详情页四大板块可收起（两字段一行） ===== */
.dsec{border:1px solid var(--line);border-radius:8px;margin:10px 0;background:var(--card);overflow:hidden}
.dsec summary{cursor:pointer;user-select:none;list-style:none;display:flex;align-items:center;gap:6px;background:var(--card2);border-left:3px solid var(--gold);padding:8px 12px;font-size:12px;font-weight:700;color:var(--gold-strong);letter-spacing:1px}
.dsec summary::-webkit-details-marker{display:none}
.dsec summary::after{content:'▸';margin-left:auto;color:var(--gold-strong)}
.dsec[open] summary::after{content:'▾'}
.dsec .kv-grid{padding:4px 12px 10px}
.kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
.kv-grid .kvi{display:flex;gap:8px;padding:5px 0;border-bottom:1px dashed var(--line);min-width:0;align-items:baseline}
.kv-grid .kvi.full{grid-column:1/-1}
.kv-grid .kvi .k{color:var(--txt2);white-space:nowrap;flex-shrink:0}
.kv-grid .kvi>span:last-child{min-width:0;overflow-wrap:anywhere}
.money-strip{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:10px 14px;background:var(--gold-soft);border:1px solid rgba(201,164,92,.25);border-radius:8px;margin:12px 0}
.money-strip .ms{display:flex;flex-direction:column;gap:2px}
.money-strip .ms i{font-style:normal;font-size:11px;color:var(--txt2)}
.money-strip .ms b{font-size:16px;color:var(--gold-strong)}
.money-strip .arr{color:var(--gold-strong);font-size:14px}
.money-strip .sp{flex:1}
@media (max-width:900px){.kv-grid{grid-template-columns:1fr}}

/* ===== 批次十四：字段名称与填写内容颜色区分（字段名金色、填写内容亮色） ===== */
.modal .form-row > label{color:var(--gold)}
[data-theme="light"] .modal .form-row > label{color:#8a6a2f}

/* ===== 批次九十四（用户 10-12 令）：对客户联系人开放的字段——label 旁红色标注 ===== */
.modal .form-row > label .open94{display:inline-block;margin-left:6px;padding:0 5px;border:1px solid var(--red);
  border-radius:3px;background:rgba(200,60,45,.10);color:var(--red);font-size:10.5px;font-weight:600;
  line-height:16px;letter-spacing:0;vertical-align:1px;white-space:nowrap}
[data-theme="light"] .modal .form-row > label .open94{color:#b02a1c;border-color:#b02a1c;background:#fdf1ef}
/* 险种（项目自带）只读展示 */
.modal .form-row select.ro94{background:var(--gold-soft);border:1px dashed var(--gold);color:var(--txt);pointer-events:none}

/* ===== 批次八：经营分析卡（报表中心） ===== */
.ana-kpis{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 4px}
.ana-kpi{flex:1;min-width:158px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:var(--card2)}
.ana-kpi span{display:block;font-size:11.5px;color:var(--txt2)}
.ana-kpi b{display:block;font-size:15.5px;margin:3px 0 2px}
.ana-kpi em{font-style:normal;font-size:10.5px;color:var(--txt2)}
.ana-h4{font-size:13px;font-weight:700;color:var(--gold-strong);margin:16px 0 6px;border-left:3px solid var(--gold);padding-left:8px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
[data-theme="light"] .ana-h4{color:#8a6a2f}
.ana-h4 .hint{font-weight:400;font-size:11px;margin-left:0}
.ana-cols{display:grid;grid-template-columns:1fr 1fr;gap:2px 30px;margin-top:4px}
@media (max-width:1080px){.ana-cols{grid-template-columns:1fr}}

/* ===== 批次十七：提醒中心四段收起式 + 通用排序筛选表 + 弹窗返回顶部 ===== */
.rm-sec{margin:10px 0}
.rm-sec summary{cursor:pointer;font-size:14px;font-weight:700;color:var(--gold-strong);padding:9px 12px;background:var(--card2);border:1px solid var(--line);border-radius:8px;list-style:none;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rm-sec summary::-webkit-details-marker{display:none}
.rm-sec summary::before{content:'▸';color:var(--txt2)}
.rm-sec[open] summary::before{content:'▾'}
.rm-sec[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0}
.rm-sec .sec-inner{border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px;padding:10px 12px;background:var(--card)}
.rm-urgsel{font-size:12px;font-weight:400;color:var(--txt2);display:inline-flex;align-items:center;gap:6px;margin-left:auto}
.sf-tbl th.sf-sort{cursor:pointer;user-select:none;white-space:nowrap}
.sf-tbl th.sf-sort:hover{color:var(--gold-strong)}
.sf-tbl .sf-arrow{font-size:10px;color:var(--txt2);margin-left:3px}
.sf-tbl .sf-filter-row th{padding:2px 4px;border-bottom:1px solid var(--line)}
.sf-tbl .sf-filter{width:100%;min-width:52px;font-size:10.5px;padding:2px 5px;background:var(--card2);color:var(--txt);border:1px solid var(--line);border-radius:4px}
.sf-tbl .sf-filter::placeholder{color:var(--txt2);opacity:.6}
.modal-backtop{position:fixed;right:26px;bottom:26px;z-index:60;padding:9px 16px;border-radius:999px;border:1.5px solid var(--gold);background:var(--gold-soft);color:var(--gold-strong);font-weight:600;font-size:12.5px;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.4)}
.modal-backtop:hover{background:var(--gold);color:#fff}
[data-theme="light"] .modal-backtop{color:#8a6a2f;background:#fff}

/* ===== 批次十九：顶栏页标题ⓘ指南 + 工作台考核大数字卡 ===== */
#page-title .page-tip{font-size:17px;padding:2px 10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#page-title .page-tip .tip-i{font-size:13px}
.assess-big{display:flex;gap:14px;flex-wrap:wrap;margin:4px 0 14px}
.assess-big .ab-item{flex:1;min-width:132px;background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:12px 10px;text-align:center}
.assess-big .ab-num{font-size:29px;font-weight:800;line-height:1.25;color:var(--txt)}
.assess-big .ab-num.good{color:var(--green)}
.assess-big .ab-num.bad{color:var(--red)}
.assess-big .ab-k{margin-top:3px;font-size:12px;color:var(--txt2)}
.assess-empty{margin:2px 0 8px;padding:15px 18px;border:1.5px dashed var(--gold);border-radius:10px;background:var(--gold-soft);color:var(--txt);font-size:13.5px;line-height:1.75}
[data-theme="light"] .assess-big .ab-item{background:#fff}
[data-theme="light"] .assess-big .ab-num{color:#1c2b3d}
[data-theme="light"] .assess-empty{background:#fbf7ee;color:#1e2e42}
/* 深色主题下原生 checkbox 是白块，统一改为主题色勾选（批次十九截图发现） */
input[type="checkbox"]{accent-color:var(--gold-strong);width:15px;height:15px;vertical-align:-2px;cursor:pointer}
input[type="radio"]{accent-color:var(--gold-strong);cursor:pointer}

/* ============================================================
   批次六十四：移动端适配（2026-10-10，用户令「手机端显示界面全面调整」）
   断点 ≤760px 手机；集中在本段，不触碰桌面样式。桌面端 .m-nav-btn/.m-mask 恒隐藏。
   ============================================================ */
.m-nav-btn{display:none}
.m-mask{display:none}
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:760px){
  /* —— 顶栏：汉堡按钮显形 + 精简 —— */
  .m-nav-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--line);border-radius:8px;background:var(--card2);color:var(--gold-strong);cursor:pointer;padding:0}
  .m-nav-btn:active{border-color:var(--gold);background:var(--gold-soft)}
  .tb-left .env-badge{display:none}
  .topbar{padding:8px 10px;gap:8px;min-height:48px}
  .topbar h2{font-size:15px;letter-spacing:.5px}
  .user-chip{padding:3px 4px 3px 3px;max-width:none}
  .user-chip .uc-txt{display:none}
  #ui-setting span{display:none}
  #ui-setting{padding:6px 9px}
  /* —— 侧栏 → 左滑抽屉（默认移出屏幕，汉堡唤出） —— */
  .sidebar{display:flex;transform:translateX(-102%);transition:transform .22s ease;width:242px;z-index:60;box-shadow:10px 0 34px rgba(0,0,0,.55)}
  body.m-nav-open .sidebar{transform:translateX(0)}
  .m-mask{display:block;position:fixed;inset:0;background:rgba(4,8,15,.52);z-index:55;opacity:0;pointer-events:none;transition:opacity .2s}
  body.m-nav-open .m-mask{opacity:1;pointer-events:auto}
  .main{margin-left:0}
  body.side-folded .sidebar{width:242px;transform:translateX(-102%)} /* 防桌面折叠态残留在手机生效 */
  body.side-folded.m-nav-open .sidebar{transform:translateX(0)}
  body.side-folded .main{margin-left:0}
  .side-fold{display:none} /* 手机上整栏折叠无意义 */
  .nav-item{padding:12px 12px;font-size:14.5px} /* 触控目标加大 */
  /* —— 登录页 —— */
  .login-wrap{align-items:flex-start;overflow-y:auto;padding:7vh 16px 34px}
  .login-card{width:100%;max-width:420px;padding:30px 22px 24px}
  .login-card h1{font-size:17.5px;letter-spacing:1px}
  .login-logo{width:56px;height:56px;margin-bottom:14px}
  .demo-tip{font-size:11.5px;line-height:1.8}
  /* —— 输入 16px 防 iOS 聚焦自动放大；控件触控加大 —— */
  .modal input,.modal select,.modal textarea,.toolbar input,.toolbar select,.login-card input,.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}
  .btn{padding:9px 15px;font-size:14px}
  .btn.sm{padding:7px 11px}
  /* —— 弹窗近全屏 —— */
  .modal-mask{padding:12px 8px;align-items:flex-start}
  .modal{width:100%;max-width:100%;padding:16px 13px;border-radius:12px}
  .modal .form-row label{font-size:13.5px}
  /* —— 工作区与卡片 —— */
  .view{padding:10px 10px 32px}
  .card{padding:14px 12px;border-radius:9px}
  .toolbar{flex-wrap:wrap;gap:6px}
  .toolbar input,.toolbar select{min-width:0;flex:1 1 120px}
  .overdue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chart-legend{gap:10px}
  /* —— 批次六十七：页头 ⓘ 弹窗手机排版——标题行/正文行上下分块，长标题不再 nowrap 挤压正文 —— */
  .tip-tbl tr{display:block;border-bottom:1px solid var(--line);padding:3px 0}
  .tip-tbl tr:last-child{border-bottom:none}
  .tip-tbl td{display:block;border-bottom:none;padding:2px 12px;line-height:1.8}
  .tip-tbl .tt-k{width:auto;white-space:normal;color:var(--gold-strong);padding-bottom:1px}
  .page-desc{padding:2px 12px}
  .page-desc .pd-row{font-size:13px}
}

/* —— 批次七十：可搜索下拉（选项顶部搜索框，字段搜索＋多词模糊） —— */
.srch-sel{display:flex;flex-direction:column;gap:4px}
.srch-sel-input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:6px;padding:5px 9px;font-size:13px;background:var(--card);color:var(--txt);outline:none}
.srch-sel-input:focus{border-color:var(--gold-strong)}
.srch-sel-input::placeholder{color:var(--sub)}
@media (max-width:760px){
  .srch-sel-input{font-size:16px;padding:8px 10px} /* 16px 防 iOS 聚焦缩放 */
}

/* —— 批次七十一：ICP 备案页脚（登录页 + 侧栏 + 外部通道侧栏） —— */
.icp-foot{margin-top:14px;padding-top:10px;border-top:1px dashed var(--line);font-size:11.5px;color:var(--sub);text-align:center;line-height:1.7}
.icp-foot a,.side-icp a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.icp-foot a:hover,.side-icp a:hover{color:var(--gold-strong);border-bottom-color:var(--gold-strong)}
.side-icp{padding:6px 14px 10px;font-size:10.5px;color:var(--sub);opacity:.75;text-align:center}

/* ---------- 批次七十九：加载指示 ---------- */
.boot-tip{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  background:rgba(245,247,250,.92);color:#1f5fa8;font-size:15px;letter-spacing:1px;font-weight:600}
.boot-tip.hidden{display:none}
.boot-tip::before{content:"";width:16px;height:16px;margin-right:12px;border-radius:50%;
  border:2px solid #cfe0f2;border-top-color:#1f5fa8;animation:bootspin .7s linear infinite}
@keyframes bootspin{to{transform:rotate(360deg)}}

/* ══ 批次九十五：审批「变更对照」组件（全部新增 / 修改对照） ══ */
.chg-box{margin:6px 0 2px}
.chg-head{padding:7px 10px;margin-bottom:6px;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;background:rgba(200,160,60,.07);font-size:12.5px;line-height:1.7}
.chg-tbl{font-size:12.5px}
.chg-tbl thead th{background:rgba(127,127,127,.10);font-weight:600}
.chg-tbl td{vertical-align:top;word-break:break-all}
.chg-tbl td.chg-old{color:var(--muted)}
.chg-tbl td.chg-new{color:var(--text);font-weight:600}
.chg-tbl tr.chg-same td{opacity:.62}
.sec-title{margin:14px 0 6px;font-weight:700;font-size:13.5px;border-left:3px solid var(--blue);padding-left:7px}
[data-theme="light"] .chg-head{background:#fdf8ec;border-left-color:#c9a227}

/* ---------- 批次一百零五（用户 10-13 夜）：「搜索框统一金色边框，便于识别」 ---------- */
/* 覆盖全部搜索框：① 工具条/页面「模糊搜索」框（placeholder 含「搜索/筛选」）② 长下拉上方的检索框
   （.srch-sel-input）③ 多选搜索框（.search-multi 的 [data-sm-search]）④ 顶部全局搜索框（#c-q）。
   一律走 var(--gold)，随主题自动适配；浅色主题下改用深一档金（#b8912f）保证白底对比度。 */
input[placeholder*="搜索"],input[placeholder*="筛选"],input[type="search"],#c-q,
.srch-sel-input,.search-multi [data-sm-search]{
  border:1.5px solid var(--gold)!important;background:var(--gold-soft)!important;
}
input[placeholder*="搜索"]:focus,input[placeholder*="筛选"]:focus,input[type="search"]:focus,#c-q:focus,
.srch-sel-input:focus,.search-multi [data-sm-search]:focus{
  outline:none!important;border-color:var(--gold-strong)!important;box-shadow:0 0 0 3px rgba(201,164,92,.25)!important;
}
[data-theme="light"] input[placeholder*="搜索"],[data-theme="light"] input[placeholder*="筛选"],
[data-theme="light"] input[type="search"],[data-theme="light"] #c-q,
[data-theme="light"] .srch-sel-input,[data-theme="light"] .search-multi [data-sm-search]{
  border-color:#b8912f!important;background:rgba(201,164,92,.10)!important;
}

/* ---------- 批次一百零五（用户 10-13 夜）：自绘「一条两行」选项列表（替代手机原生下拉）----------
   原生 <select> 收进 .srch-sel-native 隐藏，仍承载取值与 change；可见列表由 .srch-sel-list 渲染，
   每条两行（.ssl-l1 主标识 / .ssl-l2 明细），行距加大，手机与电脑同一版式。 */
.srch-sel-native{display:none!important}
/* 收起态：当前选中（两行，点击展开）；展开态：隐藏当前值、显示列表 */
.srch-sel-cur{display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;background:var(--card2);color:var(--txt);
  border:1px solid var(--line);border-radius:6px;padding:8px 26px 8px 9px;font:inherit;cursor:pointer;position:relative}
.srch-sel-cur::after{content:'▾';position:absolute;right:9px;top:50%;transform:translateY(-50%);color:var(--gold-strong)}
.srch-sel-cur:hover{border-color:var(--gold)}
.ssc-l1{font-size:12.5px;font-weight:600;line-height:1.6;word-break:break-word}
.ssc-l2{font-size:11.5px;color:var(--txt2);line-height:1.65;word-break:break-word}
.ssc-ph{font-weight:400;color:var(--txt2)}
.ssc-tip{font-size:11px;color:var(--gold-strong);font-weight:400}
.srch-sel.open .srch-sel-cur{display:none}
.srch-sel:not(.open) .srch-sel-list{display:none}
.srch-sel-list{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:4px}
.ssl-row{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;background:transparent;border:0;
  border-bottom:1px solid var(--line);padding:10px 9px;cursor:pointer;font:inherit;color:var(--txt);border-radius:4px}
.ssl-row:last-child{border-bottom:0}
.ssl-row:hover{background:var(--row-hover)}
.ssl-row.on{background:var(--gold-soft);box-shadow:inset 3px 0 0 var(--gold)}
.ssl-l1{font-size:13px;font-weight:600;line-height:1.6;word-break:break-word}
.ssl-l2{font-size:11.5px;color:var(--txt2);line-height:1.7;word-break:break-word}
.ssl-more,.ssl-empty{padding:7px 9px;color:var(--txt2);font-size:11.5px;line-height:1.7}
.srch-sel:has(.srch-sel-input:disabled) .srch-sel-list{opacity:.55;pointer-events:none}
@media (max-width:640px){
  .srch-sel-list{max-height:300px}
  .ssl-row{padding:13px 10px;gap:6px}
  .ssl-l1{font-size:13.5px}
  .ssl-l2{font-size:12px;line-height:1.75}
  .ssc-l1{font-size:13px}.ssc-l2{font-size:12px}
}
