/* Company context remains visible while moving between pages. */
.topbar {
  background: color-mix(in srgb, var(--company-accent, #003380) 9%, white);
  border-bottom: 3px solid var(--company-accent, #003380);
}
.topbar .top-actions, .topbar .mobile-active-company { color: var(--text); }
#page-overview > .page-heading h1 { color: var(--company-strong, var(--text)); }

.dashboard-status-board { margin-bottom: 14px; padding: 13px 16px; }
.dashboard-status-board .panel-head { margin-bottom: 10px; }
.dashboard-status-board .panel-head h2 { font-size: 15px; }
.dashboard-status-board .panel-head p { margin: 3px 0 0; color: var(--muted); font-size: 12px; }
#dashboard-status-content { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.dashboard-status-section { min-width: 0; }
.dashboard-status-section h3 { display: flex; justify-content: space-between; align-items: center; margin: 0 0 7px; font-size: 13px; }
.dashboard-status-section h3 span { color: var(--muted); font-variant-numeric: tabular-nums; }
.dashboard-status-stages { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 6px; }
.dashboard-status-stages details { min-width: 0; border: 1px solid var(--border); border-radius: 7px; background: var(--surface); }
.dashboard-status-stages summary { display: flex; justify-content: space-between; align-items: center; gap: 6px; min-height: 40px; padding: 7px 9px; color: var(--text); font-size: 12px; cursor: pointer; list-style: none; }
.dashboard-status-stages summary::-webkit-details-marker { display: none; }
.dashboard-status-stages summary::before { content: '▸'; color: var(--company-accent); }
.dashboard-status-stages details[open] summary::before { content: '▾'; }
.dashboard-status-stages summary span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.dashboard-status-stages summary strong { color: var(--company-strong); font-variant-numeric: tabular-nums; }
.dashboard-status-records { max-height: 220px; overflow-y: auto; border-top: 1px solid var(--border); }
.dashboard-status-records button { display: flex; justify-content: space-between; gap: 6px; width: 100%; min-height: 36px; padding: 7px 9px; border: 0; border-bottom: 1px solid var(--border); background: white; color: var(--text); font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.dashboard-status-records button:hover, .dashboard-status-records button:focus-visible { background: var(--company-soft); }
.dashboard-status-records button span:first-child { min-width: 0; overflow-wrap: anywhere; }
.dashboard-status-records button span:last-child { color: var(--company-accent); }
.dashboard-status-empty { margin: 0; color: var(--muted); font-size: 12px; }

/* Shared desktop density for the inspection and service registers. */
:is(#page-inspection-runs, #page-inspection-findings, #page-inspection-reinspections, #page-service-directory, #page-service-contracts) {
  max-width: none;
  padding-top: 16px;
}
:is(#page-inspection-runs, #page-inspection-findings, #page-inspection-reinspections, #page-service-directory, #page-service-contracts) > .page-heading {
  margin-bottom: 10px;
}
:is(#page-inspection-runs, #page-inspection-findings, #page-inspection-reinspections, #page-service-directory, #page-service-contracts) > .page-heading h1 {
  font-size: 20px;
  line-height: 1.2;
}
:is(#page-inspection-runs, #page-inspection-findings, #page-inspection-reinspections, #page-service-directory, #page-service-contracts) > .page-heading .eyebrow {
  margin-bottom: 2px;
  font-size: 9px;
}
#inspection-runs-root { gap: 10px; }
#page-inspection-runs .inspection-project-summary, #page-inspection-runs .inspection-run-list, #page-inspection-runs .inspection-run-detail { padding: 10px 12px; }
#page-inspection-runs .inspection-summary-heading h2 { font-size: 15px; }
#page-inspection-runs .inspection-run-setup { gap: 9px; padding: 12px; }
#page-inspection-findings .inspection-findings-queue { max-width: none; padding: 12px; }
#page-inspection-findings .inspection-findings-queue-print-action { margin-bottom: 6px; }
#page-inspection-findings .inspection-findings-queue-search, #page-inspection-findings .inspection-findings-queue-severity { margin-bottom: 6px; }
#page-inspection-reinspections .inspection-reinspection-queue { width: 100%; max-width: none; padding: 12px; }
#page-inspection-reinspections .inspection-reinspection-queue h2 { margin-bottom: 7px; font-size: 15px; }
#page-inspection-reinspections .inspection-reinspection-filters { margin-bottom: 8px; }
#page-service-directory .service-directory-toolbar { margin-bottom: 8px; }
#service-directory-root { gap: 8px; }
#page-service-contracts .service-agreement-overview { padding: 10px 12px; }

@media (max-width: 700px) {
  #dashboard-status-content { grid-template-columns: 1fr; gap: 12px; }
  .dashboard-status-stages { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :is(#page-inspection-runs, #page-inspection-findings, #page-inspection-reinspections, #page-service-directory, #page-service-contracts) { padding-top: 12px; }
  #page-inspection-runs .inspection-run-setup { padding: 10px; }
}
