/* =================================================================
 * 申通能源出入账系统 - 提交发票页 v3（基于真实 DOM 精修）
 * 2026-09-16
 * DOM 结构（实测）：
 *   .page > .row > .sum-card / .co-card
 *     .sum-card
 *       .row > 可开票金额合计 / 涉及企业
 *       .sum-tip
 *     .co-card
 *       .co-head > .co-name / .co-total > .amt
 *       .acct-block > .acct-head > .acct-no / .muted / .acct-sub
 *                 > .cat-line > .cat-info / 按钮1 / 按钮2 / .cat-sub
 * ================================================================= */

/* ---------- 整体页面节奏 ---------- */
.page > .row {
  margin-bottom: 14px !important;
}
.page > .row .bold {
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #1d2129 !important;
}
.page > .row .muted,
.page > .row span.muted {
  color: #86909c !important;
  font-size: 13px !important;
}

/* ---------- 顶部 banner：sum-card ---------- */
.sum-card {
  background: linear-gradient(135deg, #2b7bf6 0%, #4a90ff 100%) !important;
  color: #fff !important;
  border-radius: 12px !important;
  padding: 22px 24px 18px !important;
  margin: 0 0 14px !important;
  box-shadow: 0 4px 14px rgba(43, 123, 246, 0.25) !important;
}
.sum-card .row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 16px !important;
  margin-bottom: 14px !important;
}
.sum-card .sum-label {
  font-size: 13px !important;
  opacity: 0.85 !important;
  margin-bottom: 8px !important;
}
.sum-card .sum-num {
  font-size: 32px !important;
  font-weight: 700 !important;
  letter-spacing: -0.5px !important;
  line-height: 1.1 !important;
}
.sum-card .sum-num[style*="font-size: 20px"] {
  font-size: 24px !important;
}
.sum-card .sum-tip {
  font-size: 12px !important;
  opacity: 0.85 !important;
  margin-top: 4px !important;
}

/* ---------- 公司卡片：co-card ---------- */
.co-card {
  background: #fff !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin: 0 0 14px !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05) !important;
}
.co-card .co-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}
.co-card .co-name {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1d2129 !important;
  line-height: 1.45 !important;
  flex: 1 !important;
  min-width: 0 !important;
}
.co-card .co-total {
  text-align: right !important;
  white-space: nowrap !important;
}
.co-card .co-total .muted {
  font-size: 12px !important;
  color: #86909c !important;
  margin-bottom: 2px !important;
}
.co-card .co-total .amt {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #ff7d00 !important;
}

/* ---------- 账号块：acct-block ---------- */
.acct-block {
  background: #f7f8fa !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 12px !important;
}
.acct-block:last-child {
  margin-bottom: 0 !important;
}
.acct-block .acct-head {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 10px !important;
  font-size: 13px !important;
}
.acct-block .acct-no {
  font-weight: 600 !important;
  color: #1d2129 !important;
  font-family: ui-monospace, Menlo, Consolas, monospace !important;
}
.acct-block .acct-head .muted {
  color: #86909c !important;
  flex: 1 !important;
}
.acct-block .acct-sub {
  margin-left: auto !important;
  color: #4e5969 !important;
  font-weight: 500 !important;
}

/* ---------- 关键：cat-line（按钮 + 字体重叠处） ---------- */
.cat-line {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 12px !important;          /* row-gap col-gap */
  padding-top: 10px !important;
}
.cat-line .cat-info {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  margin-right: auto !important;      /* 把按钮挤到右边 */
}
.cat-line .cat-name {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1d2129 !important;
}
.cat-line .cat-amt {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #ff7d00 !important;
}

/* 强制 cat-sub 独占一行 + 与按钮拉开距离 */
.cat-line .cat-sub {
  flex: 0 0 100% !important;           /* 关键：占满整行 */
  margin-top: 10px !important;        /* 与上方按钮拉开 */
  padding-top: 10px !important;
  border-top: 1px dashed #e5e6eb !important;
  font-size: 12px !important;
  color: #86909c !important;
  line-height: 1.7 !important;
}

/* ---------- 按钮统一 ---------- */
.cat-line .van-button {
  height: 30px !important;
  line-height: 28px !important;
  font-size: 13px !important;
  padding: 0 14px !important;
  border-radius: 16px !important;
}
.cat-line .van-button .van-button__text {
  line-height: 1 !important;
}
/* 绿框按钮（发票明细） */
.cat-line .van-button--primary.van-button--plain {
  border-color: #00b578 !important;
  color: #00b578 !important;
  background: #fff !important;
}
/* 蓝实心（提交发票） */
.cat-line .van-button--info {
  background: #1989fa !important;
  border-color: #1989fa !important;
  color: #fff !important;
}

/* ---------- 顶部导航 ---------- */
.pc-nav {
  background: #fff !important;
  border-bottom: 1px solid #f0f1f3 !important;
}
.pc-nav-inner {
  max-width: 1200px !important;
  margin: 0 auto !important;
  height: 52px !important;
  padding: 0 24px !important;
}
.pc-nav .brand {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1d2129 !important;
}
.pc-nav .nav-links {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  row-gap: 4px !important;
}
.pc-nav .nav-links span {
  display: inline-block !important;
  font-size: 14px !important;
  padding: 0 12px !important;
  height: 32px !important;
  line-height: 32px !important;
  white-space: nowrap !important;
  border-radius: 6px !important;
  color: #4e5969 !important;
  cursor: pointer !important;
}
.pc-nav .nav-links span.active {
  background: #e8f3ff !important;
  color: #1989fa !important;
  font-weight: 600 !important;
}
.pc-nav .nav-right .bold {
  font-weight: 600 !important;
  color: #1d2129 !important;
}
.pc-nav .nav-right .van-button {
  height: 30px !important;
  line-height: 28px !important;
  font-size: 13px !important;
  padding: 0 12px !important;
  border-radius: 6px !important;
}
.pc-nav .nav-right > * + * {
  margin-left: 10px !important;
}