.visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.post-header .meta-line{margin-block:var(--space-5) 0;font-family:var(--font-ui);font-size:var(--step-0);font-variant-numeric:tabular-nums;color:var(--color-ink-secondary);line-height:1.7}.meta-item{white-space:nowrap}.meta-item:not(:last-child):after{content:" ·" / "";color:var(--color-ink-faint)}.meta-topics{white-space:normal}.meta-date,.meta-dates{color:var(--color-cite)}.meta-key,.meta-importance-figure{color:var(--color-ink-muted)}.meta-line .meta-tag,.post-markdown .post-markdown-file,.cite-line .cite-link{color:var(--color-ink-secondary);text-decoration-line:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:.25em;padding-block:.2em}.meta-line .meta-tag{white-space:nowrap}@media (hover:hover){.meta-line .meta-tag:hover,.post-markdown .post-markdown-file:hover,.cite-line .cite-link:hover{color:var(--color-primary);text-decoration-color:currentColor}}.post-cover+.post-shell .post-title{margin-block-start:0}.post-tools{margin-block:var(--space-2) 0}.post-tools-band{padding-block:var(--space-3);border-block:1px solid var(--color-border-subtle);margin-block-start:var(--space-6);position:relative}.post-tools>.listen{border-block:0;margin-block:0;padding-block:0}.post-markdown{align-items:center;column-gap:var(--space-2);font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-secondary);flex-wrap:wrap;margin-block:0;line-height:1.5;display:flex}.post-tools-band>.post-markdown{margin-block-start:var(--space-1)}@container article (min-width:30rem){.post-tools-band>.post-markdown{min-block-size:var(--touch-target-min);margin-block-start:0;position:absolute;inset-block-start:var(--space-3);inset-inline-end:0}}.post-tools-sep,.cite-sep{color:var(--color-ink-faint)}.post-toc{margin-block:var(--space-4) 0;border-inline-start:1px solid var(--color-border-subtle);font-family:var(--font-ui);--toc-rail-size:13rem;--toc-line-size:1px;--toc-marker-size:3px;--toc-dot-size:4px;--toc-line-gap:var(--space-1);--toc-line-inset:calc(-1 * var(--toc-line-size));--toc-entry-leading:1.3;--toc-entry-line:calc(var(--step-0) * var(--toc-entry-leading));--toc-entry-pad:calc((var(--touch-target-standing) - var(--toc-entry-line)) / 2);--toc-flow-pad:var(--space-1);--toc-replies-mark-size:1rem;--toc-replies-inset:calc(var(--toc-line-inset) + var(--toc-line-size) / 2 - var(--toc-replies-mark-size) / 2);--toc-top:calc(var(--space-20) + var(--space-8));--toc-fit:calc(100dvh - var(--toc-top) - var(--space-8));padding-inline-start:var(--space-4)}.post-toc-map{display:none}.post-toc-fold{border:0;margin:0;padding:0}.post-toc .post-toc-fold-summary{min-block-size:var(--touch-target-min);padding-block:var(--space-3);font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-secondary);font-weight:600;line-height:1.25}@media (hover:hover){.post-toc .post-toc-fold-summary:hover{color:var(--color-ink)}}.post-toc-fold-count{font-variant-numeric:tabular-nums;color:var(--color-ink-muted);margin-inline-start:var(--space-2);font-weight:400}.post-toc>.post-toc-heading,:where(.post-toc-fold:not([open]))~.post-toc-scroll{display:none}:where(.post-toc-fold[open])~.post-toc-scroll{margin-block:var(--space-2) var(--space-4)}.prose[data-sidenotes]{--toc-sidenotes:true;--toc-content-measure:var(--prose-with-notes)}@container article ((min-width:67.125rem) and (not style(--toc-sidenotes:true))) or (min-width:84.125rem){.prose>.post-toc{float:inline-start;margin-inline-start:0;margin-block:calc(-1 * var(--toc-lift,0px)) var(--space-8);inline-size:var(--toc-rail-size);max-block-size:var(--toc-fit);position:sticky;inset-block-start:calc(var(--header-offset,0px) + var(--space-8));overflow-y:auto}.prose>.post-toc>.post-toc-fold{display:none}.prose>.post-toc>:is(.post-toc-heading,.post-toc-scroll){margin-block:0;display:block}.prose>.post-toc>.post-toc-heading{margin-block-end:var(--space-3)}.prose>.post-toc>.post-toc-replies{display:flex}@media (scripting:enabled){.prose>.post-toc:not([data-toc-marks]){visibility:hidden;animation:post-toc-unmeasured 0s calc(3 * var(--duration-dramatic)) forwards}}}@keyframes post-toc-unmeasured{to{visibility:visible}}@container article ((min-width:67.125rem) and (not style(--toc-sidenotes:true))) or (min-width:84.125rem){:root:not([data-reading-bar=off])[data-reading-bar-track=rail] .prose>.post-toc{background-image:linear-gradient(var(--color-ink-ghost), var(--color-ink-ghost)), linear-gradient(var(--color-border-subtle), var(--color-border-subtle));background-position:0 0;background-repeat:no-repeat;background-origin:border-box;background-clip:border-box;background-size:1px calc(var(--reading-bar,0) * var(--reading-bar-track,0px)), 1px 100%;border-inline-start-color:#0000}}.post-toc-heading{margin:0 0 var(--space-3)}.post-toc-list{gap:var(--space-1);font-size:var(--step-0);flex-direction:column;margin:0;padding:0;line-height:1.35;list-style:none;display:flex}.post-toc-list .post-toc-list{margin-block-start:var(--space-1);padding-inline-start:var(--space-4)}.post-toc-entry{display:block}.post-toc-time{font-family:var(--font-ui);font-size:var(--step-00);font-variant-numeric:tabular-nums;color:var(--color-ink-muted);margin-block-start:.1rem;line-height:1.3;display:block}.post-toc-time-value{position:relative}.post-toc-time-words{color:var(--color-ink-faint);margin-inline-start:var(--space-2)}@media (hover:hover){.post-toc-time-words{white-space:nowrap;opacity:0;transition:opacity var(--duration-fast) var(--ease-responsive);position:absolute;inset-block-start:0;inset-inline-start:100%}.post-toc-time-value:hover .post-toc-time-words,.post-toc:focus-within .post-toc-time-words{opacity:1}}.post-article-beginning{block-size:0;display:block}.post-toc-link{min-block-size:var(--touch-target-standing);padding-block:calc(.15rem + var(--toc-flow-pad));margin-block:calc(-1 * var(--toc-flow-pad));color:var(--color-ink-secondary);transition:color var(--duration-fast) var(--ease-snappy), border-color var(--duration-fast) var(--ease-snappy);text-decoration-line:none;display:inline-block;position:relative}.post-toc-link[aria-current=location]{color:var(--color-ink);font-weight:500}.post-toc-link[aria-current=location]:before{content:"";inset-block:calc(.15rem + var(--toc-flow-pad));background:var(--color-primary);inline-size:2px;position:absolute;inset-inline-start:calc(-1 * var(--space-4))}@media (hover:hover){.post-toc-link:hover{color:var(--color-primary);text-underline-offset:.2em;text-decoration-line:underline}}.post-toc-replies{align-items:center;gap:var(--space-2);min-block-size:var(--touch-target-standing);font-family:var(--font-ui);font-size:var(--step-00);color:var(--color-primary);transition:color var(--duration-fast) var(--ease-snappy);margin-block-start:var(--space-6);font-weight:500;text-decoration-line:none;display:flex}:where(.post-toc-fold:not([open]))~.post-toc-replies{display:none}.post-toc-replies-mark,.post-toc-replies-label{flex:none}.post-toc-reply-count{font-variant-numeric:tabular-nums;color:var(--color-ink-muted);flex:none}.post-toc-reply-count:empty{display:none}.post-toc-replies:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}@media (hover:hover){.post-toc-replies:hover{color:var(--color-primary-hover);text-underline-offset:.2em;text-decoration-line:underline}}@container article ((min-width:67.125rem) and (not style(--toc-sidenotes:true))) or (min-width:84.125rem){@media (hover:hover){@media (scripting:enabled){.prose>.post-toc{block-size:var(--toc-fit);--toc-label-overhang:max(0px, calc((100cqi - var(--toc-content-measure,var(--prose-measure))) / 2 - var(--toc-rail-size) - var(--space-8)));position:sticky;overflow:visible}.prose>.post-toc :is(.post-toc-heading,.post-toc-entry,.post-toc-replies-label){opacity:0;transition:color var(--duration-fast) var(--ease-snappy), opacity var(--duration-fast) var(--ease-responsive)}.prose>.post-toc :is(.post-toc-list,.post-toc-replies){pointer-events:none}.prose>.post-toc :is(.post-toc-list,.post-toc-item){display:contents}.prose>.post-toc .post-toc-scroll{inline-size:calc(100% + var(--toc-line-size) + var(--toc-label-overhang));block-size:var(--toc-scroll-block,100%);scrollbar-width:none;position:absolute;inset-block-start:0;inset-inline-start:var(--toc-line-inset);overflow:hidden auto}.prose>.post-toc[data-toc-overflow] .post-toc-scroll{overscroll-behavior:contain}.prose>.post-toc .post-toc-entry{inline-size:calc(100% - var(--toc-line-size) - var(--space-4));flex-direction:column;display:flex;position:absolute;inset-block-start:var(--toc-label-y,0px);inset-inline-start:calc(var(--toc-line-size) + var(--space-4));transform:translateY(-50%)}.prose>.post-toc .post-toc-link{text-overflow:ellipsis;white-space:nowrap;line-height:var(--toc-entry-leading);padding-block:var(--toc-entry-pad);margin-block:calc(-1 * var(--toc-entry-pad));padding-inline:var(--space-1);margin-inline-start:calc(-1 * var(--space-1));display:block;overflow:hidden}.prose>.post-toc .post-toc-link:focus-visible{outline-offset:calc(-1 * var(--focus-ring-width))}.prose>.post-toc .post-toc-time{margin-block-start:calc(var(--toc-entry-pad) + var(--space-1))}.prose>.post-toc .post-toc-list[data-depth="1"]>.post-toc-item>.post-toc-entry{inline-size:calc(100% - var(--toc-line-size) - var(--space-8));inset-inline-start:calc(var(--toc-line-size) + var(--space-8))}.prose>.post-toc .post-toc-list[data-depth="2"]>.post-toc-item>.post-toc-entry{inline-size:calc(100% - var(--toc-line-size) - var(--space-8) - var(--space-4));inset-inline-start:calc(var(--toc-line-size) + var(--space-8) + var(--space-4))}.prose>.post-toc .post-toc-replies{inline-size:calc(100% - var(--toc-replies-inset));margin-block-start:0;position:absolute;inset-block-end:0;inset-inline-start:var(--toc-replies-inset)}.prose>.post-toc .post-toc-link[aria-current=location]:before{content:none}.prose>.post-toc:is(:hover,:focus-within) :is(.post-toc-entry,.post-toc-replies,.post-toc-replies-label){opacity:1;pointer-events:auto}.prose>.post-toc:is(:hover,:focus-within) .post-toc-list{pointer-events:auto}.prose>.post-toc:focus-within :is(.post-toc-entry,.post-toc-replies-label){transition-duration:0s}}:root[data-reading-bar-track=rail] .prose>.post-toc[data-toc-marks]{background-image:none;border-inline-start-color:#0000}.prose>.post-toc[data-toc-marks] .post-toc-map{z-index:1;inline-size:var(--toc-line-size);block-size:var(--toc-map-block,0px);pointer-events:none;display:block;position:absolute;inset-block-start:0;inset-inline-start:0}.post-toc-dot{inline-size:100%;block-size:var(--toc-seg-block,0px);padding-block:var(--toc-band-top);background-color:var(--color-border-strong);background-clip:content-box;position:absolute;inset-block-start:var(--toc-dot-y,0px);inset-inline-start:0}.post-toc-dot:before{content:"";z-index:1;inline-size:var(--toc-dot-size);block-size:var(--toc-dot-size);background:var(--color-ink-secondary);border-radius:50%;position:absolute;inset-block-start:0;inset-inline-start:50%;transform:translate(-50%,-50%)}.post-toc-dot{--toc-band-top:min(var(--toc-line-gap), calc(var(--toc-seg-block,0px) / 2));--toc-band-end:max(var(--toc-band-top), calc(var(--toc-seg-block,0px) - var(--toc-line-gap)));--toc-mark-y:clamp(var(--toc-band-top), calc(var(--toc-viewport-top,0px) - var(--toc-dot-y,0px)), var(--toc-band-end));--toc-mark-end:clamp(var(--toc-band-top), calc(var(--toc-viewport-top,0px) + var(--toc-viewport-block,0px) - var(--toc-dot-y,0px)), var(--toc-band-end))}.post-toc-dot:after{content:"";inline-size:var(--toc-marker-size);block-size:calc(var(--toc-mark-end,0px) - var(--toc-mark-y,0px));background:var(--color-primary);position:absolute;inset-block-start:var(--toc-mark-y,0px);inset-inline-start:50%;transform:translate(-50%)}:root[data-reading-bar=off] .post-toc-dot:after{opacity:0}}}:root[data-reading-bar-track=rail] .link-preview[data-kind=section]{max-inline-size:12rem}.post-after{gap:var(--space-10);font-family:var(--font-ui);font-size:var(--step-0);flex-direction:column;margin-block-start:var(--space-12);display:flex}.post-section-title{margin:0 0 var(--space-4)}.discuss-line{border-block-start:1px solid var(--color-border-subtle);font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-secondary);margin-block:0;padding-block-start:var(--space-6);line-height:1.6}.discuss-lead{color:var(--color-ink-muted)}.discuss-link{color:var(--color-primary);text-underline-offset:.2em;text-decoration-line:underline}@media (hover:hover){.discuss-link:hover{color:var(--color-primary-hover)}}.discuss-count{font-family:var(--font-ui);font-size:var(--step-00);font-variant-numeric:tabular-nums;color:var(--color-ink-muted)}.discuss-separator{color:var(--color-ink-faint)}.subscribe-after{border-block-start:1px solid var(--color-border-subtle);padding-block-start:var(--space-6)}.subscribe-after .post-section-title{margin-block-end:var(--space-3)}.subscribe-after .post-section-title label{cursor:pointer}.subscribe-interlude{margin-block:var(--space-12) var(--space-10);padding-block:var(--space-6);font-family:var(--font-ui)}.subscribe-invite{font-family:var(--font-ui);font-size:var(--step-1);color:var(--color-ink);text-wrap:pretty;font-weight:500;line-height:1.35}.subscribe-hint{max-inline-size:46ch;font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-muted);text-wrap:pretty;margin:0;line-height:1.5}.subscribe-form-wide .subscribe-field{gap:var(--space-2);flex:14rem}.subscribe-form-wide .subscribe-input{inline-size:100%;min-inline-size:0}.post-section-title:has(+.related-shared-reason){margin-block-end:var(--space-1)}.related-shared-reason{margin:0 0 var(--space-4);font-family:var(--font-ui);font-size:var(--step-00);color:var(--color-ink-secondary)}.related-list,.backlinks-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.related-item,.backlinks-item{padding-block:var(--space-4);border-block-start:1px solid var(--color-border-subtle)}.related-item:first-child,.backlinks-item:first-child{border-block-start:0;padding-block-start:0}.related-link,.backlinks-link{min-block-size:var(--touch-target-standing);font-family:var(--font-display);font-size:var(--step-1);color:var(--color-ink);text-decoration-line:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:.22em;text-wrap:balance;line-height:1.3;display:inline-block}@media (hover:hover){.related-link:hover,.backlinks-link:hover{color:var(--color-primary);text-decoration-color:currentColor}}.prose .related-link:focus-visible,.prose .backlinks-link:focus-visible{text-decoration-color:currentColor}.related-blurb,.backlinks-sentence{margin-block:var(--space-2) 0;font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-secondary);text-wrap:pretty;line-height:1.5}.related-reason{margin-block:var(--space-1) 0;font-family:var(--font-ui);font-size:var(--step-00);color:var(--color-ink-secondary)}.cite-line{float:inline-start;align-items:center;column-gap:var(--space-2);min-block-size:var(--touch-target-min);font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-secondary);margin-block:0;margin-inline-end:var(--space-2);line-height:1.5;display:flex}.cite-bibtex{padding:var(--space-3) 0 0;font-family:var(--font-mono);font-size:var(--step-00);color:var(--color-ink-secondary);white-space:pre;tab-size:2;background:0 0;border:0;margin:0;line-height:1.6;overflow-x:auto}.cite-bibtex:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.cite-block .cite-fold{border:0;margin:0;padding:0}.cite-block .cite-fold-summary{inline-size:fit-content;min-block-size:var(--touch-target-min);padding-block:var(--space-3);font-size:var(--step-0);line-height:1.25;overflow:hidden}.cite-block .cite-fold>:not(summary){clear:inline-start}@media print{.cite-line{float:none}.cite-sep,.post-tools-sep{display:none}}.copy-button{min-block-size:var(--touch-target-min);padding-inline:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-ink-secondary);font-family:var(--font-ui);font-size:var(--step-0);cursor:pointer;transition:color var(--duration-fast) var(--ease-snappy), border-color var(--duration-fast) var(--ease-snappy), scale var(--duration-snappy) var(--ease-smooth-in);background:0 0}.copy-button:active{scale:.96}.copy-button[data-state=done]{color:var(--color-primary);border-color:var(--color-primary)}.copy-button[data-state=failed]{color:var(--color-ink-muted)}@media (hover:hover){.copy-button:hover{color:var(--color-ink);border-color:var(--color-border-strong)}}.copy-button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.copy-button.copy-button-quiet{font-size:inherit;text-decoration-line:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:.25em;border:0;padding-inline:0}@media (hover:hover){.copy-button.copy-button-quiet:hover{color:var(--color-primary);text-decoration-color:currentColor}}.backlinks-section,.comments{border-block-start:1px solid var(--color-border-subtle);padding-block-start:var(--space-6)}.margin-notes-foot{border-block-start:1px solid var(--color-border-subtle);margin-block-start:var(--space-10);padding-block-start:var(--space-6)}.comments-invitation{font-family:var(--font-ui);font-size:var(--step-0);color:var(--color-ink-muted);text-wrap:pretty;margin:0;line-height:1.6}.comments-email{color:var(--color-ink-secondary);text-decoration-line:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:.2em;transition:color var(--duration-fast) var(--ease-snappy)}@media (hover:hover){.comments-email:hover{color:var(--color-primary);text-decoration-color:currentColor}}.prose .comments-email:focus-visible{text-decoration-color:currentColor}.comments-holder{margin-block-start:var(--space-4)}.backlinks-more{margin-block:var(--space-4) 0}.backlinks-more-summary{font-size:var(--step-0)}.glossary-term,.prose .glossary-term{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in oklab, currentcolor 55%, transparent);text-decoration-color:color-mix(in oklab, currentcolor 55%, transparent);text-underline-offset:.2em;text-decoration-skip-ink:auto;cursor:help}.prose .sidenote[data-shifted]{transition:transform var(--duration-fast) var(--ease-snappy)}@media (prefers-reduced-motion:reduce){.prose .sidenote[data-shifted]{transition:none}}
