.catalog-category-total {
  color: var(--accent-hover);
  font-size: clamp(1.15rem, 2.4vw, 1.65rem);
  font-variant-numeric: tabular-nums;
  font-weight: 750;
  line-height: 1.1;
}
.research-metrics.catalog-match-count { grid-template-columns: minmax(0, 1fr); }
.research-metrics.catalog-match-breakdown {
  grid-template-columns: minmax(15rem, 1.65fr) repeat(2, minmax(0, 1fr));
}
.catalog-match-count > .research-metric-primary {
  gap: 9px;
  padding: clamp(18px, 2.2vw, 32px);
}
.catalog-match-count .research-metric-primary .catalog-count-number {
  color: var(--ink);
  font-size: clamp(3rem, 5.2vw, 5.25rem);
  font-weight: 780;
  letter-spacing: -.055em;
  line-height: 1;
}
.catalog-match-count .catalog-count-copy {
  max-inline-size: 36ch;
  margin: 0;
  color: var(--muted);
  font-size: clamp(1rem, 1.4vw, 1.18rem);
  font-weight: 500;
  line-height: 1.4;
}
@media (max-width: 680px) {
  .research-metrics.catalog-match-breakdown { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-match-breakdown > .research-metric-primary { grid-column: 1 / -1; }
}
@media (max-width: 1120px) {
  .is-filter-mode .research-metrics.catalog-match-breakdown { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .is-filter-mode .catalog-match-breakdown > .research-metric-primary { grid-column: 1 / -1; }
}
.catalog-mobile-brand { display: none; }
.research-shell .catalog-directory-form .research-company-field { grid-template-columns: minmax(0, 1fr); }
.research-shell .catalog-directory-form .research-secondary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.catalog-directory-actions { display: flex; align-items: center; gap: 7px; }

@media (min-width: 1000px) {
  .research-shell .catalog-directory-form { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
  .catalog-directory-form .research-company-field { grid-column: 1 / -1; }
}

@media (min-width: 730px) and (max-width: 780px), (min-width: 1000px) and (max-width: 1049px) {
  .catalog-categories { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 1024px) {
  .research-shell :is(.research-form .btn, .research-form .field input, .research-form .field select,
    .research-switch button, .research-chip, .research-query-actions .btn, .research-tabs button,
    .catalog-selection-bar .btn, .catalog-select-page, .foot .btn, .catalog-page-size select,
    .fleet-view-switch button, .fleet-map > summary, .sidebar .nav-item) { min-height: 44px; }
  .research-shell .research-form .field :is(input, select), .research-shell .mobile-nav,
  .research-shell .catalog-page-size select { font-size: 16px; }
  .research-shell .catalog-select-page { padding-block: 6px; }
  .research-shell :is(.catalog-selection-bar, .catalog-select-page) input[type="checkbox"] { width: 20px; height: 20px; }
}

@media (max-width: 780px) {
  .shell.research-shell > .mobile-brand { display: none; }
  .research-shell .carrier-workspace-header {
    grid-template-columns: max-content minmax(0, 1fr) auto;
    gap: 9px;
    padding: 8px clamp(13px, 3vw, 24px);
  }
  .research-shell .catalog-mobile-brand { display: block; }
  .catalog-mobile-brand .brand-logo { width: clamp(84px, 16vw, 112px); }
  .research-shell .carrier-workspace-header .mobile-nav { justify-self: end; min-height: 44px; max-width: 158px; background: var(--panel-soft); }
  .research-shell .header-actions:empty { display: none; }
  .research-shell .main { padding-top: 16px; }
}

@media (max-width: 600px) {
  .research-shell .research-workspace { gap: 16px; }
  .research-shell .catalog-categories { gap: 8px; }
  .research-shell .catalog-category { padding: 11px; gap: 5px; }
  .catalog-category-top { margin-bottom: 2px; }
  .catalog-category-icon { width: 30px; height: 30px; }
  .catalog-category-description { font-size: .86rem; }
  .research-shell .catalog-intro { display: grid; grid-template-columns: minmax(0, 1fr); gap: 11px; }
  .research-shell .catalog-intro h1 { font-size: clamp(1.9rem, 7.7vw, 2.4rem); }
  .research-shell .catalog-intro > .research-switch { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .research-shell .research-search-head { width: 100%; }
  .research-shell .research-search-head .research-switch { flex: 1 1 auto; justify-content: center; }
  .research-shell .catalog-directory-form .research-secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .catalog-directory-form .research-secondary .field:last-child { grid-column: 1 / -1; }
  .catalog-directory-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .research-shell .catalog-directory-actions .btn { justify-self: stretch; white-space: normal; }
  .research-shell [data-form="owner-operator-catalog-search"] .research-secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .research-shell [data-form="owner-operator-catalog-search"] .research-secondary .field:nth-child(3),
  .research-shell [data-form="owner-operator-catalog-search"] .research-secondary > .flex { grid-column: 1 / -1; }
  .research-shell [data-form="owner-operator-catalog-search"] .research-secondary .btn.primary { flex: 1; }
  .research-shell [data-form="real-catalog-search"] .research-secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .research-shell [data-form="real-catalog-search"] .research-secondary > :nth-child(n+3) { grid-column: 1 / -1; }
  .research-shell .foot > .flex { width: 100%; gap: 7px; }
}

.fleet-table-scroll-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  padding: 7px 12px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: .83rem;
}
.fleet-table-scroll-controls[hidden] { display: none; }
.fleet-table .table-wrap { overscroll-behavior-inline: contain; }
.fleet-table table { width: max-content; }
.fleet-table :is(th, td) { padding: 6px 10px; white-space: nowrap; }
.fleet-table th { color: var(--muted); background: var(--panel-soft); }
.fleet-table :is(th, td):first-child { padding-inline-start: 12px; }
.fleet-table :is(th, td):last-child { padding-inline-end: 12px; }
.fleet-table .fleet-table-pick { padding-block: 0; }
.fleet-table .catalog-result-label { display: none; }
.fleet-table-company { display: flex; align-items: center; gap: 4px; }
.fleet-table-company .btn { color: var(--accent-hover); }
.fleet-table-value { display: block; max-inline-size: 12rem; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 1024px) {
  :is(.fleet-table, .fleet-table-scroll-controls) .btn { min-block-size: 44px; }
}
