.pg{z-index:1;color:var(--ink);background:#fff;position:relative}.doc-head{background:var(--paper);border-bottom:1px solid var(--line);padding:100px 0 clamp(36px,5vw,60px)}.doc-head .crumbs{margin-bottom:clamp(28px,4vw,52px)}.doc-kick{letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-size:11px;font-weight:500}.doc-head h1{letter-spacing:-.045em;max-width:16ch;margin-top:14px;font-size:clamp(2.5rem,5vw,4.25rem);font-weight:500;line-height:1.02}.doc-date{border-top:1.5px solid var(--ink);max-width:420px;color:var(--soft);margin-top:18px;padding-top:14px;font-size:14px}.doc-grid{gap:40px;padding:clamp(48px,6vw,80px) 0 clamp(90px,10vw,140px);display:grid}@media (width>=980px){.doc-grid{grid-template-columns:240px 1fr;align-items:start;gap:72px}.doc-toc{position:sticky;top:96px}}.doc-toc p{border-bottom:1px solid var(--line);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);padding-bottom:8px;font-size:11px;font-weight:500}.doc-toc ol{counter-reset:dx;gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.doc-toc li{counter-increment:dx;gap:10px;font-size:14.5px;display:flex}.doc-toc li:before{content:counter(dx, decimal-leading-zero);font-variant-numeric:tabular-nums;color:var(--mute);font-size:11px;line-height:2}.doc-toc a{color:var(--soft);text-decoration:none}.doc-toc a:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.doc-body{max-width:66ch}.doc-body h2{border-top:1px solid var(--line);letter-spacing:-.025em;margin:52px 0 14px;padding-top:18px;font-size:clamp(1.5rem,2.2vw,1.9rem);font-weight:700;line-height:1.2}.doc-body h2:first-child{margin-top:0}.doc-body .hx{color:var(--mute);opacity:0;margin-left:.2em;font-weight:400;text-decoration:none;transition:opacity .2s}.doc-body :is(h2,h3):hover .hx,.doc-body .hx:focus-visible{opacity:1}@media (hover:none){.doc-body .hx{opacity:.45}}@media (prefers-reduced-motion:reduce){.doc-body .hx{transition:none}}.doc-body h3{letter-spacing:-.015em;margin:26px 0 8px;font-size:1.15rem;font-weight:700}.doc-body p,.doc-body li{color:var(--soft)}.doc-body p+p{margin-top:12px}.doc-body ul{gap:8px;margin:12px 0;padding-left:0;display:grid}.doc-body ul li{padding-left:20px;position:relative}.doc-body ul li:before{content:"";background:var(--g200);border-radius:2px;width:7px;height:7px;position:absolute;top:.7em;left:2px}.doc-body b{color:var(--ink);font-weight:500}.doc-body a{color:var(--ink);text-underline-offset:3px;font-weight:500}.doc-lead{font-size:1.2rem;line-height:1.5;color:var(--ink)!important}.post-by{color:var(--soft);font-size:14px}.post-by a{color:var(--ink);text-underline-offset:3px;font-weight:500}.doc-body ol:not(.post-src){gap:8px;margin:12px 0;padding-left:22px;display:grid}.doc-body table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:20px 0;font-size:15px}.doc-body th,.doc-body td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.doc-body th{color:var(--ink);border-bottom:1.5px solid var(--ink);font-weight:500}.doc-body td{color:var(--soft)}.doc-body blockquote{border-left:3px solid var(--lamplight);margin:20px 0;padding:4px 0 4px 18px}.doc-body blockquote p{color:var(--ink);font-weight:500}.doc-body code{background:var(--g50);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.9em}.post-src{color:var(--soft);gap:6px;margin:12px 0 0;padding-left:22px;font-size:14.5px;display:grid}@media (width<=640px){.doc-body table{display:block;overflow-x:auto}}.bl{padding:clamp(40px,5vw,64px) 0 clamp(90px,10vw,140px)}.bl-list{max-width:860px;margin:0;padding:0;list-style:none;display:grid}.bl-list a{border-bottom:1px solid var(--line);color:var(--ink);gap:6px;padding:26px 0;text-decoration:none;display:grid}.bl-list li:first-child a{border-top:1.5px solid var(--ink)}.bl-k{letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-size:11px;font-weight:500}.bl-list h2{letter-spacing:-.025em;font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:500;line-height:1.15}.bl-list a:hover h2{text-underline-offset:4px;text-decoration:underline 1.5px}.bl-list p{color:var(--soft);max-width:62ch}.bl-m{color:var(--mute);font-size:13.5px}.bl-empty{border-top:1.5px solid var(--ink);color:var(--soft);max-width:860px;padding:26px 0}
