:root{color-scheme:light;--page:#f9f9f7;--surface:#fcfcfb;--surface-2:#f0efec;--ink:#0b0b0b;--secondary:#52514e;--border:#e1e0d9;--accent:#1c5cab;--wash:rgba(42,120,214,.07);--radius:12px;font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}

@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--surface-2:#262624;--ink:#f0efec;--secondary:#c3c2b7;--border:#383835;--accent:#86b6ef;--wash:rgba(57,135,229,.13)}
}

:root[data-theme="dark"]{color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--surface-2:#262624;--ink:#f0efec;--secondary:#c3c2b7;--border:#383835;--accent:#86b6ef;--wash:rgba(57,135,229,.13)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--page);color:var(--ink);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select{font:inherit}
button{border:1px solid var(--border);background:var(--surface);color:var(--ink);padding:7px 13px;border-radius:8px;cursor:pointer;line-height:1.4}
button:hover{border-color:var(--accent);background:var(--wash)}
button:disabled{opacity:.55;cursor:not-allowed}
a,button,input,select,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input[type="checkbox"]{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}
p{margin:0 0 12px}
[hidden]{display:none!important}
.wrap{max-width:1220px;margin:0 auto;padding:0 24px}
.site-header{background:var(--surface);border-bottom:1px solid var(--border)}
.topbar{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px;border-bottom:1px solid var(--border);gap:12px}
.site-name{font-weight:650;color:var(--ink);font-size:14px}
.site-name span{font-weight:400;color:var(--secondary);margin-left:8px}
#theme{font-size:12px;border-radius:999px}
.intro{padding-top:48px;padding-bottom:30px}
.eyebrow{font-size:12px;letter-spacing:.06em;color:var(--accent);margin:0 0 10px}
h1{font-size:clamp(32px,4.3vw,48px);letter-spacing:-.025em;line-height:1.3;margin:0 0 18px}
h1 span{font-size:.72em;font-weight:550;letter-spacing:0}
h2{font-size:clamp(23px,3vw,28px);line-height:1.4;margin:0 0 12px;letter-spacing:-.02em}
h3{font-size:17px;line-height:1.5;margin:24px 0 10px}
.lede{font-size:17px;color:var(--secondary);max-width:770px}
.meta,.note{font-size:12.5px;color:var(--secondary)}
.intro-links{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;margin:18px 0 28px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border);padding-top:22px;gap:18px}
.stats strong{display:block;font-size:25px;font-weight:650;line-height:1.4}
.stats span{display:block;color:var(--secondary);font-size:12px;margin-top:5px}
.toc{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--border)}
.toc .wrap{display:flex;gap:4px;overflow-x:auto;white-space:nowrap;padding-top:7px;padding-bottom:7px}
.toc a{color:var(--secondary);font-size:13px;padding:5px 12px;border-radius:6px}
.toc a:hover{background:var(--wash);text-decoration:none;color:var(--accent)}
section{padding-top:46px;scroll-margin-top:10px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}
.section-lede{color:var(--secondary);max-width:940px}
.quiet-link{font-size:13px;white-space:nowrap}
.presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0 16px;font-size:12px}
.presets span{color:var(--secondary);margin-right:6px}
.presets button{border-radius:999px;padding:6px 12px}
.presets button[aria-pressed="true"]{background:var(--wash);border-color:var(--accent);color:var(--accent)}
.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.filters label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--secondary);min-width:0}
.filters input,.filters select{width:100%;min-width:0;background:var(--page);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--ink);font-size:13px;height:39px}
.search-label{grid-column:span 2}
.filter-actions{grid-column:span 2;display:flex;justify-content:flex-end;align-items:flex-end;gap:8px;font-size:12px}
.text-button{background:transparent;border-color:transparent;color:var(--secondary)}
.results-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin:20px 0 7px;gap:12px}
.results-heading p{margin:0}
.results-heading a{white-space:nowrap}
#selected-count{font-variant-numeric:tabular-nums;display:inline-block;margin-left:6px;background:var(--wash);padding:1px 8px;border-radius:999px}
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.65}
th,td{padding:13px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}
thead th{font-weight:550;background:var(--surface-2);color:var(--secondary);white-space:nowrap}
tbody th{font-weight:600}
tr:last-child td,tr:last-child th{border-bottom:none}
.catalog-table table{min-width:960px}
.catalog-table th:first-child{width:48px}
.catalog-table th:nth-child(2){width:225px}
.catalog-table th:nth-child(3){width:190px}
.catalog-table th:nth-child(4){width:190px}
.catalog-table th:nth-child(5){width:94px}
.catalog-table td{padding-top:18px;padding-bottom:18px}
.benchmark-name{font-size:15px;font-weight:650;line-height:1.4;display:inline-block}
.row-subtitle{font-size:11px;color:var(--secondary);margin:5px 0}
.dates{display:grid;grid-template-columns:28px 1fr;gap:2px 7px;font-size:11px;margin:10px 0}
.dates dt{color:var(--secondary)}
.dates dd{margin:0;font-variant-numeric:tabular-nums}
.date-kind{color:var(--secondary);font-size:10px;display:block}
.config{margin-bottom:8px;font-size:12px;line-height:1.6}
.config:last-child{margin-bottom:0}
.config .base{color:var(--secondary);display:block}
.tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}
.tag{font-size:10.5px;padding:1px 6px;border-radius:4px;border:1px solid var(--border);color:var(--secondary)}
.env{display:inline-block;padding:2px 7px;border-radius:5px;background:var(--wash);color:var(--accent);white-space:nowrap;font-size:11px;margin-bottom:4px}
.details-button{font-size:11px;padding:3px 8px;background:transparent;margin-right:8px}
.source-link{font-size:11px}
.detail-row>td{background:var(--page);padding:20px 24px}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 26px;margin:0}
.detail-grid dt{font-weight:600;font-size:12px}
.detail-grid dd{margin:3px 0 0;color:var(--secondary);font-size:13px}
.detail-grid .wide{grid-column:1/-1}
.evidence-line{margin:18px 0 0;font-size:12px}
.boundary{border-left:3px solid var(--accent);background:var(--wash);padding:9px 12px;margin:16px 0 0;font-size:13px}
.empty{padding:36px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.empty h3{margin-top:0}
.empty p{color:var(--secondary)}
.grid-3,.grid-2{display:grid;gap:16px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.card h3{margin:0 0 10px}
.card p{font-size:14px;color:var(--secondary)}
.card p:last-child{margin-bottom:0}
.card b{color:var(--ink);font-weight:600}
.card .note{font-size:12px}
.index{display:block;color:var(--accent);font-size:12px;margin-bottom:12px}
.comparison-table{table-layout:fixed;min-width:680px}
.comparison-table thead th{white-space:normal;font-size:15px}
.comparison-table th:first-child{width:120px}
.comparison-table td{overflow-wrap:anywhere}
.compare-remove{display:block;font-size:11px;padding:2px 7px;margin-top:6px}
.downloads{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;margin-top:22px}
.callout{border-left:3px solid var(--accent);background:var(--wash);padding:14px 18px;margin:16px 0}
footer{margin-top:54px;border-top:1px solid var(--border);font-size:12px;color:var(--secondary)}
footer .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:24px;padding-bottom:24px}
.skip{position:absolute;left:-9999px;top:10px;z-index:30;background:var(--surface);padding:8px 14px}
.skip:focus{left:12px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@media(max-width:850px){.grid-3{grid-template-columns:1fr}
.anatomy{gap:12px}
.anatomy .card{padding:18px}
.anatomy .index{float:right}
.filters{grid-template-columns:repeat(2,minmax(0,1fr))}
.filter-actions{grid-column:span 2}
.stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}
.catalog-table{border:none;background:transparent;overflow:visible}
.catalog-table table,.catalog-table tbody{display:block;min-width:0}
.catalog-table thead{display:none}
.catalog-row{display:grid;grid-template-columns:34px minmax(0,1fr);padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);margin:12px 0}
.catalog-row td{display:block;padding:6px 0;border:none;min-width:0;overflow-wrap:anywhere}
.catalog-row td:first-child{grid-column:1;grid-row:1/6}
.catalog-row td:not(:first-child){grid-column:2}
.catalog-row td[data-label]::before{content:attr(data-label);display:block;color:var(--secondary);font-size:11px;margin-bottom:4px}
.catalog-row td:nth-child(3){display:flex;flex-wrap:wrap;gap:10px}
.catalog-row td:nth-child(3)::before{flex-basis:100%;margin:0}
.catalog-row .config{margin:0}
.catalog-row td:nth-child(5){display:flex;gap:5px;align-items:center}
.catalog-row td:nth-child(5)::before{display:none}
.dates{grid-template-columns:28px 1fr 28px 1fr;max-width:440px}
.detail-row{display:block;margin-top:-5px}
.detail-row>td{display:block;padding:18px;border:1px solid var(--border);border-radius:10px}
.detail-grid{grid-template-columns:1fr}
.detail-grid .wide{grid-column:auto}
.catalog-table:has(.detail-row:not([hidden])) .catalog-row:has(button[aria-expanded="true"]){border-color:var(--accent)}
}

@media(max-width:560px){.wrap{padding-left:18px;padding-right:18px}
.site-name span{display:none}
.intro{padding-top:30px}
.intro-links{gap:12px 18px}
.stats strong{font-size:22px}
.stats span{font-size:11px}
.section-heading{align-items:flex-start}
.quiet-link{font-size:11px;white-space:normal;text-align:right}
.filters{padding:15px;gap:12px}
.grid-2{grid-template-columns:1fr}
.card{padding:18px}
.toc .wrap{padding-left:8px;padding-right:8px}
.toc a{padding:5px 9px}
.comparison-table th:first-child{width:94px}
.comparison-table{min-width:610px}
.downloads{gap:12px}
section{padding-top:36px}
footer .wrap{flex-wrap:wrap}
.dates{grid-template-columns:28px 1fr}
.presets{gap:7px}
.presets span{width:100%}
.filter-actions{justify-content:space-between}
.results-heading{font-size:12px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
}

@media print{.topbar button,.toc,.filters,.presets,.filter-actions,.catalog-row input,.details-button,footer,.skip{display:none!important}
.wrap{max-width:none;padding:0}
body{font-size:11px;background:white;color:black}
.table-wrap{overflow:visible}
.catalog-table table{min-width:0}
.grid-2,.grid-3{display:block}
.card{break-inside:avoid;margin-bottom:10px}
.stats{padding:10px 0}
.intro{padding:10px 0}
section{padding-top:20px}
a{color:inherit}
th,td{padding:7px}
.detail-row[hidden]{display:none!important}
}


.glossary{margin-top:18px}
.glossary summary{cursor:pointer;font-weight:600}
.glossary[open] summary{margin-bottom:18px}
main p a, main td a:not(.benchmark-name){text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
