/* Mobile presentation only. Do not change accounting values, permissions or actions. */
@media (max-width: 700px) {
  #dashboard,
  #table-view { min-width: 0; max-width: 100%; }

  /* Operating overview: one clear KPI and channel card per row. */
  .global-overview-shell { gap: 10px; width: 100%; }
  .global-overview-header > header,
  .global-channel-overview-panel > header,
  .global-salesperson-finance-panel > header {
    padding: 14px; gap: 10px; align-items: flex-start; flex-direction: column;
  }
  .global-overview-heading h2 { font-size: 22px; }
  .global-overview-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; width: 100%; }
  .global-overview-toolbar label { min-width: 0; }
  .global-overview-toolbar input { width: 100%; min-width: 0; }
  .global-overview-toolbar button { min-height: 44px; }
  .global-channel-dashboard,
  .global-channel-card-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 10px; }
  .global-channel-card-grid { padding: 0; }
  .global-channel-dashboard .global-channel-hero,
  .global-channel-card { min-width: 0; padding: 15px; }
  .global-channel-hero-label { margin-top: 18px; }
  .global-channel-hero > strong { font-size: clamp(23px, 7vw, 31px); }
  .global-channel-card > strong { font-size: clamp(19px, 6vw, 23px); }
  .global-channel-hero-metrics { margin-top: 17px; }
  .global-channel-overview-panel > footer { display: grid; padding: 4px 13px 14px; }

  /* The salesperson and mail tables become vertically readable record cards. */
  .global-salesperson-finance-panel .global-overview-table-wrap { max-height: none; overflow: visible; padding: 10px; }
  .global-salesperson-finance-panel table,
  .global-salesperson-finance-panel tbody,
  .global-salesperson-finance-panel tr { display: block; width: 100%; min-width: 0; }
  .global-salesperson-finance-panel thead { display: none; }
  .global-salesperson-finance-panel tbody { display: grid; gap: 10px; }
  .global-salesperson-finance-panel tbody tr {
    padding: 11px 12px; border: 1px solid #dce8e2; border-radius: 12px; background: #fff;
  }
  .global-salesperson-finance-panel td,
  .global-salesperson-finance-panel td:first-child {
    display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
    width: 100%; min-width: 0; padding: 6px 0; border: 0;
    text-align: right; white-space: normal; overflow-wrap: anywhere;
  }
  .global-salesperson-finance-panel td:first-child { justify-content: flex-start; align-items: center; text-align: left; font-size: 16px; }
  .global-salesperson-finance-panel td:not(:first-child)::before {
    flex: 0 0 auto; color: #617b75; font-size: 12px; font-weight: 500; text-align: left;
  }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(2)::before { content: '订单数'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(3)::before { content: 'ERP 销售额'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(4)::before { content: '当前应收'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(5)::before { content: '已回款'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(6)::before { content: '未回款'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(7)::before { content: '回款率'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(8)::before { content: '状态'; }
  .global-salesperson-finance-panel > .global-overview-table-wrap > table td:nth-child(9)::before { content: '明细'; }
  .global-mail-summary { margin-top: 16px; }
  .global-mail-summary table td:nth-child(2)::before { content: '订单数'; }
  .global-mail-summary table td:nth-child(3)::before { content: 'ERP 销售额'; }
  .global-mail-summary table td:nth-child(4)::before { content: '当前应收'; }
  .global-mail-summary table td:nth-child(5)::before { content: '已回款'; }
  .global-mail-summary table td:nth-child(6)::before { content: '未回款'; }
  .global-mail-summary table td:nth-child(7)::before { content: '明细'; }
  .global-salesperson-finance-panel td button { min-height: 40px; }

  /* Finance sections: keep filters/actions available, never let wide ledgers widen the page. */
  #table-view .finance-ledger-panel,
  #table-view .finance-cost-panel { max-width: 100%; min-width: 0; margin: 8px 0; overflow: hidden; }
  #table-view .finance-ledger-panel > header,
  #table-view .finance-cost-panel > header { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 13px; }
  #table-view .finance-ledger-panel > header h3,
  #table-view .finance-cost-panel > header h3 { font-size: 20px; }
  #table-view .finance-ledger-panel > .panel-body,
  #table-view .finance-cost-panel > .panel-body { min-width: 0; padding: 12px; }
  #table-view .finance-ledger-panel .table-actions,
  #table-view .finance-cost-panel .table-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-start; }
  #table-view .finance-ledger-panel button,
  #table-view .finance-cost-panel button,
  #table-view .finance-ledger-panel select { min-height: 40px; }
  #table-view :is(.finance-ledger-summary, .finance-monthly-orders-overview .report-kpis, .finance-income-category-kpis) {
    grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px;
  }
  #table-view .finance-ledger-summary > div { min-width: 0; overflow-wrap: anywhere; }
  #table-view :is(.finance-income-tabs, .finance-income-subnav, .finance-expense-tabs, .finance-bank-tabs) {
    max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity;
  }
  #table-view :is(.finance-income-tabs, .finance-income-subnav, .finance-expense-tabs, .finance-bank-tabs) > * {
    flex: 0 0 auto; scroll-snap-align: start;
  }
  #table-view :is(.compact-table-wrap, .finance-payment-table-wrap, .finance-history-table, .finance-bank-receipt-table-wrap) {
    max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch;
  }
  #table-view :is(.finance-form-head, .finance-payment-board .finance-form-head) {
    display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px;
  }
  #table-view input,
  #table-view select,
  #table-view textarea { max-width: 100%; box-sizing: border-box; }

  /* Customer accounts are a query page, not a desktop-width ledger. */
  #table-view .finance-account-workspace { min-width: 0; max-width: 100%; }
  #table-view .finance-account-search { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  #table-view .finance-account-search input,
  #table-view .finance-account-search button { width: 100%; min-height: 44px; }
  #finance-account-directory table,
  #finance-account-directory tbody { display: block; width: 100%; min-width: 0; }
  #finance-account-directory thead { display: none; }
  #finance-account-directory tr { display: block; margin: 0 0 9px; padding: 9px 12px; border: 1px solid #dce9e2; border-radius: 11px; background: #fff; }
  #finance-account-directory td { display: block; width: 100%; min-width: 0; border: 0; overflow-wrap: anywhere; }
  #finance-account-directory td:nth-child(1)::before { content: '客户'; }
  #finance-account-directory td:nth-child(2)::before { content: '公司'; }
  #finance-account-directory td:nth-child(1)::before,
  #finance-account-directory td:nth-child(2)::before { display: block; color: #667b70; font-size: 12px; }
  #finance-account-directory td button { min-height: 44px; width: 100%; }
  #finance-account-directory .b2b-list-pagination { display: flex; justify-content: space-between; gap: 8px; }

  /* Read-only drill-down remains reachable in a full-height mobile sheet. */
  dialog#global-api-drill.w3-finance-summary-dialog,
  dialog#global-api-config.w3-finance-summary-dialog {
    width: calc(100vw - 12px) !important; max-width: calc(100vw - 12px) !important;
    height: calc(100dvh - 16px) !important; max-height: calc(100dvh - 16px) !important;
    padding: 12px !important;
  }
  #global-api-drill .compact-panel-body,
  #global-api-config .compact-panel-body { max-width: 100%; overflow: auto; }
  #global-api-drill table,
  #global-api-config table { min-width: 650px; }
  #global-api-drill button,
  #global-api-config button { min-height: 40px; }
}

@media (max-width: 350px) {
  .global-channel-hero-metrics,
  #table-view .finance-ledger-summary { grid-template-columns: minmax(0, 1fr); }
  .global-channel-card-sources { grid-template-columns: minmax(0, 1fr); }
  .global-channel-card-sources > span:last-child { text-align: left; }
}
