.a,.a-more{--text-w:680px;--side-w:300px;--side-gap:72px;--a-w:calc(var(--text-w) + var(--side-gap) + var(--side-w))}.a-head,.a-wrap,.a-cover{width:min(100% - 2 * clamp(20px, 4vw, 56px), var(--a-w));margin-inline:auto}.a-head{padding:36px 0 0}.a-crumbs{font-family:var(--ds-font-mono);color:var(--ds-fg-3);justify-content:space-between;align-items:center;gap:16px;font-size:13px;display:flex}.a-crumbs a{color:var(--ds-fg-2);transition:color var(--ds-dur-1);align-items:center;gap:8px;display:inline-flex}.a-crumbs a:hover{color:var(--ds-fg)}.a-draft{border:1px solid var(--ds-line-2);border-radius:var(--ds-r-pill);padding:1px 6px;font-size:11px}.a-intro{grid-template-columns:minmax(0, var(--text-w)) var(--side-w);gap:var(--side-gap);align-items:end;margin-top:clamp(56px,9vh,96px);display:grid}.a-title{max-width:17ch;font-family:var(--ds-font-display);font-weight:var(--ds-display-weight);letter-spacing:var(--ds-display-track);text-wrap:balance;margin:0;font-size:clamp(40px,5.4vw,76px);line-height:1.02}.a-t2{color:var(--ds-accent)}.a-lede{max-width:40ch;color:var(--ds-fg-2);text-wrap:pretty;margin:28px 0 0;font-size:clamp(20px,1.7vw,24px);line-height:1.5}.a-toc{border-left:1px solid var(--ds-line);padding-left:24px}.a-toc-h{font-family:var(--ds-font-mono);color:var(--ds-fg-3);margin:0 0 10px;font-size:11px}.a-toc ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.a-toc a{color:var(--ds-fg-2);transition:color var(--ds-dur-1);grid-template-columns:26px minmax(0,1fr);gap:6px;padding:3px 0;font-size:14px;line-height:1.4;display:grid}.a-toc a span{font-family:var(--ds-font-mono);color:var(--ds-fg-3);padding-top:1px;font-size:11.5px}.a-toc a:hover{color:var(--ds-fg)}.a-by{grid-template-columns:repeat(var(--n,3), minmax(0, 1fr));border-top:1px solid var(--ds-fg);border-bottom:1px solid var(--ds-line);margin:clamp(40px,6vh,64px) 0 0;display:grid}.a-by>div{align-content:start;gap:6px;padding:14px 16px 16px 0;display:grid}.a-by>div+div{border-left:1px solid var(--ds-line);padding-left:16px}.a-by dt{font-family:var(--ds-font-mono);color:var(--ds-fg-3);font-size:11px}.a-by dd{color:var(--ds-fg);margin:0;font-size:15px}.a-cover{margin-top:clamp(40px,6vh,64px);margin-bottom:0}.a-cover img{border-radius:var(--ds-r-lg);border:1px solid var(--ds-line);width:100%;height:auto;display:block}.a-wrap{gap:var(--side-gap);align-items:stretch;padding:clamp(48px,7vh,80px) 0 clamp(72px,10vh,120px);display:flex}.a-text{width:var(--text-w);counter-reset:sec;min-width:0;max-width:100%;color:var(--ds-fg);flex:none;font-size:19px;line-height:1.7}.a-side{width:var(--side-w);border-left:1px solid var(--ds-line);flex:none}.a-text>:first-child{margin-top:0}.a-text p{text-wrap:pretty;margin:0 0 1.05em}.a-text strong{font-weight:600}.a-text a{text-underline-offset:4px;text-decoration:underline 1px;text-decoration-color:var(--ds-line-2);transition:text-decoration-color var(--ds-dur-1)}.a-text a:hover{text-decoration-color:var(--ds-fg)}.a-text code{border-radius:var(--ds-r-xs);background:var(--ds-bg-3);color:var(--ds-fg);font-family:var(--ds-font-mono);white-space:nowrap;padding:.08em .32em;font-size:.84em}.a-text h2{font-family:var(--ds-font-display);font-weight:var(--ds-display-weight);letter-spacing:var(--ds-head-track);text-wrap:balance;counter-increment:sec;margin:2.4em 0 .7em;scroll-margin-top:24px;font-size:clamp(26px,2.3vw,32px);line-height:1.18}.a-text h2:before{content:counter(sec, decimal-leading-zero);font-family:var(--ds-font-mono);color:var(--ds-accent);margin-bottom:12px;font-size:12px;font-weight:500;display:block}.a-text h3{font-family:var(--ds-font-display);font-weight:var(--ds-display-weight);letter-spacing:calc(var(--ds-head-track) * .6);margin:1.9em 0 .45em;scroll-margin-top:24px;font-size:21px;line-height:1.3}.a-text ul,.a-text ol{gap:.55em;margin:1.1em 0 1.3em;padding:0;list-style:none;display:grid}.a-text ol{counter-reset:item}.a-text li{padding-left:36px;position:relative}.a-text ul>li:after{content:"";background:var(--ds-fg-3);width:12px;height:1px;position:absolute;top:.78em;left:8px}.a-text ol>li{counter-increment:item}.a-text ol>li:after{content:counter(item, decimal-leading-zero);font-family:var(--ds-font-mono);color:var(--ds-fg-3);font-size:12px;line-height:1;position:absolute;top:.42em;left:0}.a-text li>ul,.a-text li>ol{margin:.6em 0 .2em}.a-text blockquote{border-block:1px solid var(--ds-line);font-family:var(--ds-font-display);letter-spacing:var(--ds-head-track);color:var(--ds-fg);text-wrap:balance;margin:2em 0;padding:26px 0;font-size:clamp(24px,2.2vw,30px);font-weight:500;line-height:1.32}.a-text blockquote p{margin:0}.a-text blockquote p+p{margin-top:.7em}.a-text pre{border-radius:var(--ds-r-md);font-family:var(--ds-font-mono);margin:1.8em 0;padding:20px 22px;font-size:13.5px;line-height:1.6}.a-text pre code{color:inherit;font:inherit;white-space:pre;background:0 0;border-radius:0;padding:0}.a-text table{border-collapse:collapse;width:100%;margin:1.8em 0;font-size:15px;line-height:1.5;display:block;overflow-x:auto}.a-text th,.a-text td{text-align:left;vertical-align:top;border-bottom:1px solid var(--ds-line);padding:10px 14px 10px 0}.a-text th{font-family:var(--ds-font-mono);color:var(--ds-fg-3);border-bottom-color:var(--ds-fg);white-space:nowrap;font-size:11.5px;font-weight:500}.a-text img{border-radius:var(--ds-r-md);border:1px solid var(--ds-line);max-width:100%;height:auto;margin:2.2em 0;display:block}.a-text hr{border:0;border-top:1px solid var(--ds-line);margin:2.6em 0}html[data-theme=dark] .a-text img,html[data-theme=dark] .a-cover img{filter:invert()hue-rotate(180deg)}.a a:focus-visible{box-shadow:var(--ds-focus);border-radius:var(--ds-r-sm);outline:none}.a-more{width:min(100% - 2 * clamp(20px, 4vw, 56px), var(--a-w));margin:0 auto;padding:0 0 clamp(72px,10vh,120px)}.a-more h2{border-bottom:1px solid var(--ds-fg);font-family:var(--ds-font-mono);color:var(--ds-fg-3);margin:0 0 18px;padding-bottom:14px;font-size:11.5px;font-weight:500}.a-more ol{margin:0;padding:0;list-style:none}.a-more li{border-bottom:1px solid var(--ds-line)}.a-more a{grid-template-columns:180px minmax(0,1fr) auto;align-items:baseline;gap:8px 32px;padding:22px 0;display:grid}.a-more time{font-family:var(--ds-font-mono);color:var(--ds-fg-3);font-variant-numeric:tabular-nums;font-size:12.5px}.a-more span{font-family:var(--ds-font-display);letter-spacing:var(--ds-head-track);color:var(--ds-fg);text-wrap:balance;font-size:clamp(20px,1.9vw,26px);font-weight:500;line-height:1.2}.a-more i{color:var(--ds-fg-3);transition:transform var(--ds-dur-2) var(--ds-ease-out), color var(--ds-dur-1);font-style:normal}.a-more a:hover span{text-underline-offset:5px;text-decoration:underline 1px}.a-more a:hover i{color:var(--ds-fg);transform:translate(3px)}@media (width<=1080px){.a-head,.a-wrap,.a-cover,.a-more{width:min(100% - 2 * clamp(20px, 4vw, 56px), var(--text-w))}.a-intro{display:block}.a-toc,.a-side{display:none}.a-wrap{display:block}.a-text{width:auto}}@media (width<=640px){.a-head{padding-top:24px}.a-intro{margin-top:40px}.a-title{font-size:38px;line-height:1.06}.a-lede{font-size:19px}.a-by{grid-template-columns:1fr 1fr}.a-by>div{padding:12px 12px 12px 0}.a-by>div+div{padding-left:12px}.a-by>div:nth-child(odd){border-left:0;padding-left:0}.a-by>div:nth-child(n+3){border-top:1px solid var(--ds-line)}.a-text{font-size:18px;line-height:1.68}.a-text li{padding-left:28px}.a-text ul>li:after{left:2px}.a-more a{grid-template-columns:minmax(0,1fr) auto}.a-more time{grid-column:1/-1}}
