*{box-sizing:border-box}
[hidden]{display:none !important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fbf8f3;color:#1c1023;font-family:'IBM Plex Sans','Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.65}
a{color:#4a1a7a;text-decoration-color:#c3a05a;text-underline-offset:4px}
a:hover{color:#6e3fb0}
:focus-visible{outline:2px solid #4a1a7a;outline-offset:2px}
.dark :focus-visible{outline-color:#c3a05a}
.skip{position:absolute;left:-10000px;top:8px;z-index:100;background:#c3a05a;color:#1c1023;padding:12px 18px;font-weight:600;text-decoration:none}
.skip:focus{left:16px}
.wrap{max-width:880px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}
.site-header{background:#26103a;border-bottom:1px solid #4a3460}
.site-header .bar{max-width:1360px;height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-header img{height:26px;width:auto;display:block}
.site-header .back{color:#bcafc9;text-decoration:none;font-size:14px}
.site-header .back:hover{color:#f7f1e8}
.doc{padding:clamp(56px,8vw,112px) 0}
.eyebrow{margin:0 0 12px;font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#6e3fb0}
h1{margin:0 0 12px;font-family:Kanit,'Helvetica Neue',Arial,sans-serif;font-weight:300;font-size:clamp(36px,5vw,56px);line-height:1.05;letter-spacing:-.01em}
h2{margin:48px 0 12px;padding-top:20px;border-top:1px solid #c3a05a;font-family:Kanit,'Helvetica Neue',Arial,sans-serif;font-weight:400;font-size:24px;line-height:1.25}
.meta{margin:0;font-family:'IBM Plex Mono',monospace;font-size:13px;color:#5f5568}
p,ul{margin:0 0 14px}
ul{padding-left:20px}
li{margin-bottom:8px}
dl{display:grid;grid-template-columns:minmax(120px,200px) minmax(0,1fr);margin:0;border-top:1px solid #e3dace}
dt,dd{margin:0;padding:12px 0;border-bottom:1px solid #e3dace}
dt{font-family:'IBM Plex Mono',monospace;font-size:13px;color:#5f5568;padding-right:16px}
.site-footer{background:#26103a;color:#bcafc9;border-top:1px solid #c3a05a;font-size:14px}
.site-footer .wrap{max-width:1360px;padding-top:40px;padding-bottom:40px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 40px}
.site-footer a{color:#f7f1e8}
@media (max-width:560px){dl{grid-template-columns:1fr}dt{border-bottom:0;padding-bottom:0}}
.note{margin:16px 0 0;padding:12px 16px;background:#f4efe7;border-left:0;border-top:1px solid #c3a05a;font-size:14px;color:#5f5568}
.langs{font-family:'IBM Plex Mono',monospace;font-size:13px}
.langs a{color:#bcafc9;text-decoration:none;padding:6px 2px}
.langs a:hover{color:#f7f1e8}
.langs a[aria-current="true"]{color:#f7f1e8;text-decoration:underline;text-decoration-color:#c3a05a;text-underline-offset:5px}
