.business-empty {
  display: grid;
  justify-items: start;
  gap: 5px;
  padding: clamp(20px, 4vw, 36px) clamp(16px, 3vw, 24px);
  color: #526075;
  line-height: 1.5;
}
.business-empty strong { color: #172338; font-size: 1rem; }
.business-empty p { font-size: .875rem; }
.business-empty button { margin-top: 8px; }
.business-count {
  border-radius: 999px;
  padding: 4px 9px;
  background: #edf1f7;
  color: #45566e;
  font-size: .75rem;
  font-weight: 700;
  white-space: nowrap;
}
.business-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px 14px;
  border-top: 1px solid #e2e8f0;
  padding: 12px 16px;
  color: #45566e;
  font-size: .84rem;
}
.business-pagination button { min-height: 40px; }
.business-list-labels, .catalog-entry-labels {
  color: #526075;
  background: #f4f6fa;
  font-size: .76rem;
  font-weight: 700;
}
.business-list-labels { display: flex; justify-content: space-between; padding: 10px 40px 10px 18px; }
.business-definition { display: grid; gap: 0; margin: 0; min-width: 0; }
.business-definition div { display: grid; gap: 4px; padding-block: 11px; border-bottom: 1px solid #e2e8f0; }
.business-definition div:last-child { border: 0; }
.business-definition dt { color: #526075; font-size: .84rem; }
.business-definition dd { margin: 0; color: #172338; font-weight: 650; overflow-wrap: anywhere; }
.customer-search, .catalog-search-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 220px);
  align-items: end;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid #e2e8f0;
}
.customer-search input, .customer-search select, .catalog-search-row input, .catalog-search-row select { width: 100%; min-width: 0; }
.customer-row { grid-template-columns: auto minmax(0, 1fr) auto; padding-inline: 18px; }
.customer-row:has(.customer-spend) { grid-template-columns: auto minmax(0, 1fr) auto auto; }
.customer-spend, .finance-history-amount { color: #172338; font-variant-numeric: tabular-nums; }
.customer-spend small { display: none; }
.customer-chevron { color: #526075; }
.customer-profile-heading { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: clamp(15px, 3vw, 24px); }
.customer-profile-heading .avatar { width: 54px; height: 54px; }
.customer-profile-heading h1, .customer-profile-heading p { overflow-wrap: anywhere; }
.customer-profile-heading p { color: #526075; }
.customer-profile-layout, .catalog-workspace, .team-layout { display: grid; grid-template-columns: minmax(0, 2.4fr) minmax(220px, 1fr); gap: 15px; align-items: start; }
.catalog-workspace:not(:has(aside)) { grid-template-columns: minmax(0, 1fr); }
.customer-overview, .team-permissions, .catalog-workspace .catalog-site-link { display: grid; justify-content: stretch; gap: 12px; padding: 18px; }
.team-permissions > a, .catalog-site-link > a { justify-self: start; }
.finance-history-row { grid-template-columns: minmax(0, 1fr) auto auto; padding-inline: 16px; }
.finance-history-row:has(.pill):has(.finance-history-amount):has(.customer-chevron) { grid-template-columns: minmax(0, 1fr) auto auto auto; }
.finance-history-row .pill { justify-self: start; }
.finance-history-row .negative, .revenue-chart-row.negative, .revenue-metric strong.negative { color: #a32323; }
.finance-heading, .finance-history .card-header { flex-wrap: wrap; }
.finance-history .card-header > div, .revenue-chart .card-header > div { min-width: 0; }
.finance-history .card-header p, .revenue-chart .card-header p { margin-top: 3px; }
.expense-history .card-header label { min-width: min(160px, 100%); }
.revenue-page .revenue-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.28fr); }
.expense-grid { grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); }
.revenue-toolbar { padding: 10px 14px; }
.revenue-periods { background: #f4f6fa; border-color: #e2e8f0; }
.revenue-period { color: #45566e; }
.revenue-period[aria-pressed="true"] { border-color: #e2e8f0; color: #a6361d; }
.revenue-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.revenue-total, .revenue-metric, .work-summary > div { padding: 16px 18px; }
.revenue-total { background: #fff6f2; border-color: #efdbd4; }
.revenue-total strong { color: #a6361d; }
.revenue-metric strong { color: #172338; }
.revenue-total span, .revenue-metric span { font-size: .875rem; font-weight: 650; }
.revenue-chart ul { padding: 11px 16px; }
.revenue-chart-row { grid-template-columns: minmax(50px, auto) minmax(35px, 1fr) minmax(68px, auto); font-size: .83rem; }
.revenue-chart-row progress { accent-color: #b83c1e; }
.revenue-chart-row.negative progress { accent-color: #a32323; }
.expense-breakdown .revenue-chart-row { grid-template-columns: minmax(0, 1fr) auto; gap: 5px 12px; padding-block: 9px; }
.expense-breakdown progress { grid-column: 1 / -1; }

.catalog-page, .team-workspace, .business-workspace { min-width: 0; }
.catalog-directory, .team-directory, .professional-directory, .business-workspace .work-table { min-width: 0; overflow: hidden; }
.catalog-toolbar .catalog-filters { border: 0; border-bottom: 1px solid #e2e8f0; background: white; margin: 0; padding: 10px 14px; border-radius: 0; }
.catalog-filter[aria-pressed="true"] { background: #fff1eb; border-color: #efdbd4; color: #a6361d; }
.catalog-entry-list, .team-account-list, .professional-list { margin: 0; padding: 0; list-style: none; }
.catalog-entry {
  display: grid;
  grid-template-columns: minmax(120px, 2fr) minmax(55px, .66fr) minmax(51px, .58fr) minmax(70px, .8fr) minmax(70px, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 12px 16px;
}
.catalog-entry + .catalog-entry { border-top: 1px solid #e2e8f0; }
.catalog-entry-name { display: flex; align-items: start; gap: 9px; min-width: 0; }
.catalog-entry-name h3 { color: #172338; font-size: .92rem; overflow-wrap: anywhere; }
.catalog-entry-icon { display: inline-grid; flex: none; place-items: center; width: 32px; height: 32px; color: #a6361d; background: #fff1eb; border-radius: 9px; }
.catalog-entry-icon svg { width: 17px; height: 17px; }
.catalog-entry-components { margin-top: 4px; color: #526075; font-size: .75rem; overflow-wrap: anywhere; }
.catalog-entry-components summary { cursor: pointer; }
.catalog-entry-components ul { padding: 6px 0 0 17px; }
.catalog-entry .catalog-kind { justify-self: start; color: #45566e; background: #edf1f7; }
.catalog-entry[data-kind="package"] .catalog-kind { color: #a6361d; background: #fff1eb; }
.catalog-entry .catalog-duration { justify-self: start; padding: 0; color: #45566e; background: none; white-space: nowrap; }
.catalog-entry .catalog-price { font-size: .88rem; color: #172338; overflow-wrap: anywhere; }
.catalog-entry-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px; min-width: 0; }
.team-account-list li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 16px; border-top: 1px solid #e2e8f0; }
.team-account-list li:first-child { border-top: 0; }
.team-account-list li div { display: grid; gap: 3px; min-width: 0; overflow-wrap: anywhere; }
.team-account-list li .pill { white-space: normal; }

.business-workspace .work-section-nav { background: #edf1f7; border-color: #e2e8f0; }
.business-workspace .work-section-nav a[aria-current=page] { color: #a6361d; }
.business-workspace .professional-directory { display: block; }
.professional-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.business-workspace .work-summary { gap: 12px; }
.business-workspace .work-summary dt { color: #526075; font-size: .85rem; }
.business-workspace .work-summary dd { color: #172338; }
.business-workspace .work-filters { padding: 14px 16px; border-bottom: 1px solid #e2e8f0; background: #f8fafc; }
.work-filters .error:empty { display: none; }
.professional-list .professional-directory-card { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto auto; gap: 12px; border-bottom: 1px solid #e2e8f0; }
.professional-list li:last-child { border-bottom: 0; }
.professional-list-person { display: flex; gap: 10px; align-items: center; min-width: 0; }
.professional-list-person .avatar { flex: none; }
.professional-list-person h3 { overflow-wrap: anywhere; }
.professional-list .professional-directory-services, .professional-list button { grid-column: auto; }
.professional-profile { padding: 0; gap: 0; overflow: hidden; }
.professional-profile-heading { padding: 16px 20px; border-bottom: 1px solid #e2e8f0; }
.professional-profile-layout.has-tabs { display: grid; grid-template-columns: minmax(135px, .4fr) minmax(0, 2fr); align-items: stretch; }
.professional-profile-layout .work-tabs { flex-direction: column; align-items: stretch; align-content: start; gap: 6px; padding: 12px; border: 0; border-right: 1px solid #e2e8f0; background: #f8fafc; }
.professional-profile-layout .work-tabs button { justify-content: flex-start; }
.professional-profile-panel { min-width: 0; padding: clamp(13px, 3vw, 23px); }
.professional-profile-panel .work-form-fields > legend, .commission-rules-layout legend { padding: 0; margin-bottom: 12px; font-weight: 700; color: #172338; }
.professional-profile-panel .work-notice[hidden], .professional-profile-panel [data-hours][hidden] { display: none; }
.professional-profile-panel .work-profile-photo-actions input[type=file] { width: 100%; max-width: 100%; }
.business-form-group { display: grid; align-content: start; gap: 10px; min-width: 0; padding: 12px; border: 1px solid #e2e8f0; border-radius: 10px; }
.business-form-group > a { justify-self: start; }
.commission-rules-layout { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 13px; align-items: start; }
.business-workspace .work-table .table-scroll { border: 0; box-shadow: none; }
.business-workspace .work-table-note { padding-inline: 16px; color: #45566e; }
.business-workspace .work-table .card-header { flex-wrap: wrap; }

.business-dialog-section {
  display: grid;
  gap: 12px;
  min-width: 0;
  margin: 0;
  padding: 13px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
}
.business-dialog-section > legend { padding: 0 5px; color: #172338; font-size: .875rem; font-weight: 700; }
.business-dialog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.business-dialog-footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; border-top: 1px solid #e2e8f0; padding-top: 13px; }
.business-dialog-footer > button { min-height: 44px; }
:is(#customer-dialog, #payment-dialog, #expense-dialog, #catalog-dialog, .business-workspace .work-dialog) { width: min(560px, calc(100% - 26px)); max-height: calc(100dvh - 26px); }
:is(#customer-dialog, #payment-dialog, #expense-dialog, #catalog-dialog) form .error:empty { display: none; }

@media (max-width: 1000px) {
  .catalog-workspace, .revenue-page .revenue-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .customer-profile-layout, .team-layout, .expense-grid { grid-template-columns: 1fr; }
  .professional-profile-layout.has-tabs { grid-template-columns: 1fr; }
  .professional-profile-layout .work-tabs { flex-direction: row; flex-wrap: wrap; border-right: 0; border-bottom: 1px solid #e2e8f0; }
  .professional-profile-layout .work-tabs button { flex: 1 1 auto; justify-content: center; }
}
@media (max-width: 600px) {
  .business-list-labels { display: none; }
  .business-pagination { justify-content: space-between; padding-inline: 12px; }
  .customer-search, .catalog-search-row { grid-template-columns: 1fr; padding: 12px; }
  .customer-spend small { display: block; }
  .customer-profile-heading { grid-template-columns: auto minmax(0, 1fr); }
  .customer-profile-heading > button { grid-column: 1 / -1; justify-self: start; }
  .revenue-toolbar { justify-content: center; padding: 9px; }
  .revenue-periods { width: 100%; }
  .revenue-periods button { flex: 1; padding-inline: 4px; }
  .revenue-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .revenue-total { grid-column: 1 / -1; }
  .revenue-total, .revenue-metric, .work-summary > div { padding: 12px; }
  .finance-history-row { padding-inline: 11px; }
  .finance-history-row:has(.pill):has(.finance-history-amount) { grid-template-columns: minmax(0, 1fr) auto auto; gap: 5px 8px; }
  .finance-history-row:has(.pill):has(.finance-history-amount) .pill { grid-column: 1; grid-row: 2; }
  .finance-history-row:has(.pill) .finance-history-amount { grid-column: 2; grid-row: 1; }
  .finance-history-row:has(.pill) .customer-chevron { grid-column: 3; grid-row: 1; }
  .catalog-entry.catalog-entry-labels { display: none; }
  .catalog-entry { grid-template-columns: auto auto minmax(0, 1fr); gap: 9px; padding: 13px; }
  .catalog-entry-name, .catalog-entry-actions { grid-column: 1 / -1; }
  .catalog-entry .catalog-price { justify-self: end; }
  .catalog-entry-actions:empty { display: none; }
  .catalog-entry-actions .catalog-edit { width: 100%; }
  .team-account-list li { grid-template-columns: auto minmax(0, 1fr); }
  .team-account-list li .pill { grid-column: 2; justify-self: start; }
  .professional-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .professional-list .professional-directory-card { grid-template-columns: minmax(0, 1fr) auto; }
  .professional-list .professional-list-person { grid-column: 1; grid-row: 1; }
  .professional-list .pill { grid-column: 2; grid-row: 1; }
  .professional-list .professional-directory-services { grid-column: 1; grid-row: 2; }
  .professional-list button { grid-column: 2; grid-row: 2; }
  .professional-profile-heading { padding-inline: 12px; }
  .business-dialog-grid { grid-template-columns: 1fr; }
}
