/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--spacing:.25rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-mono-font-family:var(--font-mono);--color-paper:#fafaf8;--color-ink:#15161b;--color-ink-2:#3f414b;--color-ink-3:#5f6270;--color-rule:#dadbe2;--color-accent:#1d3ea8;--color-tint:#edf0fa;--font-display:"newsreader-display", "newsreader-display-fallback", Georgia, serif;--font-body:"newsreader", "newsreader-fallback", Georgia, serif;--font-mono:"jetbrains-mono", "jetbrains-mono-fallback", ui-monospace, monospace;--font-pixel:"departure-mono", "departure-mono-fallback", ui-monospace, monospace;--text-display:clamp(3.75rem, 2rem + 9vw, 9.375rem);--text-display--line-height:.98;--text-display--letter-spacing:-.035em;--text-title:clamp(2.625rem, 1.25rem + 5.2vw, 5.25rem);--text-title--line-height:1.02;--text-title--letter-spacing:-.03em;--text-section:clamp(2.375rem, 1.5rem + 3vw, 3.75rem);--text-section--line-height:1.05;--text-section--letter-spacing:-.025em;--text-lead:clamp(1.3125rem, 1rem + 1.1vw, 1.875rem);--text-lead--line-height:1.35;--text-item:clamp(1.375rem, 1.1rem + .6vw, 1.75rem);--text-item--line-height:1.2;--text-body:clamp(1.15625rem, 1rem + .45vw, 1.3125rem);--text-body--line-height:1.62;--text-small:clamp(1rem, .9rem + .3vw, 1.125rem);--text-small--line-height:1.5;--text-code:clamp(.8125rem, .75rem + .2vw, .90625rem);--text-code--line-height:1.7;--text-meta:.8125rem;--text-meta--line-height:1.65;--text-wordmark:1.1875rem;--text-wordmark--line-height:1;--spacing-chapter:clamp(3.25rem, 2rem + 4vw, 6rem);--spacing-gutter:clamp(1.375rem, .4rem + 4.2vw, 4.5rem)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.chapter-rule{position:relative}.chapter-rule:before{content:"";top:0;left:var(--spacing-gutter);right:var(--spacing-gutter);border-top:1px solid var(--color-rule);position:absolute}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:0}.top-\[env\(safe-area-inset-top\,0px\)\]{top:env(safe-area-inset-top,0px)}.top-full{top:100%}.right-0{right:0}.left-0{left:0}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.order-2{order:2}.order-3{order:3}.order-first{order:-9999}.col-main{grid-column:1/-1}@media (width>=48rem){.col-main{grid-column:3/-1}}@media (width>=64rem){.col-main{grid-column:4/11}}.col-margin{grid-column:1/-1}@media (width>=48rem){.col-margin{grid-column:1/3}}@media (width>=64rem){.col-margin{grid-column:1/4}}.col-text{grid-column:1/-1}@media (width>=48rem){.col-text{grid-column:3/-1}}@media (width>=64rem){.col-text{grid-column:4/10}}.col-wide{grid-column:1/-1}@media (width>=48rem){.col-wide{grid-column:3/-1}}@media (width>=64rem){.col-wide{grid-column:4/13}}.col-span-2{grid-column:span 2/span 2}.col-span-full{grid-column:1/-1}.m-0{margin:0}.page-grid{padding-inline:var(--spacing-gutter);grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(.75rem,.4rem + 1.4vw,1.75rem);width:100%;max-width:96rem;margin-inline:auto;display:grid}@media (width>=48rem){.page-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (width>=64rem){.page-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}.-my-2{margin-block:calc(var(--spacing) * -2)}.-my-2\.5{margin-block:calc(var(--spacing) * -2.5)}.-my-3{margin-block:calc(var(--spacing) * -3)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mr-3{margin-right:calc(var(--spacing) * 3)}.mr-\[0\.4em\]{margin-right:.4em}.-mb-px{margin-bottom:-1px}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-5{margin-left:calc(var(--spacing) * 5)}.ml-7{margin-left:calc(var(--spacing) * 7)}.ml-\[0\.15em\]{margin-left:.15em}.ml-px{margin-left:1px}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-\[16\/9\]{aspect-ratio:16/9}.h-9{height:calc(var(--spacing) * 9)}.h-\[1em\]{height:1em}.h-\[calc\(100lvh\+3px\)\]{height:calc(100lvh + 3px)}.h-auto{height:auto}.h-px{height:1px}.min-h-dvh{min-height:100dvh}.w-9{width:calc(var(--spacing) * 9)}.w-20{width:calc(var(--spacing) * 20)}.w-\[0\.55em\]{width:.55em}.w-full{width:100%}.max-w-\[24ch\]{max-width:24ch}.max-w-\[30em\]{max-width:30em}.max-w-\[34em\]{max-width:34em}.min-w-0{min-width:0}.flex-1{flex:1}.translate-y-\[0\.12em\]{--tw-translate-y:.12em;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.list-none{list-style-type:none}.grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-0{row-gap:0}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-center{align-self:center}.justify-self-end{justify-self:flex-end}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-ink{border-color:var(--color-ink)}.border-rule{border-color:var(--color-rule)}.border-b-rule{border-bottom-color:var(--color-rule)}.bg-current{background-color:currentColor}.bg-paper{background-color:var(--color-paper)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-gutter{padding-inline:var(--spacing-gutter)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-chapter{padding-block:var(--spacing-chapter)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pt-\[0\.45rem\]{padding-top:.45rem}.pt-chapter{padding-top:var(--spacing-chapter)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-chapter{padding-bottom:var(--spacing-chapter)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-7{padding-left:calc(var(--spacing) * 7)}.meta{font-family:var(--font-mono);font-size:var(--text-meta);line-height:var(--text-meta--line-height);letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--color-ink-3)}.display{font-family:var(--font-display);font-weight:350}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.font-pixel{font-family:var(--font-pixel)}.text-display{font-size:var(--text-display);line-height:var(--tw-leading,var(--text-display--line-height));letter-spacing:var(--tw-tracking,var(--text-display--letter-spacing))}.text-section{font-size:var(--text-section);line-height:var(--tw-leading,var(--text-section--line-height));letter-spacing:var(--tw-tracking,var(--text-section--letter-spacing))}.text-title{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height));letter-spacing:var(--tw-tracking,var(--text-title--letter-spacing))}.text-code{font-size:var(--text-code);line-height:var(--tw-leading,var(--text-code--line-height))}.text-item{font-size:var(--text-item);line-height:var(--tw-leading,var(--text-item--line-height))}.text-lead{font-size:var(--text-lead);line-height:var(--tw-leading,var(--text-lead--line-height))}.text-meta{font-size:var(--text-meta);line-height:var(--tw-leading,var(--text-meta--line-height))}.text-small{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.text-wordmark{font-size:var(--text-wordmark);line-height:var(--tw-leading,var(--text-wordmark--line-height))}.text-\[1\.6vw\]{font-size:1.6vw}.leading-none{--tw-leading:1;line-height:1}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.text-accent{color:var(--color-accent)}.text-ink{color:var(--color-ink)}.text-ink-2{color:var(--color-ink-2)}.text-ink-3{color:var(--color-ink-3)}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-accent{-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.decoration-1{text-decoration-thickness:1px}.underline-offset-\[0\.14em\]{text-underline-offset:.14em}.opacity-0{opacity:0}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;user-select:none}.\[grid-area\:1\/1\]{grid-area:1/1}.group-open\:hidden:is(:where(.group):is([open],:popover-open,:open) *){display:none}.group-open\:inline:is(:where(.group):is([open],:popover-open,:open) *){display:inline}@media (hover:hover){.group-hover\:text-accent:is(:where(.group):hover *){color:var(--color-accent)}.group-hover\:opacity-0:is(:where(.group):hover *){opacity:0}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-fluid\:hidden:is(:where(.group)[data-fluid] *){display:none}@media (hover:hover){.group-data-fluid\:group-hover\:opacity-100:is(:where(.group)[data-fluid] *):is(:where(.group):hover *){opacity:1}}.after\:content-\[\'_·_\'\]:after{--tw-content:" · ";content:var(--tw-content)}.last\:after\:content-none:last-child:after{content:var(--tw-content);--tw-content:none;content:none}@media (hover:hover){.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-ink:hover{color:var(--color-ink)}.hover\:decoration-2:hover{text-decoration-thickness:2px}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-50:focus{z-index:50}.focus\:bg-accent:focus{background-color:var(--color-accent)}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:text-paper:focus{color:var(--color-paper)}.active\:cursor-grabbing:active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media (width>=40rem){.sm\:flex-row{flex-direction:row}}@media (width>=48rem){.md\:order-none{order:0}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-6{grid-column:span 6/span 6}.md\:col-start-3{grid-column-start:3}.md\:mt-0{margin-top:0}.md\:mt-4{margin-top:calc(var(--spacing) * 4)}.md\:mt-6{margin-top:calc(var(--spacing) * 6)}.md\:mt-10{margin-top:calc(var(--spacing) * 10)}.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:mt-14{margin-top:calc(var(--spacing) * 14)}.md\:mb-0{margin-bottom:0}.md\:mb-7{margin-bottom:calc(var(--spacing) * 7)}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:aspect-\[16\/7\]{aspect-ratio:16/7}.md\:w-28{width:calc(var(--spacing) * 28)}.md\:grid-cols-\[8rem_minmax\(0\,1fr\)_auto\]{grid-template-columns:8rem minmax(0,1fr) auto}.md\:grid-cols-\[minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.md\:flex-col{flex-direction:column}.md\:justify-end{justify-content:flex-end}.md\:gap-x-8{column-gap:calc(var(--spacing) * 8)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:py-6{padding-block:calc(var(--spacing) * 6)}.md\:py-7{padding-block:calc(var(--spacing) * 7)}.md\:py-12{padding-block:calc(var(--spacing) * 12)}.md\:pt-14{padding-top:calc(var(--spacing) * 14)}.md\:pt-16{padding-top:calc(var(--spacing) * 16)}.md\:pt-\[0\.45rem\]{padding-top:.45rem}.md\:pt-\[1\.2vw\]{padding-top:1.2vw}.md\:pt-\[1\.6vw\]{padding-top:1.6vw}.md\:pt-\[1vw\]{padding-top:1vw}.md\:pb-16{padding-bottom:calc(var(--spacing) * 16)}.md\:pb-24{padding-bottom:calc(var(--spacing) * 24)}.md\:text-right{text-align:right}.md\:text-\[1\.1vw\]{font-size:1.1vw}.md\:after\:content-none:after{content:var(--tw-content);--tw-content:none;content:none}}@media (width>=64rem){.lg\:absolute{position:absolute}.lg\:right-gutter{right:var(--spacing-gutter)}.lg\:bottom-0{bottom:0}.lg\:order-none{order:0}.lg\:col-auto{grid-column:auto}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:col-span-9{grid-column:span 9/span 9}.lg\:col-start-4{grid-column-start:4}.lg\:col-end-12{grid-column-end:12}.lg\:mb-0{margin-bottom:0}.lg\:pt-20{padding-top:calc(var(--spacing) * 20)}.lg\:pb-28{padding-bottom:calc(var(--spacing) * 28)}.lg\:text-\[min\(0\.6vw\,9px\)\]{font-size:min(.6vw,9px)}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\>a\]\:border-b>a{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&\>a\]\:border-rule>a{border-color:var(--color-rule)}.\[\&\>a\]\:py-2\.5>a{padding-block:calc(var(--spacing) * 2.5)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-paper:#0e1120;--color-ink:#e9ebf3;--color-ink-2:#b6bbcf;--color-ink-3:#8d93ab;--color-rule:#262c45;--color-accent:#93a9ff;--color-tint:#161b33;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-paper:#0e1120;--color-ink:#e9ebf3;--color-ink-2:#b6bbcf;--color-ink-3:#8d93ab;--color-rule:#262c45;--color-accent:#93a9ff;--color-tint:#161b33;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{font-family:var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-paper);color:var(--color-ink);font-size:100%;line-height:1.6}html,body{overflow-x:clip}body{min-width:320px;margin:0}::selection{background-color:var(--color-accent);color:var(--color-paper)}h1,h2,h3{text-wrap:balance;font-weight:350}p{text-wrap:pretty}a{text-underline-offset:.18em;text-decoration-thickness:1px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}@supports (scrollbar-color:auto){html{scrollbar-color:var(--color-rule) transparent;scrollbar-width:thin}}.plate{background:var(--color-accent);overflow:hidden}.plate img{object-fit:cover;filter:grayscale()contrast(1.08);mix-blend-mode:screen;width:100%;height:100%;display:block}:root[data-theme=dark] .plate img{mix-blend-mode:multiply;filter:grayscale()contrast(1.1)brightness(1.15)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .plate img{mix-blend-mode:multiply;filter:grayscale()contrast(1.1)brightness(1.15)}}.code-block{--shiki-foreground:var(--color-ink);--shiki-background:var(--color-tint);--shiki-token-keyword:var(--color-accent);--shiki-token-constant:var(--color-accent);--shiki-token-function:var(--color-ink);--shiki-token-string:var(--color-ink-2);--shiki-token-string-expression:var(--color-ink-2);--shiki-token-comment:var(--color-ink-3);--shiki-token-parameter:var(--color-ink);--shiki-token-punctuation:var(--color-ink-3);--shiki-token-link:var(--color-accent);background:var(--color-tint)}.post-body>*{grid-column:1/-1}.post-body>.code-block{margin-inline:calc(var(--spacing-gutter) * -1)}@media (width>=48rem){.post-body>*{grid-column:3/-1}.post-body>.code-block{margin-inline:0}}@media (width>=64rem){.post-body>*{grid-column:4/10}.post-body>.code-block,.post-body>.figure{grid-column:4/12}}.post-body>.code-block,.post-body>.figure{margin-block:1.6em}.prose>*+*{margin-top:1.1em}.prose p,.prose li{font-size:var(--text-body);line-height:var(--text-body--line-height);max-width:66ch}.prose strong{font-weight:600}.prose a{color:var(--color-accent);text-decoration-line:underline}.prose a:hover{text-decoration-thickness:2px}.prose :not(pre)>code{font-family:var(--font-mono);background:var(--color-tint);border-radius:2px;padding:.08em .3em;font-size:.8em}.prose h2{font-family:var(--font-display);font-size:var(--text-section);line-height:var(--text-section--line-height);letter-spacing:var(--text-section--letter-spacing);margin-top:1.4em}.prose h3{font-family:var(--font-display);font-size:var(--text-item);line-height:var(--text-item--line-height);margin-top:1.6em}.prose h4{font-family:var(--font-mono);font-size:var(--text-meta);text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-3);margin-top:2em}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.6em}.prose ul,.prose ol{padding-left:1.4em}.prose ol{list-style:decimal}.prose ol li::marker{font-family:var(--font-mono);color:var(--color-accent);font-size:.75em}.prose ul li{position:relative}.prose ul li:before{content:"";background:var(--color-accent);width:.3em;height:.3em;position:absolute;top:.7em;left:-1.05em}.prose li+li{margin-top:.35em}.prose blockquote{border-left:2px solid var(--color-accent);margin-block:1.8em;padding-left:1.2em}.prose blockquote p{font-family:var(--font-display);font-size:var(--text-lead);line-height:var(--text-lead--line-height);color:var(--color-ink-2)}.prose .drop-cap:first-letter{float:left;color:var(--color-accent);margin:.07em .08em 0 0;font-family:newsreader-initial,Georgia,serif;font-size:4.9em;font-weight:350;line-height:.78}.marks{gap:.35em;display:flex}.marks>i{background:var(--color-accent);width:.45rem;height:.45rem;display:block}@keyframes rise{0%{opacity:0;transform:translateY(.32em)}}@keyframes settle{0%{opacity:0;transform:translateY(.75rem)}}@keyframes draw{0%{transform:scaleX(0)}}@keyframes fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:no-preference){.intro-word{animation:rise .76s var(--ease-out) both;animation-delay:calc(var(--i) * 80ms);display:inline-block}.intro-after{animation:settle .7s var(--ease-out) .28s both}@supports (animation-timeline:view()){.reveal{animation:linear both settle;animation-timeline:view();animation-range:entry entry 55%}.reveal-items>:not(ol),.reveal-items li{animation:linear both settle;animation-timeline:view();animation-range:entry 10% entry 70%}.chapter-rule:before{transform-origin:0;animation:linear both draw;animation-timeline:view();animation-range:entry entry 90%}}}.read-progress{display:none}@supports (animation-timeline:scroll()){.read-progress{z-index:40;background:var(--color-accent);transform-origin:0;height:2px;animation:linear both fill;animation-timeline:scroll(root);display:block;position:fixed;inset:0 0 auto}}.hero-poster:before{content:"";pointer-events:none;background-image:radial-gradient(circle, var(--color-accent) .9px, transparent 1.15px);background-size:6px 6px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(270deg,#0000 70%,#0000001f 88%,#00000038);mask-image:linear-gradient(270deg,#0000 70%,#0000001f 88%,#00000038)}.hero-poster[data-dither=on]:before,.theme-toggle .theme-sun{display:none}:root[data-theme=dark] .theme-toggle .theme-sun{display:block}:root[data-theme=dark] .theme-toggle .theme-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .theme-sun{display:block}:root:not([data-theme=light]) .theme-toggle .theme-moon{display:none}}.dither-knob .knob-pointer{transition:transform .14s var(--ease-out)}.dither-knob:focus-visible{outline-offset:0}@media (prefers-reduced-motion:reduce){.dither-knob .knob-pointer{transition:none}}.site-header{transition:background-color .24s var(--ease-out), border-color .24s var(--ease-out);border-bottom:1px solid #0000}.site-header[data-stuck]{background-color:#fafaf8e6}@supports (color:color-mix(in lab, red, red)){.site-header[data-stuck]{background-color:color-mix(in srgb, var(--color-paper) 90%, transparent)}}.site-header[data-stuck]{border-bottom-color:var(--color-rule)}.site-header a[aria-current=location]{color:var(--color-ink);text-decoration-line:underline;-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:.55em}@media (prefers-reduced-motion:reduce){.site-header{transition:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}
