/* New firms tab (SITE_THEMES.md). Uses tokens from ../style.css only; header, list heading and table base come from deals.css */
#newfirms .nf-ex { gap: 12px; max-width: 760px; border-top: 1px solid var(--hair); padding-top: 28px; }
#newfirms .nf-ex .ex-title { font-size: 14px; line-height: 20px; font-weight: 600; }
#newfirms .nf-ex .ex-title span { color: var(--ink2); font-weight: 400; margin-left: 4px; }
#newfirms .nf-ctl { gap: 12px 18px; margin-block: 8px 14px; }
#newfirms .sortlab { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--ink2); }
#newfirms .nftbl { width: 100%; }
#newfirms .nftbl td:first-child { width: 100%; min-width: 220px; }
#newfirms .nftbl td.n, #newfirms .nftbl th.n { white-space: nowrap; }
#newfirms .nf-row { cursor: pointer; }
#newfirms .nf-row:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
#newfirms .nf-row.on td { border-bottom-color: transparent; }
#newfirms .nf-deal { color: var(--ink3); }
#newfirms .nf-card-row > td { padding-top: 0; }
#newfirms .nf-card { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 16px 40px; padding: 4px 0 8px; }
#newfirms .nf-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 24px; align-content: start; }
#newfirms .nf-f { display: grid; gap: 2px; font-size: 14px; }
#newfirms .nf-f span { color: var(--ink3); font-size: 12px; }
#newfirms .nf-f b { font-weight: 500; }
#newfirms .nf-links { grid-column: 1 / -1; color: var(--ink3); }
#newfirms .wrap { padding-bottom: 80px; }
@media (max-width: 760px) {
  #newfirms .nf-card { grid-template-columns: minmax(0, 1fr); }
  #newfirms .nf-cl { display: none; }
  #newfirms .nftbl td:first-child { min-width: 0; }
  #newfirms .nf-ctl .search { width: 100%; min-width: 0; }
  #newfirms .nf-ctl select { min-height: 44px; }
}
