
/* ---------- 余额卡：玻璃 + 发光数字 ---------- */
body .money-box {
  background:
    linear-gradient(135deg, rgba(59, 130, 246, 0.10), rgba(139, 92, 246, 0.08)),
    var(--d-surface) !important;
  border: 1px solid rgba(59, 130, 246, 0.22) !important;
  box-shadow: 0 8px 32px rgba(59, 130, 246, 0.10), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}
body .credit-money,
body .credit-num {
  color: var(--d-text) !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  letter-spacing: -0.8px !important;
  background: linear-gradient(120deg, #E8EDF7, #7DB3FF) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-variant-numeric: tabular-nums !important;
}
body .credit-num .s-24 { font-size: 17px !important; font-weight: 500 !important; }
body .credit-name { color: var(--d-text-2) !important; font-size: 12.5px !important; }

body .credit-btn {
  background: var(--d-accent) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--d-radius-sm) !important;
  height: 32px !important;
  padding: 0 18px !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
  box-shadow: 0 0 16px var(--d-accent-glow) !important;
}
body .credit-btn:hover {
  background: #2A6FF0 !important;
  box-shadow: 0 0 24px var(--d-accent-glow) !important;
  transform: translateY(-1px) !important;
}

body .notice-btn {
  background: rgba(245, 158, 11, 0.14) !important;
  color: #FBBF24 !important;
  border: 1px solid rgba(245, 158, 11, 0.22) !important;
  border-radius: 4px !important;
  font-size: 11.5px !important;
  padding: 2px 8px !important;
  white-space: nowrap !important;
}

/* ---------- KPI 卡片 ---------- */
body .order-box { display: flex !important; gap: 14px !important; width: 100% !important; }
body .order-item {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 92px !important;
  padding: 18px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 6px !important;
  background: var(--d-surface) !important;
  border: 1px solid var(--d-border) !important;
  border-radius: var(--d-radius) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.20) !important;
  backdrop-filter: blur(16px) !important;
  overflow: visible !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}
body .order-item:hover {
  background: var(--d-surface-hover) !important;
  border-color: rgba(59, 130, 246, 0.30) !important;
  box-shadow: 0 4px 20px rgba(59, 130, 246, 0.14) !important;
}
body .order-item .order-type-img { display: none !important; }
body .order-item .order-title {
  color: var(--d-text-3) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  margin: 0 !important;
  white-space: nowrap !important;
}
body .order-item .order-nums {
  color: var(--d-text) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 32px !important;
  letter-spacing: -0.6px !important;
  font-variant-numeric: tabular-nums !important;
  margin: 0 !important;
}

/* ---------- 消费双栏 ---------- */
body .statistics-bottom {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-top: 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}
body .statistics-bottom .statistics-item {
  width: 100% !important;
  min-width: 0 !important;
  padding: 16px 18px !important;
  background: var(--d-surface) !important;
  border: 1px solid var(--d-border) !important;
  border-radius: var(--d-radius) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 4px !important;
  backdrop-filter: blur(16px) !important;
}
body .statistics-bottom .statistics-item-divider { display: none !important; }
body .statistics-bottom .statistics-item .statistics-item-name {
  font-size: 12px !important;
  color: var(--d-text-3) !important;
  white-space: nowrap !important;
  display: block !important;
  width: 100% !important;
}
body .statistics-bottom .statistics-item .statistics-item-value {
  font-size: 20px !important;
  font-weight: 650 !important;
  color: var(--d-text) !important;
  line-height: 28px !important;
  white-space: nowrap !important;
  display: block !important;
  width: 100% !important;
  font-variant-numeric: tabular-nums !important;
}
body .statistics-item .statistics-item-name span.green-text,
body .statistics-item .statistics-item-name span.red-text { display: none !important; }

/* ---------- 产品列表 ---------- */
body .product-list-box .title-text {
  color: var(--d-text) !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  letter-spacing: -0.2px !important;
}
body .el-table {
  background: transparent !important;
  font-size: 13.5px !important;
  color: var(--d-text-2) !important;
}
body .el-table::before { display: none !important; }
body .el-table th {
  background: rgba(255, 255, 255, 0.04) !important;
  color: var(--d-text-3) !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  height: 42px !important;
  border-bottom: 1px solid var(--d-border) !important;
}
body .el-table td {
  background: transparent !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  color: var(--d-text-2) !important;
}
body .el-table tr { background: transparent !important; }
body .el-table tr:hover > td { background: rgba(255, 255, 255, 0.04) !important; }
body .el-table .product-name { color: #7DB3FF !important; }
body .el-table .red-time { color: var(--d-red) !important; }

/* 状态标签 */
body .st-tag {
  display: inline-flex !important;
  align-items: center !important;
  height: 22px !important;
  padding: 0 8px !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
  font-weight: 500 !important;
}
body .st-ok  { background: rgba(16, 185, 129, 0.14) !important; color: #34D399 !important; }
body .st-warn{ background: rgba(245, 158, 11, 0.14) !important; color: #FBBF24 !important; }
body .st-exp { background: rgba(239, 68, 68, 0.14) !important; color: #F87171 !important; }

/* ---------- 按钮 ---------- */
body .el-button {
  height: 32px !important;
  padding: 0 16px !important;
  font-size: 13.5px !important;
  border-radius: var(--d-radius-sm) !important;
  background: var(--d-surface-hover) !important;
  border: 1px solid var(--d-border-strong) !important;
  color: var(--d-text-2) !important;
}
body .el-button:hover {
  color: var(--d-text) !important;
  border-color: var(--d-accent) !important;
  background: var(--d-surface-hover) !important;
}
body .el-button--primary {
  background: var(--d-accent) !important;
  border-color: var(--d-accent) !important;
  color: #fff !important;
  box-shadow: 0 0 14px rgba(59, 130, 246, 0.28) !important;
}
body .el-button--primary:hover {
  background: #2A6FF0 !important;
  border-color: #2A6FF0 !important;
  color: #fff !important;
  box-shadow: 0 0 22px rgba(59, 130, 246, 0.42) !important;
}
body .more-link { color: #7DB3FF !important; font-size: 13px !important; }
body .more-link:hover { text-decoration: underline !important; }

/* ---------- 右栏 ---------- */
body .right-box > div,
body .index-right-box > div {
  background: var(--d-surface) !important;
  border: 1px solid var(--d-border) !important;
  border-radius: var(--d-radius) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.20) !important;
  backdrop-filter: blur(16px) !important;
  padding: 20px !important;
  color: var(--d-text) !important;
}
body .right-box h3,
body .index-right-box h3,
body .ticket-title,
body .notice-title {
  color: var(--d-text) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}
body .right-box img,
body .index-right-box img { opacity: 0.35 !important; filter: saturate(0.5) brightness(0.9) !important; }
body .replay-div {
  background: rgba(245, 158, 11, 0.14) !important;
  color: #FBBF24 !important;
  border: 1px solid rgba(245, 158, 11, 0.22) !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  padding: 2px 8px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
}

/* ---------- 页面标题 + 面包屑 ---------- */
body .page-head { margin-bottom: 18px !important; }
body .page-crumb { font-size: 12px !important; color: var(--d-text-3) !important; }
body .page-crumb i { color: var(--d-text-3) !important; font-style: normal !important; }
body .page-crumb .cur { color: var(--d-text-2) !important; }
body .page-title {
  color: var(--d-text) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.3px !important;
  line-height: 30px !important;
  margin: 0 !important;
}

/* ---------- 下拉/输入框 ---------- */
body .el-input__inner {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid var(--d-border) !important;
  color: var(--d-text) !important;
  border-radius: var(--d-radius-sm) !important;
  font-size: 13.5px !important;
}
body .el-input__inner::placeholder { color: var(--d-text-3) !important; }
body .el-input__inner:focus {
  border-color: var(--d-accent) !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15) !important;
}

/* ---------- 滚动条 ---------- */
body ::-webkit-scrollbar { width: 8px; height: 8px; }
body ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.12); border-radius: 4px; }
body ::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.20); }
body ::-webkit-scrollbar-track { background: transparent; }

/* ---------- 标签 ---------- */
body .el-tag { border-radius: 4px !important; font-size: 12px !important; border: none !important; }
body .el-tag--success { background: rgba(16, 185, 129, 0.14) !important; color: #34D399 !important; }
body .el-tag--danger, body .el-tag--error { background: rgba(239, 68, 68, 0.14) !important; color: #F87171 !important; }
body .el-tag--warning { background: rgba(245, 158, 11, 0.14) !important; color: #FBBF24 !important; }
body .el-tag--info { background: rgba(255, 255, 255, 0.06) !important; color: var(--d-text-2) !important; }

/* ---------- 响应式 ---------- */
@media (max-width: 1200px) {
  body aside.el-aside { width: 200px !important; min-width: 200px !important; flex: 0 0 200px !important; }
  body .home-main { padding: 16px !important; }
}
@media (max-width: 820px) {
  body .order-box { flex-direction: column !important; }
  body .statistics-bottom { grid-template-columns: 1fr !important; }
  body .credit-num { font-size: 24px !important; }
}

/* ===== 全局深色底（v2 修复） ===== */
:root {
  --d-bg: #0A0E1A;
  --d-bg-deep: #060910;
  --d-surface: rgba(20, 27, 45, 0.72);
  --d-surface-solid: #121A2E;
  --d-surface-hover: rgba(30, 41, 66, 0.85);
  --d-border: rgba(255, 255, 255, 0.08);
  --d-border-strong: rgba(255, 255, 255, 0.14);
  --d-text: #E8EDF7;
  --d-text-2: #9AA8C4;
  --d-text-3: #64748B;
  --d-accent: #3B82F6;
  --d-accent-glow: rgba(59, 130, 246, 0.45);
  --d-radius: 12px;
  --d-radius-sm: 8px;
}
html, body {
  background: #0A0E1A !important;
  color: #E8EDF7 !important;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  background:
    radial-gradient(900px 500px at 15% -10%, rgba(59, 130, 246, 0.13), transparent 60%),
    radial-gradient(700px 400px at 90% 10%, rgba(139, 92, 246, 0.10), transparent 60%),
    radial-gradient(600px 400px at 50% 100%, rgba(34, 211, 238, 0.06), transparent 60%);
  pointer-events: none;
  z-index: 0;
}
body .template, body .el-container { position: relative; z-index: 1; }
/* 侧栏深色 */
body aside.el-aside {
  background: rgba(10, 14, 26, 0.85) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
}
body aside.el-aside .el-menu { background: transparent !important; }
body aside.el-aside .el-menu-item,
body aside.el-aside .el-submenu__title {
  background: transparent !important;
  color: #9AA8C4 !important;
}
body aside.el-aside .el-menu-item:hover { background: rgba(255,255,255,0.05) !important; color: #E8EDF7 !important; }
body aside.el-aside .el-menu-item.is-active {
  background: linear-gradient(90deg, rgba(59,130,246,0.18), rgba(59,130,246,0.04)) !important;
  color: #7DB3FF !important;
}
/* 顶栏深色 */
body .top-menu, body .el-header, body .yfx-header {
  background: rgba(10, 14, 26, 0.72) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

/* ===== 强制深色（v3 修复白块） ===== */
body .el-main.home-main,
body .main-card,
body .info-box,
body .money-box,
body .statistics-box,
body .product-list-box,
body .right-box,
body .right-box > div,
body .index-right-box > div {
  background: rgba(20, 27, 45, 0.72) !important;
  background-color: rgba(20, 27, 45, 0.72) !important;
  color: #E8EDF7 !important;
  backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.28) !important;
}
/* 右栏子块不要双层边框 */
body .right-box > div > div,
body .index-right-box > div > div {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
/* 页面标题遮挡修复：面包屑+标题上移 */
body .page-head { position: relative !important; z-index: 5 !important; margin-top: 8px !important; }
body .page-title { color: #E8EDF7 !important; font-size: 20px !important; }
/* 余额卡发光 */
body .money-box {
  background: linear-gradient(135deg, rgba(59,130,246,0.14), rgba(139,92,246,0.10)), rgba(20,27,45,0.72) !important;
  border: 1px solid rgba(59,130,246,0.30) !important;
  box-shadow: 0 8px 32px rgba(59,130,246,0.14), inset 0 1px 0 rgba(255,255,255,0.06) !important;
}
/* 所有文字提亮 */
body .info-box *,
body .money-box *,
body .statistics-box *,
body .product-list-box *,
body .right-box * { color: #E8EDF7 !important; }
body .info-box .left-type,
body .info-box .right-type,
body .info-box .id-text,
body .statistics-item-name,
body .credit-name,
body .el-table th,
body .el-table td,
body .right-box .tit,
body .right-box .time { color: #9AA8C4 !important; }
body .info-box .bule-text,
body .el-table .product-name,
body .more-link,
body .op-link { color: #7DB3FF !important; }
/* 底部黑块修复：右栏高度自适应 */
body .right-box { min-height: 0 !important; height: auto !important; }
body .home-main { padding-bottom: 24px !important; }
/* 表格深色 */
body .el-table { background: transparent !important; }
body .el-table tr, body .el-table td { background: transparent !important; }
body .el-table th { background: rgba(255,255,255,0.04) !important; }
body .el-table td { border-bottom: 1px solid rgba(255,255,255,0.05) !important; }
body .el-table tr:hover > td { background: rgba(255,255,255,0.04) !important; }
body .el-table .red-time { color: #F87171 !important; }

/* ===== 终极强制深色（v4） ===== */
/* 余额卡 */
body .home-main .money-box,
body .left-box .money-box,
body .money-box {
  background: linear-gradient(135deg, rgba(59,130,246,0.16), rgba(139,92,246,0.10)) !important;
  background-color: rgba(20, 27, 45, 0.92) !important;
  border: 1px solid rgba(59,130,246,0.30) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(59,130,246,0.14) !important;
}
body .home-main .money-box *,
body .left-box .money-box * {
  color: #E8EDF7 !important;
  -webkit-text-fill-color: #E8EDF7 !important;
}
body .home-main .money-box .credit-num,
body .left-box .money-box .credit-num {
  color: #E8EDF7 !important;
  -webkit-text-fill-color: #E8EDF7 !important;
  background: none !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  text-shadow: 0 0 20px rgba(59,130,246,0.5) !important;
}
body .home-main .money-box .credit-num .s-24,
body .left-box .money-box .credit-num .s-24 {
  color: #9AA8C4 !important;
  -webkit-text-fill-color: #9AA8C4 !important;
  font-size: 17px !important;
}
body .home-main .money-box .credit-name,
body .left-box .money-box .credit-name {
  color: #9AA8C4 !important;
  -webkit-text-fill-color: #9AA8C4 !important;
  font-size: 12.5px !important;
}
/* 充值按钮发光 */
body .home-main .money-box .credit-btn,
body .left-box .money-box .credit-btn {
  background: #3B82F6 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  height: 32px !important;
  padding: 0 18px !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  box-shadow: 0 0 18px rgba(59,130,246,0.5) !important;
  cursor: pointer !important;
}
body .home-main .money-box .credit-btn:hover {
  background: #2A6FF0 !important;
  box-shadow: 0 0 26px rgba(59,130,246,0.7) !important;
}
/* 余额提醒标签 */
body .home-main .money-box .notice-btn,
body .left-box .money-box .notice-btn {
  background: rgba(245,158,11,0.16) !important;
  color: #FBBF24 !important;
  -webkit-text-fill-color: #FBBF24 !important;
  border: 1px solid rgba(245,158,11,0.24) !important;
  border-radius: 4px !important;
  font-size: 11.5px !important;
}
/* 所有卡片内文字统一提亮 */
body .home-main .info-box *,
body .home-main .statistics-box *,
body .home-main .product-list-box *,
body .home-main .right-box * {
  -webkit-text-fill-color: currentColor !important;
}
/* 标签文字对比度 */
body .home-main .statistics-item .statistics-item-name,
body .home-main .order-item .order-title,
body .home-main .credit-name {
  color: #8FA3C4 !important;
  -webkit-text-fill-color: #8FA3C4 !important;
}
/* KPI 数字发光 */
body .home-main .order-item .order-nums {
  color: #E8EDF7 !important;
  -webkit-text-fill-color: #E8EDF7 !important;
  text-shadow: 0 0 14px rgba(59,130,246,0.35) !important;
}
/* 玻璃卡片边框微光 */
body .home-main .info-box,
body .home-main .statistics-box,
body .home-main .product-list-box {
  border: 1px solid rgba(59,130,246,0.16) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}
body .home-main .info-box:hover,
body .home-main .statistics-box:hover,
body .home-main .product-list-box:hover {
  border-color: rgba(59,130,246,0.35) !important;
  box-shadow: 0 8px 32px rgba(59,130,246,0.16) !important;
}
/* 右栏深色 */
body .home-main .right-box > div {
  background: rgba(20,27,45,0.72) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
body .home-main .right-box * { color: #E8EDF7 !important; }
body .home-main .right-box .tit,
body .home-main .right-box .time { color: #9AA8C4 !important; }
/* 底部区域修复 */
body .home-main { padding-bottom: 24px !important; min-height: 0 !important; }
body .home-main .right-box { height: auto !important; min-height: 0 !important; }
body .main-content { align-items: flex-start !important; }

/* ===== 余额卡内层浅色块修复 ===== */
body .home-main .money-box .money-credit,
body .left-box .money-box .money-credit,
body .money-credit {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
body .home-main .money-box .money-top,
body .left-box .money-box .money-top {
  background: transparent !important;
  background-color: transparent !important;
}
/* 余额提醒标签适配 */
body .home-main .money-box .create-notice,
body .left-box .money-box .create-notice {
  background: transparent !important;
}
/* 消费双栏底色统一 */
body .home-main .statistics-bottom .statistics-item {
  background: rgba(20, 27, 45, 0.92) !important;
  background-color: rgba(20, 27, 45, 0.92) !important;
}
/* 面包屑对比度 */
body .page-crumb,
body .page-crumb .cur,
body .page-crumb i {
  color: #9AA8C4 !important;
}
body .page-crumb .cur { color: #E8EDF7 !important; }
/* 顶栏图标提亮 */
body .yfx-header .el-icon,
body .top-menu .el-icon { color: #9AA8C4 !important; }

/* ===== 充值按钮加宽 + 底部空区修复 ===== */
body .home-main .money-box .credit-btn,
body .left-box .money-box .credit-btn,
body .money-box .credit-btn {
  min-width: 96px !important;
  padding: 0 20px !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
/* 底部黑色空区：让 main-content 与右栏高度自然 */
body .home-main .main-content {
  align-items: stretch !important;
}
body .home-main .right-box {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  height: auto !important;
}
body .home-main .right-box > div { flex: 0 0 auto !important; }
/* 顶栏与内容区衔接 */
body .yfx-header, body .top-menu {
  border-bottom: 1px solid rgba(59,130,246,0.18) !important;
  box-shadow: 0 1px 12px rgba(59,130,246,0.06) !important;
}
