:root{color-scheme:light;--ink:#15293d;--muted:#435a6c;--paper:#f4f8fa;--line:#c9d8e3;--accent:#034bb4;--panel:#102b46;--bright:#8ad9ff;font-family:'Instrument Sans',Arial,sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);line-height:1.65}a{color:var(--accent);text-underline-offset:.2em}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{text-decoration-thickness:2px}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(2.6rem,6.8vw,6.2rem);max-width:12ch;margin-bottom:1.5rem}h2{font-size:clamp(1.65rem,3.4vw,2.6rem);margin-bottom:1rem}h3{font-size:1.25rem}.wrap{width:min(1160px,calc(100% - 3rem));margin-inline:auto}.skip{position:absolute;left:1rem;top:-10rem;background:white;padding:.7rem;z-index:3}.skip:focus{top:1rem}.mast{border-bottom:1px solid var(--line);background:white}.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.3rem}.mast strong{font-size:1.05rem}.mast a{font-size:.9rem}.hero{background:var(--panel);color:white;padding:clamp(3rem,7.5vw,7rem) 0 2.2rem}.hero .wrap{position:relative}.hero p{max-width:57ch;color:#d7e7f4;font-size:clamp(1.1rem,1.8vw,1.36rem);margin-bottom:2rem}.hero a{color:var(--bright)}.signal{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;list-style:none;padding:0;margin:2.9rem 0 0}.signal li{padding:1rem 0;border-top:2px solid var(--bright);min-width:0}.signal strong{display:block;font-size:1.15rem}.signal span{display:block;color:#c0d7e8;font-size:.93rem}.grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding:3.6rem 0 5rem}.index{align-self:start;position:sticky;top:1.6rem}.index p{font-weight:700}.index ul{list-style:none;padding:0;border-left:1px solid var(--line);margin:0}.index li{padding:.38rem .85rem}.index a{color:var(--muted);font-size:.94rem}.article{min-width:0}.article section{margin-bottom:2.65rem;scroll-margin-top:1.3rem}.article p,.article ul,.article ol{max-width:72ch}.article li{margin-bottom:.48rem}.table-wrap{overflow-x:auto;margin:1.5rem 0}.table-wrap:focus-visible{outline:3px solid var(--accent)}table{width:100%;border-collapse:collapse;background:white;font-size:.93rem}th,td{padding:.8rem;text-align:left;vertical-align:top;border:1px solid var(--line)}th{background:#e6f1f9}.article code{background:#e5edf3;padding:.12rem .26rem;font-size:.9em;overflow-wrap:anywhere}.article blockquote{border-left:3px solid var(--accent);padding-left:1rem;margin-left:0}.bio{margin-top:3.3rem;border:1px solid var(--line);display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:1.3rem;background:white;align-items:center}.bio img{border-radius:50%;width:5rem;height:5rem;object-fit:cover}.bio p,.bio h2{margin-bottom:.4rem}.bio h2{font-size:1.4rem}.social{display:flex;flex-wrap:wrap;gap:.4rem 1rem;list-style:none;padding:0;margin:.55rem 0 0;font-size:.92rem}.footer{border-top:1px solid var(--line);padding:1.6rem 0;color:var(--muted);font-size:.95rem}.footer p{margin:0}.simple{padding:4rem 0}.simple h1{font-size:clamp(2.1rem,8vw,4rem);max-width:16ch}.theme-server{--panel:#123632;--bright:#a2ecd4;--accent:#076653}.theme-reference{--panel:#30234b;--bright:#dfcaff;--accent:#653d97}
@media(max-width:720px){.wrap{width:calc(100% - 2rem)}.grid{grid-template-columns:1fr;padding-top:2rem;gap:1.45rem}.index{position:static}.index ul{columns:2}.index li{break-inside:avoid}.signal{gap:.7rem}.signal strong{font-size:.94rem}.signal span{font-size:.84rem}th,td{padding:.6rem;min-width:8rem}.bio{grid-template-columns:3.8rem 1fr}.bio img{width:3.8rem;height:3.8rem}}
@media(max-width:400px){.index ul{columns:1}.signal{grid-template-columns:1fr}.signal li{padding:.45rem 0}.bio{grid-template-columns:1fr}}
