/* Catalog only: measurement pages and Chart.js sizing are intentionally unchanged. */
.review-catalog {
  --bg: #0D1117;
  --surface: #161C24;
  --surface-2: #202936;
  --border: #303A48;
  --text: #F1F4F8;
  --text-muted: #ADB8C8;
  --accent: #6AA8FF;
  padding-inline: 24px;
  font-variant-numeric: tabular-nums;
}
.review-catalog :is(.benchmark-home,.sitenav-inner) { max-width: 1120px; margin-inline: auto; }
.review-catalog .sitenav-dot { box-shadow: none; border-radius: 2px; }
.review-catalog :is(a,button,input):focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.review-catalog .benchmark-home-header { padding-block: 28px 20px; }
.review-catalog .benchmark-home-header h1 { font-size: clamp(24px,3vw,34px); letter-spacing: -.03em; max-width: 25ch; }
.review-catalog .benchmark-compare-link { background: #245CC4; border-color: #245CC4; border-radius: 5px; min-height: 42px; }
.review-catalog .benchmark-toolbar { padding-block: 18px; flex-wrap: wrap; }
.review-catalog .search-box input[type="text"],.review-catalog .search-box button { height: 42px; }
.review-catalog .brand-filter { flex-wrap: wrap; overflow: visible; }
.review-catalog .brand-filter a { min-height: 40px; display: inline-flex; align-items: center; }
.review-catalog .brand-filter a.active { background: #245CC4; }
.review-catalog .phone-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; border-top: 1px solid var(--border); }
.review-catalog .phone-card { border: 0; border-bottom: 1px solid var(--border); border-radius: 0; background: transparent; }
.review-catalog .phone-card > a { min-height: 108px; padding: 18px 16px; }
.review-catalog .phone-card:hover { background: var(--surface); }
.review-catalog .phone-brand { text-transform: none; letter-spacing: 0; font-size: 12px; }
.review-catalog .phone-model { font-size: 17px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
.review-catalog .phone-chipset { white-space: normal; font-size: 13px; }
@media (max-width: 900px) {
  .review-catalog .phone-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .review-catalog { padding-inline: 16px; }
  .review-catalog .benchmark-home { max-width: 100%; }
  .review-catalog .benchmark-home-header { padding-block: 22px 16px; }
  .review-catalog .search-box { width: 100%; max-width: none; }
  .review-catalog .brand-filter { width: 100%; margin: 0; padding: 0; gap: 6px; }
  .review-catalog .phone-grid { grid-template-columns: minmax(0,1fr); }
  .review-catalog .phone-card > a { min-height: 88px; padding: 14px 4px; }
}
