.compare-page { max-width:var(--content-max); margin:auto; padding:var(--sp-4) var(--page-gutter) var(--sp-7); }
.compare-skip { position:absolute; top:var(--sp-2); left:var(--sp-3); transform:translateY(-200%); z-index:var(--z-dialog); padding:var(--sp-2); background:var(--color-surface); }
.compare-skip:focus { transform:none; }
.compare-breadcrumb { font-size:var(--text-sm); color:var(--color-text-muted); }
.compare-intro { padding:var(--sp-5) 0 var(--sp-4); max-width:var(--reading-max); }
.compare-eyebrow { font:var(--weight-semibold) var(--text-xs)/var(--line-body) var(--font-mono); letter-spacing:var(--tracking-meta); text-transform:uppercase; color:var(--color-secondary); }
.compare-intro h1 { margin:var(--sp-3) 0; font-size:var(--text-hero); }
.compare-intro p:last-child { max-width:var(--reading-max); color:var(--color-text-muted); font-size:var(--text-lg); }
.compare-page h2 { font-size:var(--text-xl); margin:0 0 var(--sp-2); }
.compare-picker { padding:var(--sp-4); margin:var(--sp-4) 0 var(--sp-5); background:var(--color-surface); border:1px solid var(--color-border); border-radius:var(--radius-lg); }
.compare-picker p,.compare-section-head p { color:var(--color-text-muted); font-size:var(--text-sm); margin:0; }
#tool-pickers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--sp-3); margin-top:var(--sp-3); }
.compare-select-label { display:grid; gap:var(--sp-2); font-size:var(--text-sm); font-weight:var(--weight-semibold); min-width:0; }
.compare-select-label select { min-height:var(--control-min); width:100%; padding:var(--sp-2); color:var(--color-text); background:var(--color-bg); border:1px solid var(--color-border-strong); border-radius:var(--radius-sm); }
.compare-section-head { display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3); margin-bottom:var(--sp-4); }
.compare-reset { min-height:var(--control-min); border:1px solid var(--color-border-strong); background:var(--color-surface); color:var(--color-accent); padding:var(--sp-2) var(--sp-3); border-radius:var(--radius-pill); white-space:nowrap; }
.compare-page .compare__facets { padding:var(--sp-3); border:1px solid var(--color-border); border-radius:var(--radius-md); background:var(--color-surface); }
.compare-page .compare__facet { min-height:var(--control-min); }
.compare-page .compare__facet input { width:var(--sp-3); height:var(--sp-3); accent-color:var(--color-accent); }
.compare-page .compare__main { min-width:0; }
.compare-page .compare__table-wrap { max-width:100%; overscroll-behavior-inline:contain; }
.compare-page .compare__table { min-width:44rem; }
.compare-page .compare__table th:first-child { position:sticky; left:0; background:var(--color-surface); z-index:1; white-space:normal; min-width:10rem; }
.compare-page .compare__table td { min-width:10rem; overflow-wrap:anywhere; }
.compare-method { padding:var(--sp-4); margin-top:var(--sp-5); background:var(--color-secondary-soft); border-radius:var(--radius-lg); max-width:var(--reading-max); }
.compare-method p { font-size:var(--text-sm); }
.compare-scroll-note { font-size:var(--text-sm); color:var(--color-text-muted); }
.compare-mobile-cards { display:none; }
.compare-full-table > summary { min-height:var(--control-min); padding:var(--sp-2) 0; font-weight:var(--weight-semibold); cursor:pointer; }
.compare-full-table > summary { display:none; }
.compare-empty { border:1px solid var(--color-border); border-radius:var(--radius-md); padding:var(--sp-4); }
@media(max-width:800px) {
  #tool-pickers { grid-template-columns:1fr; }
  .compare-intro { padding-top:var(--sp-4); }
  .compare-intro h1 { font-size:var(--text-3xl); }
  .compare-section-head { align-items:flex-start; flex-direction:column; }
  .compare-mobile-cards { display:grid; gap:var(--sp-3); margin-bottom:var(--sp-4); }
  .compare-mobile-card { padding:var(--sp-3); border:1px solid var(--color-border); background:var(--color-surface); border-radius:var(--radius-md); }
  .compare-mobile-card h3 { margin:0 0 var(--sp-2); font-size:var(--text-lg); }
  .compare-mobile-card dl { margin:0; }
  .compare-mobile-card .compare-fact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--sp-3); padding:var(--sp-2) 0; border-top:1px solid var(--color-border); font-size:var(--text-sm); }
  .compare-mobile-card dt { color:var(--color-text-muted); }
  .compare-mobile-card dd { margin:0; overflow-wrap:anywhere; }
  .compare-full-table > summary { display:list-item; }
}
@media print { #tool-pickers,.compare-reset,.compare__facets {display:none;} .compare-page .compare {display:block;} }
/* Per-tool qualifications stay near the comparison, not in research-log table cells. */
.compare-budget{margin-top:2rem;min-width:0}.compare-budget-card{padding:1.25rem;margin:1rem 0;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);min-width:0}
.compare-budget-card h3{margin:0 0 .75rem;font-size:var(--text-lg)}.compare-budget-card p,.compare-budget-card li{line-height:1.65;overflow-wrap:anywhere}.compare-budget-card ul{padding-left:1.25rem}.compare-budget-card li{margin:.65rem 0}.compare-budget-card summary{min-height:44px;cursor:pointer;padding:.7rem 0;font-weight:600}.compare-budget-card a{display:inline-block;padding:.4rem 0}.compare-price-summary{font-weight:600}
@media(max-width:480px){.compare-mobile-card .compare-fact{grid-template-columns:1fr;gap:.25rem}.compare-budget-card{padding:1rem}}
