:root{--marble:#EEF1F5;--paper:#F8F9FB;--ink:#1C2440;--ink-2:#4A5370;--hair:#D5DAE4;--lapis:#2E4FA8;--laurel:#2F7A57;--pome:#B13F2D;--ochre:#9C7417;
--sans:"Schibsted Grotesk",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace}
@media (prefers-color-scheme:dark){:root{--marble:#121729;--paper:#181E33;--ink:#E3E7F1;--ink-2:#9AA3BD;--hair:#2A3150;--lapis:#8CA6F0;--laurel:#6CC79A;--pome:#F08A76;--ochre:#E2B65A}}
*{box-sizing:border-box}body{margin:0;background:var(--marble);color:var(--ink);font:400 17px/1.65 var(--sans)}
a{color:var(--lapis);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--lapis);outline-offset:2px;border-radius:3px}
.wrap{max-width:760px;margin:0 auto;padding:0 16px}
.mast{display:flex;justify-content:space-between;align-items:baseline;padding:22px 0;font-size:14px}
.mast .home{font-weight:700;color:var(--ink);text-decoration:none}.mast span a{margin-left:18px;color:var(--ink-2);text-decoration:none}.mast span a:hover{color:var(--lapis)}
.phead{padding:28px 0 8px;border-bottom:2px solid var(--ink);margin-bottom:28px}
h1{font:800 clamp(30px,5vw,42px)/1.1 var(--sans);letter-spacing:-.025em;margin:0 0 12px}
.lede,.meta{color:var(--ink-2);font-size:15px;margin:0 0 14px}
.prose h2,.faq h2,.more h2{font:700 23px/1.25 var(--sans);letter-spacing:-.015em;margin:40px 0 10px}
.prose h3,.faq h3{font:700 18px/1.3 var(--sans);margin:26px 0 6px}
.prose p,.prose li{max-width:68ch}.prose ul,.prose ol{padding-left:22px}.prose li{margin:6px 0}
.prose code{font:400 14.5px var(--mono);background:var(--paper);border:1px solid var(--hair);border-radius:5px;padding:1px 5px;word-break:break-all}
.prose pre{background:var(--paper);border:1px solid var(--hair);border-radius:8px;padding:14px;overflow-x:auto;font:400 14px/1.5 var(--mono)}
.prose pre code{border:0;padding:0;background:none}
.prose table{width:100%;border-collapse:collapse;font-size:15px;margin:14px 0;display:block;overflow-x:auto}
.prose th{text-align:left;font-weight:600;color:var(--ink-2);font-size:13.5px;border-bottom:2px solid var(--hair);padding:8px 10px 8px 0;white-space:nowrap}
.prose td{border-bottom:1px solid var(--hair);padding:9px 10px 9px 0;vertical-align:top}
.note{border-left:3px solid var(--ochre);background:var(--paper);padding:10px 14px;margin:18px 0;font-size:15.5px}
.faq{border-top:1px solid var(--hair);margin-top:44px}.faq p{color:var(--ink-2);margin:0 0 6px}
.more{border-top:1px solid var(--hair);margin-top:40px}.more ul{padding-left:20px}
.postlist{list-style:none;margin:0;padding:0}.postlist li{border-bottom:1px solid var(--hair);padding:18px 0}
.postlist a{text-decoration:none;display:block}.postlist .pt{display:block;font-weight:700;font-size:20px;color:var(--ink);letter-spacing:-.01em}
.postlist a:hover .pt{color:var(--lapis)}.postlist .pd{display:block;color:var(--ink-2);font-size:15px;margin-top:3px}
.postlist time{font-size:13px;color:var(--ink-2)}
footer{border-top:1px solid var(--hair);margin-top:48px;padding:24px 0 48px;color:var(--ink-2);font-size:14px}
.prose td code{white-space:nowrap;word-break:normal}
