@charset "UTF-8";/* ==========================================================================
   sup-refine.css —— 细节收口层（与 sup-ui / sup-admin / sup-pages 分离，
   避免与并行作业的追加块互相覆盖）
   设计意图：把「实心彩色方块图标」改成 Apple 风格的「浅色调底 + 单色描边图标」，
   让整站颜色只落在 高级灰 / 青绿 两支上。
   ========================================================================== */
/* ---------- 1. 会员中心首页：快捷功能六宫格 ---------- */
:root .uc-quick-icon, :root .uc-quick-icon.blue, :root .uc-quick-icon.green, :root .uc-quick-icon.orange, :root .uc-quick-icon.purple{
  background: var(--s-accent-bg);
  color:var(--s-accent-ink);
  box-shadow: inset 0 0 0 1px var(--s-accent-line);
}:root .uc-quick-icon.red{
  background: var(--s-warning-bg);
  color:var(--s-warning-ink);
  box-shadow: inset 0 0 0 1px var(--s-warning-line);
}:root .uc-quick-item:hover .uc-quick-icon{
  background:var(--s-accent-fill);
  color: var(--s-fill-t);
  box-shadow: none;
}/* ---------- 2. 后台首页：经营数据小图标 ---------- */
:root .overview-card.biz-card .biz-tile-h i{
  background: var(--s-accent-bg);
  color:var(--s-accent-ink);
  box-shadow: inset 0 0 0 1px var(--s-accent-line);
}/* ---------- 3. 侧栏 / 顶栏残留旧色 ---------- */
:root .navbar-nav > li.dropdown > a.dropdown-toggle.clear{
  background: transparent;
}:root .navbar-nav > li > a.nav-kf{
  color: var(--s-text-2);
}:root #kfBadge.kf-badge{
  background: var(--s-danger);
}/* ---------- 4. 会员中心公告卡：旧靛蓝描边 → 中性描边 ---------- */
:root .uc-notice-card{
  border-color: var(--s-line);
  background: var(--s-surface);
}/* ---------- 5. 后台动作链接：旧的亮蓝收敛为青绿 ---------- */
:root .dash-panel .dp-header a.dp-action, :root .dash-panel .dp-header a.dp-action:hover{
  color:var(--s-accent-ink);
}:root .dash-panel .dp-header a.dp-action:hover{
  background: var(--s-accent-bg);
}:root .biz-sq-r > i.fa-refresh{
  color: var(--s-text-2);
}/* ---------- 6. 通用：实心纯红收敛为语义危险色 ---------- */
:root .alert-danger, :root .alert-danger *{
  border-color: var(--s-danger-line);
}:root pre font[color="red"], :root pre font[color="Red"], :root pre font[color="RED"]{
  color:var(--s-danger-ink) !important;
}


/* ===== 会员中心表单收口：一行一个（标签在上 / 控件在中 / 说明在下） ===== */
:root .up-field{display:block !important;margin:0 0 18px !important;}
:root .up-field>.up-label{display:block !important;width:auto !important;max-width:none !important;
  min-width:0 !important;text-align:left !important;white-space:normal !important;
  margin:0 0 7px !important;padding:0 !important;font-size:13px !important;font-weight:600 !important;
  color:var(--s-text-2) !important;flex:none !important;line-height:1.5 !important;}
:root .up-field>.up-label>span,
:root .up-field>.up-label>em{font-weight:400;color:var(--s-text-3-ink);font-style:normal;margin-left:4px;}
:root .up-field>.up-input,
:root .up-field>.up-select,
:root .up-field>.up-textarea,
:root .up-field>textarea.up-input{width:100% !important;max-width:520px !important;display:block !important;}
:root .up-field>.up-input-group{width:100% !important;max-width:520px !important;display:flex !important;align-items:stretch !important;}
:root .up-field>.up-input-group.up-stack{flex-direction:row !important;gap:8px !important;}
:root .up-field>.up-input-group.up-stack>.up-input{flex:1 1 auto !important;min-width:0 !important;border-radius:var(--s-r-s) !important;}
:root .up-field>.up-input-group.up-stack>.up-addon,
:root .up-field>.up-input-group.up-stack>.up-btn{flex:0 0 auto !important;width:auto !important;white-space:nowrap !important;
  padding:0 16px !important;height:38px !important;border-radius:var(--s-r-s) !important;}
:root .up-field>.up-help{margin:7px 0 0 !important;max-width:640px !important;font-size:12px !important;
  line-height:1.65 !important;color:var(--s-text-3-ink) !important;text-align:left !important;}
:root .up-field>.up-help+.up-help{margin-top:3px !important;}
/* 卡片里的提交按钮不要通栏黑条 */
:root .up-card .up-btn-block,
:root .up-card-bd .up-btn-block,
:root .up-card form>.up-btn-block{width:auto !important;min-width:180px !important;max-width:280px !important;display:inline-flex !important;margin-top:2px !important;}
:root .up-card .up-btn-block+.up-btn-block{margin-left:10px !important;}
@media (max-width:640px){
  :root .up-field>.up-input,
  :root .up-field>.up-select,
  :root .up-field>.up-textarea,
  :root .up-field>.up-input-group{max-width:none !important;}
  :root .up-card .up-btn-block,
  :root .up-card-bd .up-btn-block,
  :root .up-card form>.up-btn-block{width:100% !important;max-width:none !important;display:flex !important;}
}
/* 弹窗里的字段同样一行一个，且字段不必撑满 */
.layui-layer .up-field{display:block !important;margin:0 0 14px !important;}
.layui-layer .up-field>.up-label{display:block !important;width:auto !important;text-align:left !important;white-space:normal !important;
  margin:0 0 6px !important;font-size:13px !important;font-weight:600 !important;color:var(--s-text-2) !important;}
.layui-layer .up-field>.up-input,
.layui-layer .up-field>.up-select{width:100% !important;max-width:none !important;display:block !important;}
.layui-layer .up-field>.up-help{margin:6px 0 0 !important;font-size:12px !important;color:var(--s-text-3-ink) !important;line-height:1.6 !important;}

/* ---------- 修复：独立页 .input-wrap 里「绝对定位的裸 <svg> 图标」与文字重叠 ----------
   这些页面自带的样式是 svg{position:absolute;left:14px} + input{padding-left:42px}，
   但 sup-pages.css 统一把 input 的 padding 清成 0，导致文字跑到图标下面压在一起。
   这里只对「直接放着裸 svg 的 .input-wrap」把左侧内边距还回去，不影响 .input-icon 弹性布局的写法。 */
:root .input-wrap:has(>svg)>input,
:root .input-row:has(>svg)>input{
  padding-left:40px!important;
}
:root .input-wrap:has(>svg)>svg,
:root .input-row:has(>svg)>svg{
  color:var(--s-text-3-ink);
  fill:currentColor;
}
:root .input-wrap:has(>svg):focus-within>svg,
:root .input-row:has(>svg):focus-within>svg{
  color:var(--s-accent-ink);
}

/* ---------- 修复：轻提示(toast)被页面自带 width:90% 撑成全屏白条 ---------- */
:root .toast-box, :root .toast{width:auto!important;max-width:min(340px,80vw)!important}
/* 登录成功时的转场提示（不再是带"确定"按钮的弹窗） */
:root .loading-mask{flex-direction:column;gap:14px}
:root .loading-mask .loading-tip{font-size:13.5px;color:var(--s-text-2);letter-spacing:.2px}
