/* =====================================================================
   余烬模板 · Ink & Ember  —  全站主题（深墨 + 余烬橙 / 日间 · Daybreak）
   覆盖范围：LightYear 后台框架 / Bootstrap 4 / layui / 模板自带样式
   说明：模板各页面自带 <style> 与内联 style，故关键色值统一加 !important
   ===================================================================== */

:root{
  --ink-900:#07090C;
  --ink-850:#0A0D12;
  --ink-800:#0E1218;
  --ink-750:#121821;
  --ink-700:#18202B;
  --ink-650:#1E2733;

  --line:rgba(255,255,255,.075);
  --line-2:rgba(255,255,255,.13);
  --line-3:rgba(255,255,255,.2);

  --txt:#E9EBEF;
  --txt-2:#A3ACBA;
  --txt-3:#6C7684;

  --ember:#FF5A36;
  --ember-2:#FF7B57;
  --ember-dim:rgba(255,90,54,.14);
  --ember-line:rgba(255,90,54,.42);

  --ok:#2FBF71;
  --warn:#F0B429;
  --info:#4C8DFF;
  --danger:#F0553F;

  --r-sm:8px;
  --r-md:11px;
  --r-lg:16px;

  --mono:ui-monospace,"SF Mono","JetBrains Mono",Consolas,"Courier New",monospace;
  --sans:"HarmonyOS Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;

  /* ── 以下为日夜两套主题共用的语义变量，夜间值即本文件原有色值 ── */
  --veil-1:rgba(255,255,255,.015);   /* 极轻底色：斑马纹 */
  --veil-2:rgba(255,255,255,.022);   /* 轻底色：斑马纹（td） */
  --veil-3:rgba(255,255,255,.03);    /* 行悬停 */
  --veil-4:rgba(255,255,255,.045);   /* 菜单/按钮悬停 */
  --veil-5:rgba(255,255,255,.05);    /* 顶栏图标悬停 */
  --veil-ln:rgba(255,255,255,.28);   /* 滚动条滑块 */
  --veil-ln2:rgba(255,255,255,.05);  /* 滚动条轨道 */

  --nav-txt:#B6BECB;
  --nav-sub:#8C95A3;
  --nav-arrow:#55606E;
  --nav-active-txt:#FFD9CE;
  --foot-txt:#4E5764;
  --foot-link:#7A8492;
  --toggler:#7E8895;
  --th-txt:#8C96A4;
  --ph:#59626F;

  --sb-1:#232c38;
  --sb-2:#33404f;
  --sb-3:#495968;

  --header-bg:rgba(10,13,18,.82);
  --mask:rgba(7,9,12,.75);
  --modal-mask:rgba(0,0,0,.62);
  --tooltip-bg:#000;
  --avatar-bg:#fff;
  --btn-hover-fg:#fff;
  --scheme:dark;

  --sh-sm:0 8px 22px -8px rgba(0,0,0,.9);
  --sh-side:0 0 60px rgba(0,0,0,.9);
  --sh-md:0 24px 60px -18px rgba(0,0,0,.95);
  --sh-lg:0 30px 80px -20px rgba(0,0,0,.95);

  --ok-fg:#5ADF9B;
  --ok-fg-b:#4FD98C;
  --ok-fg-c:#6EE0A6;
  --danger-fg:#FF9C8B;
  --warn-fg:#FFD06B;
  --info-fg:#8FB6FF;
  --code-fg:#FFB199;
  --inline-red:#FF8A75;
  --inline-gray:#98A2B0;
  --inline-gray2:#7E8794;
  --inline-blue:#7FA8FF;

  --on-ember:var(--on-ember);
  --msg-ok-bg:rgba(20,60,40,.95);
  --msg-err-bg:rgba(60,22,18,.95);
}

/* ═══════════════════════════════════════════════════════════════════
   日间模式 · Daylight
   挂在 <html data-theme="light"> 上，只重定义变量，不重复任何规则。
   切换由 plugins/theme_mode 负责（顶栏开关 + localStorage + iframe 广播）。
   ═══════════════════════════════════════════════════════════════════ */
:root[data-theme="light"]{
  --ink-900:#F2F4F8;   /* 页面底 */
  --ink-850:#FFFFFF;   /* 侧栏 */
  --ink-800:#FFFFFF;   /* 卡片 */
  --ink-750:#F6F8FB;   /* 输入框 / 浮层 */
  --ink-700:#EDF0F5;   /* 次级按钮 */
  --ink-650:#E2E7EF;   /* 悬停 */

  --line:rgba(17,24,39,.09);
  --line-2:rgba(17,24,39,.145);
  --line-3:rgba(17,24,39,.23);

  --txt:#111A27;
  --txt-2:#495667;
  --txt-3:#8592A3;

  --ember:#F04E23;
  --ember-2:#D23C13;
  --ember-dim:rgba(240,78,35,.10);
  --ember-line:rgba(240,78,35,.34);

  --veil-1:rgba(17,24,39,.024);
  --veil-2:rgba(17,24,39,.028);
  --veil-3:rgba(17,24,39,.034);
  --veil-4:rgba(17,24,39,.05);
  --veil-5:rgba(17,24,39,.06);
  --veil-ln:rgba(17,24,39,.2);
  --veil-ln2:rgba(17,24,39,.07);

  --nav-txt:#3A4657;
  --nav-sub:#697585;
  --nav-arrow:#A3ACB9;
  --nav-active-txt:#AB2C0A;
  --foot-txt:#9AA3B0;
  --foot-link:#697585;
  --toggler:#697585;
  --th-txt:#697585;
  --ph:#A7B0BC;

  --sb-1:#CBD2DB;
  --sb-2:#B5BEC9;
  --sb-3:#98A3B1;

  --header-bg:rgba(255,255,255,.86);
  --mask:rgba(255,255,255,.70);
  --modal-mask:rgba(17,24,39,.38);
  --tooltip-bg:#1F2937;
  --avatar-bg:#F1F3F7;
  --btn-hover-fg:#0E1621;
  --scheme:light;

  --sh-sm:0 4px 14px -7px rgba(17,24,39,.16);
  --sh-side:0 0 40px rgba(17,24,39,.10);
  --sh-md:0 16px 40px -14px rgba(17,24,39,.16);
  --sh-lg:0 22px 56px -18px rgba(17,24,39,.18);

  --ok-fg:#0E8A4F;
  --ok-fg-b:#0E8A4F;
  --ok-fg-c:#0E8A4F;
  --danger-fg:#C02A11;
  --warn-fg:#8A5B00;
  --info-fg:#1D57D0;
  --code-fg:#A63318;
  --inline-red:#BE3A29;
  --inline-gray:#5A6371;
  --inline-gray2:#8A93A1;
  --inline-blue:#2563EB;

  --on-ember:var(--on-ember);
  --msg-ok-bg:rgba(242,253,247,.98);
  --msg-err-bg:rgba(254,243,242,.98);
}

/* 日间模式下的几处结构性补正（变量管不到的边界感） */
:root[data-theme="light"] #logo img,
:root[data-theme="light"] .sidebar-header img{
  border:0 !important;box-shadow:none !important;
}
:root[data-theme="light"] .lyear-layout-sidebar{
  border-right:1px solid var(--line) !important;
}
:root[data-theme="light"] .lyear-layout-header{
  border-bottom:1px solid var(--line) !important;
}

/* 日间：遮罩别再糊成一片黑（layui / bootstrap / element 三套都在用） */
:root[data-theme="light"] .layui-layer-shade{
  background-color:rgba(17,24,39,.16) !important;opacity:1 !important;
}
:root[data-theme="light"] .modal-backdrop{
  background-color:rgba(17,24,39,.20) !important;opacity:1 !important;
}
:root[data-theme="light"] .v-modal,
:root[data-theme="light"] .el-dialog__wrapper{
  background:rgba(17,24,39,.16) !important;
}
/* 页面水印：浅底上降一档，白纸别被印脏 */
:root[data-theme="light"] .mark_div{opacity:.18 !important;}

/* 「插件管理」页自带一套写死的深色卡片，浅底上整套换浅 */
:root[data-theme="light"] .fd-pl-stat,
:root[data-theme="light"] .fd-pl-card,
:root[data-theme="light"] .fd-pl-empty,
:root[data-theme="light"] .fd-pl-doc{background:#FFFFFF !important;border-color:rgba(17,24,39,.10) !important;}
:root[data-theme="light"] div[style*="background:#0E1218"]{background:#FFFFFF !important;color:#495667 !important;border-color:rgba(17,24,39,.10) !important;}
:root[data-theme="light"] .fd-pl-stat b{color:#D23C13 !important;}
:root[data-theme="light"] .fd-pl-top h1,
:root[data-theme="light"] .fd-pl-title,
:root[data-theme="light"] .fd-pl-doc h2{color:#111A27 !important;}
:root[data-theme="light"] .fd-pl-top p,
:root[data-theme="light"] .fd-pl-stat span,
:root[data-theme="light"] .fd-pl-sub,
:root[data-theme="light"] .fd-pl-ver,
:root[data-theme="light"] .fd-pl-doc th{color:#8592A3 !important;}
:root[data-theme="light"] .fd-pl-desc,
:root[data-theme="light"] .fd-pl-doc td{color:#495667 !important;}
:root[data-theme="light"] .fd-pl-slug{color:#98A3B1 !important;}
:root[data-theme="light"] .fd-pl-icon,
:root[data-theme="light"] .fd-pl-ver{background:#F1F4F8 !important;color:#697585 !important;}
:root[data-theme="light"] .fd-pl-card.is-on{border-color:rgba(240,78,35,.38) !important;box-shadow:0 0 0 1px rgba(240,78,35,.06) inset !important;}
:root[data-theme="light"] .fd-pl-card.is-on .fd-pl-icon{background:rgba(240,78,35,.10) !important;color:#D23C13 !important;}
:root[data-theme="light"] .fd-pl-card:hover{border-color:rgba(17,24,39,.18) !important;}
:root[data-theme="light"] .fd-btn-off{background:#EDF0F5 !important;color:#495667 !important;border-color:rgba(17,24,39,.12) !important;}
:root[data-theme="light"] .fd-btn-ghost{color:#495667 !important;border-color:rgba(17,24,39,.16) !important;}
:root[data-theme="light"] .fd-pill-on{background:rgba(240,78,35,.12) !important;color:#B8320C !important;}
:root[data-theme="light"] .fd-pill-off{background:rgba(17,24,39,.06) !important;color:#697585 !important;}
:root[data-theme="light"] .fd-pl-alert.ok{background:rgba(14,138,79,.09) !important;color:#0E7A47 !important;border-color:rgba(14,138,79,.22) !important;}
:root[data-theme="light"] .fd-pl-alert.bad{background:rgba(192,42,17,.07) !important;color:#B02A12 !important;border-color:rgba(192,42,17,.22) !important;}
:root[data-theme="light"] .fd-pl-empty code{background:#F6F0EE !important;color:#B23A17 !important;}
:root[data-theme="light"] .fd-pl-doc code{color:#A63318 !important;}
:root[data-theme="light"] .fd-pl-foot,
:root[data-theme="light"] .fd-pl-doc th,
:root[data-theme="light"] .fd-pl-doc td{border-color:rgba(17,24,39,.08) !important;}

/* 「一键对接」插件的小件（wk-tag / wk-cron 等） */
:root[data-theme="light"] .wk-tag{background:#EDF1F7 !important;color:#5A6675 !important;border-color:rgba(17,24,39,.08) !important;}
:root[data-theme="light"] .wk-cron{background:#F6F8FB !important;color:#5A6675 !important;border-color:rgba(17,24,39,.08) !important;}

/* 「侧边栏编辑」设置页：卡片、输入框、预览台同样是写死的深色 */
:root[data-theme="light"] .fdg-card{background:#FFFFFF !important;border-color:rgba(17,24,39,.10) !important;}
:root[data-theme="light"] .fdg-head{background:#F7F9FC !important;border-bottom-color:rgba(17,24,39,.08) !important;}
:root[data-theme="light"] .fd-in{background:#FFFFFF !important;border-color:rgba(17,24,39,.14) !important;color:#111A27 !important;}
:root[data-theme="light"] .fd-in::placeholder{color:#A7B0BC !important;}
:root[data-theme="light"] .fd-chk,
:root[data-theme="light"] .fd-qk-sub,
:root[data-theme="light"] .fdg-empty{color:#697585 !important;}
:root[data-theme="light"] .fd-qa-row select option,
:root[data-theme="light"] .fd-qk-row select option{background:#FFFFFF !important;color:#111A27 !important;}
:root[data-theme="light"] .fd-pv{background:#F6F8FB !important;border-top-color:rgba(17,24,39,.08) !important;}
:root[data-theme="light"] .fd-pv-tag b{color:#3A4657 !important;}
:root[data-theme="light"] .fd-pv-tag em{color:#8592A3 !important;border-color:rgba(17,24,39,.14) !important;}
:root[data-theme="light"] .fd-pv-tag em.live{color:#0E7A47 !important;border-color:rgba(14,138,79,.3) !important;background:rgba(14,138,79,.08) !important;}
:root[data-theme="light"] .fd-pv-stage{background:#EEF1F6 !important;border-color:rgba(17,24,39,.08) !important;}
:root[data-theme="light"] .fd-qk-row:hover{background:rgba(17,24,39,.03) !important;}
/* 子页面会重复引入一份不带版本号的 style.min.css，排在主题之后，
   把 .btn-success 之类的文字重新刷成白色。浅底上就是"白字看不见"，
   这里用更高一级的选择器收口：彩色实底的主按钮除外。 */
:root[data-theme="light"] .btn:not(.btn-link):not(.btn-outline-primary),
:root[data-theme="light"] .el-button:not(.el-button--text):not(.el-button--primary),
:root[data-theme="light"] .layui-btn:not(.layui-btn-danger){
  color:var(--txt) !important;
}
/* 订单状态用 <font color> 写死，浅底上要压深一档才看得清 */
:root[data-theme="light"] font[color="#fcc525"]{color:#8A5F00 !important;}
:root[data-theme="light"] font[color="#15c377"]{color:#0E7A47 !important;}
:root[data-theme="light"] font[color="#926dde"]{color:#5F3EB0 !important;}
:root[data-theme="light"] font[color="#f96197"]{color:#B92B62 !important;}
:root[data-theme="light"] font[color="#33cabb"]{color:#07766C !important;}

/* 首页统计卡：金额数字原用 #FF8A66，白底上太浅 */
:root[data-theme="light"] .fd-stat-card.money .v{color:#C93F12 !important;}
:root[data-theme="light"] .fd-stat-card .v small{color:var(--txt-3) !important;}

/* 模板里大量内联 color:#fff，浅底上同样会消失；带 background 的（彩色块上的白字）不动 */
:root[data-theme="light"] [style*="color:#fff"]:not([style*="background"]):not([style*="background-color"]),
:root[data-theme="light"] [style*="color: #fff"]:not([style*="background"]):not([style*="background-color"]),
:root[data-theme="light"] [style*="color:#FFF"]:not([style*="background"]):not([style*="background-color"]),
:root[data-theme="light"] [style*="color:white"]:not([style*="background"]):not([style*="background-color"]){
  color:var(--txt) !important;
}

/* 主按钮是橙色实底，浅色下阴影要收一点，否则发脏 */
:root[data-theme="light"] .btn-primary,
:root[data-theme="light"] .btn-success,
:root[data-theme="light"] .btn-danger,
:root[data-theme="light"] .btn-info,
:root[data-theme="light"] .btn-warning,
:root[data-theme="light"] .layui-btn,
:root[data-theme="light"] .el-button--primary{
  box-shadow:0 4px 14px -8px rgba(240,78,35,.62) !important;
}
/* 插件设置页：主程序把这几处颜色写死了，浅色下要逐条纠正（结构不动） */
:root[data-theme="light"] .fd-set-body{background:var(--ink-800) !important;border-color:var(--line) !important;}
:root[data-theme="light"] .fd-set-head .ver{color:var(--txt-3) !important;background:var(--ink-700) !important;}
:root[data-theme="light"] .fd-set-desc,
:root[data-theme="light"] .fd-set-row .hint{color:var(--txt-3) !important;}
:root[data-theme="light"] .fd-set-body label{color:var(--txt-2) !important;}
:root[data-theme="light"] .fd-set-actions{border-top-color:var(--line) !important;}
:root[data-theme="light"] .fd-set-alert.ok{background:rgba(14,138,79,.09) !important;color:#0B7A46 !important;border-color:rgba(14,138,79,.26) !important;}
:root[data-theme="light"] .fd-set-alert.bad{background:rgba(192,42,17,.08) !important;color:#B4250F !important;border-color:rgba(192,42,17,.26) !important;}

/* 半透明语义底在浅色下会发彩，压低一档 */
:root[data-theme="light"] .el-button--success,
:root[data-theme="light"] .badge-success{background:rgba(14,138,79,.10) !important;}
:root[data-theme="light"] .el-button--danger{background:rgba(192,42,17,.09) !important;}
:root[data-theme="light"] .alert-success{background:rgba(14,138,79,.07) !important;}
:root[data-theme="light"] .alert-danger{background:rgba(192,42,17,.07) !important;}
:root[data-theme="light"] .alert-warning{background:rgba(138,91,0,.08) !important;}
:root[data-theme="light"] .alert-info{background:rgba(29,87,208,.07) !important;}
:root[data-theme="light"] .fd-chip--ok{background:rgba(14,138,79,.10) !important;}
:root[data-theme="light"] code,
:root[data-theme="light"] kbd,
:root[data-theme="light"] samp{background:rgba(240,78,35,.075) !important;}

/* 切换瞬间给个短过渡，避免生硬闪跳；由 JS 加/删 .fd-theme-anim */
html.fd-theme-anim,
html.fd-theme-anim body,
html.fd-theme-anim .lyear-layout-sidebar,
html.fd-theme-anim .lyear-layout-header,
html.fd-theme-anim .lyear-layout-content,
html.fd-theme-anim .card,
html.fd-theme-anim .layui-card,
html.fd-theme-anim .el-card{
  transition:background-color .22s ease, color .22s ease, border-color .22s ease !important;
}

/* ── 基础 ─────────────────────────────────────────────────────────── */
html,body{
  background:var(--ink-900) !important;
  color:var(--txt) !important;
  font-family:var(--sans) !important;
  -webkit-font-smoothing:antialiased;
}
body{font-size:13.5px;}
a{color:var(--ember-2);}
a:hover,a:focus{color:var(--ember);text-decoration:none;}
hr{border-color:var(--line) !important;}
::selection{background:var(--ember);color:#14060a;}

/* PerfectScrollbar（侧栏用的滚动条插件，默认是模板的青色） */
.ps__thumb-y,.ps__thumb-x,.ps__thumb-y:before{background-color:var(--sb-2) !important;}
.ps__rail-y:hover .ps__thumb-y,.ps__rail-x:hover .ps__thumb-x{background-color:var(--sb-3) !important;}
.ps__rail-y,.ps__rail-x{background-color:transparent !important;}

/* 滚动条 */
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--sb-1);border-radius:99px;border:2px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:var(--sb-2);background-clip:padding-box}

/* 通用文字色 */
.text-muted,.text-secondary,.text-gray{color:var(--txt-3) !important;}
.text-dark{color:var(--txt) !important;}
.text-primary{color:var(--ember) !important;}
h1,h2,h3,h4,h5,h6{color:var(--txt) !important;font-family:var(--sans);letter-spacing:-.01em;}
p,span,div,li,dd,dt,td,th,label{color:inherit;}
small{color:var(--txt-3);}

/* ── 外壳：侧栏 ───────────────────────────────────────────────────── */
.lyear-layout-web,.lyear-layout-container{background:var(--ink-900) !important;}

.lyear-layout-sidebar{
  background:var(--ink-850) !important;
  border-right:1px solid var(--line) !important;
  box-shadow:none !important;
}
.sidebar-header{
  background:transparent !important;
  border-bottom:1px solid var(--line) !important;
  height:78px !important;
  display:flex !important;
  align-items:center;
  padding:0 22px !important;
}
.sidebar-header #logo a,
#logo a{display:block;line-height:0;text-align:left !important;}
.sidebar-header img,
#logo img{
  height:34px !important;width:auto !important;max-width:158px !important;
  object-fit:contain;
  background:transparent;border:0;border-radius:0;padding:0;
  margin:0 !important;
  vertical-align:middle;
}
.lyear-layout-sidebar-scroll{background:transparent !important;}

.sidebar-main .nav-drawer{padding:12px 0 0;}
.sidebar-main .nav-item>a,
.sidebar-main .nav-drawer>li>a{
  display:flex !important;align-items:center;gap:11px;
  margin:2px 12px;padding:10px 13px !important;
  border-radius:9px;
  color:var(--nav-txt) !important;
  font-size:13.5px;letter-spacing:.01em;
  background:transparent !important;
  border-left:0 !important;
  transition:.16s;
  position:relative;
}
.sidebar-main .nav-item>a:hover,
.sidebar-main .nav-drawer>li>a:hover{
  background:var(--veil-4) !important;
  color:var(--txt) !important;
}
.sidebar-main .nav-item>a i,
.sidebar-main .nav-item>a .mdi{
  font-size:16px !important;width:18px;text-align:center;color:inherit !important;opacity:.8;
}
/* 文字节点强制继承链接色，压掉模板自身的深色定义 */
.sidebar-main .nav-item>a span,
.sidebar-main .nav-item>a i,
.sidebar-main .nav-subnav a span,
.sidebar-main .nav-subnav a i{color:inherit !important;}

/* 没有子项的分组菜单自动隐藏（分类被清空时不留空壳，新增分类后自动出现） */
.sidebar-main .nav-item-has-subnav:not(:has(.nav-subnav a)){display:none !important;}

/* 图标一律走 flex 流式布局：模板在折叠态把它设成 position:absolute 会压住文字 */
.sidebar-main .nav-drawer>li>a>i,
.sidebar-main .nav-item>a>i,
.sidebar-main .nav-subnav a>i{
  position:static !important;
  left:auto !important;
  top:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:20px !important;
  margin:0 !important;
  flex:none;
}
.sidebar-main .nav-item>a>span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* ── 桌面折叠态（≥1024）：只留图标、居中、悬停才展开 ── */
@media (min-width:1024px){
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover){width:60px !important;}
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .nav-drawer>li>a{
    justify-content:center !important;
    padding:12px 0 !important;
    margin:2px 0 !important;
    height:auto !important;
    gap:0 !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .nav-drawer>li>a span{
    display:none !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .nav-subnav{
    display:none !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .nav-item-has-subnav>a::after{
    display:none !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .sidebar-footer{
    display:none !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) #logo img{
    max-width:40px !important;padding:4px !important;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:not(:hover) .sidebar-header{
    height:60px !important;padding:0 !important;justify-content:center;
  }
  .lyear-layout-sidebar-close .lyear-layout-sidebar:hover{width:246px !important;}
}

/* ── 平板/手机（≤1024）：侧栏为抽屉，展开时保持正常排版 ── */
@media (max-width:1024px){
  .lyear-layout-sidebar{
    width:250px !important;
    box-shadow:var(--sh-side) !important;
  }
  .lyear-layout-sidebar.lyear-aside-open{transform:translateX(0) !important;}
  .sidebar-main .nav-drawer>li>a{padding:11px 14px !important;}
  .sidebar-header{height:70px !important;}
  .lyear-mask-modal{background-color:var(--modal-mask) !important;}
}
.sidebar-main .nav-item.active>a,
.sidebar-main .nav-drawer>li.active>a{
  background:var(--ember-dim) !important;
  color:var(--nav-active-txt) !important;
  font-weight:600;
}
.sidebar-main .nav-item.active>a::before,
.sidebar-main .nav-drawer>li.active>a::before{
  content:"";position:absolute;left:-12px;top:50%;transform:translateY(-50%);
  width:3px;height:16px;border-radius:0 3px 3px 0;background:var(--ember);
}
.sidebar-main .nav-item.active>a i{color:var(--ember) !important;opacity:1;}

/* 二级 / 三级菜单 */
.sidebar-main .nav-subnav{background:transparent !important;padding:2px 0 6px;}
.sidebar-main .nav-subnav a{
  display:block;padding:7px 14px 7px 42px !important;
  color:var(--nav-sub) !important;font-size:12.5px;border-radius:7px;
  margin:1px 12px;transition:.15s;
}
.sidebar-main .nav-subnav .nav-subnav a{padding-left:58px !important;font-size:12px;}
.sidebar-main .nav-subnav a:hover{background:var(--veil-4) !important;color:var(--txt) !important;}
.sidebar-main .nav-subnav a.active,
.sidebar-main .nav-subnav a.cur{
  color:var(--ember-2) !important;background:var(--ember-dim) !important;
}
/* 展开箭头 */
.sidebar-main .nav-item-has-subnav>a::after{
  content:"\f105";font-family:FontAwesome;margin-left:auto;font-size:14px;
  color:var(--nav-arrow);transition:.2s;
}
.sidebar-main .nav-item-has-subnav.open>a::after{transform:rotate(90deg);color:var(--ember);}

.sidebar-footer{background:transparent !important;border-top:1px solid var(--line) !important;}
.sidebar-footer .copyright{color:var(--foot-txt) !important;font-size:11px;line-height:1.7;}
.sidebar-footer .copyright a{color:var(--foot-link) !important;}
.sidebar-footer .copyright a:hover{color:var(--ember-2) !important;}

/* ── 外壳：顶栏 ───────────────────────────────────────────────────── */
.lyear-layout-header{
  background:var(--header-bg) !important;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line) !important;
  box-shadow:none !important;
  height:60px !important;
}
.lyear-layout-header .navbar{background:transparent !important;border:0 !important;box-shadow:none !important;min-height:60px;}
.topbar{background:transparent !important;}
.topbar .lyear-toggler-bar{background:var(--toggler) !important;}
.topbar-left a,.topbar-left i{color:var(--txt-2) !important;}
.topbar-left a:hover i{color:var(--ember) !important;}

.topbar-right>li>a{
  color:var(--txt-2) !important;border-radius:9px;transition:.15s;
}
.topbar-right>li>a:hover{background:var(--veil-5) !important;color:var(--txt) !important;}
.topbar-right .img-avatar{
  border-radius:9px !important;border:1px solid var(--line-2) !important;background:var(--avatar-bg);
}
.dropdown-menu{
  background:var(--ink-750) !important;
  border:1px solid var(--line-2) !important;
  border-radius:12px !important;
  box-shadow:var(--sh-md) !important;
  padding:6px !important;
}
.dropdown-menu>li>a,.dropdown-menu .dropdown-item{
  color:var(--txt-2) !important;border-radius:8px !important;padding:9px 12px !important;font-size:13px;
}
.dropdown-menu>li>a:hover,.dropdown-menu .dropdown-item:hover{
  background:var(--ember-dim) !important;color:var(--ember-2) !important;
}
.dropdown-menu>li>a i{color:inherit !important;margin-right:6px;}
.dropdown-divider,.dropdown-menu .divider{background:var(--line) !important;border-color:var(--line) !important;}

/* 多标签页条 */
.multitabs,.multitabs-nav,.nav-tabs-lyear{background:var(--ink-850) !important;border-color:var(--line) !important;}
.mt-nav-bar{
  background:var(--ink-850) !important;
  border-bottom:1px solid var(--line) !important;
}
.mt-nav-bar[style]{background-color:var(--ink-850) !important;}
/* Bootstrap 3 版 tab（本模板实际使用） */
.nav-tabs>li>a{
  color:var(--txt-3) !important;background:transparent !important;
  border-color:transparent !important;border-radius:0 !important;
}
.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{
  background:var(--veil-4) !important;color:var(--txt) !important;
  border-color:transparent !important;
}
.nav-tabs>li.active>a,
.nav-tabs>li.active>a:hover,
.nav-tabs>li.active>a:focus{
  background:var(--ink-800) !important;color:var(--ember-2) !important;
  border-color:transparent !important;border-bottom:2px solid var(--ember) !important;
}
.mt-nav-bar .mt-nav{background-color:transparent !important;}
.mt-nav-bar .mt-nav a,.mt-nav-bar .mt-nav .nav-link{
  color:var(--txt-3) !important;background:transparent !important;
  border-color:transparent !important;font-size:12.5px;
}
.mt-nav-bar .mt-nav a.active,.mt-nav-bar .mt-nav .nav-link.active{
  color:var(--ember-2) !important;background:var(--ink-800) !important;
  border-bottom:2px solid var(--ember) !important;
}
.mt-nav-bar .mt-nav a:hover{color:var(--txt) !important;background:var(--veil-4) !important;}
.mt-close-tab{color:var(--txt-3) !important;}
.mt-nav-panel{background:transparent !important;}
.multitabs .nav-link,.multitabs-nav a{
  color:var(--txt-3) !important;background:transparent !important;border-color:transparent !important;font-size:12.5px;
}
.multitabs .nav-link.active,.multitabs-nav a.active{
  color:var(--ember-2) !important;background:var(--ink-800) !important;
  border-bottom:2px solid var(--ember) !important;
}

/* 内容区 */
.lyear-layout-content{background:var(--ink-900) !important;}
#iframe-content,iframe{background:var(--ink-900) !important;border:0;}

/* ── Bootstrap：卡片 ─────────────────────────────────────────────── */
.card,.panel,.widget,.box,.el-card,.card-body,.panel-body{
  background:var(--ink-800) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r-lg) !important;
  box-shadow:none !important;
  color:var(--txt) !important;
}
.card-header,.panel-heading{
  background:transparent !important;border-bottom:1px solid var(--line) !important;
  color:var(--txt) !important;font-weight:600;
}
.card-title{color:var(--txt) !important;font-weight:700 !important;letter-spacing:-.01em;}
.card-footer{background:transparent !important;border-top:1px solid var(--line) !important;}

/* ── Bootstrap：表格 ─────────────────────────────────────────────── */
.table{color:var(--txt-2) !important;border-color:var(--line) !important;margin-bottom:0;}
.table thead th{
  background:var(--ink-750) !important;color:var(--th-txt) !important;
  font-size:11.5px !important;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  border-color:var(--line) !important;white-space:nowrap;
}
.table tbody tr{background:transparent !important;}
.table tbody tr:hover{background:var(--veil-3) !important;}
.table td,.table th{border-color:var(--line) !important;vertical-align:middle;}
.table-striped tbody tr:nth-of-type(odd){background:var(--veil-1) !important;}
.table-bordered{border-color:var(--line) !important;}
.table-responsive{border-radius:var(--r-md);}

/* 斑马纹：模板给 td 单独刷了 #fafbfc，必须连 td 一起盖 */
.table>tbody>tr>td,.table>tbody>tr>th{background-color:transparent !important;}
.table-striped>tbody>tr:nth-of-type(odd)>td,
.table-striped>tbody>tr:nth-of-type(odd)>th{background-color:var(--veil-2) !important;}
.table-hover>tbody>tr:hover>td,
.table-hover>tbody>tr:hover>th{background-color:var(--veil-4) !important;}

/* ── Bootstrap：表单 ─────────────────────────────────────────────── */
.form-control,.custom-select,.form-control:focus,.custom-select:focus{
  background:var(--ink-750) !important;
  border:1px solid var(--line-2) !important;
  color:var(--txt) !important;
  border-radius:var(--r-sm) !important;
  font-family:var(--sans);
  box-shadow:none !important;
}
.form-control{height:auto;padding:9px 12px;font-size:13.5px;}
.form-control::placeholder{color:var(--ph) !important;}
.form-control:focus{
  border-color:var(--ember-line) !important;
  box-shadow:0 0 0 3px var(--ember-dim) !important;
  background:var(--ink-800) !important;
}
select.form-control option{background:var(--ink-750);color:var(--txt);}
.input-group-text{background:var(--ink-700) !important;border-color:var(--line-2) !important;color:var(--txt-2) !important;}
label{color:var(--txt-2);}
.custom-control-label::before{background:var(--ink-700) !important;border-color:var(--line-3) !important;}
.custom-control-input:checked~.custom-control-label::before{background:var(--ember) !important;border-color:var(--ember) !important;}
.custom-file-label{background:var(--ink-750) !important;border-color:var(--line-2) !important;color:var(--txt-3) !important;}

/* ── Bootstrap：按钮 ─────────────────────────────────────────────── */
.btn{
  border-radius:var(--r-sm) !important;font-size:13px !important;font-weight:600;
  padding:8px 16px;border:1px solid var(--line-2) !important;
  background:var(--ink-700) !important;color:var(--txt) !important;
  transition:.16s;font-family:var(--sans);
}
.btn:hover{background:var(--ink-650) !important;color:var(--btn-hover-fg) !important;border-color:var(--line-3) !important;}
.btn-primary,.btn-success,.btn-danger,.btn-info,.btn-warning{
  background:linear-gradient(180deg,var(--ember-2),var(--ember)) !important;
  border:0 !important;color:var(--on-ember) !important;font-weight:700 !important;
  box-shadow:0 8px 22px -10px rgba(255,90,54,.75) !important;
}
.btn-primary:hover,.btn-success:hover,.btn-danger:hover,.btn-info:hover,.btn-warning:hover{
  filter:brightness(1.08);color:var(--on-ember) !important;
}
.btn-default,.btn-light,.btn-secondary{background:var(--ink-700) !important;color:var(--txt-2) !important;}
.btn-outline-primary{border-color:var(--ember-line) !important;color:var(--ember-2) !important;background:transparent !important;}
.btn-outline-primary:hover{background:var(--ember-dim) !important;}
.btn-sm{padding:5px 11px;font-size:12px !important;}
.btn-xs{padding:3px 8px;font-size:11.5px !important;}
.btn-link{background:transparent !important;border:0 !important;color:var(--ember-2) !important;box-shadow:none !important;}
.btn.disabled,.btn:disabled{opacity:.45;}

/* ── layui 组件 ──────────────────────────────────────────────────── */
.layui-btn{
  background:linear-gradient(180deg,var(--ember-2),var(--ember)) !important;
  color:var(--on-ember) !important;font-weight:700 !important;border-radius:var(--r-sm) !important;
  box-shadow:0 8px 20px -10px rgba(255,90,54,.7) !important;border:0 !important;
}
.layui-btn:hover{filter:brightness(1.08);color:var(--on-ember) !important;}
.layui-btn-primary,.layui-btn-normal{
  background:var(--ink-700) !important;color:var(--txt) !important;
  border:1px solid var(--line-2) !important;box-shadow:none !important;
}
.layui-btn-danger{background:linear-gradient(180deg,#f4715c,#e2452f) !important;color:#fff !important;}
.layui-input,.layui-textarea,.layui-select{
  background:var(--ink-750) !important;border-color:var(--line-2) !important;
  color:var(--txt) !important;border-radius:var(--r-sm) !important;
}
.layui-input:focus{border-color:var(--ember-line) !important;box-shadow:0 0 0 3px var(--ember-dim) !important;}
.layui-form-select dl{background:var(--ink-750) !important;border-color:var(--line-2) !important;}
.layui-form-select dl dd{color:var(--txt-2) !important;}
.layui-form-select dl dd:hover,.layui-form-select dl dd.layui-this{background:var(--ember-dim) !important;color:var(--ember-2) !important;}
.layui-card,.layui-card-header,.layui-card-body,.layui-elem-field,.layui-collapse{
  background:var(--ink-800) !important;
  border-color:var(--line) !important;
  color:var(--txt) !important;
}
.layui-card{
  border:1px solid var(--line) !important;
  border-radius:14px !important;
  box-shadow:none !important;
}
.layui-card-header{
  border-bottom:1px solid var(--line) !important;
  color:var(--txt) !important;font-weight:700;
}
.layui-elem-field{border:1px solid var(--line) !important;border-radius:12px !important;}
.layui-elem-field legend{color:var(--txt-2) !important;font-size:13px;}
.layui-tab-title .layui-this{color:var(--ember-2) !important;}
.layui-tab-title{border-bottom-color:var(--line) !important;}
.layui-tab-title li{color:var(--txt-3) !important;}
.layui-tab-title .layui-this:after{border-color:var(--ember) !important;}
.layui-tab-content{background:transparent !important;}
.layui-form-label{color:var(--txt-2) !important;}
.layui-form-mid{color:var(--txt-3) !important;}
.layui-table{background:transparent !important;color:var(--txt-2) !important;}
.layui-table th{background:var(--ink-750) !important;color:var(--th-txt) !important;}
.layui-table td,.layui-table th{border-color:var(--line) !important;}
.layui-layer{
  background:var(--ink-750) !important;border-radius:14px !important;
  box-shadow:var(--sh-lg) !important;border:1px solid var(--line-2) !important;
}
.layui-layer-title{
  background:transparent !important;color:var(--txt) !important;border-bottom:1px solid var(--line) !important;
  border-radius:14px 14px 0 0 !important;font-weight:700;
}
.layui-layer-content{color:var(--txt-2) !important;}
.layui-layer-btn .layui-layer-btn0{background:var(--ember) !important;border-color:var(--ember) !important;color:var(--on-ember) !important;}
.layui-layer-btn a{background:var(--ink-700) !important;border-color:var(--line-2) !important;color:var(--txt-2) !important;border-radius:8px !important;}
.layui-layer-prompt .layui-layer-input{background:var(--ink-800) !important;border-color:var(--line-2) !important;color:var(--txt) !important;}

/* ── Element UI（内页大量使用） ─────────────────────────────────── */
.el-button{
  background:var(--ink-700) !important;border:1px solid var(--line-2) !important;
  color:var(--txt) !important;border-radius:9px !important;font-weight:600;
}
.el-button:hover{background:var(--ink-650) !important;color:var(--btn-hover-fg) !important;}
.el-button--primary{
  background:linear-gradient(180deg,var(--ember-2),var(--ember)) !important;
  border:0 !important;color:var(--on-ember) !important;font-weight:700 !important;
  box-shadow:0 8px 22px -10px rgba(255,90,54,.75) !important;
}
.el-button--primary:hover{filter:brightness(1.07);color:var(--on-ember) !important;}
.el-button--primary.is-plain{
  background:var(--ember-dim) !important;color:var(--ember-2) !important;
  border:1px solid var(--ember-line) !important;box-shadow:none !important;
}
.el-button--success{background:rgba(47,191,113,.18) !important;color:var(--ok-fg) !important;border:1px solid rgba(47,191,113,.36) !important;}
.el-button--danger{background:rgba(240,85,63,.16) !important;color:var(--danger-fg) !important;border:1px solid rgba(240,85,63,.36) !important;}
.el-button--text{background:transparent !important;color:var(--ember-2) !important;border:0 !important;box-shadow:none !important;}

.el-input__inner,.el-textarea__inner{
  background:var(--ink-750) !important;border-color:var(--line-2) !important;
  color:var(--txt) !important;border-radius:9px !important;
}
.el-input__inner::placeholder{color:var(--ph) !important;}
.el-input__inner:focus,.el-textarea__inner:focus{border-color:var(--ember-line) !important;}
.el-input__icon{color:var(--txt-3) !important;}

.el-select-dropdown,.el-popper,.el-dropdown-menu,.el-picker-panel,.el-time-panel{
  background:var(--ink-750) !important;border-color:var(--line-2) !important;
  color:var(--txt-2) !important;box-shadow:var(--sh-md) !important;
}
.el-select-dropdown__item{color:var(--txt-2) !important;}
.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{background:var(--ember-dim) !important;color:var(--ember-2) !important;}
.el-select-dropdown__item.selected{color:var(--ember-2) !important;}
.popper__arrow::after{border-bottom-color:var(--ink-750) !important;border-top-color:var(--ink-750) !important;}

.el-card{background:var(--ink-800) !important;border-color:var(--line) !important;color:var(--txt) !important;border-radius:14px !important;box-shadow:none !important;}
.el-card__header{border-bottom-color:var(--line) !important;color:var(--txt) !important;}

.el-table,.el-table__body-wrapper,.el-table tr{background:transparent !important;color:var(--txt-2) !important;}
.el-table th.el-table__cell,.el-table th{background:var(--ink-750) !important;color:var(--th-txt) !important;border-color:var(--line) !important;}
.el-table td.el-table__cell,.el-table td{border-color:var(--line) !important;}
.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background:var(--veil-3) !important;}
.el-table--striped .el-table__row--striped td.el-table__cell,
.el-table--striped .el-table__row--striped td,
.el-table__row--striped td{background:var(--veil-2) !important;}
.el-table::before,.el-table--border::after{background-color:var(--line) !important;}
.el-table__empty-text{color:var(--txt-3) !important;}

.el-tabs__item{color:var(--txt-3) !important;}
.el-tabs__item.is-active{color:var(--ember-2) !important;}
.el-tabs__active-bar{background-color:var(--ember) !important;}
.el-tabs__nav-wrap::after{background-color:var(--line) !important;}

.el-dialog,.el-message-box,.el-drawer{
  background:var(--ink-750) !important;border:1px solid var(--line-2) !important;
  border-radius:16px !important;color:var(--txt) !important;
}
.el-dialog__title,.el-message-box__title{color:var(--txt) !important;}
.el-dialog__body,.el-message-box__content{color:var(--txt-2) !important;}
.el-message{background:var(--ink-750) !important;border-color:var(--line-2) !important;color:var(--txt) !important;border-radius:10px !important;}
.el-message--success{border-color:rgba(47,191,113,.4) !important;background:var(--msg-ok-bg) !important;}
.el-message--error{border-color:rgba(240,85,63,.4) !important;background:var(--msg-err-bg) !important;}
.el-message-box__headerbtn .el-message-box__close{color:var(--txt-3) !important;}

.el-pagination button,.el-pager li{background:var(--ink-750) !important;color:var(--txt-2) !important;border-radius:7px !important;}
.el-pager li.active{background:var(--ember) !important;color:var(--on-ember) !important;font-weight:700;}
.el-pagination__total,.el-pagination__jump{color:var(--txt-3) !important;}
.el-checkbox__label,.el-radio__label{color:var(--txt-2) !important;}
.el-checkbox__inner,.el-radio__inner{background:var(--ink-700) !important;border-color:var(--line-3) !important;}
.el-checkbox__input.is-checked .el-checkbox__inner,
.el-radio__input.is-checked .el-radio__inner{background:var(--ember) !important;border-color:var(--ember) !important;}
.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--ember-2) !important;}
.el-form-item__label{color:var(--txt-2) !important;}

/* 折叠面板（订单汇总页用，Element 默认白底） */
.el-collapse,.el-collapse-item,.el-collapse-item__header,.el-collapse-item__wrap{
  background:var(--ink-800) !important;
  border-color:var(--line) !important;
  color:var(--txt) !important;
}
.el-collapse{border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;}
.el-collapse-item__header{
  color:var(--txt) !important;font-weight:600;font-size:13px;
  border-bottom:1px solid var(--line) !important;padding-left:2px;
}
.el-collapse-item__header.is-active{color:var(--ember-2) !important;}
.el-collapse-item__arrow{color:var(--txt-3) !important;}
.el-collapse-item__content{color:var(--txt-2) !important;background:transparent !important;}

/* 分割线（工单页用 el-divider 包了个红字标题，默认是白底） */
.el-divider{background-color:var(--line-2) !important;}
.el-divider__text{background:var(--ink-800) !important;color:var(--txt) !important;padding:0 14px;}
.el-divider__text span{color:var(--ember-2) !important;font-weight:700;}

/* 代码块 / 说明块（对接文档页大量使用裸 <pre> 和 layui-code） */
pre,pre.layui-code,.layui-code{
  background:var(--ink-750) !important;
  border:1px solid var(--line) !important;
  border-radius:10px !important;
  color:var(--txt-2) !important;
  font-family:var(--mono) !important;
  font-size:12.5px;
  padding:14px 16px !important;
  line-height:1.75;
  white-space:pre-wrap;
  word-break:break-all;
}
pre h4,pre h5,pre h6{color:var(--txt) !important;margin:0 0 6px !important;font-size:13px;}
pre h5{color:var(--ember-2) !important;font-weight:600;}
.layui-code-view,.layui-code-title,.layui-code-ol{
  background:var(--ink-800) !important;border-color:var(--line) !important;color:var(--txt-2) !important;
}
.layui-code-title{border-bottom:1px solid var(--line) !important;}
code,kbd,samp{
  background:rgba(255,90,54,.1) !important;color:var(--code-fg) !important;
  border-radius:5px;padding:1px 5px;
}

/* 其它默认白底的 Element 组件兜底 */
.el-transfer-panel,.el-upload--picture-card,.el-upload-dragger,
.el-descriptions,.el-descriptions__body,.el-descriptions-item__cell,
.el-cascader-menu,.el-date-picker,.el-time-picker,
.el-input-number,.el-tag,.el-alert,.el-menu{
  background:var(--ink-750) !important;
  border-color:var(--line-2) !important;
  color:var(--txt-2) !important;
}
.el-date-table td span{color:var(--txt-2) !important;}
.el-date-table td.current:not(.disabled) span{background:var(--ember) !important;color:var(--on-ember) !important;}
.el-loading-mask{background:var(--mask) !important;}

/* 模板自带的浮动操作按钮（活动页右下角 +） */
.toggle-btn{
  background:linear-gradient(180deg,var(--ember-2),var(--ember)) !important;
  color:var(--on-ember) !important;
  border:0 !important;
  box-shadow:0 12px 30px -10px rgba(255,90,54,.75) !important;
  font-weight:700 !important;
}

/* 支付方式按钮：不走 .btn（主题把 .btn 统一压成深色了），单独一套 */
.fd-paybtn{
  display:flex;align-items:center;justify-content:center;gap:9px;width:100%;
  border:0;border-radius:11px;padding:12px 14px;margin-bottom:9px;
  font-size:13.5px;font-weight:600;color:#fff;cursor:pointer;
  transition:filter .15s, box-shadow .15s;
}
.fd-paybtn:hover{filter:brightness(1.08);box-shadow:var(--sh-sm);}
.fd-paybtn:active{transform:translateY(1px);}
.fd-paybtn img{width:21px;height:21px;border-radius:6px;object-fit:contain;flex:none;background:#fff;padding:1.5px;}

/* 页面级 .container 被模板刷了白底（活动页等） */
.container{background:transparent !important;}

/* Bootstrap 工具类（模板里 bg-white 带 !important，需提升优先级） */
div.bg-white,.panel-heading.bg-white{background:var(--ink-800) !important;color:var(--txt) !important;}
div.bg-light{background:var(--ink-750) !important;color:var(--txt) !important;}
div.bg-primary{background:var(--ember) !important;color:var(--on-ember) !important;}
.well{background:var(--ink-750) !important;border-color:var(--line-2) !important;color:var(--txt-2) !important;}

/* ── 其它常见组件 ────────────────────────────────────────────────── */
.badge{background:var(--ink-700) !important;color:var(--txt-2) !important;font-weight:600;border-radius:6px;}
.badge-primary,.badge-danger{background:var(--ember-dim) !important;color:var(--ember-2) !important;}
.badge-success{background:rgba(47,191,113,.16) !important;color:var(--ok-fg-b) !important;}
.badge-warning{background:rgba(240,180,41,.16) !important;color:var(--warn) !important;}

.alert{border-radius:var(--r-md) !important;border:1px solid var(--line-2) !important;background:var(--ink-750) !important;color:var(--txt-2) !important;}
.alert-success{background:rgba(47,191,113,.1) !important;border-color:rgba(47,191,113,.3) !important;color:var(--ok-fg-c) !important;}
.alert-danger{background:rgba(240,85,63,.1) !important;border-color:rgba(240,85,63,.3) !important;color:var(--danger-fg) !important;}
.alert-warning{background:rgba(240,180,41,.1) !important;border-color:rgba(240,180,41,.3) !important;color:var(--warn-fg) !important;}
.alert-info{background:rgba(76,141,255,.1) !important;border-color:rgba(76,141,255,.3) !important;color:var(--info-fg) !important;}

.nav-tabs{border-bottom:1px solid var(--line) !important;}
.nav-tabs .nav-link{color:var(--txt-3) !important;border:0 !important;background:transparent !important;font-size:13px;}
.nav-tabs .nav-link.active{color:var(--ember-2) !important;background:transparent !important;border-bottom:2px solid var(--ember) !important;}
.pagination .page-link{background:var(--ink-750) !important;border-color:var(--line) !important;color:var(--txt-2) !important;}
/* BS3 版分页（模板实际用的是 .pagination>li>a，原来只写了 BS4 的 .page-link，
   结果选中页一直是模板的青色底，跟主题不搭） */
.pagination>li>a,.pagination>li>span{
  background:var(--ink-750) !important;border-color:var(--line) !important;color:var(--txt-2) !important;
}
.pagination>li>a:hover,.pagination>li>a:focus,.pagination>li>span:hover{
  background:var(--ink-700) !important;border-color:var(--line-2) !important;color:var(--ember-2) !important;
}
.pagination>li.active>a,.pagination>li.active>a:hover,.pagination>li.active>a:focus,
.pagination>li.active>span{
  background:var(--ember) !important;border-color:var(--ember) !important;
  color:var(--on-ember) !important;font-weight:700;
}
.pagination>li.disabled>a,.pagination>li.disabled>span{
  background:var(--ink-800) !important;color:var(--txt-3) !important;border-color:var(--line) !important;
}
.pagination .page-item.active .page-link{background:var(--ember) !important;border-color:var(--ember) !important;color:var(--on-ember) !important;font-weight:700;}
.list-group-item{background:var(--ink-800) !important;border-color:var(--line) !important;color:var(--txt-2) !important;}
.modal-content{background:var(--ink-750) !important;border:1px solid var(--line-2) !important;border-radius:var(--r-lg) !important;color:var(--txt) !important;}
.modal-header,.modal-footer{border-color:var(--line) !important;}
.close{color:var(--txt-2) !important;text-shadow:none !important;opacity:.7;}
.progress{background:var(--ink-700) !important;border-radius:99px;}
.progress-bar{background:linear-gradient(90deg,var(--ember),var(--ember-2)) !important;}
.tooltip-inner{background:var(--tooltip-bg) !important;font-size:12px;border:1px solid var(--line-2);}
.popover{background:var(--ink-750) !important;border-color:var(--line-2) !important;color:var(--txt-2) !important;}
.popover-header{background:transparent !important;border-bottom:1px solid var(--line) !important;color:var(--txt) !important;}

/* SweetAlert2 */
.swal2-popup{background:var(--ink-750) !important;color:var(--txt) !important;border:1px solid var(--line-2) !important;border-radius:18px !important;}
.swal2-title{color:var(--txt) !important;}
.swal2-html-container,.swal2-content{color:var(--txt-2) !important;}
.swal2-confirm{background:var(--ember) !important;color:var(--on-ember) !important;font-weight:700 !important;border-radius:9px !important;}
.swal2-cancel{background:var(--ink-700) !important;color:var(--txt-2) !important;border-radius:9px !important;}

/* 时间线（首页公告等） */
.el-timeline-item__tail{border-left-color:var(--line-2) !important;}
.el-timeline-item__node{background:var(--ember) !important;box-shadow:0 0 0 4px var(--ember-dim) !important;}
.el-timeline-item__timestamp{color:var(--txt-3) !important;font-family:var(--mono);font-size:11.5px !important;}
.notice-card h4,.el-card__body h4{color:var(--txt) !important;}
.notice-card p,.el-card__body p{color:var(--txt-2) !important;}

/* 输入框类旧样式（模板大量用 #e6e6e6 边框） */
input,textarea,select{color-scheme:var(--scheme);}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
textarea,select{
  background-color:var(--ink-750) !important;
  border-color:var(--line-2) !important;
  color:var(--txt) !important;
}
input::placeholder,textarea::placeholder{color:var(--ph) !important;}

/* 白色底容器兜底（模板内联 style 常见 background:#fff / #FFF） */
[style*="background:#fff"],[style*="background: #fff"],
[style*="background-color:#fff"],[style*="background-color: #fff"],
[style*="background:#FFF"],[style*="background-color:#FFF"],
[style*="background:#ffffff"],[style*="background-color:#ffffff"]{
  background-color:var(--ink-800) !important;
  color:var(--txt) !important;
}
[style*="color:#333"],[style*="color: #333"],[style*="color:#000"],[style*="color: #000"],
[style*="color:#212529"],[style*="color:#495057"]{color:var(--txt) !important;}

/* 深色底上的暗色文字提亮（模板里大量内联红/灰） */
[style*="color:red"],[style*="color: red"],[style*="color:#f00"],
[style*="color:#FF0000"],[style*="color:#ff0000"],
[style*="color:#e74c3c"],[style*="color:#d9534f"],[style*="color:#c9302c"],
[style*="color:#e4393c"],[style*="color:#ff0000"]{color:var(--inline-red) !important;}
font[color="red"]{color:var(--inline-red) !important;}
[style*="color:#666"],[style*="color:#666666"],[style*="color:#777"],
[style*="color:#606266"]{color:var(--inline-gray) !important;}
[style*="color:#999"],[style*="color:#999999"],[style*="color:#aaa"],
[style*="color:#909399"]{color:var(--inline-gray2) !important;}
[style*="color:#409eff"],[style*="color:#409EFF"]{color:var(--inline-blue) !important;}
[style*="color:green"],[style*="color:green;"],[style*="color:#28a745"]{color:var(--ok-fg) !important;}

/* ── 自定义工具类（新页面用） ────────────────────────────────────── */
.fd-page{padding:22px 26px 40px;background:var(--ink-900);min-height:100vh;}
.fd-h1{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0 0 4px;color:var(--txt);}
.fd-sub{font-size:12.5px;color:var(--txt-3);margin:0;}
.fd-eyebrow{
  font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ember-2);
  font-weight:700;display:flex;align-items:center;gap:9px;margin-bottom:14px;
}
.fd-eyebrow::before{content:"";width:22px;height:1px;background:var(--ember);display:block;}
.fd-card{
  background:var(--ink-800);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:20px 22px;position:relative;
}
.fd-card__title{font-size:13.5px;font-weight:700;color:var(--txt);margin:0 0 2px;}
.fd-card__desc{font-size:12px;color:var(--txt-3);margin:0;}
.fd-stat{display:flex;flex-direction:column;gap:6px;}
.fd-stat b{
  font-family:var(--mono);font-size:27px;font-weight:600;letter-spacing:-.03em;color:var(--txt);
  line-height:1.05;
}
.fd-stat span{font-size:11.5px;color:var(--txt-3);letter-spacing:.04em;}
.fd-grid{display:grid;gap:14px;}
.fd-grid--4{grid-template-columns:repeat(4,1fr);}
.fd-grid--3{grid-template-columns:repeat(3,1fr);}
.fd-grid--2{grid-template-columns:repeat(2,1fr);}
@media(max-width:1100px){.fd-grid--4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:760px){.fd-grid--4,.fd-grid--3,.fd-grid--2{grid-template-columns:1fr;}.fd-page{padding:16px 14px 30px;}}

.fd-rule{height:1px;background:var(--line);margin:16px 0;}
.fd-mono{font-family:var(--mono);}
.fd-chip{
  display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;
  padding:4px 10px;border-radius:99px;background:var(--veil-5);
  border:1px solid var(--line-2);color:var(--txt-2);
}
.fd-chip--ok{background:rgba(47,191,113,.14);border-color:rgba(47,191,113,.34);color:#5ADF9B;}
.fd-chip--ember{background:var(--ember-dim);border-color:var(--ember-line);color:var(--ember-2);}
.fd-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:block;}

/* 内容页顶部统一留白修正 */
.container-fluid.p-t-15{padding-top:18px !important;}
.p-t-15{padding-top:18px !important;}


/* ── 移动端：表格横向滚动条可见（默认在手机上被隐藏，用户不知道右边还有内容） ── */
@media (max-width:760px){
  .table-responsive,.el-table__body-wrapper{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:var(--veil-ln) transparent;
  }
  .table-responsive::-webkit-scrollbar,
  .el-table__body-wrapper::-webkit-scrollbar{height:6px}
  .table-responsive::-webkit-scrollbar-track,
  .el-table__body-wrapper::-webkit-scrollbar-track{background:var(--veil-ln2);border-radius:3px}
  .table-responsive::-webkit-scrollbar-thumb,
  .el-table__body-wrapper::-webkit-scrollbar-thumb{background:var(--veil-ln);border-radius:3px}
  .el-table .cell{padding-left:9px;padding-right:9px}
  /* 右侧渐隐，暗示还有内容 */
  .table-responsive{position:relative}
  .fd-page,.app-content-body{overflow-x:hidden}
  /* 分页在窄屏会顶出容器，隐藏"前往 N 页"并允许换行 */
  .el-pagination{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;white-space:normal;padding:6px 0;}
  .el-pagination__jump{display:none !important;}
  .el-pagination__sizes .el-select{width:92px;}
  .el-pagination .el-pagination__total{width:100%;text-align:center;margin:0 0 4px;}
}
