/* Financial report presentation only. The native readers, money gates,
   date controls and formatted amounts own every value on these pages. */
.insights-financial-report,
.insights-profit-detail { min-width: 0; }
.insights-financial-report__section { display: grid; gap: 0.75rem; min-width: 0; }
.insights-financial-report__notice {
  display: grid;
  gap: 0.375rem;
  padding: 1rem 1.25rem;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-ui);
  background: var(--color-card, #fff);
}
.insights-financial-report__today {
  padding-top: 1.25rem;
  border-top: 1px solid var(--color-line);
}
.insights-financial-report__jump { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.insights-financial-report__jump > a { min-height: 44px; white-space: normal; }
.insights-financial-report :is(#paid-parts-breakdown, #paid-parts-slowest, #profit-cost-coverage, #profit-breakdown, #profit-lowest-jobs) {
  scroll-margin-top: calc(var(--kf-sticky-top, 0px) + 1rem);
}
.insights-profit-detail__line-table { width: 100%; table-layout: fixed; }
.insights-profit-detail__line-table :is(th, td) { white-space: normal; overflow-wrap: anywhere; }
.insights-profit-detail__line-table th { font-size: 0.8125rem; }
@media (max-width: 639px) {
  .insights-financial-report__notice { padding: 1rem; }
  .insights-profit-detail__line-table td { min-width: 0; }
  .insights-profit-detail__line-table td::before { flex: 0 1 45%; white-space: normal; }
  .insights-profit-detail__line-table [data-profit-provenance] { display: block; text-align: left; }
  .insights-profit-detail__line-table [data-profit-provenance]::before { display: block; margin-bottom: 0.25rem; }
  .insights-profit-detail__total { display: flex !important; justify-content: space-between; gap: 1rem; }
  .insights-profit-detail__total > td { padding: 0 !important; }
  .insights-profit-detail__total > td:last-child { text-align: right; }
}
