/* Rows (10 Oct 2026, the owner's yes): compact rows instead of big boxes, things that open in place, and filters on Results.
   Only the site's own tokens. Loaded on Home and Results; the other pages follow after an outside design review. */

/* Home: the question beside the protocol, in one band. */
.hero2 {display:grid;gap:24px;align-items:start;padding-bottom:20px;border-bottom:1px solid var(--line)}
.hero2 header.page {margin:0;padding:0;border:0}
.hero2 h1 {font-size:clamp(2rem,4.6vw,3.2rem);line-height:1.05}
.cta {display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.cta .button {min-height:44px}
.protocol {padding:16px 18px;border-left:3px solid var(--accent);background:var(--panel)}
.protocol .small {margin:0}
.protocol .legend {margin:12px 0 0;padding:0;border:0}
.figures {list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px;font-size:.86rem;color:var(--muted)}
.figures li {margin:0}
.figures b {display:inline-block;min-width:3.2ch;margin-right:6px;font:700 1.15rem/1 var(--sans);color:var(--ink)}
@media(min-width:880px) {.hero2 {grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px}}

/* Tabs: without the script every panel shows with its own heading; with it, one panel at a time. */
.tabs {margin-top:28px}
.tablist {display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line)}
.tablist [role=tab] {min-height:44px;padding:0 14px;border:0;border-bottom:3px solid transparent;border-radius:0;background:none;color:var(--muted);font:600 .9rem var(--sans);cursor:pointer}
.tablist [role=tab][aria-selected=true] {color:var(--ink);border-bottom-color:var(--accent)}
.tabs.on .tabpanel>h2 {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tabpanel {padding-top:8px}

/* Rows: one line of name and words, links on the right. */
.prows {list-style:none;margin:8px 0 0;padding:0}
.prows>li {display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin:0;padding:10px 0;border-bottom:1px solid var(--line)}
.prows>li>div {flex:1 1 22rem;min-width:0}
.prows b {font:700 1rem var(--sans)}
.prows span {color:var(--muted);font-size:.92rem}
.prows a b {color:var(--ink)}
.plinks {display:flex;flex-wrap:wrap;gap:0 14px;list-style:none;margin:0;padding:0;font:500 .78rem var(--mono)}
.plinks li {margin:0}
.plinks a {display:inline-flex;align-items:center;min-height:44px}
.rows-plain li {padding-block:8px}

/* Results: the finder and the rows. */
.finder {z-index:5;display:grid;gap:8px;margin:20px 0 4px;padding:10px 0;background:var(--bg);border-bottom:1px solid var(--line)}
.chips {display:flex;flex-wrap:wrap;gap:6px}
.chips button {min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:99px;background:var(--panel);color:var(--ink);font:500 .82rem var(--sans);cursor:pointer}
.chips button[aria-pressed=true] {border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}
.finder-row {display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.search {flex:1 1 16rem;margin:0;font:600 .8rem/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.search input {margin-top:4px}
.finder-row button {min-height:44px}
.count {margin:0;font:500 .8rem var(--mono);color:var(--muted)}
.rows {list-style:none;margin:0;padding:0}
.rows>li {margin:0;border-bottom:1px solid var(--line)}
.rows summary {display:grid;grid-template-columns:4.2rem minmax(0,1fr) 1.2rem;gap:12px;align-items:baseline;min-height:44px;padding:12px 0;cursor:pointer;list-style:none}
.rows summary::-webkit-details-marker {display:none}
.rows summary::after {content:"+";content:"+" / "";font:600 1.1rem/1 var(--mono);color:var(--muted);text-align:right}
.rows details[open]>summary::after {content:"-";content:"-" / ""}
.rows time {font:500 .78rem var(--mono);color:var(--muted)}
.row-title {font-size:.97rem}
.row-title b {display:block;font:700 .78rem/1.4 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.row-body {padding:0 0 16px calc(4.2rem + 12px)}
.row-body p {margin:0 0 8px;max-width:68ch}
.rows summary:hover .row-title {color:var(--accent)}
@media(max-width:560px) {.rows summary {grid-template-columns:minmax(0,1fr) 1.2rem}.rows time {grid-column:1/-1}.row-body {padding-left:0}}

/* Share, on these two pages: one quiet line instead of a box. */
.share {margin-top:40px;padding:14px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}

/* Turning off the current design's home band and big figures inside the candidate. */
body[data-page="/"] .hero2 header.page {background:none;color:var(--ink);padding:0;margin:24px 0 0;overflow:visible}
body[data-page="/"] .hero2 header.page::after {content:none}
body[data-page="/"] .hero2 .eyebrow {color:var(--muted)}
body[data-page="/"] .hero2 h1 {font-size:clamp(2rem,4.6vw,3.2rem);max-width:20ch;margin-bottom:16px}
body[data-page="/"] .hero2 header.page a:focus-visible {outline-color:var(--accent)}
.hero2 .protocol {margin-top:24px}
.rows-plain .figure,.rows-plain .finding-graphic {display:none}
.rows-plain li {grid-template-columns:7rem 1fr;gap:4px 16px;padding:10px 0;font-size:.95rem}
/* Changed 10 Oct 2026 after an outside audit: the finder sticks only where there is room for it, and a linked row clears it. */
@media(min-width:701px) and (min-height:601px) {.finder {position:sticky;top:0}.rows>li {scroll-margin-top:190px}}
/* Result titles are headings, so a screen reader can move from one result to the next. */
.rows .row-title {margin:0;font:400 .97rem/1.5 var(--sans);letter-spacing:normal;text-wrap:wrap}
/* Windows high contrast: the chosen chip stays marked. */
@media(forced-colors:active) {.chips button[aria-pressed=true] {forced-color-adjust:none;background:Highlight;color:HighlightText;border-color:Highlight}}
