/* =====================================================================
   xbt_supplier 品牌主题
   ===================================================================== */
@import url('layer-close-fix.css?v=20260928b');
:root {
  --brand: #161c67;
  --brand-strong: #0d1240;
  --brand-soft: #e8eaf6;
  --brand-ink: #070a22;
  --accent: #e90020;
  --accent-soft: #ffe6ea;
  --bg: #f1f2f5;
  --surface: #ffffff;
  --surface-2: #f7f8fa;
  --border: #e2e4eb;
  --border-strong: #cdd0db;
  --text: #14162b;
  --text-2: #4b4f66;
  --muted: #7a7f96;
  --ok: #1b9a5e;
  --ok-soft: #e3f6ed;
  --warn: #ea580c;
  --warn-soft: #ffedd5;
  --danger: #d61a34;
  --danger-soft: #fce8eb;
  --info: #3b4fbf;
  --info-soft: #e6e9fb;
  /* 按钮语义色：同义统一、异义互异；饱和度压低贴合海军蓝后台 */
  --btn-query: #3d7dd6;
  --btn-query-hover: #3269b8;
  --btn-delete: #c94a57;
  --btn-delete-hover: #a83c47;
  --btn-view: #2f8f82;
  --btn-view-hover: #267569;
  --btn-add: #1a237e;
  --btn-add-hover: #12185c;
  --btn-export: #6baed6;
  --btn-export-hover: #5596bc;
  --btn-edit: #5c6bc0;
  --btn-edit-hover: #4a58a8;
  --btn-auth: #8e6bb5;
  --btn-auth-hover: #78579c;
  --btn-submit: #3a4f9a;
  --btn-submit-hover: #2f4182;
  --btn-import: #b87333;
  --btn-import-hover: #9a6029;
  --btn-ok: #4c9a6e;
  --btn-ok-hover: #3e805b;
  --btn-disable: #6b7280;
  --btn-disable-hover: #555b66;
  --btn-print: #708090;
  --btn-print-hover: #5c6a78;
  --btn-shelf-on: #45a18a;
  --btn-shelf-on-hover: #388572;
  --btn-shelf-off: #8b9bb4;
  --btn-shelf-off-hover: #73839c;
  --btn-select: #5a7a9a;
  --btn-select-hover: #4a6682;
  --btn-check: #7a8fa8;
  --btn-check-hover: #657890;
  --btn-confirm: #1a237e;
  --btn-confirm-hover: #12185c;
  --btn-cancel-bg: #ffffff;
  --btn-cancel-color: #606266;
  --btn-cancel-border: #dcdfe6;
  /* 状态标签 */
  --status-processing: #0891b2;
  --status-pending: #2563eb;
  --status-pending-2: #f97316;
  --status-done: #16a34a;
  --status-reject: #dc2626;
  --status-normal: #16a34a;
  --status-disabled: #64748b;
  --side-bg: #0a0e2e;
  --side-bg-2: #10184d;
  --side-text: #d4d8eb;
  --side-muted: #6f7aa3;
  --side-active: #e90020;
  --sidebar-w: 248px;
  --sidebar-w-collapsed: 72px;
  --sh-sm: 0 1px 2px rgba(10, 14, 46, .06), 0 1px 3px rgba(10, 14, 46, .08);
  --sh-md: 0 4px 16px rgba(10, 14, 46, .08);
  --r-sm: 8px;
  --r-md: 12px;
  --font: "Sora", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", system-ui, sans-serif;
}

body {
  font-family: var(--font);
  background: var(--bg);
  color: var(--text);
}

/* ---- 外壳：侧栏（对齐设计稿 sidebar / nav-item） ---- */
.layui-layout-admin .layui-side,
.layui-side.layui-side-menu {
  width: var(--sidebar-w) !important;
  background: linear-gradient(180deg, var(--side-bg-2), var(--side-bg)) !important;
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, .04);
}
.layui-side-menu .layui-side-scroll {
  background: transparent !important;
  width: var(--sidebar-w) !important;
  padding-top: 0 !important; /* 去掉 admin 预留给绝对定位 logo 的空白 */
}
.layui-layout-admin .layui-side .layui-nav,
.layui-side-menu .layui-nav {
  background: transparent !important;
  width: var(--sidebar-w) !important;
  padding: 2px 8px 8px !important;
  box-sizing: border-box !important;
  margin-top: 0 !important;
}

/* Logo / 品牌头：对齐设计稿（Logo + 双行标题 + 收起按钮） */
.layui-side-menu .sup-side-brand {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  height: 72px !important;
  width: var(--sidebar-w) !important;
  padding: 0 12px 0 14px !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid rgba(255, 255, 255, .06) !important;
  z-index: 2 !important;
}
.layui-side-menu .sup-side-brand .layui-logo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 100% !important;
  line-height: 1.15 !important;
  width: auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  border: none !important;
  overflow: hidden !important;
}
.layui-side-menu .layui-logo::before {
  content: "";
  width: 44px;
  height: 44px;
  flex: none;
  border-radius: 12px;
  background: #fff url("./logo.jpg") center / 80% no-repeat;
  box-shadow: 0 4px 12px rgba(22, 28, 103, .28);
}
.layui-side-menu .sup-brand-text {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  min-width: 0 !important;
  gap: 3px !important;
  line-height: 1.1 !important;
  text-align: left !important;
  margin: 0 !important;
  padding: 0 !important;
}
.layui-side-menu .sup-brand-title,
.layui-side-menu .layui-logo h3,
.layui-side-menu .layui-logo .sup-brand-title {
  display: block !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: 100% !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  font-style: normal !important;
  margin: 0 !important;
  /* 中文字体左侧内边距偏大，左移与英文首字母对齐 */
  padding: 0 !important;
  margin-left: -2px !important;
  text-align: left !important;
  text-indent: 0 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: 0 !important;
  float: none !important;
}
.layui-side-menu .sup-brand-sub,
.layui-side-menu .layui-logo .sup-brand-sub {
  display: block !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: 100% !important;
  color: rgba(180, 188, 220, .85) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  text-indent: 0 !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: 0 !important;
  float: none !important;
}
.layui-side-menu .layui-logo h3,
.layui-side-menu .layui-logo span,
.layui-side-menu .layui-logo a {
  color: #fff !important;
  margin: 0 !important;
}
/* 展开态收起按钮：深色圆角「‹」 */
.layui-side-menu .sup-side-toggle {
  flex: none !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 6px !important;
  color: rgba(255, 255, 255, .92) !important;
  background: rgba(8, 12, 40, .55) !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: background .15s ease, color .15s ease, border-color .15s ease !important;
}
.layui-side-menu .sup-side-toggle:hover {
  background: rgba(8, 12, 40, .75) !important;
  border-color: rgba(255, 255, 255, .18) !important;
  color: #fff !important;
}
.layui-side-menu .sup-side-toggle .layui-icon {
  font-size: 0 !important;
  margin: 0 !important;
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
}
.layui-side-menu .sup-side-toggle .layui-icon::before {
  content: "‹" !important;
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: inherit !important;
}

/* 一级菜单项 —— 图一：项与项之间拉开，不要挨太紧 */
.layui-side-menu .layui-nav .layui-nav-item {
  margin: 0 0 8px !important;
  line-height: normal !important;
  height: auto !important;
}
.layui-side-menu .layui-nav .layui-nav-item:last-child {
  margin-bottom: 0 !important;
}
.layui-side-menu .layui-nav .layui-nav-item a,
.layui-side-menu .layui-nav .layui-nav-item > a {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  line-height: 44px !important;
  padding: 0 28px 0 12px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  color: var(--side-text) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  box-sizing: border-box !important;
  transition: background .15s ease, color .15s ease !important;
}
.layui-side-menu .layui-nav .layui-nav-item > a:hover {
  background: rgba(255, 255, 255, .06) !important;
  color: #fff !important;
}
.layui-side-menu .layui-nav .layui-nav-item > a cite,
.layui-side-menu .layui-nav .layui-nav-item > a span {
  font-size: 14px !important;
  font-weight: 500 !important;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 44px !important;
}
/* 图标与文字分离排列，取消 layui 绝对定位叠字 */
.layui-side-menu .layui-nav .layui-nav-item > a .layui-icon,
.layui-side-menu .layui-nav .layui-nav-item a .layui-icon {
  position: static !important;
  left: auto !important;
  top: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  margin-top: 0 !important;
  padding: 0 !important;
  font-size: 16px !important;
  color: inherit !important;
  width: 22px !important;
  height: 22px !important;
  line-height: 22px !important;
  flex: none !important;
  vertical-align: middle !important;
}
.layui-side-menu .layui-nav-itemed > a,
.layui-side-menu .layui-nav-tree .layui-nav-itemed > a {
  background: rgba(255, 255, 255, .06) !important;
  color: #fff !important;
}

/* 展开箭头 */
.layui-side-menu .layui-nav-tree .layui-nav-item > a .layui-nav-more {
  border: 0 !important;
  width: 22px !important;
  height: 22px !important;
  right: 8px !important;
  top: 50% !important;
  margin-top: -11px !important;
  border-radius: 4px !important;
  background: transparent !important;
  transition: transform .2s ease, background .15s ease, color .15s ease !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-item > a .layui-nav-more::before {
  content: "›";
  color: var(--side-muted);
  font-size: 16px;
  font-style: normal;
  line-height: 22px;
  display: block;
  text-align: center;
  border: 0 !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-itemed > a .layui-nav-more,
.layui-side-menu .layui-nav-tree .layui-nav-item > a .layui-nav-mored {
  transform: rotate(90deg) !important;
  background: transparent !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-itemed > a .layui-nav-more::before {
  color: var(--side-active) !important;
}
/* 隐藏 layui 默认三角边框 */
.layui-side-menu .layui-nav .layui-nav-more {
  border-style: none !important;
  border-width: 0 !important;
}

/* 二级菜单 —— 图二：与一级留空，二级之间间距适中 */
.layui-side-menu .layui-nav .layui-nav-itemed > .layui-nav-child,
.layui-side-menu .layui-nav-tree .layui-nav-child {
  background: transparent !important;
  /* 顶部空隙：第一个二级不要紧挨一级 */
  padding: 6px 0 2px !important;
  margin: 0 !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-child dd {
  margin: 0 0 4px !important;
  line-height: normal !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-child dd:last-child {
  margin-bottom: 0 !important;
}
.layui-side-menu .layui-nav .layui-nav-item .layui-nav-child dd a,
.layui-side-menu .layui-nav-tree .layui-nav-child dd a {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  line-height: 36px !important;
  padding: 0 12px 0 42px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  color: var(--side-muted) !important;
  font-size: 13px !important;
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  transition: background .15s ease, color .15s ease !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-child dd a .layui-icon {
  position: static !important;
  margin-right: 8px !important;
}
.layui-side-menu .layui-nav-tree .layui-nav-child dd a:hover {
  background: rgba(255, 255, 255, .06) !important;
  color: var(--side-text) !important;
}

/* 选中态：红渐变 + 左侧红条（对齐设计稿 .nav-item.active） */
.layui-side-menu .layui-nav .layui-this > a,
.layui-side-menu .layui-nav-tree .layui-this,
.layui-side-menu .layui-nav-tree .layui-this > a,
.layui-side-menu .layui-nav-tree .layui-nav-child dd.layui-this,
.layui-side-menu .layui-nav-tree .layui-nav-child dd.layui-this a,
.layui-side-menu .layui-nav-itemed > a.layui-this {
  background: linear-gradient(90deg, rgba(233, 0, 32, .22), rgba(233, 0, 32, .02)) !important;
  color: #fff !important;
  font-weight: 500 !important;
}
.layui-side-menu .layui-nav-tree .layui-this > a,
.layui-side-menu .layui-nav-tree .layui-nav-child dd.layui-this a {
  position: relative !important;
}
.layui-side-menu .layui-nav-tree .layui-this > a::before,
.layui-side-menu .layui-nav-tree .layui-nav-child dd.layui-this a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--side-active);
  box-shadow: 0 0 12px var(--side-active);
}

/* 隐藏 layui 默认左侧滑条，改用上面的选中红条 */
.layui-side-menu .layui-nav-tree .layui-nav-bar {
  display: none !important;
}

/* 主体左偏移与侧栏宽度一致 */
.layui-layout-admin .layui-body,
.layui-layout-admin .layui-footer,
.layui-layout-admin .layui-layout-left,
.layadmin-pagetabs {
  left: var(--sidebar-w) !important;
}
.layadmin-side-shrink .layui-side,
.layadmin-side-shrink .layui-side-menu .layui-side-scroll,
.layadmin-side-shrink .layui-side-menu .layui-nav,
.layadmin-side-shrink .layui-side-menu .sup-side-brand,
.layadmin-side-shrink .layui-side-menu .layui-logo {
  width: var(--sidebar-w-collapsed, 72px) !important;
}
.layadmin-side-shrink .layui-body,
.layadmin-side-shrink .layui-footer,
.layadmin-side-shrink .layadmin-pagetabs,
.layadmin-side-shrink .layui-layout-left {
  left: var(--sidebar-w-collapsed, 72px) !important;
}
.layadmin-side-shrink .layui-side,
.layadmin-side-shrink .layui-side-menu .layui-side-scroll {
  overflow: visible !important;
}
.layadmin-side-shrink .layui-side {
  z-index: 1001 !important;
}
/* 悬停时图标与飞出层之间的桥接，避免空隙导致菜单消失 */
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item:hover::before {
  content: "";
  position: absolute;
  left: 100%;
  top: 0;
  width: 16px;
  height: 100%;
  z-index: 999;
}
/* 收起态：按钮叠在 logo 图标上（对齐图三，只露出圆形/方标） */
.layadmin-side-shrink .layui-side-menu .sup-side-brand {
  position: relative !important;
  justify-content: center !important;
  flex-direction: row !important;
  height: 72px !important;
  min-height: 72px !important;
  padding: 0 !important;
  gap: 0 !important;
}
.layadmin-side-shrink .layui-side-menu .sup-side-brand .layui-logo {
  justify-content: center !important;
  padding: 0 !important;
  width: 100% !important;
  pointer-events: none !important;
}
.layadmin-side-shrink .layui-side-menu .layui-logo::before {
  margin: 0 auto;
  width: 44px;
  height: 44px;
  border-radius: 12px;
}
.layadmin-side-shrink .layui-side-menu .layui-logo h3,
.layadmin-side-shrink .layui-side-menu .layui-logo span,
.layadmin-side-shrink .layui-side-menu .sup-brand-text {
  display: none !important;
}
.layadmin-side-shrink .layui-side-menu .sup-side-toggle {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 48px !important;
  height: 48px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 5 !important;
}
.layadmin-side-shrink .layui-side-menu .sup-side-toggle:hover {
  background: rgba(255, 255, 255, .08) !important;
  border: 0 !important;
}
.layadmin-side-shrink .layui-side-menu .sup-side-toggle .layui-icon,
.layadmin-side-shrink .layui-side-menu .sup-side-toggle .layui-icon::before {
  display: none !important;
  content: none !important;
  font-size: 0 !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav {
  padding: 4px 8px 10px !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item {
  position: relative !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item {
  margin-bottom: 4px !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item > a {
  justify-content: center !important;
  padding: 0 !important;
  min-height: 44px !important;
  height: 44px !important;
  gap: 0 !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item > a cite,
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item > a .layui-nav-more {
  display: none !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav .layui-nav-item > a .layui-icon {
  margin: 0 !important;
  width: 22px !important;
  font-size: 18px !important;
}

/* 收起态：悬停弹出二级菜单（对齐设计稿 flyout） */
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child {
  display: none !important;
  position: absolute !important;
  left: calc(100% + 12px) !important;
  top: 0 !important;
  z-index: 1000 !important;
  min-width: 180px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 4px !important;
  background: linear-gradient(180deg, var(--side-bg-2), var(--side-bg)) !important;
  border: 1px solid rgba(255, 255, 255, .08) !important;
  border-radius: var(--r-md) !important;
  box-shadow: 0 12px 36px rgba(10, 14, 46, .35) !important;
  overflow: visible !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item:hover > .layui-nav-child,
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child:hover {
  display: block !important;
}
/* 悬停桥接区域，避免移入飞出层时消失 */
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child::before {
  content: attr(data-menu-title);
  display: block;
  padding: 10px 12px 8px;
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child::after {
  content: "";
  position: absolute;
  left: -6px;
  top: 18px;
  width: 10px;
  height: 10px;
  background: var(--side-bg-2);
  transform: rotate(45deg);
  border-left: 1px solid rgba(255, 255, 255, .08);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child dd a {
  padding: 9px 12px !important;
  color: var(--side-text) !important;
  border-radius: var(--r-sm) !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child dd a:hover {
  background: rgba(255, 255, 255, .08) !important;
  color: #fff !important;
}
.layadmin-side-shrink .layui-side-menu .layui-nav > .layui-nav-item > .layui-nav-child dd.layui-this a::before {
  display: none !important;
}
/* 侧栏收起时 lay-tips：深色皮肤（排除表格单元格溢出 tips，避免下架时间等点出黑条） */
.layui-layer.layui-layer-tips:not(.layui-table-tips) {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: visible !important;
}
.layui-layer.layui-layer-tips:not(.layui-table-tips) .layui-layer-content {
  background: linear-gradient(180deg, var(--side-bg-2), var(--side-bg)) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .08) !important;
  border-radius: 10px !important;
  padding: 8px 12px !important;
  box-shadow: 0 10px 28px rgba(10, 14, 46, .3) !important;
  line-height: 1.4 !important;
}
.layui-layer.layui-layer-tips:not(.layui-table-tips) i.layui-layer-TipsG,
.layui-layer.layui-layer-tips:not(.layui-table-tips) i.layui-layer-TipsL {
  border-bottom-color: transparent !important;
  border-right-color: var(--side-bg-2) !important;
}

/* 表格单元格溢出提示：浅色可读，关闭钮不被裁切 */
.layui-layer.layui-table-tips {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  overflow: visible !important;
  border-radius: 0 !important;
}
.layui-layer.layui-table-tips .layui-layer-content {
  background: transparent !important;
  color: inherit !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.layui-table-tips-main {
  background: #fff !important;
  color: var(--text) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-sm) !important;
  box-shadow: 0 6px 18px rgba(10, 14, 46, .12) !important;
}
.layui-table-tips-c {
  background-color: #666 !important;
  color: #fff !important;
}

/* ---- 外壳：顶栏 / Tab ---- */
.layui-layout-admin .layui-header {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--border);
  box-shadow: var(--sh-sm);
}
.layui-layout-admin .layui-header a,
.layui-layout-admin .layui-header .layui-nav .layui-nav-item a {
  color: var(--text-2) !important;
}
.layui-layout-admin .layui-header .layui-nav .layui-nav-item a:hover {
  color: var(--brand) !important;
}
.layadmin-pagetabs {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: none !important;
}
.layadmin-pagetabs .layui-tab-title li.layui-this {
  background: var(--brand-soft) !important;
  color: var(--brand) !important;
}
.layadmin-pagetabs .layui-tab-title .layui-this:after {
  background: var(--accent) !important;
}
.layui-body {
  background: var(--bg) !important;
}

/* ---- 卡片 ---- */
.layui-card {
  border-radius: var(--r-md) !important;
  border: 1px solid var(--border);
  box-shadow: var(--sh-sm);
  overflow: hidden;
}
.layui-card-header {
  color: var(--text) !important;
  font-weight: 600;
  border-bottom: 1px solid var(--border) !important;
  background: var(--surface) !important;
}
.layui-card-body {
  background: var(--surface);
}
.layui-fluid {
  background: transparent;
}

/* ---- 按钮（语义配色） ---- */
.layui-btn {
  border-radius: var(--r-sm) !important;
  font-family: var(--font) !important;
}
/* 默认实心按钮 = 提交/主操作（品牌海军蓝） */
.layui-btn:not(.layui-btn-primary):not(.layui-btn-normal):not(.layui-btn-warm):not(.layui-btn-danger):not(.layui-btn-disabled):not(.btn-ghost):not(.sup-btn-query):not(.sup-btn-add):not(.sup-btn-export):not(.sup-btn-view):not(.sup-btn-edit):not(.sup-btn-auth):not(.sup-btn-import):not(.sup-btn-ok):not(.sup-btn-disable):not(.sup-btn-print):not(.sup-btn-del):not(.sup-btn-submit):not(.sup-btn-shelf-on):not(.sup-btn-shelf-off):not(.sup-btn-select):not(.sup-btn-check) {
  background-color: var(--btn-submit) !important;
  border-color: var(--btn-submit) !important;
  color: #fff !important;
}
.layui-btn-normal {
  background-color: var(--btn-edit) !important;
  border-color: var(--btn-edit) !important;
  color: #fff !important;
}
.layui-btn-primary {
  background: var(--btn-cancel-bg) !important;
  border-color: var(--btn-cancel-border) !important;
  color: var(--btn-cancel-color) !important;
}
.layui-btn-primary:hover {
  border-color: var(--btn-confirm) !important;
  color: var(--btn-confirm) !important;
  background: #ecf5ff !important;
}
.layui-btn-warm {
  background-color: var(--btn-import) !important;
  border-color: var(--btn-import) !important;
  color: #fff !important;
}
.layui-btn-warm:hover {
  background-color: var(--btn-import-hover) !important;
  border-color: var(--btn-import-hover) !important;
}
.layui-btn-danger {
  background-color: var(--btn-delete) !important;
  border-color: var(--btn-delete) !important;
  color: #fff !important;
}
.layuiadmin-btn-useradmin,
.layui-btn.layuiadmin-btn-useradmin {
  background-color: var(--btn-submit) !important;
  border-color: var(--btn-submit) !important;
  color: #fff !important;
}

/* 查询：蓝色 */
.sup-btn-query,
.layui-btn.sup-btn-query,
.layui-btn[lay-filter*="search"],
.layui-btn[lay-filter*="Search"],
.layui-btn:has(.layui-icon-search) {
  background-color: var(--btn-query) !important;
  background: var(--btn-query) !important;
  border: 1px solid var(--btn-query) !important;
  color: #fff !important;
}
.sup-btn-query:hover,
.layui-btn.sup-btn-query:hover,
.layui-btn[lay-filter*="search"]:hover,
.layui-btn[lay-filter*="Search"]:hover,
.layui-btn:has(.layui-icon-search):hover {
  background-color: var(--btn-query-hover) !important;
  border-color: var(--btn-query-hover) !important;
  color: #fff !important;
}

/* 新增 / 创建：品牌海军蓝 */
.sup-btn-add,
.layui-btn.sup-btn-add,
.layui-btn[data-type="add"],
.layui-btn[data-type="addBtn"],
.layui-btn[data-type="createBtn"],
.layui-btn[data-type="dailyActivManage"],
.layui-btn#buttonAdd,
.layui-btn#createBtn,
.layui-btn#addBtn,
.layui-btn:has(.layui-icon-add-1) {
  background-color: var(--btn-add) !important;
  background: var(--btn-add) !important;
  border: 1px solid var(--btn-add) !important;
  color: #fff !important;
}
.sup-btn-add:hover,
.layui-btn.sup-btn-add:hover,
.layui-btn[data-type="add"]:hover,
.layui-btn[data-type="addBtn"]:hover,
.layui-btn[data-type="createBtn"]:hover,
.layui-btn[data-type="dailyActivManage"]:hover,
.layui-btn#buttonAdd:hover,
.layui-btn#createBtn:hover,
.layui-btn#addBtn:hover,
.layui-btn:has(.layui-icon-add-1):hover {
  background-color: var(--btn-add-hover) !important;
  border-color: var(--btn-add-hover) !important;
  color: #fff !important;
}

/* 导出：浅蓝色 */
.sup-btn-export,
.layui-btn.sup-btn-export,
.layui-btn[data-type*="export"],
.layui-btn[data-type*="Export"],
.layui-btn[data-type="fileexport"],
.layui-btn[data-type="exportProduct"],
.layui-btn.export_data,
.layui-btn[id^="btnExport"],
.layui-btn#btnDownloadTpl,
.layui-btn:has(.layui-icon-download-circle) {
  background-color: var(--btn-export) !important;
  background: var(--btn-export) !important;
  border: 1px solid var(--btn-export) !important;
  color: #fff !important;
}
.sup-btn-export:hover,
.layui-btn.sup-btn-export:hover,
.layui-btn[data-type*="export"]:hover,
.layui-btn[data-type*="Export"]:hover,
.layui-btn[data-type="fileexport"]:hover,
.layui-btn[data-type="exportProduct"]:hover,
.layui-btn.export_data:hover,
.layui-btn[id^="btnExport"]:hover,
.layui-btn#btnDownloadTpl:hover,
.layui-btn:has(.layui-icon-download-circle):hover {
  background-color: var(--btn-export-hover) !important;
  border-color: var(--btn-export-hover) !important;
  color: #fff !important;
}

/* 查看 / 详情：青绿 */
.sup-btn-view,
.layui-btn.sup-btn-view,
a.layui-btn[lay-event="read"],
.layui-btn[lay-event="read"],
a.layui-btn[lay-event="detail"],
.layui-btn[lay-event="detail"],
a.layui-btn[lay-event="powerRead"],
.layui-btn[lay-event="powerRead"],
a.layui-btn[lay-event="auzRead"],
.layui-btn[lay-event="auzRead"],
.layui-btn.statuspolicy,
a.ol-detail-link,
a.rl-detail-link {
  background-color: var(--btn-view) !important;
  background: var(--btn-view) !important;
  border: 1px solid var(--btn-view) !important;
  color: #fff !important;
}
a.ol-detail-link,
a.rl-detail-link {
  display: inline-block;
  padding: 0 10px;
  height: 28px;
  line-height: 28px;
  border-radius: var(--r-sm);
  font-size: 12px;
  text-decoration: none !important;
}
.sup-btn-view:hover,
.layui-btn.sup-btn-view:hover,
a.layui-btn[lay-event="read"]:hover,
.layui-btn[lay-event="read"]:hover,
a.layui-btn[lay-event="detail"]:hover,
.layui-btn[lay-event="detail"]:hover,
a.layui-btn[lay-event="powerRead"]:hover,
.layui-btn[lay-event="powerRead"]:hover,
a.layui-btn[lay-event="auzRead"]:hover,
.layui-btn[lay-event="auzRead"]:hover,
.layui-btn.statuspolicy:hover,
a.ol-detail-link:hover,
a.rl-detail-link:hover {
  background-color: var(--btn-view-hover) !important;
  border-color: var(--btn-view-hover) !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* 编辑 / 修改：靛蓝（不再用屎黄） */
.sup-btn-edit,
.layui-btn.sup-btn-edit,
a.layui-btn[lay-event="edit"],
.layui-btn[lay-event="edit"],
a.layui-btn[lay-event="edit2"],
.layui-btn[lay-event="edit2"] {
  background-color: var(--btn-edit) !important;
  background: var(--btn-edit) !important;
  border: 1px solid var(--btn-edit) !important;
  color: #fff !important;
}
.sup-btn-edit:hover,
.layui-btn.sup-btn-edit:hover,
a.layui-btn[lay-event="edit"]:hover,
.layui-btn[lay-event="edit"]:hover,
a.layui-btn[lay-event="edit2"]:hover,
.layui-btn[lay-event="edit2"]:hover {
  background-color: var(--btn-edit-hover) !important;
  border-color: var(--btn-edit-hover) !important;
  color: #fff !important;
}

/* 授权：紫色（与编辑区分） */
.sup-btn-auth,
.layui-btn.sup-btn-auth,
.layui-btn[lay-event="auz"],
a.layui-btn[lay-event="auz"],
.layui-btn[lay-event="power"],
a.layui-btn[lay-event="power"] {
  background-color: var(--btn-auth) !important;
  background: var(--btn-auth) !important;
  border: 1px solid var(--btn-auth) !important;
  color: #fff !important;
}
.sup-btn-auth:hover,
.layui-btn.sup-btn-auth:hover,
.layui-btn[lay-event="auz"]:hover,
a.layui-btn[lay-event="auz"]:hover,
.layui-btn[lay-event="power"]:hover,
a.layui-btn[lay-event="power"]:hover {
  background-color: var(--btn-auth-hover) !important;
  border-color: var(--btn-auth-hover) !important;
  color: #fff !important;
}

/* 导入：橙色 */
.sup-btn-import,
.layui-btn.sup-btn-import,
.layui-btn[data-type*="import"],
.layui-btn[data-type*="Import"],
.layui-btn[data-type="batchImportProduct"],
.layui-btn[data-type="batchImportPrice"] {
  background-color: var(--btn-import) !important;
  background: var(--btn-import) !important;
  border: 1px solid var(--btn-import) !important;
  color: #fff !important;
}
.sup-btn-import:hover,
.layui-btn.sup-btn-import:hover,
.layui-btn[data-type*="import"]:hover,
.layui-btn[data-type*="Import"]:hover,
.layui-btn[data-type="batchImportProduct"]:hover,
.layui-btn[data-type="batchImportPrice"]:hover {
  background-color: var(--btn-import-hover) !important;
  border-color: var(--btn-import-hover) !important;
  color: #fff !important;
}

/* 通过 / 启用 / 正常：绿色 */
.sup-btn-ok,
.layui-btn.sup-btn-ok,
.layui-btn[lay-event="approve"],
.layui-btn[data-type="status2"] {
  background-color: var(--btn-ok) !important;
  background: var(--btn-ok) !important;
  border: 1px solid var(--btn-ok) !important;
  color: #fff !important;
}
.sup-btn-ok:hover,
.layui-btn.sup-btn-ok:hover,
.layui-btn[lay-event="approve"]:hover,
.layui-btn[data-type="status2"]:hover {
  background-color: var(--btn-ok-hover) !important;
  border-color: var(--btn-ok-hover) !important;
  color: #fff !important;
}

/* 批量禁用：灰蓝（与启用区分，不用屎黄） */
.sup-btn-disable,
.layui-btn.sup-btn-disable,
.layui-btn[data-type="status1"] {
  background-color: var(--btn-disable) !important;
  background: var(--btn-disable) !important;
  border: 1px solid var(--btn-disable) !important;
  color: #fff !important;
}
.sup-btn-disable:hover,
.layui-btn.sup-btn-disable:hover,
.layui-btn[data-type="status1"]:hover {
  background-color: var(--btn-disable-hover) !important;
  border-color: var(--btn-disable-hover) !important;
  color: #fff !important;
}

/* 打印：靛蓝 */
.sup-btn-print,
.layui-btn.sup-btn-print,
.layui-btn[lay-event*="print"],
.layui-btn[lay-event*="Print"],
.layui-btn[data-type*="print"],
.layui-btn[data-type*="Print"],
.layui-btn:has(.layui-icon-print) {
  background-color: var(--btn-print) !important;
  background: var(--btn-print) !important;
  border: 1px solid var(--btn-print) !important;
  color: #fff !important;
}
.sup-btn-print:hover,
.layui-btn.sup-btn-print:hover,
.layui-btn[lay-event*="print"]:hover,
.layui-btn[lay-event*="Print"]:hover,
.layui-btn[data-type*="print"]:hover,
.layui-btn[data-type*="Print"]:hover,
.layui-btn:has(.layui-icon-print):hover {
  background-color: var(--btn-print-hover) !important;
  border-color: var(--btn-print-hover) !important;
  color: #fff !important;
}

/* 删除：红色（含表格操作 / 批量删除 / 自定义 dlt） */
.layui-btn-danger,
.layui-btn.layui-btn-danger,
.sup-btn-del,
a.layui-btn[lay-event="del"],
.layui-btn[lay-event="del"],
button.layui-btn[lay-event="del"],
a.layui-btn[lay-event="delete"],
.layui-btn[lay-event="delete"],
.layui-btn[lay-event="reject"],
.layui-btn[lay-event="cancel"],
.layui-btn[lay-event="finishEarly"],
.layui-btn[data-type="del"],
.layui-btn[data-type="batchDelete"],
button.layui-btn[data-type="del"],
button[data-type="del"].layui-btn,
.layui-btn.layuiadmin-btn-useradmin[data-type="del"],
button.layuiadmin-btn-useradmin[data-type="del"],
.layui-btn.js-del-item,
.layui-btn.js-del,
.layui-btn.table_del,
.layui-btn.sup-btn-del,
a.layui-btn.sup-btn-del,
button.dlt:not(.layui-btn-disabled),
.layui-btn-normal[lay-event="del"],
a.layui-btn-normal[lay-event="del"] {
  background-color: var(--btn-delete) !important;
  background: var(--btn-delete) !important;
  border: 1px solid var(--btn-delete) !important;
  color: #fff !important;
}
.layui-btn-danger:hover,
.layui-btn.layui-btn-danger:hover,
.sup-btn-del:hover,
a.layui-btn[lay-event="del"]:hover,
.layui-btn[lay-event="del"]:hover,
.layui-btn[lay-event="delete"]:hover,
.layui-btn[lay-event="reject"]:hover,
.layui-btn[lay-event="cancel"]:hover,
.layui-btn[lay-event="finishEarly"]:hover,
.layui-btn[data-type="del"]:hover,
.layui-btn[data-type="batchDelete"]:hover,
.layui-btn.layuiadmin-btn-useradmin[data-type="del"]:hover,
.layui-btn.js-del-item:hover,
.layui-btn.js-del:hover,
.layui-btn.table_del:hover,
.layui-btn.sup-btn-del:hover,
a.layui-btn.sup-btn-del:hover,
button.dlt:not(.layui-btn-disabled):hover,
.layui-btn-normal[lay-event="del"]:hover,
a.layui-btn-normal[lay-event="del"]:hover {
  background-color: var(--btn-delete-hover) !important;
  background: var(--btn-delete-hover) !important;
  border-color: var(--btn-delete-hover) !important;
  color: #fff !important;
  opacity: 1 !important;
}
button.dlt:not(.layui-btn-disabled) {
  display: inline-block;
  height: 28px;
  line-height: 28px;
  padding: 0 10px;
  border-radius: var(--r-sm);
  cursor: pointer;
  font-size: 12px;
}
button.combine-del {
  color: var(--btn-delete) !important;
}
button.combine-del:hover {
  color: var(--btn-delete-hover) !important;
}

/* 重置：描边次要按钮 */
.layui-btn[type="reset"],
button[type="reset"].layui-btn {
  background: var(--btn-cancel-bg) !important;
  border: 1px solid var(--btn-cancel-border) !important;
  color: var(--btn-cancel-color) !important;
}
.layui-btn[type="reset"]:hover,
button[type="reset"].layui-btn:hover {
  border-color: var(--btn-confirm) !important;
  color: var(--btn-confirm) !important;
  background: #ecf5ff !important;
}

/* JS 语义 class 最终覆盖（避免与 lay-event 冲突） */
.layui-btn.sup-btn-query, a.sup-btn-query { background: var(--btn-query) !important; border-color: var(--btn-query) !important; color: #fff !important; }
.layui-btn.sup-btn-add, a.sup-btn-add { background: var(--btn-add) !important; border-color: var(--btn-add) !important; color: #fff !important; }
.layui-btn.sup-btn-export, a.sup-btn-export { background: var(--btn-export) !important; border-color: var(--btn-export) !important; color: #fff !important; }
.layui-btn.sup-btn-view, a.sup-btn-view, a.ol-detail-link.sup-btn-view, a.rl-detail-link.sup-btn-view { background: var(--btn-view) !important; border-color: var(--btn-view) !important; color: #fff !important; }
.layui-btn.sup-btn-edit, a.sup-btn-edit { background: var(--btn-edit) !important; border-color: var(--btn-edit) !important; color: #fff !important; }
.layui-btn.sup-btn-auth, a.sup-btn-auth { background: var(--btn-auth) !important; border-color: var(--btn-auth) !important; color: #fff !important; }
.layui-btn.sup-btn-import, a.sup-btn-import { background: var(--btn-import) !important; border-color: var(--btn-import) !important; color: #fff !important; }
.layui-btn.sup-btn-ok, a.sup-btn-ok { background: var(--btn-ok) !important; border-color: var(--btn-ok) !important; color: #fff !important; }
.layui-btn.sup-btn-disable, a.sup-btn-disable { background: var(--btn-disable) !important; border-color: var(--btn-disable) !important; color: #fff !important; }
.layui-btn.sup-btn-print, a.sup-btn-print { background: var(--btn-print) !important; border-color: var(--btn-print) !important; color: #fff !important; }
.layui-btn.sup-btn-submit, a.sup-btn-submit, #form_btn.layui-btn { background: var(--btn-submit) !important; border-color: var(--btn-submit) !important; color: #fff !important; }
.layui-btn.sup-btn-shelf-on, a.sup-btn-shelf-on { background: var(--btn-shelf-on) !important; border-color: var(--btn-shelf-on) !important; color: #fff !important; }
.layui-btn.sup-btn-shelf-off, a.sup-btn-shelf-off { background: var(--btn-shelf-off) !important; border-color: var(--btn-shelf-off) !important; color: #fff !important; }
.layui-btn.sup-btn-select, a.sup-btn-select { background: var(--btn-select) !important; border-color: var(--btn-select) !important; color: #fff !important; }
.layui-btn.sup-btn-check, a.sup-btn-check { background: var(--btn-check) !important; border-color: var(--btn-check) !important; color: #fff !important; }
.layui-btn.sup-btn-del, a.sup-btn-del, button.dlt.sup-btn-del { background: var(--btn-delete) !important; border-color: var(--btn-delete) !important; color: #fff !important; }
.layui-btn.sup-btn-cancel,
a.sup-btn-cancel,
.layui-btn.sup-btn-reset {
  background: var(--btn-cancel-bg) !important;
  border: 1px solid var(--btn-cancel-border) !important;
  color: var(--btn-cancel-color) !important;
}

/* ---- 表单 / 输入 ---- */
.layui-input, .layui-select, .layui-textarea,
.layui-form-select .layui-input {
  border-radius: var(--r-sm) !important;
  border-color: var(--border-strong) !important;
}
.layui-input:focus, .layui-textarea:focus {
  border-color: var(--brand) !important;
}
.layui-form-checked[lay-skin=primary] i,
.layui-form-checked span {
  border-color: var(--brand) !important;
}
.layui-form-onswitch {
  border-color: var(--brand) !important;
  background-color: var(--brand) !important;
}
.layui-form-radio > i:hover,
.layui-form-radioed > i {
  color: var(--brand) !important;
}
.layui-form-select dl dd.layui-this {
  background-color: var(--brand) !important;
}

/* ---- 表格 ---- */
.layui-table-view {
  border: 1px solid var(--border) !important;
  border-radius: var(--r-sm) !important;
  overflow: hidden !important;
}
.layui-table thead tr,
.layui-table-header {
  background: #f5f6f8 !important;
}
.layui-table th {
  color: var(--text-2) !important;
  font-weight: 600 !important;
}
.layui-table tbody tr:hover,
.layui-table-hover,
.layui-table-click {
  background-color: var(--brand-soft) !important;
}
.layui-laypage .layui-laypage-curr .layui-laypage-em {
  background-color: var(--brand) !important;
}
.layui-laypage a:hover {
  color: var(--brand) !important;
}

/* ---- 其它组件 ---- */
.layui-tab-brief > .layui-tab-title .layui-this {
  color: var(--brand) !important;
}
.layui-tab-brief > .layui-tab-more li.layui-this:after,
.layui-tab-brief > .layui-tab-title .layui-this:after {
  border-bottom-color: var(--accent) !important;
}
.layui-badge, .layui-badge-dot {
  border-radius: 4px !important;
}
/* 默认徽章（无色类时用品牌色）；带 layui-bg-* 的按状态各自配色，禁止统一刷成红色 */
.layui-badge:not([class*="layui-bg-"]) {
  background-color: var(--brand) !important;
}
.layui-badge-dot:not([class*="layui-bg-"]) {
  background-color: var(--accent) !important;
}
.layui-badge.layui-bg-orange,
.layui-bg-orange.layui-badge {
  background-color: var(--status-pending-2) !important;
}
.layui-badge.layui-bg-blue,
.layui-bg-blue.layui-badge {
  background-color: var(--status-pending) !important;
}
.layui-badge.layui-bg-green,
.layui-bg-green.layui-badge {
  background-color: var(--status-done) !important;
}
.layui-badge.layui-bg-red,
.layui-bg-red.layui-badge {
  background-color: var(--status-reject) !important;
}
.layui-badge.layui-bg-cyan,
.layui-bg-cyan.layui-badge {
  background-color: var(--status-processing) !important;
}
.layui-badge.layui-bg-gray,
.layui-bg-gray.layui-badge {
  background-color: var(--status-disabled) !important;
}
.layui-badge.layui-bg-black,
.layui-bg-black.layui-badge {
  background-color: #334155 !important;
}
.layui-progress-bar {
  background-color: var(--brand) !important;
}
.layui-layer-btn .layui-layer-btn0 {
  border-color: var(--btn-confirm) !important;
  background-color: var(--btn-confirm) !important;
  color: #fff !important;
}
.layui-layer-btn .layui-layer-btn0:hover {
  border-color: var(--btn-confirm-hover) !important;
  background-color: var(--btn-confirm-hover) !important;
  color: #fff !important;
}

/* ---- Layer 弹层（对齐设计稿抽屉观感；tips 另有规则，勿裁切关闭钮） ---- */
.layui-layer:not(.layui-layer-tips):not(.layui-table-tips) {
  border-radius: var(--r-md) !important;
  overflow: hidden !important;
  box-shadow: 0 12px 36px rgba(10, 14, 46, .18) !important;
  border: 1px solid var(--border) !important;
  font-family: var(--font) !important;
}
.layui-layer-iframe,
.layui-layer-page {
  background: var(--surface) !important;
}
.layui-layer-title {
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 52px 0 20px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--text) !important;
  background: var(--surface) !important;
  border-bottom: 1px solid var(--border) !important;
}
.layui-layer-setwin {
  top: 16px !important;
  right: 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.layui-layer-setwin a {
  width: 20px !important;
  height: 20px !important;
}
/* 关闭钮：黑色 ×，无蓝色背景（覆盖 layer icon.png） */
.layui-layer-setwin .layui-layer-close1,
.layui-layer-setwin a.layui-layer-close1,
.layui-layer-setwin a.layui-layer-ico.layui-layer-close1 {
  background: none !important;
  background-image: none !important;
  background-color: transparent !important;
  background-position: 0 0 !important;
  position: relative !important;
  width: 22px !important;
  height: 22px !important;
  opacity: 1 !important;
}
.layui-layer-setwin .layui-layer-close1::after,
.layui-layer-setwin a.layui-layer-close1::after,
.layui-layer-setwin a.layui-layer-ico.layui-layer-close1::after {
  content: "\00d7" !important;
  position: absolute !important;
  inset: 0 !important;
  line-height: 20px !important;
  font-size: 22px !important;
  font-family: Arial, sans-serif !important;
  color: #222 !important;
  text-align: center !important;
  background: none !important;
  pointer-events: none !important;
}
.layui-layer-iframe iframe {
  background: var(--bg) !important;
}
.layui-layer-shade {
  background-color: rgba(8, 16, 40, .48) !important;
  opacity: 1 !important;
}
.layui-layer-btn {
  padding: 12px 20px !important;
  background: var(--surface) !important;
  border-top: 1px solid var(--border) !important;
  text-align: right !important;
}
.layui-layer-btn a {
  border-radius: var(--r-sm) !important;
  height: 34px !important;
  line-height: 34px !important;
  margin: 0 0 0 10px !important;
  padding: 0 16px !important;
}
.layui-layer-btn .layui-layer-btn1 {
  background: var(--btn-cancel-bg) !important;
  color: var(--btn-cancel-color) !important;
  border: 1px solid var(--btn-cancel-border) !important;
}
.layui-layer-btn .layui-layer-btn1:hover {
  color: var(--btn-confirm) !important;
  border-color: #c6e2ff !important;
  background: #ecf5ff !important;
}
/* 确认框 / alert 正文：深色字 */
.layui-layer-dialog:not(.layui-layer-msg):not(.layui-layer-hui) .layui-layer-content {
  color: var(--text-2) !important;
}
/* layer.msg / tips：深色底 + 白字，避免被主题覆盖后看不清 */
.layui-layer-msg,
.layui-layer-hui {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.layui-layer-msg .layui-layer-content,
.layui-layer-hui .layui-layer-content {
  color: #fff !important;
  background-color: rgba(20, 22, 43, .88) !important;
  border-radius: 6px !important;
  padding: 10px 18px !important;
  line-height: 22px !important;
  font-size: 14px !important;
}
/* 所有操作提示/弹层：去掉成功失败等表情脸（保留 loading ico16、关闭/最大化按钮） */
.layui-layer .layui-layer-ico:not(.layui-layer-ico16):not(.layui-layer-close):not(.layui-layer-min):not(.layui-layer-max),
.layui-layer-dialog .layui-layer-ico:not(.layui-layer-ico16):not(.layui-layer-close):not(.layui-layer-min):not(.layui-layer-max),
.layui-layer-msg .layui-layer-ico:not(.layui-layer-ico16):not(.layui-layer-close),
.layui-layer-hui .layui-layer-ico:not(.layui-layer-ico16):not(.layui-layer-close),
body .layui-layer-content > .layui-layer-ico.layui-layer-ico1,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico2,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico3,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico4,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico5,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico6,
body .layui-layer-content > .layui-layer-ico.layui-layer-ico7 {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  overflow: hidden !important;
}
/* 确保右上角关闭按钮可见（layui 关闭钮也带 layui-layer-ico 类，勿被上面规则误伤） */
.layui-layer-setwin {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 10 !important;
}
.layui-layer-setwin .layui-layer-close,
.layui-layer-setwin .layui-layer-close1,
.layui-layer-setwin a.layui-layer-ico.layui-layer-close,
.layui-layer-setwin a.layui-layer-ico.layui-layer-close1 {
  display: inline-block !important;
  visibility: visible !important;
  width: 16px !important;
  height: 16px !important;
  overflow: visible !important;
  opacity: 1 !important;
}
.layui-layer-msg .layui-layer-content.layui-layer-padding,
.layui-layer-hui .layui-layer-content.layui-layer-padding,
.layui-layer-dialog .layui-layer-content.layui-layer-padding {
  padding: 10px 18px !important;
  padding-left: 18px !important;
}

/* ---------- 侧滑抽屉：层级、标题、底栏 ---------- */
.layui-layer.sup-product-drawer {
  border-radius: 16px 0 0 16px !important;
  border: none !important;
  border-left: 1px solid rgba(226, 228, 235, .9) !important;
  box-shadow:
    -8px 0 24px rgba(10, 14, 46, .08),
    -28px 0 64px rgba(10, 14, 46, .14) !important;
  overflow: hidden !important;
  background: var(--surface) !important;
}
.layui-layer.sup-product-drawer .layui-layer-title {
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 52px 0 20px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  letter-spacing: .02em !important;
  color: var(--text) !important;
  background:
    linear-gradient(90deg, var(--brand-soft) 0, #fff 48%) !important;
  border-bottom: 1px solid var(--border) !important;
  position: relative !important;
}
.layui-layer.sup-product-drawer .layui-layer-title::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 12px !important;
  bottom: 12px !important;
  width: 3px !important;
  border-radius: 0 3px 3px 0 !important;
  background: var(--brand) !important;
}
.layui-layer.sup-product-drawer .layui-layer-setwin {
  top: 15px !important;
  right: 14px !important;
}
.layui-layer.sup-product-drawer .layui-layer-setwin .layui-layer-close1 {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  transition: background .15s ease !important;
}
.layui-layer.sup-product-drawer .layui-layer-setwin .layui-layer-close1:hover {
  background: var(--surface-2) !important;
}
.layui-layer.sup-product-drawer .layui-layer-content {
  background: var(--bg) !important;
  overflow: auto !important;
}
.layui-layer.sup-product-drawer .layui-layer-content iframe {
  background: var(--bg) !important;
}

/* 嵌套抽屉：逐级收窄，露出下层边缘形成层级 */
.layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer {
  width: 78% !important;
  left: auto !important;
  right: 0 !important;
  border-radius: 14px 0 0 14px !important;
  box-shadow:
    -12px 0 32px rgba(10, 14, 46, .12),
    -36px 0 72px rgba(10, 14, 46, .18) !important;
  border-left: 1px solid rgba(22, 28, 103, .12) !important;
}
.layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer .layui-layer-title {
  background: linear-gradient(90deg, #dde1f5 0, #fff 42%) !important;
}
.layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer {
  width: 68% !important;
  border-radius: 12px 0 0 12px !important;
  box-shadow:
    -16px 0 40px rgba(10, 14, 46, .14),
    -40px 0 80px rgba(10, 14, 46, .2) !important;
}
.layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer ~ .layui-layer.sup-product-drawer .layui-layer-title {
  background: linear-gradient(90deg, #d0d6f0 0, #fff 40%) !important;
}

/* 抽屉底栏按钮（确定 / 关闭） */
.layui-layer.sup-product-drawer .layui-layer-btn {
  padding: 12px 20px !important;
  background: var(--surface) !important;
  border-top: 1px solid var(--border) !important;
  text-align: right !important;
  box-shadow: 0 -6px 18px rgba(10, 14, 46, .04) !important;
}
.layui-layer.sup-product-drawer .layui-layer-btn a {
  margin: 0 0 0 10px !important;
  height: 36px !important;
  line-height: 36px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1px solid transparent !important;
}
.layui-layer.sup-product-drawer .layui-layer-btn .layui-layer-btn0 {
  background: var(--btn-confirm, var(--brand)) !important;
  color: #fff !important;
  border-color: var(--btn-confirm, var(--brand)) !important;
}
.layui-layer.sup-product-drawer .layui-layer-btn .layui-layer-btn0:hover {
  background: var(--brand-strong) !important;
  border-color: var(--brand-strong) !important;
}
.layui-layer.sup-product-drawer .layui-layer-btn .layui-layer-btn1 {
  background: var(--btn-cancel-bg, #fff) !important;
  color: var(--btn-cancel-color, var(--text-2)) !important;
  border-color: var(--btn-cancel-border, var(--border-strong)) !important;
}
.layui-layer.sup-product-drawer .layui-layer-btn .layui-layer-btn1:hover {
  border-color: var(--brand) !important;
  color: var(--brand) !important;
}

/* 抽屉内页：选品 / 创建表单铺满，去掉大片空白 */
.sup-drawer-page {
  min-height: 100% !important;
  background: var(--bg) !important;
}
.sup-drawer-page > .layui-fluid {
  padding: 12px 14px 16px !important;
  box-sizing: border-box !important;
}
.sup-drawer-page .layui-card {
  border-radius: 12px !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 1px 2px rgba(10, 14, 46, .04) !important;
  overflow: hidden !important;
  background: var(--surface) !important;
}
.sup-drawer-page .layuiadmin-card-header-auto,
.sup-drawer-page .layui-card-header {
  padding: 12px 14px 4px !important;
  background: var(--surface) !important;
  border-bottom: 1px solid var(--border) !important;
}
.sup-drawer-page .layui-card-header .layui-form-item {
  margin-bottom: 8px !important;
}
.sup-drawer-page .layui-card-header .layui-inline {
  margin-bottom: 8px !important;
}
.sup-drawer-page .layui-card-body {
  padding: 10px 12px 12px !important;
  background: var(--surface) !important;
}
.sup-drawer-page .layui-form-label {
  width: 56px !important;
  padding: 8px 4px !important;
  color: var(--muted) !important;
}
.sup-drawer-page .layui-input,
.sup-drawer-page .layui-select,
.sup-drawer-page .layui-form-select .layui-input {
  height: 34px !important;
  line-height: 34px !important;
  border-radius: 8px !important;
}
.sup-drawer-page .layuiadmin-btn-useradmin {
  height: 34px !important;
  line-height: 34px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
}
.sup-drawer-page .layui-table-view {
  border-radius: 8px !important;
  overflow: hidden !important;
}

/* ---------- 居中表单弹窗（替代多层抽屉） ---------- */
.layui-layer.sup-form-dialog {
  border-radius: 14px !important;
  border: none !important;
  overflow: hidden !important;
  box-shadow:
    0 8px 24px rgba(10, 14, 46, .1),
    0 28px 72px rgba(10, 14, 46, .22) !important;
  background: var(--surface) !important;
}
.layui-layer.sup-form-dialog .layui-layer-title {
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 52px 0 22px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  color: var(--text) !important;
  background: linear-gradient(90deg, var(--brand-soft) 0, #fff 55%) !important;
  border-bottom: 1px solid var(--border) !important;
  position: relative !important;
}
.layui-layer.sup-form-dialog .layui-layer-title::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 12px !important;
  bottom: 12px !important;
  width: 3px !important;
  border-radius: 0 3px 3px 0 !important;
  background: var(--brand) !important;
}
.layui-layer.sup-form-dialog .layui-layer-setwin {
  top: 15px !important;
  right: 14px !important;
}
.layui-layer.sup-form-dialog .layui-layer-setwin .layui-layer-min,
.layui-layer.sup-form-dialog .layui-layer-setwin .layui-layer-max,
.layui-layer.sup-form-dialog .layui-layer-setwin .layui-layer-maxmin {
  display: none !important;
}
.layui-layer.sup-form-dialog .layui-layer-content {
  background: var(--bg) !important;
}
.layui-layer.sup-form-dialog .layui-layer-content iframe {
  background: var(--bg) !important;
}

/* 创建页内选品：同一弹窗内切换，不再叠第二层窗 */
.sup-inpage-picker {
  position: fixed;
  inset: 0;
  z-index: 19891015;
  display: none;
  flex-direction: column;
  background: var(--bg);
}
.sup-inpage-picker.is-open {
  display: flex;
  animation: supPickerIn .22s cubic-bezier(.16, 1, .3, 1) both;
}
@keyframes supPickerIn {
  from { opacity: .4; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
.sup-inpage-picker__head {
  flex-shrink: 0;
  height: 48px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  background: linear-gradient(90deg, var(--brand-soft) 0, #fff 50%);
  border-bottom: 1px solid var(--border);
}
.sup-inpage-picker__back {
  border: 1px solid var(--border-strong);
  background: #fff;
  color: var(--text-2);
  height: 30px;
  padding: 0 12px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 13px;
  line-height: 28px;
}
.sup-inpage-picker__back:hover {
  border-color: var(--brand);
  color: var(--brand);
}
.sup-inpage-picker__title {
  font-size: 14px;
  font-weight: 650;
  color: var(--text);
}
.sup-inpage-picker__body {
  flex: 1;
  min-height: 0;
  position: relative;
}
.sup-inpage-picker__body iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: var(--bg);
}
.sup-inpage-picker__foot {
  flex-shrink: 0;
  padding: 12px 16px;
  text-align: right;
  background: var(--surface);
  border-top: 1px solid var(--border);
  box-shadow: 0 -6px 18px rgba(10, 14, 46, .04);
}
.sup-inpage-picker__foot .layui-btn {
  height: 36px !important;
  line-height: 36px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  margin-left: 10px !important;
}

/* 订单产品明细：订单数弹层（type:1 挂在父页 layer，样式需在主题内） */
.layui-layer.sup-product-drawer .opd-popup-wrap {
  padding: 12px 16px 8px;
  box-sizing: border-box;
}
.layui-layer.sup-product-drawer .opd-popup-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
  padding: 0 4px 14px;
  margin-bottom: 4px;
  font-size: 13px;
  color: var(--text);
  line-height: 22px;
  border-bottom: 1px solid var(--border);
}
.layui-layer.sup-product-drawer .opd-popup-meta-item {
  display: flex;
  align-items: flex-start;
  min-width: 200px;
}
.layui-layer.sup-product-drawer .opd-popup-meta-label {
  color: var(--muted);
  flex-shrink: 0;
  margin-right: 6px;
}
.layui-layer.sup-product-drawer .opd-popup-meta-value {
  word-break: break-all;
}
.layui-layer.sup-product-drawer .opd-popup-total {
  display: flex;
  justify-content: flex-end;
  gap: 24px;
  padding: 12px 4px 4px;
  font-size: 14px;
  color: var(--text);
}
.layui-layer.sup-product-drawer .opd-popup-total b {
  font-size: 16px;
}
/* 自右侧滑入 */
@keyframes supDrawerIn {
  from { transform: translateX(24px); opacity: .6; }
  to { transform: translateX(0); opacity: 1; }
}
.layui-layer.sup-product-drawer {
  animation: supDrawerIn .26s cubic-bezier(.16, 1, .3, 1) both;
}
.layui-table .layui-btn-primary.layui-btn-xs {
  background: var(--surface-2) !important;
  color: var(--text-2) !important;
  border: 1px solid var(--border) !important;
}
.layui-table .layui-btn-primary.layui-btn-xs:hover {
  border-color: var(--brand) !important;
  color: var(--brand) !important;
}

/* 登录页轻量品牌色 */
.layadmin-user-login-header h2 {
  color: var(--brand) !important;
}
.layadmin-user-login-box .layui-btn {
  background-color: var(--brand) !important;
}
