.article-body{min-width:0;font-family:var(--font-serif);color:var(--color-ink-2);overflow-wrap:break-word;font-variant-numeric:proportional-nums;flex-direction:column;font-size:18px;line-height:2;display:flex}.article-body>:first-child{margin-top:0}.article-body>:last-child{margin-bottom:0}.article-body p{text-wrap:pretty;margin:0 0 28px}.article-body .lead{color:var(--color-ink);margin:0 0 8px;font-size:22px;line-height:1.85}.article-body .lead+:not(.section-head){margin-top:20px}.article-body strong,.article-body b{color:var(--color-ink);font-weight:600}.article-body a{color:var(--color-ink);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.article-body a:hover{color:var(--color-ink);text-decoration-thickness:2px}.article-body del,.article-body s{color:var(--color-ink-3);text-decoration-thickness:1px}.article-body sub,.article-body sup{line-height:0}.article-body .end-mark{background-color:var(--color-ink);vertical-align:1px;width:8px;height:8px;margin-left:10px;display:inline-block}.article-body .end-row{margin:-12px 0 0;line-height:0}.article-body .end-row .end-mark{vertical-align:top;margin-left:0}.article-body .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.article-body h2,.article-body h3,.article-body h4,.article-body h5,.article-body h6{font-family:var(--font-serif);color:var(--color-ink);text-wrap:balance;scroll-margin-top:40px}@media (min-width:64rem) and (not (min-width:80rem)){.has-toc-pill .article-body h2{scroll-margin-top:96px}.has-toc-pill .article-body h3,.has-toc-pill .article-body h4,.has-toc-pill .article-body h5,.has-toc-pill .article-body h6{scroll-margin-top:64px}}.article-body .section-head{flex-direction:column;gap:8px;margin:72px 0 24px;display:flex}.article-body .lead+.section-head{margin-top:64px}.article-body .pullquote+.section-head,.article-body hr+.section-head{margin-top:32px}.article-body .figure+.section-head{margin-top:36px}.article-body .sec-num{font-family:var(--font-serif);color:var(--color-ink-3);font-size:18px;font-style:italic;line-height:1.4}.article-body h2{letter-spacing:-.01em;margin:0;font-size:32px;font-weight:500;line-height:1.35}.article-body :not(.section-head)>h2{margin:48px 0 20px}.article-body h3{margin:36px 0 16px;font-size:22px;font-weight:500;line-height:1.4}.article-body .section-head+h3{margin-top:8px}.article-body h4{margin:28px 0 12px;font-size:18px;font-weight:600;line-height:1.5}.article-body h5,.article-body h6{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;margin:24px 0 8px;font-size:13px;font-weight:600;line-height:1.5}.article-body :not(pre)>code{font-family:var(--font-mono);border-radius:var(--radius-sm);background-color:var(--color-code-bg);color:var(--color-ink);overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:2px 6px;font-size:.84em}.article-body kbd{min-width:1.6em;font-family:var(--font-mono);text-align:center;color:var(--color-ink);background-color:var(--color-paper-raised);border:1px solid var(--color-rule);border-radius:var(--radius-xs);vertical-align:1px;border-bottom-width:2px;padding:0 6px;font-size:.78em;line-height:1.7;display:inline-block}.article-body ul,.article-body ol{margin:0 0 28px;padding:0}.article-body li{margin:0}.article-body li+li{margin-top:4px}.article-body li>p{margin:0}.article-body li>p+p{margin-top:12px}.article-body ul{list-style:none}.article-body ul>li{padding-left:28px;position:relative}.article-body ul>li:before{content:"—";content:"—" / "";color:var(--color-ink-3);position:absolute;top:0;left:0}.article-body ol{padding-left:28px;list-style:decimal}.article-body ol>li{padding-left:4px}.article-body ol>li::marker{color:var(--color-ink-3);font-variant-numeric:tabular-nums}.article-body li>ul,.article-body li>ol{margin:4px 0 0}.article-body ul.contains-task-list>li.task-list-item{padding-left:28px}.article-body ul.contains-task-list>li.task-list-item:before{content:none}.article-body .task-list-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-ink);margin:0;position:absolute;top:.62em;left:0}.article-body blockquote{border-left:2px solid var(--color-rule);color:var(--color-ink-2);margin:4px 0 32px;padding:0 0 0 22px}.article-body blockquote>:last-child{margin-bottom:0}.article-body .pullquote{border-top:1px solid var(--color-ink);flex-direction:column;gap:16px;margin:20px 0 48px;padding-top:28px;display:flex;position:relative}.article-body .pq-glyph{font-family:var(--font-serif);color:var(--color-ink-3);-webkit-user-select:none;user-select:none;font-size:72px;line-height:1;position:absolute;top:14px;left:-44px}.article-body .pullquote blockquote{letter-spacing:-.005em;color:var(--color-ink);text-wrap:pretty;border:0;margin:0;padding:0;font-size:31px;font-style:italic;line-height:1.45}.article-body .pullquote blockquote p{margin:0}.article-body .pullquote blockquote p+p{margin-top:16px}.article-body .pq-source{font-family:var(--font-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-3);font-size:12px;font-weight:500;line-height:1.5}.article-body .aside{background-color:var(--color-paper-raised);border:1px solid var(--color-rule);border-radius:var(--radius-md);margin:4px 0 36px;padding:18px 22px;font-size:16px;line-height:1.85}.article-body .aside p{margin:0 0 12px}.article-body .aside>:last-child{margin-bottom:0}.article-body .aside .aside-title{font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink);margin-bottom:6px;font-size:11px;font-weight:600;line-height:1.6}.article-body img{max-width:100%;height:auto}.article-body .figure{flex-direction:column;margin:16px 0 36px;display:flex}.article-body .figure>a{text-decoration:none;display:block}.article-body .figure img{border-radius:var(--radius-lg);background-color:var(--color-code-bg);object-fit:cover;width:100%;display:block}.article-body .fig-caption{color:var(--color-ink-3);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 24px;margin-top:12px;font-size:14px;font-style:italic;line-height:1.6;display:flex}.article-body .fig-credit{font-family:var(--font-serif);margin-left:auto;font-size:12px;font-style:normal}.article-body .code-block{border-radius:var(--radius-sm);background-color:var(--color-night);color:var(--color-night-text);margin:8px 0 36px;overflow:hidden}.article-body .code-head{border-bottom:1px solid var(--color-night-rule);min-height:42px;font-family:var(--font-mono);color:var(--color-night-muted);justify-content:space-between;align-items:center;gap:16px;padding:0 12px 0 20px;font-size:11px;line-height:1.5;display:flex}.article-body .code-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.article-body .code-tools{flex-shrink:0;align-items:center;gap:12px;display:flex}.article-body .code-copy{min-height:28px;font:inherit;color:var(--color-night-muted);border:1px solid var(--color-night-rule);border-radius:var(--radius-xs);cursor:pointer;background:0 0;padding:0 10px;transition:color .12s,border-color .12s;position:relative}.article-body .code-copy:before{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.article-body .code-copy:hover,.article-body .code-copy[data-copied]{color:var(--color-night-text);border-color:color-mix(in srgb, var(--color-night-text) 40%, transparent)}.article-body .code-copy:focus-visible{outline-color:var(--color-night-text)}.article-body .code-block pre{font-family:var(--font-mono);white-space:pre;tab-size:4;color:var(--color-night-text);scrollbar-color:#f2eee647 transparent;scrollbar-width:thin;background:0 0;margin:0;padding:20px 0 22px;font-size:13.5px;line-height:1.8;overflow-x:auto}.article-body .code-block pre:focus-visible{outline:2px solid var(--color-night-text);outline-offset:-2px}.article-body .code-block code{width:max-content;min-width:100%;font:inherit;background:0 0;padding:0}.article-body .code-block [data-line]{border-left:2px solid #0000;padding:0 22px}.article-body .code-block code:not([data-line-numbers])>[data-line]:empty:before{content:" "}.article-body .code-block [data-highlighted-line]{border-left-color:var(--color-everywhere-dark);background-color:#f2eee612}.article-body .code-block mark[data-highlighted-chars]{color:inherit;background-color:#f2eee624;border-radius:2px;padding:1px 2px}.article-body code[data-line-numbers]{counter-reset:line}.article-body code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);text-align:right;color:#b9b3a88c;width:2ch;margin-right:20px;display:inline-block}.article-body code[data-line-numbers-max-digits="2"]>[data-line]:before{width:3ch}.article-body code[data-line-numbers-max-digits="3"]>[data-line]:before{width:4ch}.article-body .table-wrap{margin:8px 0 36px;overflow-x:auto}.article-body .table-wrap:focus-visible{outline-offset:4px}.article-body table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:16px;line-height:1.7}.article-body th,.article-body td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-rule);padding:10px 16px 10px 0}.article-body th:last-child,.article-body td:last-child{padding-right:0}.article-body th{color:var(--color-ink);border-bottom-color:var(--color-ink);white-space:nowrap;font-weight:600}.article-body th[align=right],.article-body td[align=right]{text-align:right}.article-body th[align=center],.article-body td[align=center]{text-align:center}.article-body hr{background-color:var(--color-rule);border:0;width:100%;height:1px;margin:44px 0}.article-body sup>a[data-footnote-ref]{font-family:var(--font-sans);color:var(--color-ink-3);padding:0 2px;font-size:11px;font-weight:600;text-decoration:none}.article-body sup>a[data-footnote-ref]:hover{color:var(--color-ink)}.article-body .footnotes{border-top:1px solid var(--color-ink);color:var(--color-ink-2);margin-top:56px;padding-top:18px;font-size:15px;line-height:1.8}.article-body .footnotes ol{margin:0;padding-left:22px}.article-body .footnotes li+li{margin-top:8px}.article-body .footnotes li:target{background-color:var(--color-anno)}.article-body .footnotes p{margin:0}.article-body .data-footnote-backref{font-family:var(--font-sans);color:var(--color-ink-3);text-decoration:none}@media not (min-width:64rem){.article-body .pullquote{gap:12px;padding-top:20px}.article-body .pq-glyph{height:.5em;font-size:60px;position:static}}@media not (min-width:48rem){.article-body{font-size:17px;line-height:1.9}.article-body p{margin-bottom:24px}.article-body .lead{font-size:19px;line-height:1.8}.article-body .section-head{margin-top:56px}.article-body .lead+.section-head{margin-top:48px}.article-body h2{font-size:26px}.article-body h3{margin-top:32px;font-size:20px}.article-body .pullquote{margin-bottom:40px}.article-body .pullquote blockquote{font-size:24px;line-height:1.5}.article-body .code-block{margin-inline:calc(var(--article-bleed,var(--page-pad,20px)) * -1);border-radius:0}.article-body .code-head{padding-left:max(20px, var(--article-bleed,var(--page-pad,20px)))}.article-body .code-block [data-line]{padding:0 max(20px, var(--article-bleed,var(--page-pad,20px)))}.article-body table{font-size:15px}}
