/* Shared paired-results component, used by Home and Leaderboard. */
[hidden]{display:none!important}
.paired-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.paired-controls label{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--soft)}
.paired-controls select{font:14px var(--sans);min-height:44px;padding:8px 32px 8px 12px;border:1px solid var(--strong-line);border-radius:4px;background:var(--paper);color:var(--ink);max-width:100%}
.paired-board .mountain{margin:0 0 24px}
.paired-board .mountain-head{display:none}
.paired-board .mountain-legend{display:none}
.paired-board .mountain-note{font-size:12px}
.paired-table{width:100%;min-width:980px;border-collapse:collapse;font-size:14px}
.paired-table caption{text-align:left;font-size:12px;color:var(--muted);padding:0 0 12px}
.paired-table th,.paired-table td{padding:16px 14px;border-bottom:1px solid var(--line)}
.paired-table thead th{font-size:12px;line-height:1.5;text-align:right;color:var(--soft);font-weight:500}
.paired-table tr>*:nth-child(1){width:46px;text-align:center}
.paired-table tr>*:nth-child(2){text-align:left;min-width:200px}
.paired-table tbody th{font-weight:500;white-space:nowrap}
.paired-table td:nth-child(n+4){text-align:right;font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums}
.paired-table tr>*:nth-child(3){text-align:left;min-width:170px}
.harness-tag{display:inline-block;white-space:nowrap;font-size:12px;line-height:1.5;padding:4px 7px;border-radius:3px;background:var(--tint);color:var(--soft)}
.harness-tag.harness{background:var(--brand-tint);color:var(--brand)}
.paired-table .is-sorted,.paired-table th[aria-sort="descending"]{background:var(--brand-tint);color:var(--ink);font-weight:600}
.paired-table tbody tr:first-child>th{font-weight:700}
.paired-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;margin:18px 0 0;font-size:12px;color:var(--muted);line-height:1.7}
.paired-foot a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.paired-status{font-size:12px;color:var(--muted);min-height:1.6em;margin:12px 0 0}
.research-directions{--cols:3}
.research-directions h3{font-size:21px;line-height:1.35}
.paired-notes .paired-methods{margin-top:24px}
.paired-methods{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:32px}
.paired-methods article{padding:22px;border:1px solid var(--line);border-radius:var(--radius)}
.paired-methods h3{font-size:17px;margin-bottom:8px}
.paired-methods p{font-size:14px;color:var(--soft);line-height:1.8}
.paired-notes{border-top:1px solid var(--line);padding-top:22px;margin-top:28px}
.paired-notes summary{cursor:pointer;font-size:14px;font-weight:600}
.paired-notes p,.paired-notes li{font-size:14px;line-height:1.8;color:var(--soft)}
.paired-notes p{margin-top:16px}
.paired-notes ul{padding-left:20px;margin-top:12px}
.paired-scroll-note{font-size:12px;color:var(--muted);margin:10px 0;display:none}
/* Run evidence: the model name opens one card below the table; it holds only archived fields. */
.paired-table .run-toggle{display:inline-flex;align-items:center;gap:8px;margin:0;padding:2px 0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:var(--strong-line);text-underline-offset:4px}
.paired-table .run-toggle::after{content:"+";min-width:18px;padding:1px 0;border:1px solid var(--strong-line);border-radius:3px;font-family:var(--mono);font-size:11px;line-height:1.4;text-align:center;color:var(--muted)}
.paired-table .run-toggle[aria-expanded="true"]::after{content:"−";border-color:var(--brand);color:var(--brand)}
.paired-table .run-toggle:hover{text-decoration-color:var(--ink)}
.paired-table .run-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.paired-table tbody tr.is-selected>th{box-shadow:inset 3px 0 0 var(--brand)}
.paired-table tbody tr.is-selected>*:not(.is-sorted){background:var(--tint)}
.run-card,.paired-table .run-toggle{scroll-margin-top:calc(var(--header-offset,var(--header-h)) + 58px);scroll-margin-bottom:16px}
.run-card{margin:18px 0 0;padding:22px 24px;border:1px solid var(--strong-line);border-top:3px solid var(--brand);border-radius:var(--radius);background:var(--surface)}
.run-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.run-card-kicker{margin:0 0 6px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.run-card-title{margin:0;font-size:20px;line-height:1.35}
.run-card-title:focus{outline:none}
.run-card-title:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.run-card-config{font-weight:400;color:var(--soft)}
.run-card-meta{margin:6px 0 0;font-size:12px;color:var(--muted)}
.run-card-rank{font-family:var(--mono)}
.run-card-close{flex-shrink:0;min-height:36px;padding:6px 12px;border:1px solid var(--strong-line);border-radius:4px;background:var(--paper);color:var(--ink);font:13px var(--sans);cursor:pointer}
.run-card-close:hover{border-color:var(--ink)}
.run-card-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr);gap:24px 32px;margin-top:18px;align-items:start}
.run-card-facts{margin:0;font-size:13px;line-height:1.55}
.run-card-facts div{display:grid;grid-template-columns:minmax(118px,.85fr) minmax(0,1.15fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}
.run-card-facts dt{color:var(--soft)}
.run-card-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.run-card-facts code,.run-card-metrics code{font-size:12px}
.run-missing{color:var(--muted);font-style:italic}
.run-card-metrics{width:100%;min-width:600px;border-collapse:collapse;font-size:13px}
.run-card-metrics caption{padding:0 0 8px;text-align:left;font-size:12px;color:var(--muted)}
.run-card-metrics th,.run-card-metrics td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right}
.run-card-metrics thead th{font-size:12px;font-weight:500;color:var(--soft)}
.run-card-metrics tr>:first-child{text-align:left}
.run-card-metrics tbody th{font-weight:500}
.run-card-metrics td{font-family:var(--mono);font-variant-numeric:tabular-nums}
.run-card-metrics tr>:nth-last-child(-n+2){text-align:left;font-family:var(--sans)}
.run-card-metrics tr.is-sorted>*{background:var(--brand-tint)}
.run-card-notes{margin:16px 0 0;padding-left:18px;font-size:13px;line-height:1.7;color:var(--soft)}
.run-card-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:14px 0 0}
.run-card-links .text-link{font-size:13px}
@media(max-width:680px){
 .paired-controls{align-items:stretch;gap:16px}
 .paired-controls label{width:100%;justify-content:space-between}
 .paired-controls select{max-width:75%;min-width:0}
 .paired-methods{grid-template-columns:1fr;gap:12px}
 .paired-table th,.paired-table td{padding:14px 10px}
 .paired-scroll-note{display:block}
 .run-card{padding:18px 16px}
 .run-card-head{flex-direction:column}
}
@media(max-width:860px){
 .run-card-body{grid-template-columns:minmax(0,1fr)}
 .run-card,.paired-table .run-toggle{scroll-margin-top:calc(var(--header-offset,var(--header-h)) + 16px)}
}
/* Two boards on one page. Everything below is additive: the Selected_1000 board keeps the rules above,
 * and the Dev100 widget (.paired-board.dev-board) reuses the shared widget rules and adds its own .dev-* rules. */
.board-nav{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}
.board-nav a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:9px 16px;border:1px solid var(--strong-line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font-size:14px;font-weight:500;line-height:1.4}
.board-nav a::after{content:"↓";content:"↓"/"";font-family:var(--mono);font-size:12px;color:var(--muted)}
.board-nav a:hover{border-color:var(--ink);background:var(--tint)}
.board-section{scroll-margin-top:var(--header-offset,var(--header-h))}
.board-section>span[id],#leaderboard-dev100-method,#leaderboard-dev100-report{scroll-margin-top:calc(var(--header-offset,var(--header-h)) + 16px)}
.board-heading .page-meta{margin-top:14px}
.dev-chart-note{margin:0 0 16px;font-size:13px;line-height:1.7;color:var(--soft)}
/* All harnesses: one mountain card per harness, same metric and 0-100% scale; the name, not the colour, identifies it. */
.mountain-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 28px}
.paired-board .mountain-cards .mountain{margin:0}
.mountain-card{--series:var(--brand);--mtn-route:var(--series);border-top:3px solid var(--series)}
.mountain-card[data-series="1"]{--series:#7a6a8e}
.mountain-card[data-series="2"]{--series:#4a7896}
.mountain-card[data-series="3"]{--series:#5a7f64}
.mountain-card[data-series="4"]{--series:#9a7038}
html[data-theme="dark"] .mountain-card[data-series="1"]{--series:#b8a8cc}
html[data-theme="dark"] .mountain-card[data-series="2"]{--series:#8db8d6}
html[data-theme="dark"] .mountain-card[data-series="3"]{--series:#93c09f}
html[data-theme="dark"] .mountain-card[data-series="4"]{--series:#d8ab6c}
.mountain-card-caption{padding:14px 16px 10px;border-bottom:1px solid var(--line)}
.mountain-card-title{margin:0;font-size:16px;font-weight:600;line-height:1.35}
.mountain-card-legend{display:flex;align-items:center;gap:8px;margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--soft)}
.mountain-card-key{flex:none;width:10px;height:10px;border-radius:50%;background:var(--series)}
@media(max-width:900px){.mountain-cards{grid-template-columns:minmax(0,1fr)}}
@media(forced-colors:active){.mountain-card{border-top-color:CanvasText}.mountain-card-key{forced-color-adjust:none;background:CanvasText}}
/* Dev table: same rhythm as .paired-table, plus outcome counts and the source mix, so it is wider and scrolls. */
.dev-table{width:100%;min-width:1240px;border-collapse:collapse;font-size:14px}
.dev-table caption{text-align:left;font-size:12px;color:var(--muted);padding:0 0 12px}
.dev-table th,.dev-table td{padding:14px 10px;border-bottom:1px solid var(--line)}
.dev-table thead th{font-size:12px;line-height:1.5;text-align:right;vertical-align:bottom;color:var(--soft);font-weight:500}
.dev-table tr>*:nth-child(1){width:44px;text-align:center}
.dev-table tr>*:nth-child(2){text-align:left;min-width:170px}
.dev-table tr>*:nth-child(3){text-align:left;min-width:140px}
.dev-table tbody th{font-weight:500;white-space:nowrap}
.dev-table td:nth-child(n+4){text-align:right;font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums}
.dev-table .dev-count{min-width:72px}
.dev-table td.dev-count{color:var(--soft)}
/* † marks a ranked score whose unknowns include scored tasks with no value for that metric; the foot note explains it. */
.dev-missing-flag{margin-left:3px;font-family:var(--sans);font-weight:600;color:var(--caution)}
.dev-missing-note{margin:10px 0 0;font-size:12px;line-height:1.7;color:var(--muted)}
.dev-table tr>:last-child,.dev-table td.dev-source{text-align:left;min-width:200px;font-family:var(--sans);font-size:12px;line-height:1.6;color:var(--soft)}
.dev-table .is-sorted,.dev-table th[aria-sort="descending"]{background:var(--brand-tint);color:var(--ink);font-weight:600}
.dev-table .run-toggle{display:inline-flex;align-items:center;gap:8px;margin:0;padding:2px 0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:var(--strong-line);text-underline-offset:4px}
.dev-table .run-toggle::after{content:"+";min-width:18px;padding:1px 0;border:1px solid var(--strong-line);border-radius:3px;font-family:var(--mono);font-size:11px;line-height:1.4;text-align:center;color:var(--muted)}
.dev-table .run-toggle[aria-expanded="true"]::after{content:"−";border-color:var(--brand);color:var(--brand)}
.dev-table .run-toggle:hover{text-decoration-color:var(--ink)}
.dev-table .run-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.dev-table tbody tr.is-selected>th{box-shadow:inset 3px 0 0 var(--brand)}
.dev-table tbody tr.is-selected>*:not(.is-sorted){background:var(--tint)}
.dev-table .run-toggle,.dev-matrix .dev-cell{scroll-margin-top:calc(var(--header-offset,var(--header-h)) + 16px);scroll-margin-bottom:16px}
/* Overview grid for the combined view: the score is always printed; data-level 0-4 only adds a brand tint. */
.dev-overview{margin:0 0 28px;overflow-x:auto}
.dev-matrix{width:100%;min-width:620px;table-layout:fixed;border-collapse:separate;border-spacing:4px;font-size:13px}
.dev-matrix caption{text-align:left;font-size:12px;color:var(--muted);padding:0 4px 8px}
.dev-matrix thead th{padding:4px 10px;font-size:12px;line-height:1.5;font-weight:500;text-align:left;vertical-align:bottom;color:var(--soft)}
.dev-matrix thead th:first-child{width:170px}
.dev-matrix tbody th{padding:6px 10px 6px 0;font-size:13px;font-weight:500;text-align:left;background:var(--paper)}
.dev-matrix td{position:relative;padding:0;border:1px solid var(--line);border-radius:3px;background:var(--paper)}
.dev-matrix td[data-level]::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--brand);opacity:0;pointer-events:none}
.dev-matrix td[data-level="1"]::before{opacity:.06}
.dev-matrix td[data-level="2"]::before{opacity:.12}
.dev-matrix td[data-level="3"]::before{opacity:.18}
.dev-matrix td[data-level="4"]::before{opacity:.24}
.dev-matrix td.is-selected{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}
.dev-matrix .dev-cell{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:54px;margin:0;padding:8px 10px;border:0;border-radius:inherit;background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.dev-matrix .dev-cell:hover .dev-cell-score{text-decoration:underline;text-underline-offset:3px}
.dev-matrix .dev-cell:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}
.dev-cell-score{font-family:var(--mono);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.dev-cell-counts{font-size:11px;line-height:1.45;color:var(--soft)}
.dev-matrix-empty{padding:8px 10px!important;color:var(--muted);text-align:center}
/* Dev evidence card: every outcome column is a count, so all numbers stay right-aligned. */
.run-card-metrics.dev-card-metrics{min-width:480px}
.dev-card-metrics tr>:nth-last-child(-n+2){text-align:right}
.dev-card-metrics td:nth-last-child(-n+2){font-family:var(--mono)}
.run-card-dist{margin:0;padding:0;list-style:none}
.run-card-dist li+li{margin-top:2px}
.run-card-breakdown{color:var(--soft);font-size:12px}
/* Report summary generated with the board, and the method notes below it. */
.dev-report{margin:28px 0 0;padding:20px 22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.dev-report h3{margin:0 0 6px;font-size:17px;line-height:1.4}
.dev-report-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:14px 0 0;font-size:13px;line-height:1.55}
.dev-report-facts div{display:grid;grid-template-columns:minmax(118px,.8fr) minmax(0,1.2fr);gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}
.dev-report-facts dt{color:var(--soft)}
.dev-report-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.dev-report-facts code{font-size:12px}
.dev-report h4{margin:22px 0 0;font-size:14px;font-weight:600;line-height:1.5}
.dev-report-evidence{margin:8px 0 0;font-size:13px;line-height:1.6}
.dev-report-evidence div{display:grid;grid-template-columns:minmax(140px,.28fr) minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}
.dev-report-evidence dt{color:var(--soft)}
.dev-report-evidence dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.dev-report-caveats{margin:8px 0 0;padding-left:18px;font-size:13px;line-height:1.7;color:var(--soft)}
.dev-report-caveats li+li{margin-top:4px}
.dev-report-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:14px 0 0}
.dev-report-links .text-link{font-size:13px}
.dev-method .paired-methods{margin-bottom:8px}
@media(max-width:860px){
 .dev-report-facts{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:680px){
 .board-nav a{width:100%;justify-content:space-between}
 .dev-table th,.dev-table td{padding:12px 8px}
 .dev-matrix tbody th{position:sticky;left:0;z-index:1}
 .dev-report{padding:18px 16px}
 .dev-report-evidence div{grid-template-columns:minmax(0,1fr);gap:2px}
}
/* Motion (site.css section 11): an opened run card settles in, and the jump links and
 * run buttons give under the pointer. The tables and scores themselves stay still. */
.run-card:not([hidden]){transition:opacity 250ms var(--ease-out),transform 250ms var(--ease-out)}
@starting-style{.run-card:not([hidden]){opacity:0;transform:translateY(6px)}}
.board-nav a{transition:background-color 180ms ease,border-color 180ms ease,transform 160ms var(--ease-out)}
.run-toggle,.dev-matrix .dev-cell,.run-card-close{transition:border-color 150ms ease,text-decoration-color 150ms ease,transform 160ms var(--ease-out)}
.board-nav a:active,.run-toggle:active,.dev-matrix .dev-cell:active,.run-card-close:active{transform:scale(.97)}
