/* 平台充值页（分公司 → 平台）：申请、记录、贴牌账单、平台审核。
   只作用于 #billingPlatformRecharge，不改其它计费区块的排版。 */
.billing-platform-page { display: grid; gap: 14px; margin: 0 30px 18px; }

.bpr-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.bpr-tabs { display: flex; gap: 4px; padding: 4px; border-radius: 12px; background: #eef0f8; }
.bpr-tabs button {
  padding: 9px 18px; border: 0; border-radius: 9px; background: transparent;
  color: #64708a; font-size: 14px; font-weight: 600; cursor: pointer;
}
.bpr-tabs button[aria-selected="true"] { color: #5b49c9; background: #fff; box-shadow: 0 2px 8px #3c315b12; }
.bpr-head-actions { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.bpr-live { color: #8b93a7; font-size: 12px; }
.bpr-head-actions button { min-height: 36px; }

.bpr-top { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 14px; align-items: start; }
.bpr-form-panel, .bpr-summary-panel, .bpr-records, .bpr-bills, .bpr-users {
  border: 1px solid #e1e5f0; border-radius: 15px; background: #fff; box-shadow: 0 3px 16px #26334b03; padding: 20px 22px;
}
.bpr-form-panel form { display: grid; gap: 14px; }
.bpr-packs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.bpr-packs button { min-height: 44px; border: 1px solid #dfe3ef; border-radius: 10px; background: #fcfcff; color: #3a3550; font-size: 14px; font-weight: 600; cursor: pointer; }
.bpr-packs button:hover { border-color: #c9c0f8; background: #f4f2ff; }
.bpr-order-no { font-size: 12px; color: #7b8598; }
.bpr-table th:nth-child(1), .bpr-table td:nth-child(1) { width: 168px; font-size: 12px; color: #7b8598; overflow-wrap: anywhere; }
.bpr-form-panel .billing-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bpr-form-panel label { display: grid; gap: 7px; font-size: 13px; color: #5b6478; }
.bpr-form-panel .bpr-note { grid-column: 1 / -1; }
.bpr-form-panel :is(input, select) {
  width: 100%; min-height: 42px; padding: 9px 12px; border: 1px solid #dfe3ef; border-radius: 9px;
  background: #fcfcff; color: #26304a; font-size: 14px;
}
.bpr-form-panel footer { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.bpr-form-panel footer span { flex: 1 1 220px; color: #7b8598; font-size: 12px; line-height: 1.6; }
.bpr-form-panel footer span.is-error { color: #b63549; }
.bpr-form-panel footer span.is-ok { color: #168a75; }
.bpr-form-panel footer .primary-button { min-width: 168px; min-height: 44px; }

.bpr-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bpr-metrics div { padding: 14px 16px; border: 1px solid #e9ebf4; border-radius: 11px; background: #fafbff; }
.bpr-metrics div:first-child { grid-column: 1 / -1; }
.bpr-metrics span { display: block; margin-bottom: 8px; color: #8590a3; font-size: 12px; }
.bpr-metrics strong { color: #3a3550; font-size: 20px; font-variant-numeric: tabular-nums; }
.bpr-metrics div:first-child strong { font-size: 26px; color: #5b49c9; }
.bpr-summary-note { margin: 14px 0 0; color: #8b93a7; font-size: 12px; line-height: 1.7; }

.bpr-records .panel-header, .bpr-bills .panel-header, .bpr-users .panel-header { align-items: flex-start; }
.bpr-filters { display: flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; }
.bpr-filters label { display: grid; gap: 6px; font-size: 12px; color: #7b8598; }
.bpr-filters :is(select, input) {
  min-height: 36px; padding: 7px 10px; border: 1px solid #dfe3ef; border-radius: 8px; background: #fcfcff; font-size: 13px; color: #26304a;
}
.bpr-filters input { width: 168px; }

.bpr-table-wrap { overflow: auto; border: 1px solid #e8ebf4; border-radius: 10px; max-height: 520px; }
.bpr-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 13px; }
.bpr-table th, .bpr-table td { padding: 12px 14px; border-bottom: 1px solid #edf0f6; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.bpr-table th { position: sticky; top: 0; z-index: 1; background: #f7f8fc; color: #7b869b; font-weight: 600; }
.bpr-table tbody tr:last-child td { border-bottom: 0; }
.bpr-table tbody tr:hover { background: #fcfbff; }
.bpr-table th:nth-child(1), .bpr-table td:nth-child(1) { width: 150px; color: #7b8598; font-size: 12px; }
.bpr-table th:nth-child(3), .bpr-table td:nth-child(3) { width: 110px; font-variant-numeric: tabular-nums; }
.bpr-table .bpr-amount { font-weight: 650; color: #4a3fb0; }
.bpr-empty { padding: 26px 14px; color: #8b93a7; text-align: center; }
.bpr-status { display: inline-block; padding: 3px 9px; border-radius: 6px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.bpr-status.is-pending { color: #9a6b12; background: #fff6e2; }
.bpr-status.is-approved { color: #137d68; background: #e8f7f2; }
.bpr-status.is-rejected { color: #b0354a; background: #fdeef0; }
.bpr-reason { display: block; margin-top: 5px; color: #a8606c; font-size: 12px; }
.bpr-review { display: flex; gap: 6px; }
.bpr-review button { min-height: 30px; padding: 4px 10px; border-radius: 7px; border: 1px solid #dfe3ef; background: #fff; color: #4a5470; font-size: 12px; cursor: pointer; }
.bpr-review button[data-bpr-approve] { border-color: #cfe8df; color: #137d68; }
.bpr-review button[data-bpr-reject] { border-color: #f2cdd4; color: #b03549; }
.bpr-review button:disabled { opacity: .55; cursor: default; }

.bpr-pager { display: flex; align-items: center; gap: 10px; margin-top: 12px; color: #7b8598; font-size: 12px; }
.bpr-pager #bprCount { margin-right: auto; }
.bpr-pager button { min-height: 32px; padding: 5px 12px; border: 1px solid #dfe3ef; border-radius: 8px; background: #fff; color: #4a5470; font-size: 12px; cursor: pointer; }
.bpr-pager button:disabled { opacity: .5; cursor: default; }

@media (max-width: 1100px) {
  .bpr-top { grid-template-columns: minmax(0, 1fr); }
  .bpr-form-panel .billing-form-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .billing-platform-page { margin: 0 14px 16px; }
  .bpr-form-panel, .bpr-summary-panel, .bpr-records, .bpr-bills, .bpr-users { padding: 16px; }
  .bpr-filters input { width: 100%; }
}
