/* The content pages (scripts/pages-render.mjs): the legal pages' frame
   (legal.css) and the comparison pages' bits (vs.css), plus what only these
   have: code, figures, notes, a wide table of every tool, and the source lists.
   Nothing here sets a colour of its own: the tokens are the landing's. */
.pg .lg-doc{max-width:68ch}
.pg.vs .lg-doc{max-width:none}
.pg.vs .lg-doc p,.pg.vs .lg-doc ul,.pg.vs .lg-doc ol,.pg.vs .lg-doc .pg-note{max-width:68ch}
.pg h3{margin:28px 0 10px;font-size:18px;line-height:1.4;font-weight:600;letter-spacing:-.01em}
.pg ol{margin:0 0 16px;padding-left:24px}
.pg ol li::marker{color:var(--text-3);font-family:'Geist Mono',monospace;font-size:.9em}
.pg section>*:last-child{margin-bottom:0}
.pg pre{margin:4px 0 20px;padding:16px 18px;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);font:500 13.5px/1.65 'Geist Mono',monospace;color:var(--text)}
.pg pre:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pg pre code{padding:0;border:0;background:none;font:inherit;white-space:pre}
.pg .pg-table{margin:4px 0 20px}
.pg .pg-table td:first-child{width:auto}
.pg .pg-table table{min-width:480px}
.pg th.right,.pg td.right{text-align:right}
.pg th.center,.pg td.center{text-align:center}
.pg-note{margin:0 0 20px;padding:14px 18px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;background:var(--surface)}
.pg-note p{margin:0;font-size:15.5px}
.pg-fig{margin:8px 0 24px}
.pg-fig img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.pg-fig figcaption{margin-top:10px;font-size:14px;line-height:1.5;color:var(--text-3)}
.pg .vs-faq dd p{margin:0}
.pg .pg-prov{margin:0 0 8px}
.pg-cta{margin-top:8px;padding-top:8px}
.pg .lg-doc>section.pg-cta+section,.pg .lg-doc>section+section.pg-cta{border-top:0}

/* Every tool in one table: scrolls sideways, the tool's name stays in view. */
.pg-matrix{margin:8px 0 12px;overflow-x:auto;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.pg-matrix:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pg-matrix table{width:100%;min-width:1040px;table-layout:auto;border-collapse:collapse}
.pg-matrix th,.pg-matrix td{padding:12px 14px;vertical-align:top;text-align:left;font-size:14px;line-height:1.5;border-bottom:1px solid var(--border)}
.pg-matrix thead th{position:static;background:var(--surface-2);font:600 11.5px/1.4 'Geist Mono',monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2)}
.pg-matrix tbody th{position:sticky;left:0;z-index:1;min-width:120px;width:auto;background:var(--surface);font:600 14.5px/1.4 Geist,system-ui,sans-serif;letter-spacing:0;text-transform:none;color:var(--text)}
.pg-matrix tbody th small{display:block;margin-top:2px;font:500 11.5px/1.4 'Geist Mono',monospace;color:var(--text-3)}
.pg-matrix td{width:auto;color:var(--text-2)}
.pg-matrix td b{font-weight:600;color:var(--text)}
.pg-matrix td small{display:block;margin-top:2px;font-size:12.5px;color:var(--text-3)}
.pg-matrix td .ns{color:var(--text-3);font-style:italic}
.pg-matrix td sup{font-size:.72em;color:var(--text-3)}
.pg-matrix td sup a{color:var(--text-2)}
.pg-matrix tbody tr:last-child th,.pg-matrix tbody tr:last-child td{border-bottom:0}
.pg-matrix tr.pg-us th,.pg-matrix tr.pg-us td{background:var(--tint)}
.pg-matrix tr.pg-us td{color:var(--text)}
.pg-matrix tr.pg-us small{color:var(--text-2)}
.pg-src{margin:0 0 20px;padding-left:24px;font-size:13.5px;line-height:1.6;color:var(--text-3)}
.pg-src li{margin-bottom:4px;overflow-wrap:anywhere}
.pg-src a{color:var(--text-2)}
.pg h3+.pg-src{margin-top:0}
/* On a phone each tool is a card, as on the comparison pages (vs.css draws the rows). */
@media (max-width:600px){
  .pg-matrix{overflow:visible;border:0;background:none}
  .pg-matrix table{min-width:0;display:block}
  .pg-matrix tbody th{position:static;min-width:0;width:auto;background:none}
  .pg-matrix tr.pg-us th{background:none}
  .pg-matrix tbody tr.pg-us{background:var(--tint)}
}
