*,*::before,*::after{box-sizing:border-box}
:root{
  --bg:#ffffff; --surface:#f6f6f4; --text:#1a1a1a; --muted:#5a5a5a;
  --line:#e2e2de; --accent:#111111; --maxw:44rem;
}
@media (prefers-color-scheme: dark){
  :root{--bg:#131313;--surface:#1c1c1c;--text:#ededea;--muted:#a3a3a0;--line:#2e2e2e;--accent:#ededea}
}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:17px; line-height:1.65; padding:0 1.25rem;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:3rem 0 5rem}
header.top{border-bottom:1px solid var(--line);padding-bottom:1.25rem;margin-bottom:2.25rem}
.appname{font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem}
h1{font-size:1.7rem;line-height:1.25;margin:0 0 .35rem;letter-spacing:-.01em}
.updated{font-size:.85rem;color:var(--muted);margin:0}
h2{font-size:1.12rem;margin:2.4rem 0 .6rem;letter-spacing:-.005em}
h3{font-size:.98rem;margin:1.5rem 0 .4rem}
p,li{color:var(--text)}
p{margin:0 0 1rem}
ul{margin:0 0 1rem;padding-left:1.15rem}
li{margin-bottom:.4rem}
a{color:var(--accent);text-underline-offset:3px}
.lede{color:var(--muted)}
.callout{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1rem 1.15rem;margin:1.5rem 0}
.callout p:last-child{margin-bottom:0}
.langjump{font-size:.85rem;color:var(--muted);margin:0 0 0 0}
hr.split{border:0;border-top:1px solid var(--line);margin:4rem 0 3rem}
footer.bottom{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:1.25rem;font-size:.85rem;color:var(--muted)}
footer.bottom a{color:var(--muted);margin-right:1.1rem;display:inline-block}
dl dt{font-weight:600;margin-top:1.25rem}
dl dd{margin:.25rem 0 0;color:var(--text)}
