/* recruit-billing-center.css · RECRUIT_BILLING_CENTER_APPLE_X_V1
 * Billing center (后台导航 → 账单中心) visual refinements only. Pure CSS, loaded after styles.css and billing-center-v2.css.
 * Scope: every selector starts with body.admin-visual #recruitmentView#recruitmentView#recruitmentView (= body.admin-visual #recruitmentView, id repeated to outrank the existing
 * role-scoped / !important billing rules in styles.css and billing-center-v2.css) and then a real billing root id
 * (#billingCenterPanel #billingPeriodInfo #billingSummaryPanel #partnerBillingPanel #agentBillingPanel #billingDetailsPanel
 * #billingAgentSettlementPanel #billingV2). The only exception is the shared confirm dialog, scoped through
 * body:has(#recruitmentView billing-mode) so it never restyles cost-config / other modules.
 * Never set: display, visibility, `.hidden`, content, @import, url(). `.hidden`/[hidden] are only read, never overridden.
 * Not touched: JS, DOM order, API, numbers, widths of amount columns (tables keep their min-width + horizontal scroll),
 * revenue / profit / status / warning / danger colours, archive-button colours.
 * Palette: #111111 / #6E6E73 / #E5E5E5 / #D2D2D7 / #F5F5F7 / #FFFFFF.
 */

/* ---- BC-10 · partner / agent / recruit_manager page header: no 56px clipping ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView:not(.hidden):is(.partner-billing-mode,.agent-billing-mode,.recruitment-mode-billing) .recruitment-page-header {
  height: auto !important;
  min-height: 56px !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 12px 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView:not(.hidden):is(.partner-billing-mode,.agent-billing-mode,.recruitment-mode-billing) .recruitment-page-header :is(h1,h2) {
  margin: 0 !important;
  color: #111111 !important;
  font-size: 22px !important;
  font-weight: 650 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView:not(.hidden):is(.partner-billing-mode,.agent-billing-mode,.recruitment-mode-billing) .recruitment-page-header p {
  margin: 4px 0 0 !important;
  color: #6E6E73 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
}

/* ---- BC-02 · panels & cards: white surface, 1px hairline, no heavy shadow (outside the admin #billingV2 layer) ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingPeriodInfo,#billingSummaryPanel,#partnerBillingPanel,#agentBillingPanel,#billingDetailsPanel,#billingAgentSettlementPanel):not(#billingV2 *) {
  border-color: #E5E5E5 !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingPeriodInfo,#billingSummaryPanel,#partnerBillingPanel,#agentBillingPanel,#billingDetailsPanel,#billingAgentSettlementPanel) :is(.billing-snapshot-panel,.billing-consistency-panel,.billing-audit-log-panel,.billing-reconciliation-panel,.billing-history-compare-panel,.billing-analysis-panel,.billing-export-panel,.billing-dashboard-panel,.billing-details-panel,.billing-actual-details-panel,.billing-agent-settlement-panel,.billing-employee-details-panel,.billing-agent-details-panel,.billing-agent-contribution-panel,.agent-billing-details,.partner-operation-summary):not(#billingV2 *) {
  border-color: #E5E5E5 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel) :is(.billing-analysis-card,.billing-consistency-card,.billing-history-compare-card,.billing-reconciliation-summary-card,.billing-center-finance-card,.billing-center-people-card,.billing-center-agent-card,.billing-dashboard-card,.billing-snapshot-card,.partner-billing-summary-card,.partner-billing-profit-card,.partner-billing-people-card,.agent-billing-summary-card,.agent-billing-amount-card,.partner-analysis-progress-card,.billing-summary-item) {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  background-color: #F5F5F7 !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.admin-visual #recruitmentView#recruitmentView#recruitmentView #partnerBillingPanel :is(.partner-operation-summary,.partner-operation-summary-main) {
  background-image: none !important;
  background-color: #FFFFFF !important;
}

/* ---- BC-01 / BC-11 · neutral chrome: headings and helper text ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel) :is(h2,h3,h4) {
  color: #111111 !important;
  letter-spacing: -0.005em !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel) :is(.billing-period-selector-label,.billing-period-selector-hint,.billing-period-desc,.billing-center-description-text,.billing-snapshot-estimate-hint,.billing-v2-muted,.billing-export-version,.partner-analysis-footnote) {
  color: #6E6E73 !important;
}

/* ---- BC-20 · controls: period select, secondary buttons, filter pills, export ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) select {
  min-height: 36px !important;
  border: 1px solid #D2D2D7 !important;
  border-radius: 8px !important;
  background-color: #FFFFFF !important;
  color: #111111 !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(button,summary):not(.billing-snapshot-archive-btn):not(#generateBillingSnapshotBtn):not(#confirmBillingSnapshotBtn):not(#settleBillingSnapshotBtn):not([aria-selected]):not([data-billing-snapshot-filter]):not([data-billing-audit-action-filter]) {
  border: 1px solid #D2D2D7 !important;
  border-radius: 8px !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  color: #111111 !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(button,summary):not(.billing-snapshot-archive-btn):not(#generateBillingSnapshotBtn):not(#confirmBillingSnapshotBtn):not(#settleBillingSnapshotBtn):not([aria-selected]):not([data-billing-snapshot-filter]):not([data-billing-audit-action-filter]):not(:disabled):hover {
  background-color: #F5F5F7 !important;
  border-color: #6E6E73 !important;
}
/* primary actions (existing buttons, same labels / handlers): solid #111 */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is(#generateBillingSnapshotBtn,#confirmBillingSnapshotBtn,#settleBillingSnapshotBtn) {
  border: 1px solid #111111 !important;
  border-radius: 8px !important;
  background-color: #111111 !important;
  background-image: none !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is(#generateBillingSnapshotBtn,#confirmBillingSnapshotBtn,#settleBillingSnapshotBtn):not(:disabled):hover {
  background-color: #333336 !important;
  border-color: #333336 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is(#generateBillingSnapshotBtn,#confirmBillingSnapshotBtn,#settleBillingSnapshotBtn):disabled {
  background-color: #F5F5F7 !important;
  border-color: #E5E5E5 !important;
  color: #6E6E73 !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(button,select,summary,a):disabled {
  cursor: not-allowed !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(button:not(:disabled),select:not(:disabled),summary):hover {
  cursor: pointer;
}
/* filter pills */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is([data-billing-snapshot-filter],[data-billing-audit-action-filter]) {
  min-height: 32px !important;
  border: 1px solid #D2D2D7 !important;
  border-radius: 999px !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  color: #6E6E73 !important;
  box-shadow: none !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is([data-billing-snapshot-filter],[data-billing-audit-action-filter]):not(:disabled):hover {
  background-color: #F5F5F7 !important;
  color: #111111 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#billingV2) :is([data-billing-snapshot-filter],[data-billing-audit-action-filter]):is(.active,[aria-pressed="true"],[aria-selected="true"]) {
  border-color: #111111 !important;
  background-color: #111111 !important;
  color: #FFFFFF !important;
}
/* focus: one visible ring everywhere (keyboard only) */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingPeriodInfo,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(button,select,summary,a,input,[tabindex]):focus-visible {
  outline: 2px solid #111111 !important;
  outline-offset: 2px !important;
}
/* export menu (#billingV2ExportMenu) */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 #billingV2ExportSlot {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12) !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-export-group {
  border-top-color: #E5E5E5 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-export-group :is(h3,h4,strong) {
  color: #111111 !important;
}

/* ---- BC-21 · admin tabs ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-tabs {
  border-bottom: 1px solid #E5E5E5 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-tabs button {
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #6E6E73 !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-tabs button:hover {
  color: #111111 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-tabs button[aria-selected="true"] {
  border-bottom-color: #111111 !important;
  color: #111111 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-tabs button:focus-visible {
  outline-offset: -2px !important;
  border-radius: 6px !important;
}

/* ---- BC-01 / BC-02 · admin summary + tab panels ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-title {
  color: #111111 !important;
  letter-spacing: -0.01em !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-summary {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 [data-v2-panel] {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-primary span {
  color: #6E6E73 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-secondary {
  border-bottom-color: #E5E5E5 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-secondary span {
  color: #6E6E73 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-secondary strong {
  color: #111111 !important;
  font-variant-numeric: tabular-nums !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-explanation,
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-section-head > span {
  color: #6E6E73 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-disclosure {
  border-top-color: #E5E5E5 !important;
}

/* ---- BC-05 · amounts: tabular figures, never broken inside a number; 390 steps down ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-primary strong {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  font-variant-numeric: tabular-nums !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel) :is(strong,b):not(:has(*)) {
  font-variant-numeric: tabular-nums !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingDashboardPanel .billing-dashboard-card strong {
  font-size: clamp(22px, 2.2vw, 30px) !important;
  line-height: 1.25 !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 1100px) {
  body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel .billing-reconciliation-summary-card strong {
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
  }
}
@media (max-width: 600px) {
  body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-primary {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-primary strong {
    font-size: 24px !important;
  }
}
@media (max-width: 380px) {
  body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-primary strong {
    font-size: 22px !important;
  }
}

/* ---- BC-03 / BC-06 / BC-07 · tables: one header + cell style, amounts never wrap, horizontal scroll kept ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) table {
  border-collapse: collapse !important;
  table-layout: auto !important;
  font-variant-numeric: tabular-nums !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(th,td) {
  box-sizing: border-box !important;
  padding: 10px 12px !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
  border-bottom: 1px solid #E5E5E5 !important;
  vertical-align: middle !important;
  line-height: 1.45 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(th,td):first-child {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  min-width: 128px !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) thead :is(th,td) {
  background-color: #F5F5F7 !important;
  color: #6E6E73 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) tbody td {
  color: #111111;
  font-size: 13px !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) tbody tr:hover td {
  background-color: #FAFAFA !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingSummaryPanel,#billingDetailsPanel,#billingAgentSettlementPanel,#billingV2) :is(.billing-snapshot-list-scroll,.billing-v2-scroll,.billing-employee-details-table-wrap,.billing-agent-details-table-wrap,.billing-audit-log-table-wrap,.billing-agent-contribution-table-wrap,.billing-details-table-wrap,.billing-reconciliation-table-wrap,.agent-billing-table-wrap,.billing-agent-contribution-table-wrap) {
  overflow-x: auto !important;
  max-width: 100% !important;
  -webkit-overflow-scrolling: touch;
}

body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingSnapshotListTable :is(th,td) {
  padding: 10px 10px !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingSnapshotListTable :is(th,td):first-child {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  min-width: 168px !important;
}

/* ---- BC-04 · history snapshots vs live data (CSS only; every marker text stays) ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 #billingSnapshotList tr:not(.is-current-snapshot) td,
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingSnapshotList tr:not(.is-current-snapshot) td {
  background-color: #F5F5F7 !important;
  color: #6E6E73 !important;
  font-weight: 400 !important;
}
/* t168 · historical rows are records, not disabled: period, amounts and head-counts keep a readable ink (#3A3A3C); the grey surface stays */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingV2,#billingCenterPanel) #billingSnapshotList tr:not(.is-current-snapshot) td:not(.workbench-empty):is(:first-child,:nth-child(n+4):nth-child(-n+9)) {
  color: #3A3A3C !important;
  font-weight: 500 !important;
}
/* t168 · "已归档 / 不可操作" action text (existing text, not a button): lift to #6E6E73 so it stays readable on #F5F5F7 and #FFFFFF */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingV2,#billingCenterPanel) #billingSnapshotList .billing-snapshot-action-text {
  color: #6E6E73 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingSnapshotList tr.is-current-snapshot td {
  background-color: #FFFFFF !important;
  color: #111111 !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel #billingSnapshotList tr.is-current-snapshot td:first-child {
  box-shadow: inset 3px 0 0 #111111 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel .billing-snapshot-current-row,
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel .billing-snapshot-state {
  border-radius: 8px !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel .billing-current-snapshot-badge {
  border: 1px solid #111111 !important;
  border-radius: 999px !important;
  background-color: #111111 !important;
  color: #FFFFFF !important;
  font-weight: 600 !important;
}

/* ---- BC-19 · audit / consistency badges ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel .billing-audit-action-badge {
  border: 1px solid #E5E5E5 !important;
  border-radius: 999px !important;
  background-color: #F5F5F7 !important;
  color: #111111 !important;
  font-weight: 600 !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingCenterPanel :is(.billing-consistency-badge,.billing-snapshot-status,.billing-snapshot-version-badge,.billing-history-compare-status,.partner-analysis-status) {
  border-radius: 999px !important;
  font-weight: 600 !important;
}

/* ---- BC-18 · empty / loading / error ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#billingCenterPanel,#partnerBillingPanel,#agentBillingPanel,#billingV2) :is(.workbench-empty,.billing-consistency-empty) {
  border: 1px dashed #D2D2D7 !important;
  border-radius: 12px !important;
  background-color: #F5F5F7 !important;
  color: #6E6E73 !important;
  text-align: center !important;
  box-shadow: none !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView #billingV2 .billing-v2-data-status {
  color: #6E6E73 !important;
}

/* ---- BC-22 · partner / agent cards: neutral surface, semantic value colours untouched ---- */
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#partnerBillingPanel,#agentBillingPanel) :is(.partner-billing-summary-row,.agent-billing-summary-row,.partner-billing-people-row,.partner-operation-summary-grid,.billing-analysis-grid) {
  gap: 12px !important;
}
body.admin-visual #recruitmentView#recruitmentView#recruitmentView :is(#partnerBillingPanel,#agentBillingPanel) :is(.partner-billing-summary-card,.partner-billing-profit-card,.partner-billing-people-card,.agent-billing-summary-card,.agent-billing-amount-card) :is(small,span):not([class*="status"]) {
  color: #6E6E73 !important;
}

/* ---- BC-15 · shared confirm dialog, only while the billing center is the visible mode ---- */
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-backdrop {
  background: rgba(0, 0, 0, 0.4) !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal {
  border: 1px solid #E5E5E5 !important;
  border-radius: 16px !important;
  background: #FFFFFF !important;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18) !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__header {
  border-bottom: 1px solid #E5E5E5 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__title-wrap h2 {
  color: #111111 !important;
  font-weight: 650 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__message {
  color: #111111 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__tips {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  background: #F5F5F7 !important;
  color: #6E6E73 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__details {
  border: 1px solid #E5E5E5 !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__footer {
  border-top: 1px solid #E5E5E5 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__cancel {
  min-height: 40px !important;
  border: 1px solid #D2D2D7 !important;
  border-radius: 10px !important;
  background: #FFFFFF !important;
  color: #111111 !important;
  font-weight: 600 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal__confirm--warning {
  min-height: 40px !important;
  border: 1px solid #111111 !important;
  border-radius: 10px !important;
  background: #111111 !important;
  color: #FFFFFF !important;
  font-weight: 600 !important;
}
body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal :is(button:focus-visible) {
  outline: 2px solid #111111 !important;
  outline-offset: 2px !important;
}
@media (max-width: 480px) {
  body.admin-visual:has(#recruitmentView:is(.recruitment-mode-billing,.partner-billing-mode,.agent-billing-mode):not(.hidden)) .cost-config-confirm-modal {
    border-radius: 14px !important;
    max-width: calc(100vw - 24px) !important;
  }
}
