:root{--maxw:1080px}*{box-sizing:border-box}body{margin:0;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}.wrap{width:100%;max-width:var(--maxw);padding:0 24px;margin:0 auto}.hero{background:linear-gradient(180deg,var(--navy-2),var(--navy));color:#eaf1fb;padding:32px 0}.hero h1{font-size:30px;font-weight:800;line-height:1.2;letter-spacing:-.5px}.searchbox{display:flex;align-items:center;gap:10px;margin-top:20px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--muted)}.searchbox input{width:100%;min-width:0;color:var(--ink);border:0;outline:0;background:none}.searchbox input:focus-visible{box-shadow:none}.searchbox:focus-within{box-shadow:0 0 0 3px #3aa98150}.search-clear{font-size:21px;line-height:1;border:0;color:var(--muted);padding:3px}.catalog{padding-top:24px;padding-bottom:40px}.catalog .ffields{margin-bottom:12px}.countbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;margin:12px 4px 18px;font-size:14px}.count{color:var(--ink);font-weight:700}.reset{color:var(--green-deep);text-decoration:underline;font-size:13px;border:0;padding:0}.study-card{margin-bottom:16px}.study-card h2{font-size:20px;font-weight:800;line-height:1.3;letter-spacing:-.35px;color:var(--ink)}.study-card h2 a:hover{color:var(--green-deep)}.byline{color:var(--muted);margin:6px 0 9px}.brief{color:var(--text);line-height:1.5;margin-bottom:14px}.tags{display:flex;flex-wrap:wrap;gap:8px}.card-foot{margin-top:12px}.tag{display:inline-flex;align-items:center}.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:26px 0}.pager button{min-width:39px;padding:10px}.pager .active{background:var(--navy);color:#fff;border-color:var(--navy)}.pager button:disabled{opacity:.45}.detail{padding-top:24px;padding-bottom:40px}.back{color:var(--green-deep);font-weight:600;display:inline-block;margin-bottom:16px}.detail h1{font-size:28px;line-height:1.15;letter-spacing:-.7px;font-weight:800;color:var(--ink);margin-bottom:8px}.detail>.byline{margin:0 0 16px}.detail>.tags{margin-bottom:20px}.panel{padding:24px;margin-bottom:20px}.panel h2,summary h2{font-size:20px;line-height:1.4;font-weight:700;color:var(--ink);margin:0 0 12px}.source-copy{display:flex;align-items:flex-start;gap:16px;flex:1;min-width:220px}.source-block .source-actions{display:flex;gap:8px;flex-wrap:wrap}.source-block p{max-width:640px}.passport .pval p{margin:0}.disclosure{padding:0}.disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;padding:24px;list-style:none}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary h2{margin:0}.disclosure .chevron{transition:transform .2s}.disclosure[open] .chevron{transform:rotate(180deg)}.disclosure>.md{padding:0 24px 24px}.md ol{list-style:decimal;margin:0 0 12px 24px}.md li{margin:3px 0}.md h2{margin:20px 0 12px}.md h2:first-child{margin-top:0}.md hr{border:0;border-top:1px solid var(--line-2);margin:24px 0}.md table{border-collapse:collapse;width:100%;display:block;overflow:auto;margin:16px 0;font-size:14px}.md th,.md td{border:1px solid var(--line-2);padding:10px;text-align:left}.md th{background:var(--bg)}.md :is(p,li,td){overflow-wrap:anywhere}.md [id]{scroll-margin-top:24px}.md>:last-child{margin-bottom:0}.chart-frame{display:block;width:100%;height:420px;border:0;background:white}.chart-panel h2{margin-bottom:18px}.empty{text-align:center;padding:48px 24px;margin:20px 0}.empty h2{font-size:22px;font-weight:700;color:var(--ink);margin:12px 0}.empty svg{margin:auto;color:var(--muted)}.loading{padding-top:60px}.error{border-left:3px solid var(--coral)}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:16px}.api-page{padding-top:28px;padding-bottom:40px}.api-page h1{font-size:32px;font-weight:800;color:var(--ink);margin:8px 0 14px}.api-page h2{font-size:21px;font-weight:700;color:var(--ink);margin-bottom:12px}.api-page p{margin:12px 0}.api-page pre{background:#0c1c3e;color:#eaf1fb;padding:20px;border-radius:12px;overflow:auto;font-size:13px;line-height:1.6}.api-page code{font-family:ui-monospace,monospace}.api-page table{width:100%;border-collapse:collapse;font-size:14px}.api-page th,.api-page td{padding:10px;border-bottom:1px solid var(--line);text-align:left}.api-actions{display:flex;align-items:center;gap:12px;margin:16px 0}.api-response{max-height:500px}.api-page .ffield{max-width:400px}.chart-problem{padding:24px;color:var(--text)}.chart-problem a{color:var(--blue);text-decoration:underline}button:disabled{cursor:default}
@media(max-width:680px){.wrap{padding-left:24px;padding-right:24px}.hero h1{font-size:28px}.study-card h2{font-size:20px}.detail h1{font-size:28px}.source-copy{min-width:0}.source-actions,.source-actions .pubbtn{width:100%}.chart-panel{padding:18px 12px}.panel h2{font-size:20px}.api-page pre{font-size:12px}.api-page td{overflow-wrap:anywhere}.api-page table{table-layout:fixed}}
@media(max-width:400px){.wrap{padding-left:16px;padding-right:16px}.panel{padding:20px}.disclosure{padding:0}}
.count{margin-left:auto}
.api-nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin:20px 0 24px}
.api-nav a,.api-link{color:var(--green-deep);text-decoration:underline}
.api-steps{list-style:decimal;padding-left:24px}
.api-steps li{margin-bottom:12px}
.api-page .api-subheading{margin-top:28px}
.api-page :is(td,th,code){overflow-wrap:anywhere}
.api-actions{flex-wrap:wrap}
.api-page details summary{cursor:pointer;color:var(--green-deep);font-weight:600}
.api-page [id]{scroll-margin-top:20px}
.detail h1{overflow-wrap:anywhere}
.study-card h2,.panel :is(h1,h2,h3,h4,h5,h6),.disclosure summary h2{overflow-wrap:anywhere}
/* Share one content-sized marker column, including in mixed result lists. */
.result-list{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:20px;list-style:none;margin:16px 0 0;padding:0}
.result-row{display:grid;grid-column:1/-1;grid-template-columns:subgrid;align-items:start;padding:16px 0}
.result-row:first-child{padding-top:0}
.result-row:last-child{padding-bottom:0}
.result-row+.result-row{border-top:1px solid var(--line)}
.result-marker{display:flex;align-items:center;justify-content:center;min-width:0;min-height:36px}
.result-check{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.result-number{font-size:27px;font-weight:800;letter-spacing:-.7px;line-height:1.2;color:var(--ink);white-space:nowrap}
.result-number.long{font-size:20px}
.result-row>.result-text{min-width:0;padding-top:6px;font-size:15px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:680px){
 .result-list{column-gap:16px}
 .result-marker{min-height:32px}
 .result-check{width:32px;height:32px}
 .result-number{font-size:24px}
 .result-number.long{font-size:20px}
 .result-row>.result-text{padding-top:4px}
}
/* On phones, result text gets the full width below a numeric value. */
@media(max-width:480px){
 .result-list{display:block}
 .result-row{grid-template-columns:32px minmax(0,1fr);gap:12px}
 .result-row[data-marker="number"]{grid-template-columns:minmax(0,1fr);gap:8px}
 .result-row[data-marker="number"]>.result-marker{justify-content:flex-start}
 .result-row[data-marker="number"]>.result-text{padding-top:0}
 .result-number,.result-number.long{font-size:24px;letter-spacing:-.4px}
}
/* Keep each narrow passport label and value aligned beside its icon. */
.passport .prow{grid-template-columns:56px 150px minmax(0,1fr)}
.passport :is(.pkey,.pval){min-width:0;overflow-wrap:anywhere}
@media(max-width:680px){
 .passport .prow{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"icon label" "icon value";column-gap:12px;row-gap:3px;align-items:start}
 .passport .prow>.pico{grid-area:icon;justify-self:start;align-self:start}
 .passport .pkey{grid-area:label;padding-top:0;min-height:32px;display:flex;align-items:center}
 .passport .pval{grid-area:value;padding-top:0}
}

.card-foot,.publication-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pubmed-link{color:var(--blue);white-space:nowrap}
@media(max-width:680px){.source-actions .publication-links{width:100%}.source-actions .publication-links .pubbtn{width:auto}}
@media(max-width:400px){.pubmed-link span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pubmed-link{min-width:44px;min-height:44px;justify-content:center;padding:10px}}
