
:root{--ink:#1a2330;--muted:#5b6b7f;--accent:#2a5db0;--line:#e3e8f0;--bg:#fff}
*{box-sizing:border-box}body{margin:0;background:#f6f8fb;color:var(--ink);
font:17px/1.7 -apple-system,Segoe UI,Roboto,Helvetica,Arial,serif}
.wrap{max-width:46rem;margin:0 auto;padding:1.5rem 1.2rem 4rem}
.site{font-size:.85rem;color:var(--muted);margin:0 0 1.4rem}.site a{color:var(--accent);text-decoration:none}
article{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:2rem 2.1rem}
h1{font-size:clamp(1.6rem,3.2vw,2.05rem);line-height:1.22;margin:0 0 .4rem}
.byline{color:var(--muted);font-size:.92rem;margin:0}
.notice{color:var(--accent);font-size:.9rem;margin:.5rem 0 1.4rem}
h2{font-size:1.25rem;margin:1.7rem 0 .5rem}h3{font-size:1.05rem;margin:1.2rem 0 .4rem}
p{margin:0 0 .95rem}ul{margin:0 0 1rem 1.2rem}li{margin:.1rem 0 .35rem}
sup.cite{font-size:.72rem}sup.cite a{color:var(--accent);text-decoration:none}
a{color:var(--accent)}
.refs{margin-top:2rem;border-top:1px solid var(--line);padding-top:1rem}
.refs ol{font-size:.9rem;line-height:1.5;padding-left:1.8rem}.refs li{margin:0 0 .6rem}
/* citation influence bar (length ∝ ln(citations)) + raw count, on each reference */
.cmetric{display:inline-flex;align-items:center;gap:.35rem;vertical-align:baseline;white-space:nowrap}
.cbar{vertical-align:middle}.cbar rect{fill:var(--accent);opacity:.5}
.cnum{font-size:.78rem;color:var(--muted)}
/* key-proteins at-a-glance table — centered, bordered, professional */
table.keyprot{border-collapse:collapse;margin:1.1rem auto 1.7rem;font-size:.93rem;
background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(20,35,55,.04)}
table.keyprot caption{caption-side:top;text-align:center;font-weight:650;color:var(--muted);
font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;padding:0 0 .55rem}
table.keyprot th,table.keyprot td{padding:.42rem 1.15rem;border-bottom:1px solid var(--line)}
table.keyprot thead th{background:#eef3fa;color:var(--muted);font-size:.74rem;font-weight:700;
text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #d4deec}
table.keyprot tbody tr:nth-child(even){background:#fafbfd}
table.keyprot tbody tr:last-child td{border-bottom:none}
table.keyprot td:first-child,table.keyprot th:first-child{text-align:left}
table.keyprot .num{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
/* mechanistic illustrations — inline SVG, themed here so the markup carries no inline styles */
figure.dgm{margin:1.3rem auto 1.5rem;text-align:center}
figure.dgm svg{width:100%;max-width:34rem;height:auto;border:1px solid var(--line);
border-radius:12px;background:#fcfdff;padding:.5rem;
font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
figure.dgm figcaption{font-size:.85rem;color:var(--muted);line-height:1.5;max-width:32rem;margin:.55rem auto 0}
.dnode{fill:#fff;stroke:#c7d4e8;stroke-width:1.5}
.dion{fill:#eaf1fb;stroke:var(--accent);stroke-width:1.6}
.dmem{fill:#f0ead8;stroke:#d9cda6;stroke-width:1}
.dedge{stroke:#8fa6c8;stroke-width:1.6;fill:none}
.dcoord{stroke:#b9c6dd;stroke-width:1.4;stroke-dasharray:3 2;fill:none}
.dproton{stroke:var(--accent);stroke-width:1.5;fill:none}
.dah{fill:#8fa6c8}
.dpt-closed{fill:#2a5db0;stroke:none}
.dpt-open{fill:#fff;stroke:#2a5db0;stroke-width:1.6}
svg.dgm-native{display:block}
.dstate-a{fill:#fdeaea;stroke:#c0392b;stroke-width:2}
.dstate-b{fill:#eaf1fd;stroke:#2a5db0;stroke-width:2}
.dstate-c{fill:#e9f6ee;stroke:#2e8b57;stroke-width:2}
.dstate-muted{fill:#f2f4f7;stroke:#c2cad6;stroke-width:1.5}
text.dtitle{font-size:13px;font-weight:650;fill:var(--ink)}
text.dsub{font-size:14px;font-weight:600;fill:var(--ink)}
text.dionl{font-size:11px;font-weight:700;fill:var(--accent)}
text.dres{font-size:11px;font-weight:600;fill:#5b6b7f}
text.dsmall{font-size:10.5px;fill:#5b6b7f}
text.dlbl{font-size:12px;fill:var(--ink)}
.foot{margin-top:1.6rem;font-size:.9rem;color:var(--muted)}
.reviewlist{list-style:none;padding:0}.reviewlist li{background:#fff;border:1px solid var(--line);
border-radius:10px;padding:.7rem .85rem;margin:0 0 .6rem}.reviewlist a{font-weight:700;text-decoration:none}
.meta{color:var(--muted);font-size:.85rem;margin-top:.2rem}
.rdesc{margin:.35rem 0 0;font-size:.93rem;line-height:1.5;color:var(--ink);opacity:.85}
.reviewlist li{padding:.85rem 1rem}
/* inline entity cross-references: invisible until hover */
a.xref{color:inherit;text-decoration:none;cursor:pointer;border-bottom:1px solid transparent;
transition:border-color .12s ease,color .12s ease}
a.xref:hover{border-bottom:1px dotted currentColor;color:var(--accent)}
