.workspace-category-tabs { display: flex; flex-wrap: wrap; gap: .25rem; border-bottom: 2px solid #9bafb1; }
.workspace-category-tabs a { display: flex; align-items: center; min-height: 3rem; padding: .65rem .85rem; color: #25484d; font-weight: 600; text-decoration: none; border-bottom: 4px solid transparent; }
.workspace-category-tabs a[aria-current="page"] { color: #12373d; background: #fff; border-color: #147269; }
.workspace-category-tabs a:hover { background: #edf4f2; }
.roster-totals { display: flex; flex-wrap: wrap; gap: 1.5rem 3rem; padding-block: 1.25rem; border-block: 1px solid #a8b9ba; margin-block: 1.25rem; }
.roster-totals a { color: #284448; display: grid; gap: .25rem; text-decoration: none; min-width: 7rem; }
.roster-totals strong { font-size: 2rem; line-height: 1.1; font-variant-numeric: tabular-nums; }
.roster-totals a:first-child { color: #155936; }
.roster-status { display: inline-block; padding: .3rem .5rem; border: 1px solid #9faeae; border-radius: 4px; background: #f5f7f7; color: #384c50; font-weight: 650; margin-bottom: .25rem; }
.roster-status--paid { color: #145632; border-color: #659578; background: #e6f4e9; }
.roster-paid td:first-child { border-left: 4px solid #267850; }
.dashboard-page .dashboard-table th { color: #29474b; }
.dashboard-page .dashboard-table td { padding-block: 1rem; min-width: 10rem; }
.dashboard-page .dashboard-table td:first-child { min-width: 13rem; }
.dashboard-page .dashboard-table a { display: inline-block; padding-block: .35rem; }
.dashboard-page :is(.form-control, .form-select, .form-label, .dashboard-sidebar__link) { font-size: 1rem; }
.dashboard-page :is(.form-control, .form-select) { min-height: 2.75rem; }
.dashboard-page .badge { font-size: .875rem; }
.inquiry-message { border-block: 1px solid #a8b9ba; padding-block: 1rem; max-width: 70ch; overflow-wrap: anywhere; }
@media (max-width: 575px) {
  .workspace-category-tabs a { flex: 1 1 42%; padding-inline: .5rem; }
  .roster-totals { gap: 1rem; }
  .roster-totals a { min-width: 6rem; }
  .dashboard-page .roster-table, .dashboard-page .roster-table tbody { display: block; width: 100%; }
  .roster-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .dashboard-page .roster-table tr { display: grid; grid-template-columns: minmax(0, 1fr); border-bottom: 2px solid #9bafb1; padding-block: .5rem; }
  .dashboard-page .roster-table td { min-width: 0; border: 0; padding: .45rem .75rem; }
  .dashboard-page .roster-table td[data-label]::before { content: attr(data-label); display: block; color: #4c6266; font-size: .875rem; font-weight: 650; }
  .roster-table tr.roster-paid { border-left: 4px solid #267850; }
}
