*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body:before{content:"";z-index:0;pointer-events:none;mix-blend-mode:overlay;opacity:.55;background-image:url(/materials/brushed.png);background-size:260px 260px;position:fixed;inset:0}:root{--sheet-material:url(/materials/halftone.png);--sheet-material-size:190px}[data-band=dark]{--sheet-material:url(/materials/brushed.png);--sheet-material-size:260px}[data-band=stone]{--sheet-material:url(/materials/linen.png);--sheet-material-size:215px}[data-band=red]{--sheet-material:url(/materials/halftone.png);--sheet-material-size:145px}[data-band=indigo]{--sheet-material:url(/materials/linen.png);--sheet-material-size:260px}@media (forced-colors:active){body:before{display:none}}body{background:var(--color-surface-page);color:var(--color-text-primary);font-family:var(--font-family-text);font-size:var(--size-body-md);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100svh;line-height:1.45;position:relative;overflow-x:hidden}@media (width<=480px){body{font-size:var(--size-body-md-compact)}}img,picture,svg{max-width:100%;display:block}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}::selection{background:var(--color-selection-surface);color:var(--color-selection-text)}:where(h1,h2,h3,h4){text-wrap:balance;font-weight:var(--weight-regular)}p{text-wrap:pretty}:focus-visible{outline:var(--stroke-emphasis) solid var(--color-focus-ring);outline-offset:3px}:focus:not(:focus-visible){outline:none}@media (forced-colors:active){:focus-visible{outline:3px solid canvastext}}a{color:inherit;text-decoration:underline;text-decoration-thickness:var(--stroke-hairline);text-underline-offset:3px;text-decoration-color:var(--link-underline);transition:text-decoration-color var(--duration-fast) var(--easing-standard)}a:hover{text-decoration-color:var(--link-underline-hover)}.container{width:100%;max-width:var(--layout-max-width);padding-inline:var(--layout-margin-mobile);margin-inline:auto}@media (width>=900px){.container{padding-inline:var(--layout-margin-desktop)}}.grid12{gap:var(--layout-gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.sheet{border:var(--stroke-hairline) solid var(--color-border-ink);margin:var(--space-12);position:relative}@media (width>=900px){.sheet{margin:var(--space-24)}}.sheet__tick{inline-size:var(--space-16);block-size:var(--space-16);border:var(--stroke-emphasis) solid var(--color-border-ink);pointer-events:none;position:absolute}.sheet__tick--tl{border-block-end:0;border-inline-end:0;inset-block-start:-1px;inset-inline-start:-1px}.sheet__tick--tr{border-block-end:0;border-inline-start:0;inset-block-start:-1px;inset-inline-end:-1px}.sheet__tick--bl{border-block-start:0;border-inline-end:0;inset-block-end:-1px;inset-inline-start:-1px}.sheet__tick--br{border-block-start:0;border-inline-start:0;inset-block-end:-1px;inset-inline-end:-1px}.key{--key-lift:1px;justify-content:center;align-items:center;gap:var(--space-8);min-block-size:34px;padding-inline:var(--space-16);border-radius:var(--radius-pill);background:var(--control-face);color:var(--control-text);border:var(--stroke-hairline) solid var(--control-edge);box-shadow:inset 0 1px 0 0 color-mix(in oklab, var(--color-text-primary) 12%, transparent), 0 var(--key-lift) 0 0 color-mix(in oklab, var(--color-text-primary) 16%, transparent);transition:transform var(--duration-fast) var(--easing-standard), background-color var(--duration-fast) var(--easing-standard), box-shadow var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);display:inline-flex}.key:hover{background:var(--control-face-hover);color:var(--control-text-active)}.key:active{transform:translateY(var(--key-lift));box-shadow:inset 0 2px 4px 0 color-mix(in oklab, var(--color-surface-sunken) 80%, transparent), 0 0 0 0 transparent}.key[aria-pressed=true],.key[data-on]{background:var(--toggle-pressed-surface);color:var(--toggle-pressed-text);box-shadow:inset 0 2px 5px 0 color-mix(in oklab, var(--color-surface-sunken) 85%, transparent), 0 0 0 0 transparent}.key[aria-pressed=true]:before,.key[data-on]:before{content:"";border-radius:var(--radius-pill);background:var(--control-indicator);block-size:6px;inline-size:6px;box-shadow:0 0 6px 0 var(--control-indicator);flex:none}@media (prefers-reduced-motion:reduce){.key{transition:none}.key:active{transform:none}}@media (forced-colors:active){.key{box-shadow:none}.key[aria-pressed=true]{color:highlighttext;background:highlight}}html.js [data-reveal]{opacity:0;transition:opacity .76s var(--easing-standard), translate .76s var(--easing-standard);transition-delay:calc(var(--reveal-i,0) * 90ms);translate:0 26px}html.js [data-reveal][data-in]{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){html.js [data-reveal]{opacity:1;transition:none;translate:none}}a.key{text-decoration:none}@media (pointer:coarse){.key{min-block-size:44px}}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.34s;animation-timing-function:var(--easing-standard)}::view-transition-group(*){animation-duration:.42s;animation-timing-function:var(--easing-standard)}html.mode-wipe::view-transition-old(root){animation:none}html.mode-wipe::view-transition-new(root){animation:mode-wipe .52s var(--easing-standard) both;clip-path:circle(0 at var(--wipe-x,100%) var(--wipe-y,0%))}@keyframes mode-wipe{to{clip-path:circle(160vmax at var(--wipe-x,100%) var(--wipe-y,0%))}}body,.sh,.hd,.ft{transition:background-color .36s var(--easing-standard), color .36s var(--easing-standard), border-color .36s var(--easing-standard)}:root{--bloom-soft:color-mix(in oklab, var(--color-annotation-measure) 28%, transparent);--bloom-hard:color-mix(in oklab, var(--color-annotation-measure) 62%, transparent)}:focus-visible{box-shadow:0 0 0 5px var(--bloom-soft), 0 0 18px 0 var(--bloom-soft)}.key:hover,a.key:hover{border-color:color-mix(in oklab, var(--color-annotation-measure) 55%, var(--control-edge));box-shadow:inset 0 1px 0 0 color-mix(in oklab, var(--color-text-primary) 12%, transparent), 0 var(--key-lift) 0 0 color-mix(in oklab, var(--color-text-primary) 16%, transparent), 0 0 14px 0 var(--bloom-soft)}.key[aria-pressed=true]:before,.key[data-on]:before{box-shadow:0 0 6px 0 var(--control-indicator), 0 0 16px 2px var(--bloom-soft)}.cursor{vertical-align:-.04em;background:var(--color-annotation-measure);block-size:.78em;inline-size:max(3px,.06em);box-shadow:0 0 10px 0 var(--bloom-hard), 0 0 26px 0 var(--bloom-soft);border-radius:1px;margin-inline-start:.08em;animation:1.1s steps(2,jump-none) infinite cursor-blink;display:inline-block}@keyframes cursor-blink{50%{opacity:0}}[data-scan]{position:relative}[data-scan]:after{content:"";pointer-events:none;z-index:3;background:linear-gradient(to bottom, transparent, var(--bloom-soft) 35%, var(--color-annotation-measure) 50%, var(--bloom-soft) 65%, transparent) 0 0 / 100% 14px no-repeat;opacity:0;position:absolute;inset:0}[data-scan][data-in]:after,[data-in] [data-scan]:after{animation:scan-sweep .76s var(--easing-standard) .12s both}@keyframes scan-sweep{0%{opacity:0;background-position:0 0}8%{opacity:1}92%{opacity:1}to{opacity:0;background-position:0 100%}}[data-brackets]{position:relative}[data-brackets]:before{content:"";pointer-events:none;z-index:4;--bk:var(--color-annotation-measure);--bl:14px;--bw:2px;background:linear-gradient(var(--bk), var(--bk)) top left / var(--bl) var(--bw), linear-gradient(var(--bk), var(--bk)) top left / var(--bw) var(--bl), linear-gradient(var(--bk), var(--bk)) top right / var(--bl) var(--bw), linear-gradient(var(--bk), var(--bk)) top right / var(--bw) var(--bl), linear-gradient(var(--bk), var(--bk)) bottom left / var(--bl) var(--bw), linear-gradient(var(--bk), var(--bk)) bottom left / var(--bw) var(--bl), linear-gradient(var(--bk), var(--bk)) bottom right / var(--bl) var(--bw), linear-gradient(var(--bk), var(--bk)) bottom right / var(--bw) var(--bl);opacity:0;filter:drop-shadow(0 0 6px var(--bloom-hard));transition:opacity var(--duration-base) var(--easing-standard), scale var(--duration-base) var(--easing-standard);background-repeat:no-repeat;position:absolute;inset:0;scale:1.04}a:hover [data-brackets]:before,a:focus-visible [data-brackets]:before,[data-brackets]:hover:before{opacity:1;scale:1}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}body,.sh,.hd,.ft{transition:none}.cursor{animation:none}[data-scan]:after{opacity:0;animation:none!important}[data-brackets]:before{transition:none}}@media (forced-colors:active){.cursor{box-shadow:none;background:canvastext}[data-scan]:after,[data-brackets]:before{display:none}}html.js .sheet__tick{animation:tick-in .46s var(--easing-standard) both;scale:0}html.js .sheet__tick--tl{transform-origin:0 0;animation-delay:80ms}html.js .sheet__tick--tr{transform-origin:100% 0;animation-delay:.18s}html.js .sheet__tick--br{transform-origin:100% 100%;animation-delay:.28s}html.js .sheet__tick--bl{transform-origin:0 100%;animation-delay:.38s}@keyframes tick-in{to{scale:1}}[data-rule]{background-image:linear-gradient(var(--rule-ink,var(--color-border-ink)), var(--rule-ink,var(--color-border-ink)));background-position:0 0;background-repeat:no-repeat;background-size:0% var(--rule-size,2px);transition:background-size .64s var(--easing-standard) .16s}[data-rule][data-in],[data-in] [data-rule],html:not(.js) [data-rule]{background-size:100% var(--rule-size,2px)}.hd__link{transition:color var(--duration-fast) var(--easing-standard), background-size var(--duration-base) var(--easing-standard);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px}.hd__link:hover,.hd__link[aria-current=page]{background-size:100% 2px}a:hover{text-shadow:0 0 14px var(--bloom-soft)}[data-flash]{animation:value-flash .62s var(--easing-standard) both}@keyframes value-flash{30%{text-shadow:0 0 14px var(--bloom-hard), 0 0 34px var(--bloom-soft)}to{text-shadow:0 0 #0000}}.lb[open] .lb__img{animation:lb-in .3s var(--easing-standard) both}.lb[open]::backdrop{animation:lb-fade .3s var(--easing-standard) both}@keyframes lb-in{0%{opacity:0;translate:0 14px;scale:.94}}@keyframes lb-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){html.js .sheet__tick{animation:none;scale:1}[data-rule]{background-size:100% var(--rule-size,2px);transition:none}.hd__link{transition:none}.hd__link:hover{background-size:0% 2px}.hd__link[aria-current=page]{background-size:100% 2px}a:hover{text-shadow:none}[data-flash],.lb[open] .lb__img,.lb[open]::backdrop{animation:none}}@media (forced-colors:active){[data-rule]{border-block-start:var(--rule-size,2px) solid CanvasText;background-image:none}}.panel{background:var(--panel-surface);border:var(--stroke-hairline) solid var(--panel-edge);border-radius:var(--radius-14);background-image:repeating-linear-gradient(45deg, color-mix(in oklab, var(--color-text-primary) 2.5%, transparent) 0 1px, transparent 1px 5px)}.split{gap:var(--space-32);display:grid}@media (width>=900px){.split{gap:var(--layout-gutter);grid-template-columns:7fr 5fr;align-items:start}}@media (width<=899px){.grid12{grid-template-columns:minmax(0,1fr)}}.measure{max-width:var(--layout-measure)}.section{margin-block-start:var(--space-64)}@media (width>=900px){.section{margin-block-start:var(--space-96)}}.label{color:var(--color-text-muted)}.numeric{font-variant-numeric:lining-nums tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.rule-ink{border:0;border-block-start:var(--stroke-emphasis) solid var(--color-border-ink)}.rule-hair{border:0;border-block-start:var(--stroke-hairline) solid var(--color-border-hairline)}.prose{--flow:var(--space-24)}.prose>*+*{margin-block-start:var(--flow)}.prose>p,.prose>ul,.prose>ol,.prose>blockquote{max-width:var(--layout-measure)}.prose h2{font-family:var(--font-family-display);font-size:var(--size-heading-lg);line-height:var(--leading-snug);letter-spacing:var(--tracking-heading);border-block-start:var(--stroke-hairline) solid var(--color-border-hairline);margin-block-start:var(--space-64);padding-block-start:var(--space-16);scroll-margin-block-start:var(--space-96)}@media (width>=900px){.prose h2{margin-block-start:var(--space-96)}}.prose h3{font-family:var(--font-family-text);font-size:var(--size-heading-md);font-weight:var(--weight-semibold);margin-block-start:var(--space-32)}.prose ul,.prose ol{padding-inline-start:var(--space-24)}.prose li+li{margin-block-start:var(--space-8)}.prose li::marker{color:var(--color-text-muted)}.prose strong{font-weight:var(--weight-semibold)}.prose code{font-family:var(--font-family-annotation);background:var(--code-surface);color:var(--code-text);border-radius:var(--radius-2);padding:.15em .4em;font-size:.85em;font-stretch:87.5%}.prose table{border-collapse:collapse;width:100%;font-size:var(--size-body-sm);font-variant-numeric:lining-nums tabular-nums;margin-block-start:var(--space-32);display:block;overflow-x:auto}@media (width>=900px){.prose table{display:table}}.prose thead th{font-family:var(--font-family-annotation);font-size:var(--size-label-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;text-align:start;color:var(--table-header-text);padding:var(--space-8) var(--space-12);border-block-end:var(--stroke-emphasis) solid var(--color-border-ink);white-space:nowrap;font-stretch:87.5%}.prose tbody td{color:var(--table-cell-text);padding:var(--space-12);border-block-end:var(--stroke-hairline) solid var(--table-rule);vertical-align:top}.prose td.numeric,.prose th.numeric,.prose tbody td:has(+td:last-child):last-child{text-align:end}.prose blockquote{border-inline-start:var(--stroke-emphasis) solid var(--color-border-ink);font-family:var(--font-family-display);font-style:italic;font-size:var(--size-heading-lg);line-height:var(--leading-snug);padding-inline-start:var(--space-24)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip[data-astro-cid-pbhazpx6]{z-index:100;padding:var(--space-12) var(--space-16);background:var(--color-surface-sheet);color:var(--color-text-primary);border:var(--stroke-emphasis) solid var(--color-border-ink);text-decoration:none;position:absolute;inset-block-start:var(--space-8);inset-inline-start:var(--space-8);transform:translateY(-200%)}.skip[data-astro-cid-pbhazpx6]:focus{transform:translateY(0)}.mode[data-astro-cid-lvnbcmra]{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-pill);display:inline-flex}.btn[data-astro-cid-lvnbcmra]{min-block-size:30px;padding-inline:var(--space-12)}.snd[data-astro-cid-bqc7nllt]{min-block-size:34px}.hd[data-astro-cid-fzpbxy5g]{background:var(--header-surface);z-index:70;border-block-end:0;position:relative}.hd__inner[data-astro-cid-fzpbxy5g]{justify-content:space-between;align-items:center;gap:var(--space-24);padding-block:var(--space-8);display:flex}.hd__mark[data-astro-cid-fzpbxy5g]{color:var(--header-text);overflow-wrap:break-word;align-items:center;min-block-size:44px;min-inline-size:0;text-decoration:none;display:inline-flex}.hd__nav[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-24);display:flex}.hd__list[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-24);margin:0;padding:0;list-style:none;display:flex}.hd__link[data-astro-cid-fzpbxy5g]{color:var(--color-text-secondary);align-items:center;min-block-size:24px;text-decoration:none;display:inline-flex}.hd__link[data-astro-cid-fzpbxy5g]:hover,.hd__link[data-astro-cid-fzpbxy5g][aria-current=page]{color:var(--color-text-primary)}.hd__tools[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-8);display:flex}.hd__menu[data-astro-cid-fzpbxy5g]{display:none}.hd__panel[data-astro-cid-fzpbxy5g]{justify-content:space-between;align-items:center;gap:var(--space-16);padding-block:var(--space-16);border-block-start:var(--stroke-hairline) solid var(--header-rule);flex-wrap:wrap;display:flex}.hd__panel[data-astro-cid-fzpbxy5g][hidden]{display:none}.hd__list--stack[data-astro-cid-fzpbxy5g]{gap:var(--space-16)}@media (width<=719px){.hd__nav[data-astro-cid-fzpbxy5g]{display:none}.hd__menu[data-astro-cid-fzpbxy5g]{display:inline-flex}}@media (width>=720px){.hd__panel[data-astro-cid-fzpbxy5g]{display:none!important}}.tb[data-astro-cid-5kyhikxs]{background:var(--title-block-rule);border:var(--stroke-emphasis) solid var(--color-border-ink)}.tb--footer[data-astro-cid-5kyhikxs] .cell[data-astro-cid-5kyhikxs]:first-child .value[data-astro-cid-5kyhikxs]{font-family:var(--font-family-display);font-size:clamp(24px,2.4vw,32px);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.05}.cells[data-astro-cid-5kyhikxs]{grid-template-columns:repeat(var(--tb-cols), minmax(0, 1fr));gap:var(--stroke-hairline);margin:0;display:grid}.cell[data-astro-cid-5kyhikxs]{background:var(--title-block-surface);padding:var(--space-16) var(--space-24);gap:var(--space-8);min-inline-size:0;min-block-size:var(--space-96);flex-direction:column;display:flex}.cell--full[data-astro-cid-5kyhikxs]{grid-column:1/-1}.cell--empty[data-astro-cid-5kyhikxs]{min-block-size:var(--space-96)}.label[data-astro-cid-5kyhikxs]{color:var(--title-block-label);display:block}.value[data-astro-cid-5kyhikxs]{color:var(--title-block-value);font-size:var(--size-body-sm);line-height:var(--leading-normal);font-variant-numeric:lining-nums tabular-nums;overflow-wrap:anywhere;margin:0}.value--small[data-astro-cid-5kyhikxs]{color:var(--color-text-secondary)}.value[data-astro-cid-5kyhikxs] a{color:var(--color-annotation-measure);text-decoration-color:color-mix(in oklab, var(--color-annotation-measure) 45%, transparent);padding-block:var(--space-8);margin-block:calc(-1 * var(--space-8));display:inline-block}.tb--footer[data-astro-cid-5kyhikxs] .cell[data-astro-cid-5kyhikxs]{padding-block:var(--space-24);min-block-size:0}@media (width<=719px){.cells[data-astro-cid-5kyhikxs]{grid-template-columns:repeat(var(--tb-cols-mobile), minmax(0, 1fr))}.cell[data-astro-cid-5kyhikxs],.cell--empty[data-astro-cid-5kyhikxs]{min-block-size:0}.cell[data-astro-cid-5kyhikxs]{padding:var(--space-12) var(--space-16)}}@media (width<=479px){.cells[data-astro-cid-5kyhikxs]{grid-template-columns:minmax(0,1fr)}.cell--empty[data-astro-cid-5kyhikxs]{display:none}}.ft[data-astro-cid-nns7i3if]{background:var(--color-surface-page);color:var(--color-text-primary);padding-block:var(--space-64)}.ft__inner[data-astro-cid-nns7i3if]{gap:var(--stroke-hairline);background:var(--color-border-hairline);border:var(--stroke-hairline) solid var(--color-border-hairline);display:grid}.ins[data-astro-cid-d6seu65e]{display:none}[data-inspect=on] .ins[data-astro-cid-d6seu65e]{display:block}.ins__grid[data-astro-cid-d6seu65e]{z-index:80;pointer-events:none;position:fixed;inset:0}.ins__cols[data-astro-cid-d6seu65e]{gap:var(--layout-gutter);grid-template-columns:repeat(12,minmax(0,1fr));block-size:100%;display:grid}.ins__col[data-astro-cid-d6seu65e]{background:var(--color-inspect-grid)}.ins__legend[data-astro-cid-d6seu65e]{z-index:90;background:var(--color-inspect-tag-surface);color:var(--color-inspect-tag-text);padding:var(--space-8) var(--space-12);pointer-events:none;margin:0;position:fixed;inset-block-end:var(--space-16);inset-inline-start:var(--space-16)}[data-inspect=on] [data-component]{outline:var(--stroke-hairline) dashed var(--color-inspect-outline);outline-offset:2px}.ins-tag{z-index:85;background:var(--color-inspect-tag-surface);color:var(--color-inspect-tag-text);padding:2px var(--space-4);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;max-inline-size:calc(100vw - 8px);position:absolute;overflow:hidden}.ins-space{z-index:84;inline-size:var(--stroke-hairline);background:var(--dimension-line);pointer-events:none;position:absolute}.ins-space span{color:var(--dimension-label);background:var(--color-surface-page);padding-inline:var(--space-4);white-space:nowrap;position:absolute;inset-block-start:50%;inset-inline-start:var(--space-4);transform:translateY(-50%)}@media (width<=639px){.ins-tag,.ins-space{display:none}[data-inspect=on] [data-component]{outline:none}}.lb[data-astro-cid-utnzf2kr]{background:0 0;border:0;block-size:100%;max-block-size:100vh;inline-size:100%;max-inline-size:100vw;padding:0}.lb[data-astro-cid-utnzf2kr]::backdrop{background:var(--color-surface-sunken);opacity:.94}.lb__inner[data-astro-cid-utnzf2kr]{block-size:100%;padding:var(--space-16);gap:var(--space-12);flex-direction:column;display:flex}@media (width>=900px){.lb__inner[data-astro-cid-utnzf2kr]{padding:var(--space-32) var(--layout-margin-desktop)}}.lb__bar[data-astro-cid-utnzf2kr]{justify-content:space-between;align-items:center;gap:var(--space-24);flex:none;display:flex}.lb__cap[data-astro-cid-utnzf2kr]{color:var(--color-text-secondary);margin:0}.lb__close[data-astro-cid-utnzf2kr]{color:var(--color-text-primary);border:var(--stroke-hairline) solid var(--color-border-ink);background:var(--color-surface-sheet);padding:var(--space-8) var(--space-12);border-radius:var(--radius-2);flex:none;min-block-size:32px}.lb__img[data-astro-cid-utnzf2kr]{object-fit:contain;background:var(--figure-surface);border:var(--stroke-hairline) solid var(--figure-frame);flex:1;min-block-size:0;inline-size:100%}
