/* 看板沿用现有卡片与主色，仅调整本页的信息层级。 */
.business-dashboard { min-width: 0; }
.business-dashboard .dashboard-toolbar { padding: 14px; margin-bottom: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); }
.business-dashboard .dashboard-date-filter { display: flex; flex-wrap: wrap; align-items: end; gap: 10px 18px; margin-bottom: 12px; }
.business-dashboard .dashboard-date-inputs { display: flex; align-items: end; gap: 8px; min-width: 0; }
.business-dashboard .dashboard-date-inputs .input { width: 168px; min-width: 0; }
.business-dashboard .dashboard-date-separator { padding-bottom: 9px; color: var(--text-2); }
.business-dashboard .dashboard-periods { display: flex; flex-wrap: wrap; gap: 6px; padding-bottom: 3px; }
.business-dashboard .dashboard-query-actions { display: flex; gap: 8px; }
.business-dashboard .dashboard-toolbar .filters {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(140px, 1fr) minmax(180px, 1.5fr) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 6px;
  padding: 0;
  border: 0;
  box-shadow: none;
}
.business-dashboard .dashboard-toolbar .field { min-width: 0; }
.business-dashboard .dashboard-toolbar .lbl { margin-bottom: 5px; }
.business-dashboard .dashboard-toolbar .select { width: 100%; }
.business-dashboard .dashboard-toolbar > p { margin: 8px 0 0; color: var(--text-2); }
.business-dashboard .dashboard-summary {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: 12px;
  margin-bottom: 14px;
}
.business-dashboard .dashboard-income,
.business-dashboard .dashboard-margin-status {
  min-width: 0;
  padding: 18px 20px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--r);
  box-shadow: var(--sh-sm);
}
.business-dashboard .dashboard-income { border-color: var(--primary-line); }
.business-dashboard .dashboard-income:only-child { grid-column: 1 / -1; }
.business-dashboard .dashboard-eyebrow { color: var(--text-2); font-size: 13px; font-weight: 500; }
.business-dashboard .dashboard-total {
  margin: 4px 0 12px;
  color: var(--primary);
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
.business-dashboard .dashboard-facts { display: flex; flex-wrap: wrap; gap: 8px 24px; color: var(--text-2); font-size: 12px; }
.business-dashboard .dashboard-facts span { white-space: nowrap; }
.business-dashboard .dashboard-facts b { color: var(--text); font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; }
.business-dashboard .dashboard-pending { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 18px; margin-top: 6px; font-size: 25px; font-weight: 600; line-height: 1.4; }
.business-dashboard .dashboard-pending span { color: var(--text-2); font-size: 14px; font-weight: 400; }
.business-dashboard .dashboard-profit-note { margin: 7px 0 10px; color: var(--text-2); font-size: 12px; }
.business-dashboard .dashboard-flow { min-width: 0; margin: 0 0 14px; }
.business-dashboard .dashboard-receipt-chart { display: flex; gap: 12px; max-width: 880px; margin: 0 auto; }
.business-dashboard .dashboard-chart-axis { position: relative; flex: 0 0 64px; height: 160px; margin-top: 32px; color: var(--text-2); font-size: 11px; font-variant-numeric: tabular-nums; }
.business-dashboard .dashboard-chart-axis span { position: absolute; right: 0; transform: translateY(50%); white-space: nowrap; }
.business-dashboard .dashboard-chart-scroll { flex: 1; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; }
.business-dashboard .dashboard-date-bars {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  min-width: calc(var(--dashboard-date-count) * 120px);
  padding: 32px 0 8px;
}
.business-dashboard .dashboard-chart-grid { position: absolute; top: 32px; left: 0; right: 0; height: 160px; pointer-events: none; }
.business-dashboard .dashboard-chart-gridline { position: absolute; left: 0; right: 0; border-top: 1px dashed var(--line); }
.business-dashboard .dashboard-chart-gridline.baseline { border-top-style: solid; border-color: var(--line-strong); }
.business-dashboard .dashboard-date-bar { position: relative; z-index: 1; flex: 1; min-width: 120px; text-align: center; }
.business-dashboard .dashboard-bar-value { position: absolute; bottom: calc(100% + 7px); left: 50%; transform: translateX(-50%); color: var(--text); font-size: 13px; font-weight: 600; white-space: nowrap; }
.business-dashboard .dashboard-bar-track { display: flex; align-items: flex-end; width: 48px; height: 160px; margin: 0 auto; }
.business-dashboard .dashboard-bar-fill { position: relative; width: 100%; border-radius: 4px 4px 0 0; background: var(--primary); }
.business-dashboard .dashboard-bar-label { display: block; margin-top: 10px; color: var(--text); font-size: 12px; font-variant-numeric: tabular-nums; }
.business-dashboard .dashboard-bar-count { display: block; margin-top: 2px; color: var(--text-2); font-size: 11px; }
.business-dashboard .dashboard-rankings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
.business-dashboard .dashboard-rankings > .card { min-width: 0; margin: 0; }
.business-dashboard .dashboard-rankings .card-bd { padding: 0 14px; }
.business-dashboard .rank-row { grid-template-columns: 24px minmax(0, 1fr) 108px 60px; gap: 10px; height: 76px; padding: 10px 0; }
.business-dashboard .rank-row.head { height: 36px; padding: 8px 0; color: var(--text-2); font-size: 12px; }
.business-dashboard .rank-row .idx { color: var(--text-2); }
.business-dashboard .dashboard-rank-name { min-width: 0; }
.business-dashboard .dashboard-rank-name a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; line-height: 1.5; }
.business-dashboard .rank-row .amt { white-space: nowrap; font-size: 13px; }
.business-dashboard .rank-row .pct { display: block; white-space: nowrap; font-size: 12px; }
.business-dashboard .dashboard-contribution-track { height: 4px; margin-top: 6px; background: var(--surface-3); border-radius: 999px; overflow: hidden; }
.business-dashboard .dashboard-contribution-fill { height: 100%; background: var(--primary); border-radius: inherit; }
.business-dashboard .dashboard-rankings .list-pager { margin: 0 -14px; padding: 10px 14px; gap: 8px; border-top: 0; }
.business-dashboard .dashboard-rankings .list-pager label,
.business-dashboard .dashboard-rankings .list-page-buttons { gap: 6px; font-size: 12px; }
.business-dashboard .dashboard-rankings .list-pager .select { width: 78px; }
.business-dashboard .dashboard-rankings .list-page-buttons .btn { padding: 0 7px; }
.business-dashboard .dashboard-notes { margin-top: 14px; }
.business-dashboard .dashboard-notes > summary { padding: 8px 0; color: var(--text-2); font-size: 12px; cursor: pointer; }
.business-dashboard .dashboard-notes > summary:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; border-radius: 2px; }
.business-dashboard .dashboard-notes .note { font-size: 12px; }
@media (max-width: 1100px) {
  .business-dashboard .dashboard-toolbar .filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .business-dashboard .dashboard-query-actions { align-self: end; }
  .business-dashboard .dashboard-rankings { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .business-dashboard .dashboard-toolbar { padding: 12px; }
  .business-dashboard .dashboard-toolbar .filters { gap: 10px; }
  .business-dashboard .dashboard-date-filter { display: block; }
  .business-dashboard .dashboard-date-inputs .field { flex: 1; }
  .business-dashboard .dashboard-date-inputs .input { width: 100%; }
  .business-dashboard .dashboard-periods { margin-top: 10px; padding: 0; }
  .business-dashboard .dashboard-toolbar .lbl { font-size: 12px; }
  .business-dashboard .dashboard-query-actions { grid-column: 1 / -1; }
  .business-dashboard .dashboard-toolbar > p { font-size: 11px; }
  .business-dashboard .dashboard-summary { grid-template-columns: 1fr; }
  .business-dashboard .dashboard-income,
  .business-dashboard .dashboard-margin-status { padding: 14px; }
  .business-dashboard .dashboard-total { font-size: 30px; }
  .business-dashboard .dashboard-facts { gap: 6px 16px; }
  .business-dashboard .dashboard-pending { font-size: 22px; }
  .business-dashboard .dashboard-flow .card-hd { gap: 2px; }
  .business-dashboard .dashboard-flow .card-hd .small { width: 100%; font-size: 11px; }
  .business-dashboard .dashboard-receipt-chart { gap: 8px; }
  .business-dashboard .dashboard-chart-axis { flex-basis: 48px; font-size: 10px; }
  .business-dashboard .dashboard-bar-track { width: 40px; }
  .business-dashboard .dashboard-rankings .card-bd { padding: 0 12px; }
  .business-dashboard .rank-row { grid-template-columns: 22px minmax(0, 1fr) 100px 51px; gap: 6px; font-size: 12px; }
  .business-dashboard .rank-row.head { font-size: 11px; }
  .business-dashboard .rank-row .amt { font-size: 12px; }
  .business-dashboard .rank-row .pct { font-size: 11px; }
  .business-dashboard .dashboard-rankings .list-pager { margin: 0 -12px; padding: 10px 12px; }
  .business-dashboard .dashboard-rankings .list-page-buttons { width: 100%; justify-content: space-between; }
}
