/* Industry directory shares the Tip Desk's newspaper colors and type. */
.mb-directory { max-width: var(--maxw, 1080px); margin: 0 auto; padding: 24px 20px 48px; }
.mb-directory [hidden] { display: none !important; }
.mb-directory h1 { font: 700 clamp(28px, 4vw, 40px)/1.15 var(--serif, Georgia, serif); margin: 10px 0 14px; }
.mb-directory h2 { font: 700 24px/1.25 var(--serif, Georgia, serif); margin: 0 0 14px; }
.mb-directory__breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; color: var(--ink-secondary, #555); font-size: 13px; }
.mb-directory a { color: var(--navy, #0a1f44); }
.mb-directory a:focus-visible, .mb-directory button:focus-visible,
.mb-directory input:focus-visible, .mb-directory__scroll:focus-visible { outline: 2px solid var(--accent, #c9a227); outline-offset: 3px; }
.mb-directory__intro { margin-bottom: 8px; }
.mb-directory__asof { color: var(--ink-secondary, #555); font-size: 13px; }
.mb-directory__controls { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 22px 0 14px; font-size: 13px; }
.mb-directory__controls label { font-weight: 600; }
.mb-directory__controls input { color: var(--ink, #1a1a1a); background: var(--bg, #fff); border: 1px solid var(--line, #ddd); padding: 8px 10px; border-radius: 2px; min-width: 220px; font: inherit; }
.mb-directory__controls [role="status"] { color: var(--ink-secondary, #555); }
.mb-directory__jump { display: flex; flex-wrap: wrap; gap: 7px 16px; font-size: 13px; padding: 14px 0; margin-bottom: 14px; border-top: 1px solid var(--line, #ddd); border-bottom: 1px solid var(--line, #ddd); }
.mb-directory__group { margin: 28px 0 36px; scroll-margin-top: calc(var(--site-header-height, 45px) + 100px); }
.mb-directory__scroll { max-width: 100%; overflow-x: auto; }
.mb-directory__table { width: 100%; border-collapse: collapse; font-size: 14px; }
.mb-directory__table caption { text-align: left; color: var(--ink-secondary, #555); font-size: 12px; padding: 0 0 9px; }
.mb-directory__table th { text-align: left; white-space: nowrap; border-top: 2px solid var(--ink, #1a1a1a); border-bottom: 1px solid var(--ink, #1a1a1a); padding: 11px 12px; font-size: 12px; font-weight: 700; }
.mb-directory__table td { padding: 12px; border-bottom: 1px solid var(--line, #ddd); vertical-align: top; }
.mb-directory__table th:not(:first-child):not(:nth-child(2)),
.mb-directory__table th:nth-child(2)[data-sort-type="number"] { text-align: right; }
.mb-directory__table th button { color: inherit; font: inherit; border: 0; background: transparent; cursor: pointer; padding: 2px 0; text-align: inherit; }
.mb-directory__table th button::after { content: " ↕"; color: var(--ink-secondary, #555); }
.mb-directory__table th[aria-sort="ascending"] button::after { content: " ↑"; color: inherit; }
.mb-directory__table th[aria-sort="descending"] button::after { content: " ↓"; color: inherit; }
.mb-directory__table tr[data-href] { cursor: pointer; }
.mb-directory__table tbody tr:hover { background: var(--bg-nav, #fafafa); }
.mb-directory__name { min-width: 210px; }
.mb-directory__name a { font-weight: 600; }
.mb-directory__number { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mb-directory__ticker { font-weight: 600; white-space: nowrap; }
.mb-directory__secondary { display: block; color: var(--ink-secondary, #555); font-size: 11px; font-weight: 400; padding-top: 3px; }
.mb-directory__state { border-top: 2px solid var(--ink, #1a1a1a); margin: 26px 0; padding: 22px 0; }
.mb-directory__empty-group { color: var(--ink-secondary, #555); font-size: 13px; }
.mb-directory__methodology { border-top: 1px solid var(--ink, #1a1a1a); padding-top: 22px; color: var(--ink-secondary, #555); font-size: 12px; }
.mb-directory__methodology h2 { color: var(--ink, #1a1a1a); font-size: 20px; }
.mb-directory__methodology p + p { margin-top: 10px; }
@media (max-width: 600px) {
  .mb-directory { padding: 20px 14px 36px; }
  .mb-directory__controls { align-items: stretch; flex-direction: column; }
  .mb-directory__controls input { width: 100%; min-width: 0; }
  .mb-directory__table { min-width: 670px; }
  .mb-directory__table td, .mb-directory__table th { padding: 10px 9px; }
  .mb-directory__name { min-width: 190px; }
}
