.chapters-h{font-weight:700}.chapters-link{font-size:var(--fs-meta);padding-block:var(--space-1);text-decoration:none}.chapters-wide{display:none}.chapters-fold{margin-top:calc(var(--space-group) - var(--space-item));margin-bottom:var(--space-item);border-bottom:1px solid var(--rule-feint)}.chapters :is(.chapters-link,.chapters-summary):is(:hover,:focus-visible){text-decoration:underline}.chapters-summary{cursor:pointer;align-items:center;gap:.5em;min-height:44px;font-weight:700;text-decoration:none;list-style:none;display:flex}.chapters-summary::-webkit-details-marker{display:none}.chapters-summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:.45em;height:.45em;transform:rotate(-45deg)}.chapters-fold[open]>.chapters-summary:before{transform:rotate(45deg)}.chapters-fold .chapters-list{padding-bottom:var(--space-head)}@supports selector(:target-current){.chapters-wide .chapters-list{scroll-target-group:auto}.chapters-wide .chapters-link:target-current{font-weight:700}.chapters-wide li:has(>.chapters-link:target-current){position:relative}.chapters-wide li:has(>.chapters-link:target-current):after{content:"";background:var(--teacher);pointer-events:none;width:3px;position:absolute;top:10px;bottom:10px;left:-1px}}.page-chapters{container:page-chapters/inline-size}.page-chapters-fold>.sheet-content{padding-top:var(--space-item)}.page-chapters-fold .chapters-fold{margin:0}.page-chapters-side{display:none}@container page-chapters (min-width:94rem){.page-chapters-grid{column-gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) 16rem;display:grid}.page-chapters-fold{display:none}.page-chapters-side{padding-right:var(--gutter-page);align-self:start;display:block}.page-chapters-side .chapters-wide{display:block}@media (min-height:700px){.page-chapters-side{top:var(--space-item);position:sticky}}}.post{--measure:34rem}@media (min-width:1024px){.post{--measure:38rem;--fs-read:var(--fs-lead);--lh-read:1.5}.post-title{max-width:56rem}@supports (grid-template-columns:subgrid){html:not([data-era="2015"]) .site-frame:has(main .post){--article-outer-gutter:max(var(--gutter-page), calc((100% - var(--layout-max)) / 2 + var(--gutter-page)));grid-template-columns:var(--article-outer-gutter) max-content 24px minmax(0, 1fr) var(--article-outer-gutter);grid-template-rows:auto 1fr;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post)>.site-header{grid-column:1/-1;grid-template-columns:subgrid;min-width:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post)>.frame-body{grid-column:1/-1;grid-template-columns:subgrid;min-width:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post) #main{grid-column:1/-1;grid-template-columns:subgrid;min-width:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post) .post{grid-column:1/-1;grid-template-columns:subgrid;min-width:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post) .site-footer{grid-column:1/-1;grid-template-columns:subgrid;min-width:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post)>.frame-body{grid-template-rows:min-content min-content;align-content:start}html:not([data-era="2015"]) .site-frame:has(main .post)>.frame-body:before{grid-column:3;left:0}:is(html:not([data-era="2015"]) .site-frame:has(main .post) .site-header-row,html:not([data-era="2015"]) .site-frame:has(main .post) .sheet-row){grid-column:2/5;grid-template-columns:subgrid;column-gap:0;max-width:none;margin-inline:0;padding-inline:0;display:grid}html:not([data-era="2015"]) .site-frame:has(main .post) .site-wordmark{grid-area:1/1;justify-self:start}:is(html:not([data-era="2015"]) .site-frame:has(main .post) .site-nav,html:not([data-era="2015"]) .site-frame:has(main .post) .site-tools){grid-area:1/3;justify-self:end;margin-left:0}html:not([data-era="2015"]) .site-frame:has(main .post) #main{align-content:start;width:auto;max-width:none;margin-inline:0;padding-inline:0}html:not([data-era="2015"]) .site-frame:has(main .post) .sheet-margin{contain:inline-size;min-width:0;padding-right:var(--space-head);grid-column:1}html:not([data-era="2015"]) .site-frame:has(main .post) .sheet-margin>*{max-width:100%}html:not([data-era="2015"]) .site-frame:has(main .post) .sheet-content{grid-column:3}html:not([data-era="2015"]) .site-frame:has(main .post) #main>.crumbs{contain:inline-size;min-width:0;max-width:none;padding-inline:0 var(--space-head);grid-column:2;margin-inline:0}html:not([data-era="2015"]) .site-frame:has(main .post) #main>.crumbs .crumbs-back{justify-content:flex-end;width:100%}}}.post-open{padding-top:var(--space-head)}.post-margin{flex-direction:column;align-items:flex-end;padding-top:.35em;display:flex}.post-margin .tap{justify-content:flex-end;min-width:44px}.post-topics{align-items:center;column-gap:var(--space-group);row-gap:var(--space-group);flex-wrap:wrap;flex-basis:100%;min-width:0;display:flex}.post-topics .tap{border:1px solid var(--control-edge);overflow-wrap:anywhere;border-radius:4px;justify-content:flex-start;min-width:44px;max-width:100%;min-height:44px;padding-inline:10px;text-decoration:none}.post-marks{gap:var(--space-group);margin-bottom:var(--space-group);flex-wrap:wrap;display:flex}.post-marks .wip-note{display:none}.post-title{margin:0}.post-dek{margin-top:var(--space-head);max-width:var(--measure);font-style:italic}.post-by{justify-content:space-between;align-items:center;gap:var(--space-group) var(--space-item);max-width:var(--measure);margin-top:var(--space-6);padding-bottom:var(--space-item);border-bottom:1px solid var(--rule-feint);flex-wrap:wrap;display:flex}.post-by-meta{align-items:center;column-gap:var(--space-item);flex-wrap:wrap;display:flex}@media (max-width:1023px){.post-margin{align-items:center;column-gap:var(--space-head);margin-bottom:var(--space-group);flex-flow:wrap;padding-top:0}}.post-body{margin-top:var(--space-item)}@media (max-width:639px){.post-by{padding-bottom:var(--space-head)}.post-topics .tap{padding-inline:5px}.post-body{margin-top:var(--space-head)}}.post-body>.sheet-content{container:post-body/inline-size}.post-columns.has-chapters{grid-template-columns:minmax(0,1fr);display:grid}.has-chapters .post-side{order:-1}@container post-body (min-width:51.75rem){.post-columns.has-chapters{grid-template-columns:minmax(0, var(--measure)) minmax(180px, 216px);column-gap:40px}.has-chapters .post-side{order:0;grid-area:1/2;align-self:start}.has-chapters .post-prose{grid-area:1/1}.has-chapters .chapters-fold{display:none}.has-chapters .chapters-wide{padding-top:.4em;display:block;position:relative}.has-chapters .chapters-list{margin-top:var(--space-group);border-left:1px solid var(--rule-feint)}.has-chapters .chapters-list li{padding-left:var(--space-head)}@media (min-height:700px){.has-chapters .post-side{top:var(--space-item);position:sticky}}}.prose{color:var(--text);hanging-punctuation:first}.prose>*+*{margin-top:1em}.prose>p+p{margin-top:calc(var(--lh-read) * 1em)}.prose h2,.prose h3,.prose h4{font-family:var(--font-read);font-weight:500;line-height:var(--lh-title);text-wrap:balance;scroll-margin-top:var(--space-item)}.prose h2{font-size:var(--fs-section);margin-top:2em}.prose h3{font-size:var(--fs-item);margin-top:1.8em}.prose h4{font-size:var(--fs-read);margin-top:1.6em}.prose>:first-child{margin-top:0}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:var(--space-head)}.prose :is(h2,h3,h4)>a.anchor{display:none}.prose a:not(.anchor):not([data-footnote-backref]):not([data-footnote-ref]){color:var(--visitor);text-underline-offset:.2em;overflow-wrap:anywhere;text-decoration-line:underline;text-decoration-thickness:1px}.prose a:not(.anchor):hover{color:var(--visitor-hover);text-decoration-thickness:2px}.prose strong{font-weight:600}.prose ul,.prose ol{padding-left:1.4em}.prose ul{list-style:none}.prose ul>li{position:relative}.prose ul>li:before{content:"–";color:var(--text-meta);position:absolute;left:-1.2em}.prose ol{counter-reset:step;padding-left:0;list-style:none}.prose ol>li{counter-increment:step;padding-left:2.6rem;position:relative}.prose ol>li:before{content:counter(step);border:1.5px solid var(--teacher);width:1.7rem;height:1.7rem;color:var(--teacher);font-family:var(--font-read);font-style:italic;font-size:var(--fs-meta);font-variant-numeric:lining-nums tabular-nums;border-radius:50%;place-items:center;line-height:1;display:grid;position:absolute;top:.1em;left:0}.prose li+li{margin-top:var(--space-group)}.post-prose a[data-standalone-list-link]{align-items:center;min-block-size:44px;min-inline-size:44px;max-inline-size:100%;display:inline-flex}.prose blockquote{border-left:2px solid var(--rule-feint);padding-left:1.1em;font-style:italic}.prose hr{border:0;border-top:1px solid var(--rule-feint);width:4rem;margin:2.5em 0}.prose :not(pre)>code{font-family:var(--font-code);font-size:var(--fs-code);background:var(--surface-raised);overflow-wrap:break-word;border-radius:2px;padding:.12em .32em}.prose img{max-width:100%;height:auto}.prose .scroll-region{background:linear-gradient(to right, var(--surface) 30%, transparent) left / 2rem 100% no-repeat local, linear-gradient(to left, var(--surface) 30%, transparent) right / 2rem 100% no-repeat local, linear-gradient(to right, var(--rule-feint), transparent) left / .75rem 100% no-repeat scroll, linear-gradient(to left, var(--rule-feint), transparent) right / .75rem 100% no-repeat scroll;width:100%;min-width:0;overflow-x:auto}.prose table{width:max-content;min-width:100%;font-family:var(--font-ui);font-size:var(--fs-meta);line-height:var(--lh-ui);border-collapse:collapse}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--rule-feint);vertical-align:top;padding:.55em 1em .55em 0}.prose th{color:var(--text);font-weight:700}@media (min-width:1024px){.prose table{width:100%}}@media (max-width:639px){.prose .scroll-region{background:0 0;overflow:visible}.prose table,.prose tbody,.prose tr,.prose td{width:auto;display:block}.prose thead{display:none}.prose tr{padding-block:var(--space-group-loose);border-top:1px solid var(--rule-feint)}.prose td{border:0;padding:0}.prose td+td{margin-top:var(--space-group)}.prose td:first-child{color:var(--text);font-weight:700}.prose td[data-label]:before{content:attr(data-label);color:var(--text-meta);font-weight:400;display:block}}.prose pre{font-family:var(--font-code);font-size:var(--fs-code);line-height:var(--lh-code);border:1px solid var(--rule-feint);padding:var(--space-head) 0;tab-size:2;border-radius:4px;overflow-x:auto;background:var(--surface-raised)!important}.prose pre>code{min-width:100%;display:grid}.prose pre [data-line]{padding:0 var(--space-head)}.prose [data-rehype-pretty-code-title]{font-family:var(--font-ui);font-size:var(--fs-meta);color:var(--text-meta);padding-bottom:var(--space-group)}.prose code[data-theme] span{color:var(--shiki-light)}[data-theme=dark] .prose code[data-theme] span,html[data-mode=night] .prose code[data-theme] span{color:var(--shiki-dark)}.prose sup{font-size:var(--fs-meta);line-height:0}.prose sup a[data-footnote-ref]{min-width:44px;min-height:44px;font-family:var(--font-ui);color:var(--visitor);text-underline-offset:.2em;justify-content:center;align-items:center;margin-block:-14px;text-decoration-line:underline;text-decoration-thickness:1px;display:inline-flex}.prose section[data-footnotes]{padding-top:var(--space-head);border-top:1px solid var(--rule-feint);font-size:var(--fs-ui);margin-top:3em}.prose section[data-footnotes] h2{font-size:var(--fs-item);margin-top:0}.prose section[data-footnotes] a{vertical-align:middle;align-items:center;min-height:44px;display:inline-flex}.prose a[data-footnote-backref]{min-width:44px;color:var(--visitor);justify-content:center;text-decoration-line:underline;text-decoration-thickness:1px}.prose .aside{font-family:var(--font-ui);font-size:var(--fs-ui);line-height:var(--lh-ui);border-top:1px solid var(--rule-feint);border-bottom:1px solid var(--rule-feint);padding:var(--space-head) 0}.prose .pull{font-size:var(--fs-lead);line-height:var(--lh-snug);margin-block:1.6em;font-style:italic}.prose>.wip-block+*,.prose>*+.wip-block{margin-top:calc(var(--lh-read) * 1em)}.post :is(.byline-name,.post-label){text-decoration:none}.post :is(.byline-name,.post-label,.post-tag):is(:hover,:focus-visible){text-decoration:underline}@media (min-width:1024px){.post-dek{max-width:41rem;font-size:var(--fs-item);line-height:var(--lh-snug)}}
