:root{--ink:#16181D;--brass:#C4913F;--bone:#F4F1EA;--bg:#F4F1EA;--fg:#16181D;--muted:#4a4d55;--link:#7a5212;--rule:#d9d3c4;--card:#fbf9f4;--code:#ebe6d8}
@media (prefers-color-scheme:dark){:root{--bg:#16181D;--fg:#F4F1EA;--muted:#b6b3aa;--link:#d9a95a;--rule:#33363e;--card:#1d2027;--code:#22262e}}
*{box-sizing:border-box}
html{font:1.0625rem/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%}
body{margin:0}
a{color:var(--link);text-underline-offset:.15em}
a:focus-visible,summary:focus-visible{outline:3px solid var(--brass);outline-offset:2px}
.skip{position:absolute;left:-999px;background:var(--ink);color:var(--bone);padding:.5rem 1rem}
.skip:focus{left:0;top:0;z-index:9}
.wrap{max-width:46rem;margin:0 auto;padding:0 1.25rem}
header.site{border-bottom:1px solid var(--rule)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding-top:1rem;padding-bottom:1rem}
.brand{display:flex;align-items:center;gap:.6rem;color:var(--fg);text-decoration:none;font-weight:700;font-size:1.2rem;letter-spacing:.01em}
.brand svg{width:2rem;height:2rem;color:var(--brass)}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.25rem;flex-wrap:wrap}
nav a{color:var(--fg)}
nav a[aria-current=page]{font-weight:700;text-decoration-color:var(--brass);text-decoration-thickness:2px}
main{padding:2.5rem 0 3rem}
h1{font-size:2rem;line-height:1.2;margin:0 0 1rem}
h2{font-size:1.4rem;line-height:1.3;margin:2.5rem 0 .75rem}
h3{font-size:1.1rem;margin:1.5rem 0 .5rem}
.lede{font-size:1.2rem;color:var(--muted)}
code,pre{font:.92em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--code);border-radius:4px}
code{padding:.1em .3em}
pre{padding:.9rem 1rem;overflow-x:auto;line-height:1.5}
pre code{padding:0;background:none}
table{border-collapse:collapse;width:100%;margin:1rem 0}
th,td{border-bottom:1px solid var(--rule);padding:.5rem .6rem;text-align:left;vertical-align:top}
.card{background:var(--card);border:1px solid var(--rule);border-left:4px solid var(--brass);border-radius:6px;padding:1rem 1.25rem;margin:1.5rem 0}
.card :first-child{margin-top:0}.card :last-child{margin-bottom:0}
.btn{display:inline-block;background:var(--ink);color:var(--bone);padding:.6rem 1.1rem;border-radius:6px;text-decoration:none;font-weight:600;border:2px solid var(--brass)}
@media (prefers-color-scheme:dark){.btn{background:var(--brass);color:var(--ink)}}
details{border-bottom:1px solid var(--rule);padding:.6rem 0}
summary{cursor:pointer;font-weight:600}
footer{border-top:1px solid var(--rule);color:var(--muted);font-size:.95rem}
footer .wrap{padding-top:1.25rem;padding-bottom:2rem}
footer ul{list-style:none;padding:0;margin:0 0 .75rem;display:flex;gap:1.25rem;flex-wrap:wrap}
@media (max-width:30rem){h1{font-size:1.65rem}}
