/*! 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-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-4xl:56rem;--container-6xl:72rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-bold:700;--tracking-wide:.025em;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ground:#131b23;--color-panel:#1d2833;--color-ink:#ecf0f1;--color-mute:#a7b4bf;--color-turq:#1abc9c;--color-sun:#f1c40f;--color-red:#e74c3c;--font-display:"Oswald","Arial Narrow",sans-serif;--font-body:"Lato","Helvetica Neue",Arial,sans-serif}}@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;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{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.col-span-2{grid-column:span 2/span 2}.row-span-2{grid-row:span 2/span 2}.mx-auto{margin-inline:auto}.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-6{margin-top:calc(var(--spacing) * 6)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-14{width:calc(var(--spacing) * 14);height:calc(var(--spacing) * 14)}.h-12{height:calc(var(--spacing) * 12)}.min-h-14{min-height:calc(var(--spacing) * 14)}.w-14{width:calc(var(--spacing) * 14)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-xl{max-width:var(--container-xl)}.min-w-\[20rem\]{min-width:20rem}.min-w-\[34rem\]{min-width:34rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-top{caption-side:top}.scroll-mt-6{scroll-margin-top:calc(var(--spacing) * 6)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-px{gap:1px}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-ink\/10>:not(:last-child)){border-color:#ecf0f11a}@supports (color:color-mix(in lab,red,red)){:where(.divide-ink\/10>:not(:last-child)){border-color:color-mix(in oklab,var(--color-ink) 10%,transparent)}}.overflow-x-auto{overflow-x:auto}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-ink\/10{border-color:#ecf0f11a}@supports (color:color-mix(in lab,red,red)){.border-ink\/10{border-color:color-mix(in oklab,var(--color-ink) 10%,transparent)}}.border-ink\/15{border-color:#ecf0f126}@supports (color:color-mix(in lab,red,red)){.border-ink\/15{border-color:color-mix(in oklab,var(--color-ink) 15%,transparent)}}.border-sun\/40{border-color:#f1c40f66}@supports (color:color-mix(in lab,red,red)){.border-sun\/40{border-color:color-mix(in oklab,var(--color-sun) 40%,transparent)}}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\/30{background-color:color-mix(in oklab,var(--color-black) 30%,transparent)}}.bg-ground{background-color:var(--color-ground)}.bg-ink{background-color:var(--color-ink)}.bg-ink\/10{background-color:#ecf0f11a}@supports (color:color-mix(in lab,red,red)){.bg-ink\/10{background-color:color-mix(in oklab,var(--color-ink) 10%,transparent)}}.bg-panel{background-color:var(--color-panel)}.bg-red{background-color:var(--color-red)}.bg-red\/20{background-color:#e74c3c33}@supports (color:color-mix(in lab,red,red)){.bg-red\/20{background-color:color-mix(in oklab,var(--color-red) 20%,transparent)}}.bg-sun{background-color:var(--color-sun)}.bg-sun\/10{background-color:#f1c40f1a}@supports (color:color-mix(in lab,red,red)){.bg-sun\/10{background-color:color-mix(in oklab,var(--color-sun) 10%,transparent)}}.bg-turq{background-color:var(--color-turq)}.bg-turq\/10{background-color:#1abc9c1a}@supports (color:color-mix(in lab,red,red)){.bg-turq\/10{background-color:color-mix(in oklab,var(--color-turq) 10%,transparent)}}.bg-turq\/15{background-color:#1abc9c26}@supports (color:color-mix(in lab,red,red)){.bg-turq\/15{background-color:color-mix(in oklab,var(--color-turq) 15%,transparent)}}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-16{padding-top:calc(var(--spacing) * 16)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-\[max\(2\.5rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(2.5rem,env(safe-area-inset-bottom))}.text-center{text-align:center}.text-left{text-align:left}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-ground{color:var(--color-ground)}.text-ink{color:var(--color-ink)}.text-mute{color:var(--color-mute)}.text-red{color:var(--color-red)}.text-sun{color:var(--color-sun)}.text-turq{color:var(--color-turq)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.md\:mt-20{margin-top:calc(var(--spacing) * 20)}.md\:size-24{width:calc(var(--spacing) * 24);height:calc(var(--spacing) * 24)}.md\:max-w-4xl{max-width:var(--container-4xl)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[1\.1fr_1fr\]{grid-template-columns:1.1fr 1fr}.md\:items-center{align-items:center}.md\:gap-12{gap:calc(var(--spacing) * 12)}.md\:bg-panel{background-color:var(--color-panel)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:pt-8{padding-top:calc(var(--spacing) * 8)}.md\:pt-10{padding-top:calc(var(--spacing) * 10)}.md\:pt-24{padding-top:calc(var(--spacing) * 24)}.md\:pb-20{padding-bottom:calc(var(--spacing) * 20)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}}@media (min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.row-in{opacity:1;transform:none}}body{font-size:clamp(1rem,.96rem + .2vw,1.0625rem);line-height:1.55;overflow-x:clip}.t-h1{letter-spacing:.005em;font-size:clamp(2.05rem,1.55rem + 2.6vw,3.9rem);line-height:1.04}.t-h2{font-size:clamp(1.6rem,1.3rem + 1.4vw,2.5rem);line-height:1.1}.t-lead{font-size:clamp(1.02rem,.95rem + .35vw,1.2rem);line-height:1.5}.t-small{font-size:clamp(.82rem,.8rem + .1vw,.9rem)}.t-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(.88rem,.85rem + .15vw,.98rem)}.term{white-space:nowrap;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--color-sun);-webkit-text-decoration-color:var(--color-sun);text-decoration-color:var(--color-sun);text-underline-offset:.2em;color:inherit;text-decoration-thickness:2px}.go-btn{-webkit-tap-highlight-color:transparent;transition:transform .15s,opacity .15s}.go-btn:focus-visible,a:focus-visible{outline:3px solid var(--color-sun);outline-offset:3px}@media (hover:hover) and (pointer:fine){.go-btn:hover{transform:translateY(-2px)}.lnk:hover{color:var(--color-turq)}}.go-btn:active{transform:translateY(1px)}.row-in{opacity:0;animation:.4s forwards rowin;transform:translate(12px)}.row-in:nth-child(2){animation-delay:80ms}.row-in:nth-child(3){animation-delay:.16s}.row-in:nth-child(4){animation-delay:.24s}.row-in:nth-child(5){animation-delay:.32s}@keyframes rowin{to{opacity:1;transform:none}}#toc a[aria-current]{color:var(--color-sun)}#toc a[aria-current]:after{content:"  <"}[class~=font-display]{font-weight:600}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}