@layer quartz-base{.curius-date-view{min-width:0;color:var(--darkgray);overflow-wrap:anywhere;padding:1rem 0}.curius-date-view[hidden]{display:none}.curius-date-view .curius-date-heading{color:var(--dark)}.curius-date-view .curius-date-status,.curius-date-view .curius-date-list span{font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.curius-date-view progress{width:100%;height:.25rem;accent-color:var(--dark);display:block}.curius-date-view .curius-date-list{margin:0;padding:0;list-style:none}.curius-date-view .curius-date-list li{border-top:1px solid var(--gray);gap:.25rem;padding:.75rem 0;display:grid}.curius-date-view .curius-date-list a{color:var(--dark);background:0 0}.curius-date-view .curius-date-list span{color:var(--darkgray)}.curius-date-view button{border:1px solid var(--darkgray);border-radius:var(--radius-none);min-height:1.75rem;color:var(--dark);background:var(--light);cursor:var(--cursor-pointer,pointer);padding:.25rem .5rem}.curius-date-view a:focus-visible,.curius-date-view button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.curius-date-view a:hover{color:var(--dark);background:0 0;text-decoration:underline}}@media (pointer:coarse){.curius-date-view button{min-height:44px}}.curius-date-view[data-curius-page]{overscroll-behavior:contain;flex:1 1 0;min-height:0;overflow-y:auto}.curius-date-reset{font-family:var(--codeFont);font-size:var(--text-meta);margin-left:1rem}.curius-list-status progress{width:100%;height:.25rem;accent-color:var(--dark);margin-top:.5rem;display:block}@charset "UTF-8";.headings-modal{--headings-line:color-mix(in srgb, var(--gray) 55%, transparent);--headings-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--headings-selected:color-mix(in srgb, var(--secondary) 18%, var(--headings-surface));--headings-control:1.75rem;--headings-offset:.75rem, 0;border:1px solid var(--headings-line);border-radius:var(--radius-none);background:var(--light);width:min(26rem,100vw - 2rem);max-width:none;height:fit-content;max-height:min(70dvh,44rem);color:var(--darkgray);overscroll-behavior:contain;margin:auto 0;padding:0;position:fixed;inset:0 1rem 0 auto;overflow:hidden}.headings-modal:focus{outline:none}.headings-modal[open]{opacity:1;flex-direction:column;transition:opacity .22s cubic-bezier(.23,1,.32,1),transform .22s cubic-bezier(.23,1,.32,1);display:flex;transform:none}@starting-style{.headings-modal[open]{opacity:0;transform:translate(var(--headings-offset))}}.headings-modal::backdrop{background:0 0}@media (max-width:800px){.headings-modal{--headings-offset:0, 1.5rem;border-inline:0;width:100%;max-height:60dvh;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;margin:0;inset:auto 0 0}}@media (pointer:coarse){.headings-modal{--headings-control:44px}}@media (prefers-reduced-motion:reduce){.headings-modal{--headings-offset:0, 0}}.headings-modal button:focus-visible{outline:2px solid var(--secondary);outline-offset:-2px}.headings-modal kbd{width:auto;color:var(--dark);font-size:inherit;line-height:inherit;border:0;padding:0;display:inline}.headings-modal-header{min-height:calc(var(--headings-control) + .5rem + 1px);border-bottom:1px solid var(--headings-line);font-family:var(--codeFont);flex:none;align-items:center;gap:.5rem;padding-block:.25rem;padding-inline:.75rem .25rem;font-size:.7rem;display:flex}.headings-modal-header>#headings-modal-title{color:var(--dark);margin-inline:0 auto}.headings-modal-header>.headings-modal-close{width:var(--headings-control);height:var(--headings-control);color:var(--darkgray);background:0 0;flex:none;justify-content:center;align-items:center;padding:0}.headings-modal-header>.headings-modal-close svg{width:1rem;height:1rem}@media (hover:hover) and (pointer:fine){.headings-modal-header>.headings-modal-close:hover{color:var(--dark);background:var(--headings-surface)}}.headings-modal-help{border-bottom:1px solid var(--headings-line);color:var(--darkgray);font-family:var(--codeFont);white-space:nowrap;text-overflow:ellipsis;flex:none;margin:0;padding:.4rem .75rem;font-size:.62rem;line-height:1.6;overflow:hidden}.headings-modal-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--headings-line) transparent;flex:auto;min-height:0;padding:0;scroll-padding-block:.5rem;overflow-y:auto}.headings-list{border:0;margin:0;padding:0;list-style:none}.headings-list>li{line-height:inherit;margin:0;padding:0}.headings-list>li+li{border-top:1px solid var(--headings-line)}.headings-list>.heading-empty{color:var(--gray);font-family:var(--codeFont);text-align:center;padding:1.5rem .75rem;font-size:.7rem}.heading-item{box-sizing:border-box;--row-color:var(--darkgray);min-height:2rem;color:var(--row-color);font-family:var(--bodyFont);background:0 0;grid-template-columns:1rem minmax(0,1fr);align-items:center;column-gap:.4rem;padding-block:.4rem;padding-inline:.5rem .75rem;font-size:.85rem;font-weight:400;line-height:1.35;text-decoration:none;display:grid}.heading-item[data-depth="0"]{--row-color:var(--dark)}.heading-item:hover{color:var(--row-color);text-decoration:none}.heading-item.is-active>.heading-text{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}.heading-item:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.heading-item:not(.is-active):hover>.heading-text{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}}@media (pointer:coarse){.heading-item{min-height:44px}}.heading-item[aria-current=location]>.heading-hint:empty:before{content:"•";color:var(--gray)}.headings-modal[data-mode=pick] .heading-item:not([aria-keyshortcuts])>.heading-text{opacity:.4}.heading-hint{color:var(--dark);font-weight:600;font-family:var(--codeFont);text-align:center;font-size:.7rem}.heading-text{min-width:0;overflow-wrap:anywhere;text-wrap:pretty;padding-inline-start:calc(var(--depth,0) * .875rem)}.heading-text .katex{color:inherit;font-size:1.05em}.heading-text code{font-size:.85em}.press-kit{--pk-line:color-mix(in srgb, var(--gray) 55%, transparent);--pk-cell-line:color-mix(in srgb, var(--gray) 55%, var(--light));--pk-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--pk-selected:color-mix(in srgb, var(--secondary) 26%, var(--light));--pk-control:1.75rem;--pk-meta:max(12px, .66rem);--pk-pad:.85rem;--pk-offset:0, .75rem;--control-height:var(--pk-control);--control-font-size:var(--pk-meta);--control-surface:var(--pk-surface);--control-focus:var(--dark);box-sizing:border-box;border-radius:var(--radius-none);background:var(--light);width:100%;max-width:none;height:100dvh;max-height:none;color:var(--darkgray);text-align:start;text-wrap:wrap;overscroll-behavior:contain;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.press-kit :where(*){text-wrap:wrap}.press-kit:focus{outline:none}.press-kit[open]{opacity:1;flex-direction:column;transition:opacity .22s cubic-bezier(.23,1,.32,1),transform .22s cubic-bezier(.23,1,.32,1);display:flex;transform:none}@starting-style{.press-kit[open]{opacity:0;transform:translate(var(--pk-offset))}}.press-kit::backdrop{background:color-mix(in srgb, var(--dark) 14%, transparent)}@media (max-width:800px){.press-kit{--pk-offset:0, 1.5rem;padding-bottom:env(safe-area-inset-bottom)}}@media (pointer:coarse){.press-kit{--pk-control:44px}}@media (prefers-reduced-motion:reduce){.press-kit{--pk-offset:0, 0}}.press-kit :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit kbd{width:auto;color:var(--dark);font-size:inherit;line-height:inherit;border:0;padding:0;display:inline}.press-kit[data-tab=links] [data-for=image],.press-kit:not([data-tab=links]) [data-for=links],.press-kit:not([data-tab=quote]) [data-for=quote],.press-kit:not([data-tab=note]) [data-for=note],.press-kit:not([data-subject=page]) [data-page-only],.press-kit:not([data-training=true]):not([data-subject=entry]) [data-activity-only],.press-kit:not([data-training=true]) [data-training-options],.press-kit:not([data-subject=day]) [data-day-only],.press-kit[data-training=true] [data-note-only],.press-kit[data-subject=calendar] [data-note-only],.press-kit[data-citation=false] :is([data-tab=quote],[data-citation-only]){display:none}.press-kit [hidden]{display:none!important}.press-kit-metric-group{border:1px solid var(--pk-line);font:var(--pk-meta)/1.5 var(--codeFont);margin-block:0;padding:.45rem}.press-kit-metric-group+.press-kit-metric-group{border-top:0}.press-kit-metric-group summary{cursor:var(--cursor-pointer,pointer);box-sizing:border-box;min-height:24px;padding-block:.35rem}@media (pointer:coarse){.press-kit-metric-group summary{align-content:center;min-height:44px}}.press-kit-metric-group .press-kit-data-grid{align-items:stretch;margin-top:0}.press-kit-data-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;min-width:0;display:grid}.press-kit-data-grid:not(.press-kit-block-list,.press-kit-overlay-background){gap:1px;padding:1px}.press-kit-data-grid:not(.press-kit-block-list,.press-kit-overlay-background) .press-kit-data-toggle{outline:1px solid var(--pk-cell-line);outline-offset:0;border:0}.press-kit-data-grid:not(.press-kit-block-list,.press-kit-overlay-background) .press-kit-data-toggle:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-data-grid:not(.press-kit-block-list,.press-kit-overlay-background) .press-kit-data-toggle:has(input:focus-visible){outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-metric-actions{gap:.4rem;margin-bottom:.4rem;display:flex}.press-kit-metric-actions>.g-button{flex:1 0 0}.press-kit-data-filler{outline:1px solid var(--pk-cell-line);background:var(--light)}.press-kit-data-fields{display:contents}.press-kit[data-subject=entry] [data-activity-only] .press-kit-data-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.press-kit-block-display{min-width:0}.press-kit-block-display summary{color:var(--darkgray);font:var(--pk-meta)/1.5 var(--codeFont);cursor:var(--cursor-pointer,pointer);padding-block:.35rem}.press-kit-block-display .press-kit-data-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-block:.3rem .5rem}@media (pointer:coarse){.press-kit-block-display summary{min-height:44px;line-height:calc(44px - .7rem)}}.press-kit-data-grid--compact .press-kit-data-label{white-space:nowrap;overflow-wrap:normal;text-overflow:ellipsis;overflow:hidden}.press-kit-block-list{grid-template-columns:minmax(0,1fr)}.press-kit-overlay-background{border:1px solid var(--pk-line);margin-top:.4rem}.press-kit .press-kit-overlay-background>.press-kit-data-toggle{border:0}.press-kit .press-kit-overlay-background>.press-kit-data-toggle+.press-kit-data-toggle{border-inline-start:1px solid var(--pk-line)}.press-kit .press-kit-data-toggle{border:1px solid var(--pk-line);border-radius:var(--radius-none);background:var(--light);min-width:0;max-width:100%;min-height:1.5rem;color:var(--darkgray);font:var(--pk-meta)/1.3 var(--codeFont);text-align:start;cursor:var(--cursor-pointer,pointer);flex-direction:column;justify-content:center;align-items:stretch;gap:.2rem;padding:.15rem .4rem;display:flex;position:relative}.press-kit .press-kit-data-toggle[aria-pressed=true]{color:var(--dark);background:var(--pk-selected)}.press-kit .press-kit-data-toggle:has(input:checked){color:var(--dark);background:var(--pk-selected)}.press-kit .press-kit-data-toggle[aria-pressed=true] .press-kit-data-label{text-underline-offset:.2em;text-decoration:underline}.press-kit .press-kit-data-toggle:has(input:checked) .press-kit-data-label{text-underline-offset:.2em;text-decoration:underline}.press-kit .press-kit-data-toggle input{opacity:0;width:100%;height:100%;cursor:var(--cursor-pointer,pointer);margin:0;position:absolute;inset:0}.press-kit .press-kit-data-toggle:has(input:focus-visible){outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit .press-kit-data-toggle small{color:var(--darkgray);font-size:inherit;font-family:var(--codeFont);overflow-wrap:anywhere}@media (pointer:coarse){.press-kit .press-kit-data-toggle{min-height:44px}}@media (hover:hover) and (pointer:fine){.press-kit .press-kit-data-toggle:not([aria-pressed=true],:has(input:checked)):hover{background:var(--pk-surface)}}.press-kit-data-label{overflow-wrap:anywhere}.press-kit-metric-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.press-kit .press-kit-data-toggle--wide{grid-column:1/-1;grid-template-columns:minmax(4ch,1fr) minmax(0,auto);align-items:center;gap:.5rem;display:grid}.press-kit .press-kit-data-toggle--wide small{text-align:end;text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-inline-start:0;overflow:hidden}.press-kit .press-kit-data-toggle--wide .press-kit-data-label{min-width:0;overflow:hidden}.press-kit .press-kit-data-toggle--wide .press-kit-metric-label{display:block}.press-kit[data-transparent=true] .press-kit-frame{background-color:#505050;background-image:conic-gradient(#686868 25%, transparent 0 50%, #686868 0 75%, transparent 0);background-size:1rem 1rem}.press-kit-header{min-height:calc(var(--pk-control) + .5rem + 1px);padding-block:.25rem;padding-inline:var(--pk-pad);border-bottom:1px solid var(--pk-line);font-family:var(--codeFont);flex:none;align-items:center;gap:.75rem;font-size:.7rem;display:flex}.press-kit-header>#press-kit-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dark);flex:0 auto;overflow:hidden}.press-kit-header>.press-kit-tabs{margin-inline:0 auto}.press-kit-header>.press-kit-close{width:var(--pk-control);height:var(--pk-control);flex:none;margin-inline-end:calc((1rem - var(--pk-control)) / 2)}.press-kit-header>.press-kit-close svg{width:1rem;height:1rem}.press-kit-tabs{gap:.15rem;display:flex}.press-kit-tab{min-height:calc(var(--pk-control) - .25rem);color:var(--darkgray);font-family:var(--codeFont);background:0 0;align-items:center;padding:0 .55rem;font-size:.7rem}.press-kit-tab[aria-selected=true]{color:var(--dark);background:var(--pk-selected);text-underline-offset:.2em;text-decoration:underline}@media (hover:hover) and (pointer:fine){.press-kit-tab[aria-selected=false]:hover{color:var(--dark);background:var(--pk-surface)}}.press-kit-body{flex:auto;grid-template-columns:minmax(0,1fr) 21rem;min-height:0;display:grid}@media (max-width:800px){.press-kit-body{grid-template-rows:minmax(0,42%) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}}.press-kit-stage{border-right:1px solid var(--pk-line);background:var(--pk-surface);flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:0;margin:0;padding:1.25rem;display:flex;position:relative}@media (max-width:800px){.press-kit-stage{border-right:0;border-bottom:1px solid var(--pk-line);padding:.75rem}}.press-kit-viewport,.press-kit-link-frame{width:100%;height:100%;min-height:0}.press-kit-viewport{overflow-anchor:none;overscroll-behavior:contain;scrollbar-width:thin;overflow:auto}.press-kit-viewport:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-link-frame{justify-content:center;align-items:center;display:flex}.press-kit-frame{box-sizing:border-box;justify-content:center;align-items:center;width:max-content;min-width:100%;height:max-content;min-height:100%;padding:2px;display:flex;position:relative}.press-kit-canvas{outline:1px solid var(--pk-line);flex:none;width:auto;max-width:none;height:auto;max-height:none;display:block}.press-kit-preview-tools{--pdf-instrument-height:1.5rem;--pdf-instrument-font:.75rem;--pdf-instrument-icon:.75rem;--pdf-instrument-frame:var(--darkgray);--pdf-instrument-line:color-mix(in srgb, var(--gray) 55%, transparent);--pdf-instrument-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--pdf-instrument-selected:color-mix(in srgb, var(--secondary) 18%, var(--pdf-instrument-surface))}@media (pointer:coarse){.press-kit-preview-tools{--pdf-instrument-height:44px;--pdf-instrument-font:max(1rem, 16px);--pdf-instrument-icon:1rem}}.press-kit-preview-tools{font-family:var(--codeFont);font-size:var(--pdf-instrument-font);font-variant-numeric:tabular-nums;text-transform:lowercase;--pdf-instrument-height:calc(var(--pk-control) + 2px);--pdf-instrument-font:var(--pk-meta);--pdf-instrument-icon:18px;--pdf-instrument-surface:var(--pk-surface);--pdf-instrument-selected:var(--pk-selected);z-index:2;border:1px solid var(--darkgray);background:var(--light);max-width:calc(100% - 1.5rem);line-height:1;position:absolute;bottom:.75rem;right:.75rem}.press-kit-preview-tools summary{min-width:0;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);flex:none;justify-content:center;align-items:center;padding:0 .5rem;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.press-kit-preview-tools summary svg{width:var(--pdf-instrument-icon);height:var(--pdf-instrument-icon);pointer-events:none}.press-kit-preview-tools summary:active:not(:disabled){color:var(--dark);background:var(--pdf-instrument-surface)}.press-kit-preview-tools summary[aria-pressed=true]{color:var(--dark);background:var(--pdf-instrument-selected)}.press-kit-preview-tools summary:disabled{opacity:.5;cursor:var(--cursor-not-allowed,not-allowed)}@media (hover:hover) and (pointer:fine){.press-kit-preview-tools summary:hover:not(:disabled,[aria-pressed=true]){color:var(--dark);background:var(--pdf-instrument-surface)}}.press-kit-preview-tools summary:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.press-kit-preview-tools summary{min-height:var(--pk-control);justify-content:space-between;gap:1rem;list-style:none;display:flex}.press-kit-preview-tools summary::-webkit-details-marker{display:none}.press-kit-preview-tools[open]>summary{border-bottom:1px solid var(--pk-line)}.press-kit-preview-tools[open]>summary svg{transform:rotate(180deg)}.press-kit-preview-zoom{height:var(--pdf-instrument-height);box-sizing:border-box;border:1px solid var(--pdf-instrument-frame);border-radius:var(--radius-none);border:0;flex:none;align-items:stretch;width:100%;min-height:0;display:inline-flex}.press-kit-preview-zoom>*{box-sizing:border-box;height:100%;min-height:0;color:var(--dark);font:inherit;border-radius:var(--radius-none);background:0 0;border:0;margin:0}.press-kit-preview-zoom>:not(:first-child){border-inline-start:1px solid var(--pdf-instrument-line)}.press-kit-preview-zoom button{min-width:0;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);aspect-ratio:1;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.press-kit-preview-zoom button svg{width:var(--pdf-instrument-icon);height:var(--pdf-instrument-icon);pointer-events:none}.press-kit-preview-zoom button:active:not(:disabled){color:var(--dark);background:var(--pdf-instrument-surface)}.press-kit-preview-zoom button[aria-pressed=true]{color:var(--dark);background:var(--pdf-instrument-selected)}.press-kit-preview-zoom button:disabled{opacity:.5;cursor:var(--cursor-not-allowed,not-allowed)}@media (hover:hover) and (pointer:fine){.press-kit-preview-zoom button:hover:not(:disabled,[aria-pressed=true]){color:var(--dark);background:var(--pdf-instrument-surface)}}.press-kit-preview-zoom button:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.press-kit-preview-zoom [data-preview-zoom=actual]{min-width:0;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);flex:none;justify-content:center;align-items:center;padding:0 .5rem;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.press-kit-preview-zoom [data-preview-zoom=actual] svg{width:var(--pdf-instrument-icon);height:var(--pdf-instrument-icon);pointer-events:none}.press-kit-preview-zoom [data-preview-zoom=actual]:active:not(:disabled){color:var(--dark);background:var(--pdf-instrument-surface)}.press-kit-preview-zoom [data-preview-zoom=actual][aria-pressed=true]{color:var(--dark);background:var(--pdf-instrument-selected)}.press-kit-preview-zoom [data-preview-zoom=actual]:disabled{opacity:.5;cursor:var(--cursor-not-allowed,not-allowed)}@media (hover:hover) and (pointer:fine){.press-kit-preview-zoom [data-preview-zoom=actual]:hover:not(:disabled,[aria-pressed=true]){color:var(--dark);background:var(--pdf-instrument-surface)}}.press-kit-preview-zoom [data-preview-zoom=actual]:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.press-kit-preview-zoom [data-preview-zoom=actual]{aspect-ratio:auto}.press-kit-preview-zoom output{white-space:nowrap;flex:1;justify-content:center;align-items:center;min-width:calc(4ch + 1rem + 1px);padding:0 .5rem;display:inline-flex}.press-kit-unfurl{border:1px solid var(--pk-line);background:var(--light);flex-direction:column;width:min(100%,30rem);display:flex}.press-kit-unfurl-image{aspect-ratio:1200/630;object-fit:cover;border-bottom:1px solid var(--pk-line);background:var(--pk-surface);width:100%;display:block}.press-kit-unfurl-text{gap:.15rem;padding:.5rem .65rem .6rem;display:grid}.press-kit-unfurl-site{color:var(--darkgray);font-family:var(--codeFont);font-size:.6rem}.press-kit-unfurl-title{color:var(--dark);font-size:.85rem;line-height:1.3}.press-kit-caption{border-top:1px solid var(--pk-line);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--pk-meta);font-variant-numeric:tabular-nums;padding:.5rem;line-height:1.5}.press-kit-controls{min-width:0;min-height:0;padding:var(--pk-pad) var(--pk-pad) 1rem;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pk-line) transparent;overflow-y:auto}.press-kit-group{flex-direction:column;gap:.75rem;display:flex}.press-kit-field{border:0;flex-direction:column;gap:.4rem;min-width:0;margin:0;padding:0;display:flex}.press-kit-field>legend,.press-kit-legend{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--pk-meta);text-transform:lowercase;margin:0 0 .4rem;padding:0;line-height:1.5}.press-kit-field>.press-kit-legend{margin:0}.press-kit-segments{border:1px solid var(--pk-line);background:var(--pk-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.press-kit-segment{box-sizing:border-box;min-width:0;min-height:var(--pk-control);background:var(--light);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--pk-meta);text-align:center;white-space:nowrap;cursor:var(--cursor-pointer,pointer);border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.35rem .45rem;font-weight:400;line-height:1.2;display:flex;position:relative}.press-kit-segment input{opacity:0;width:100%;height:100%;cursor:var(--cursor-pointer,pointer);margin:0;position:absolute;inset:0}.press-kit-segment small{color:var(--darkgray);font-size:inherit}.press-kit-segment[aria-pressed=true]{color:var(--dark);background:var(--pk-selected)}.press-kit-segment:has(input:checked){color:var(--dark);background:var(--pk-selected)}.press-kit-segment[aria-pressed=true]{text-underline-offset:.2em;text-decoration:underline}.press-kit-segment:has(input:checked)>span{text-underline-offset:.2em;text-decoration:underline}.press-kit-segment:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-segment:has(input:focus-visible){outline:2px solid var(--control-focus);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.press-kit-segment:not(:has(input:checked),[aria-pressed=true]):hover{color:var(--dark);background:var(--pk-surface)}}.press-kit-swatch i{outline:1px solid var(--pk-line);outline-offset:-1px;align-self:stretch;height:.85rem;display:block}.press-kit-swatch[data-theme=papier] i{background:#fffcf0}.press-kit-swatch[data-theme=encre] i{background:#100f0f}.press-kit-swatch[data-theme=rose] i{background:#fdb2a2}.press-kit-swatch[data-theme=sauge] i{background:#cdd597}.press-kit-chart-setting{margin-block-start:var(--space-3)}.press-kit-chart-setting>.press-kit-hint{margin-block-start:var(--space-1)}.press-kit-chart-setting>.press-kit-legend{margin-block-end:var(--space-1);display:block}.press-kit-chart-setting>.press-kit-segments{grid-template-columns:repeat(2,minmax(0,1fr))}.press-kit-chart-setting .press-kit-segment:has(input:disabled){color:var(--gray);background:var(--light);cursor:var(--cursor-default,default)}.press-kit-chart-setting .press-kit-segment:has(input:disabled) input{cursor:var(--cursor-default,default)}.press-kit-includes{flex-wrap:wrap;display:flex}.press-kit-includes>.press-kit-segment{flex:1 0 auto}.press-kit-actions{border:1px solid var(--pk-line);gap:0;display:flex}.press-kit-actions>.g-button{white-space:nowrap;border:0;flex:1 0 auto;padding-inline:.3rem}.press-kit-actions>.g-button+.g-button{border-inline-start:1px solid var(--pk-line)}.press-kit-actions>.g-button:active:not(:disabled){transform:none}.press-kit-textarea,.press-kit-input{box-sizing:border-box;border:1px solid var(--pk-line);border-radius:var(--radius-none);background:var(--pk-surface);width:100%;min-width:0;color:var(--dark);margin:0;padding:.45rem .5rem}.press-kit-textarea{min-height:5.5rem;font-family:var(--bodyFont);font-size:var(--pk-meta);field-sizing:content;resize:none;line-height:1.45;overflow:hidden}.press-kit-input{min-height:var(--pk-control);font-family:var(--codeFont);font-size:var(--pk-meta);text-overflow:ellipsis}@media (pointer:coarse){.press-kit :is(.press-kit-input,.press-kit-textarea){font-size:max(16px,1rem)}}.press-kit-hint{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--pk-meta);font-variant-numeric:tabular-nums;margin:0;line-height:1.6}.press-kit-hint code{color:var(--darkgray);font-size:inherit;background:0 0;border:0;padding:0}.press-kit-hint[data-over]{color:var(--rose)}.press-kit-chips{flex-wrap:wrap;gap:.4rem;display:flex}.press-kit-url-row{gap:.4rem;display:flex}.press-kit-url-row>.press-kit-input{flex:auto}a.press-kit-chip{box-sizing:border-box;min-height:var(--control-height);border:1px solid var(--lightgray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 88%, transparent);color:var(--dark);justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s,transform .12s cubic-bezier(.23,1,.32,1);display:inline-flex}a.press-kit-chip:active{transform:scale(.99)}@media (hover:hover) and (pointer:fine){a.press-kit-chip:hover{background:color-mix(in srgb, var(--control-accent,var(--secondary)) 5%, var(--light));color:var(--dark)}}@media (prefers-reduced-motion:reduce){a.press-kit-chip{transition:none}a.press-kit-chip:active{transform:none}}.press-kit-chips>.press-kit-intent{width:var(--pk-control);min-width:var(--pk-control);color:var(--darkgray);padding:0}.press-kit-chips>.press-kit-intent svg{width:.85rem;height:.85rem}.press-kit-actions>.g-button[data-action=download]{background:var(--dark);color:var(--light)}.press-kit-actions>.g-button[data-action=download]:focus-visible{outline-color:var(--light)}@media (hover:hover) and (pointer:fine){.press-kit-actions>.g-button[data-action=download]:hover{background:color-mix(in srgb, var(--dark) 86%, var(--light));color:var(--light)}}:is(.press-kit-anchor,.press-kit-overlay) .press-kit-select,:is(.press-kit-anchor,.press-kit-overlay) .press-kit-select .g-select-trigger{width:100%}:is(.press-kit-anchor,.press-kit-overlay) .press-kit-select .g-select-menu{max-height:16rem}.press-kit-help{padding:.4rem var(--pk-pad);border-top:1px solid var(--pk-line);color:var(--darkgray);font-family:var(--codeFont);white-space:nowrap;text-overflow:ellipsis;flex:none;margin:0;font-size:.6rem;line-height:1.6;overflow:hidden}@media (pointer:coarse){.press-kit-help{display:none}}.press-kit-pill{z-index:900;border-radius:var(--radius-none);background:var(--dark);min-height:1.5rem;color:var(--light);font-family:var(--codeFont);border:0;align-items:center;padding:0 .55rem;font-size:.66rem;animation:.14s cubic-bezier(.23,1,.32,1) press-kit-pill-in;display:inline-flex;position:absolute}@media (pointer:coarse){.press-kit-pill{min-height:2.25rem;padding:0 .8rem}}.press-kit-pill:focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:2px}@media (prefers-reduced-motion:reduce){.press-kit-pill{animation:none}}@keyframes press-kit-pill-in{0%{opacity:0;transform:translateY(-.25rem)}}.press-kit-editor-swatch{box-sizing:border-box;background:var(--light);height:100%;cursor:var(--cursor-pointer,pointer);border:0;border-radius:0;padding:0;display:grid}.press-kit-editor-swatch[data-empty]>span{background:linear-gradient(to top right, transparent calc(50% - .5px), var(--pk-line) calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px))}.press-kit-editor-swatch:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-color-picker{box-sizing:border-box;border:1px solid var(--pk-line);background:var(--light);color:var(--dark);font:var(--pk-meta)/1.2 var(--codeFont);font-variant-numeric:tabular-nums;border-radius:0;margin:0;padding:.5rem;position:fixed;inset:auto}.press-kit-color-picker:popover-open{gap:.5rem;display:grid}.press-kit-color-picker:not([data-placed]){visibility:hidden}.press-kit-color-picker :where([role=slider]){border:1px solid var(--pk-line);touch-action:none;cursor:var(--cursor-crosshair,crosshair);position:relative}.press-kit-color-picker :where([role=slider]):after{content:"";left:var(--x);box-sizing:border-box;pointer-events:none;border:1px solid #fff;outline:1px solid #000;position:absolute;transform:translate(-50%)}.press-kit-color-picker :where([role=slider]):focus-visible{outline:2px solid var(--control-focus);outline-offset:1px}.press-kit-color-picker :where([role=slider])>canvas{width:100%;height:100%;display:block}.press-kit-color-plane{aspect-ratio:16/9}.press-kit-color-plane:after{top:var(--y);width:9px;height:9px;transform:translate(-50%,-50%)}.press-kit-color-hue{height:.7rem}.press-kit-color-hue:after{width:5px;top:-2px;bottom:-2px}.press-kit-color-picker .press-kit-color-channels{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:.35rem;display:grid}.press-kit-color-picker .press-kit-color-channels label{min-width:0;color:var(--darkgray);gap:.2rem;margin:0;display:grid}.press-kit-color-picker .press-kit-color-channels input{box-sizing:border-box;width:100%;height:var(--pk-control);border:1px solid var(--pk-line);background:var(--pk-surface);color:var(--dark);font:inherit;text-align:end;border-radius:0;padding:0 .35rem}.press-kit-color-picker .press-kit-color-channels input:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-color-row{gap:.2rem;display:grid}.press-kit-color-row>span{color:var(--darkgray)}.press-kit-color-presets{grid-template-columns:repeat(var(--cells,10), minmax(0, 1fr));border:1px solid var(--pk-line);background:var(--pk-line);gap:1px;display:grid}.press-kit-color-presets button{aspect-ratio:1;min-width:0;cursor:var(--cursor-pointer,pointer);border:0;border-radius:0;padding:0}.press-kit-color-presets button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--light)}.press-kit-color-presets button:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-color-presets>span{background:var(--light)}.press-kit-color-presets>.press-kit-color-dropper{background:var(--light);color:var(--darkgray);place-items:center;display:grid}.press-kit-color-presets>.press-kit-color-dropper svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;width:66%;max-width:16px}.press-kit-color-presets>.press-kit-color-dropper rect{fill:currentColor;stroke:none}@media (hover:hover) and (pointer:fine){.press-kit-color-presets>.press-kit-color-dropper:hover{color:var(--dark);background:var(--pk-surface)}}@media (pointer:coarse){.press-kit-color-presets{grid-template-columns:repeat(6,minmax(0,1fr))}.press-kit-color-picker .press-kit-color-channels input{font-size:max(16px,1rem)}}.press-kit-editor{border-top:1px solid var(--pk-line);font:var(--pk-meta)/1.5 var(--codeFont);margin-top:.75rem;padding-block:0 .5rem}.press-kit-editor>div{gap:.5rem;display:grid}.press-kit-editor summary{color:var(--dark);cursor:var(--cursor-pointer,pointer);padding-block:.4rem;position:relative}.press-kit-editor summary:not([data-help-dismissed]):is(:focus-visible,:has(.press-kit-editor-label:hover),:has(.press-kit-editor-help:hover)) .press-kit-editor-help{visibility:visible}.press-kit-editor p{font-size:inherit;margin:0;line-height:1.5}.press-kit-editor label{gap:.25rem;min-width:0;margin:0;display:grid}.press-kit-editor input{box-sizing:border-box;width:100%;min-width:0;min-height:var(--pk-control);border:1px solid var(--pk-line);border-radius:var(--radius-none);background:var(--pk-surface);color:var(--dark);font:var(--control-font-size)/1.3 var(--codeFont);font-variant-numeric:tabular-nums;padding:.4rem}.press-kit-editor input[type=number]{appearance:textfield;text-align:right;text-underline-offset:.2em;background:0 0;border:0;padding:0}.press-kit-editor input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.press-kit-editor input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}@media (hover:hover) and (pointer:fine){.press-kit-editor input[type=number]:hover:not(:focus){-webkit-text-decoration:underline dotted var(--darkgray);text-decoration:underline dotted var(--darkgray)}}.press-kit-editor input[type=number]:focus{-webkit-text-decoration:underline solid var(--control-focus) 2px;text-decoration:underline solid var(--control-focus) 2px;outline:none}.press-kit-editor fieldset{border:0;min-width:0;margin:0;padding:0}.press-kit-editor fieldset>*+*{margin-block-start:.4rem}.press-kit-editor legend{box-sizing:border-box;overflow-wrap:anywhere;max-width:100%;padding:0}.press-kit-editor :is(.g-select-trigger,.g-button){border-color:var(--pk-line)}@media (pointer:coarse){.press-kit-editor summary{min-height:44px}.press-kit-editor input{font-size:max(16px,1rem)}}.press-kit-editor-help{z-index:2;box-sizing:border-box;border:1px solid var(--pk-line);background:var(--light);width:100%;color:var(--darkgray);font:var(--pk-meta)/1.5 var(--bodyFont);cursor:var(--cursor-default,default);visibility:hidden;padding:.6rem;position:absolute;bottom:100%;left:0}.press-kit-editor-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.press-kit-editor-toolbar>.press-kit-segment:disabled{background:var(--light);color:var(--gray);cursor:var(--cursor-default,default)}.press-kit-editor-toolbar>.press-kit-editor-rulers-toggle{grid-column:1/-1}.press-kit-editor>div>label,.press-kit-editor-field{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:.5rem;min-width:0;margin:0;display:grid}.press-kit-editor>div>label:has(input[type=text]){grid-template-columns:minmax(0,1fr);gap:.25rem}.press-kit-editor-field:has(input[type=text]){grid-template-columns:minmax(0,1fr);gap:.25rem}.press-kit-editor>div>label .g-select,.press-kit-editor>div>label .g-select-trigger,.press-kit-editor-field .g-select,.press-kit-editor-field .g-select-trigger{width:100%;min-width:0}.press-kit-editor-actions{flex-wrap:wrap;gap:.35rem;display:flex}.press-kit-editor-color{gap:.25rem;display:grid}.press-kit-editor-color>.press-kit-segments{grid-template-columns:repeat(3,minmax(0,1fr))}.press-kit-editor-color-custom{grid-template-columns:var(--pk-control) minmax(0, 1fr);border:1px solid var(--pk-line);background:var(--pk-line);gap:1px;display:grid}.press-kit-editor-color-custom input{height:var(--pk-control);border:0;padding-block:0}.press-kit-editor-color-custom input:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit-editor-view{align-items:center;gap:.6rem;margin:0;display:flex}.press-kit-editor-view output{color:var(--darkgray);font:var(--control-font-size) var(--codeFont);font-variant-numeric:tabular-nums}.press-kit-frame[data-editor-rulers]{box-sizing:border-box;padding-top:24px;padding-left:24px}.press-kit-editor-rulers{pointer-events:none;color:var(--darkgray);position:absolute}.press-kit-editor-rulers svg{font:9px var(--codeFont);display:block;overflow:hidden}.press-kit-editor-rulers text{fill:currentColor}.press-kit-editor-rulers path{stroke:currentColor;fill:none;stroke-width:1px}.press-kit-editor-rulers .press-kit-ruler-surface{fill:var(--pk-surface)}.press-kit-editor-rulers .press-kit-ruler-selection{fill:var(--secondary);color:var(--secondary)}.press-kit-editor-rulers .press-kit-ruler-selection path{stroke-dasharray:3 3}.press-kit-editor-rulers .press-kit-ruler-pointer{color:var(--dark)}.press-kit-editor-fields{border:1px solid var(--pk-line);background:var(--pk-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.press-kit-editor-fields>label{background:var(--light);padding:.3rem .4rem .4rem}.press-kit-editor-overlay{--pk-editor-cursor:crosshair;pointer-events:auto;touch-action:none;cursor:var(--cursor-crosshair,crosshair);position:absolute}.press-kit-editor-overlay:focus-visible{outline:2px solid var(--control-focus);outline-offset:3px}.press-kit-editor-layer{pointer-events:none;position:absolute}.press-kit .press-kit-editor-select{border-radius:var(--radius-none);pointer-events:auto;touch-action:none;width:100%;height:100%;min-height:8px;cursor:var(--cursor-grab,grab);background:0 0;border:1px solid #0000;padding:0;position:absolute;inset:0}.press-kit .press-kit-editor-select:hover{border-color:var(--secondary)}.press-kit .is-selected>.press-kit-editor-select{border-color:var(--secondary);outline:1px solid var(--light)}.press-kit .is-selected>.press-kit-editor-select:focus-visible{outline:2px solid var(--control-focus);outline-offset:-2px}.press-kit .press-kit-editor-select:active{cursor:var(--cursor-grabbing,grabbing)}.press-kit-editor-selection,.press-kit-editor-marquee{box-sizing:border-box;border:1px solid var(--secondary);pointer-events:none;position:absolute}.press-kit-editor-selection{outline:1px solid var(--light)}.press-kit-editor-marquee{background:color-mix(in srgb, var(--secondary) 12%, transparent)}.press-kit .press-kit-editor-group-move{border:1px solid var(--secondary);border-radius:var(--radius-none);background:var(--light);width:max-content;max-width:calc(100% - 1rem);min-height:24px;color:var(--dark);line-height:1;font:var(--control-font-size) var(--codeFont);pointer-events:auto;touch-action:none;cursor:var(--cursor-grab,grab);justify-content:center;align-items:center;padding:.1rem .3rem;display:inline-flex;position:absolute;top:.5rem;right:.5rem}@media (pointer:coarse){.press-kit .press-kit-editor-group-move{min-height:44px}}.press-kit .press-kit-editor-resize{--pk-handle-size:24px;--pk-editor-cursor:nwse-resize;right:calc(var(--pk-handle-size) / -2);bottom:calc(var(--pk-handle-size) / -2);width:var(--pk-handle-size);height:var(--pk-handle-size);pointer-events:auto;touch-action:none;cursor:var(--pk-editor-cursor);background:0 0;border:0;padding:0;position:absolute}.press-kit .press-kit-editor-resize:after{content:"";inset:calc((var(--pk-handle-size) - 10px) / 2);background:var(--light);border:1px solid var(--secondary);position:absolute}@media (pointer:coarse){.press-kit .press-kit-editor-resize{--pk-handle-size:44px}}.press-kit .press-kit-editor-resize[data-editor-resize=x]{top:calc(50% - var(--pk-handle-size) / 2);--pk-editor-cursor:ew-resize;bottom:auto}.press-kit .press-kit-editor-resize[data-editor-resize=y]{left:calc(50% - var(--pk-handle-size) / 2);--pk-editor-cursor:ns-resize;right:auto}.press-kit-editor-layer[data-compact-x] [data-editor-resize=x],.press-kit-editor-layer[data-compact-y] [data-editor-resize=y]{display:none}.press-kit-editor-selection[data-compact-x] [data-editor-resize=x]{top:calc(var(--pk-handle-size) * -1.5);bottom:auto}.press-kit-editor-selection[data-compact-y] [data-editor-resize=y]{left:calc(var(--pk-handle-size) * -1.5);right:auto}html.site-cursor-ready body :is(.press-kit-editor-select,.press-kit-editor-group-move){cursor:var(--cursor-grab,grab)!important}html.site-cursor-ready body :is(.press-kit-editor-select,.press-kit-editor-group-move):active{cursor:var(--cursor-grabbing,grabbing)!important}.press-kit-editor-overlay[data-gesture=move]{--pk-editor-cursor:grabbing}.press-kit-editor-overlay[data-gesture=resize-x]{--pk-editor-cursor:ew-resize}.press-kit-editor-overlay[data-gesture=resize-y]{--pk-editor-cursor:ns-resize}.press-kit-editor-overlay[data-gesture=resize-xy]{--pk-editor-cursor:nwse-resize}html.site-cursor-ready body :is(.press-kit-editor-resize,.press-kit-editor-overlay){cursor:var(--pk-editor-cursor)!important}.homepage-precipitation{z-index:11;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.homepage-precipitation[hidden],.homepage-precipitation[data-motion=still]{display:none}.homepage-precipitation span{width:1px;height:var(--homepage-weather-size,6px);opacity:.18;animation:homepage-weather-fall var(--homepage-weather-duration,6s) linear infinite;animation-delay:var(--homepage-weather-delay,0s);background:currentColor;position:absolute;top:-12px}.homepage-precipitation[data-precipitation=rain],.homepage-precipitation[data-precipitation=drizzle]{color:color-mix(in srgb, var(--gray) 65%, #82918c)}.homepage-precipitation[data-precipitation=drizzle] span,.homepage-precipitation span[data-drop=drizzle]{opacity:.12}.homepage-precipitation .homepage-storm-flash{opacity:0;animation:11s linear infinite homepage-storm-flash;animation-delay:var(--homepage-storm-delay,0s);background:#f4efd8;position:absolute;inset:0}.homepage-precipitation[data-precipitation=snow] span{box-sizing:border-box;width:var(--homepage-weather-size,2px);height:var(--homepage-weather-size,2px);color:color-mix(in srgb, var(--light) 20%, #e2e7de);border:1px solid color-mix(in srgb, var(--gray) 45%, transparent);opacity:.38}.homepage-precipitation[data-motion=paused] span,.homepage-precipitation[data-motion=paused] .homepage-storm-flash{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.homepage-precipitation{display:none}}@keyframes homepage-weather-fall{0%{transform:translate3d(0, -12px, 0) rotate(var(--homepage-rain-tilt,0deg))}to{transform:translate3d(var(--homepage-weather-drift,0px), calc(100dvh + 24px), 0) rotate(var(--homepage-rain-tilt,0deg))}}@keyframes homepage-storm-flash{0%,.9%,2.2%,to{opacity:0}1%,1.4%{opacity:.1}1.5%,1.9%{opacity:0}2%,2.1%{opacity:.07}}.visitor-weather{--weather-edge:1rem;top:var(--weather-edge);right:var(--weather-edge);z-index:var(--z-dropdown);position:fixed}.visitor-weather-toggle{width:44px;height:44px;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;place-items:center;padding:6px;display:grid}.visitor-weather-toggle svg{width:16px;height:16px}.visitor-weather-toggle:hover{color:var(--dark)}.visitor-weather-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.visitor-weather-panel{inset:calc(var(--weather-edge) + 34px) var(--weather-edge) auto auto;scrollbar-width:thin;scrollbar-color:var(--gray) transparent;box-sizing:border-box;width:min(13.5rem,100vw - 5rem);max-height:calc(100dvh - 5rem);color:var(--darkgray);background:var(--light);border:1px solid var(--lightgray);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-transform:lowercase;transform-origin:100% 0;visibility:hidden;pointer-events:none;opacity:0;transition:opacity .18s ease-out, transform .22s cubic-bezier(.23, 1, .32, 1), visibility .22s, overlay .22s allow-discrete;border-radius:0;margin:0;padding:.35rem .5rem;font-size:.6rem;line-height:1.6;display:block;position:fixed;overflow-y:auto;transform:translate(8px,-12px)scale(.94)}.visitor-weather-panel:popover-open{visibility:visible;pointer-events:auto;opacity:1;transform:none}@starting-style{.visitor-weather-panel:popover-open{opacity:0;transform:translate(8px,-12px)scale(.94)}}.visitor-weather-heading,.visitor-weather-readout{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.visitor-weather-heading{white-space:nowrap;gap:.35rem;margin-bottom:.25rem}.visitor-weather-heading [data-weather-temperature]{text-transform:none}.visitor-weather-summary{text-overflow:ellipsis;min-width:0;overflow:hidden}.visitor-weather-place{flex-shrink:0;align-items:baseline;gap:.25rem;display:inline-flex}.visitor-weather-country{color:var(--darkgray);text-transform:uppercase;padding:0 .2rem;line-height:1.2}.visitor-weather-map{background:0 0;height:90px;margin-bottom:.25rem;position:relative;overflow:hidden}.visitor-weather-map [data-weather-map]{pointer-events:none;width:100%;height:150px}@media (prefers-reduced-motion:reduce){.visitor-weather-panel{transition:none;transform:none}@starting-style{.visitor-weather-panel:popover-open{transform:none}}}.visitor-weather-map-status{width:100%;color:var(--darkgray);font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;place-items:center;padding:.5rem;display:grid;position:absolute;inset:0}.visitor-weather-map-status:disabled{cursor:var(--cursor-default,default)}.visitor-weather-map-status[hidden]{display:none!important}.visitor-weather-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round}.visitor-weather .lunar-disc-outline{fill:none;stroke:currentColor;stroke-width:.75px;opacity:.4}.visitor-weather .lunar-disc-lit{fill:currentColor;stroke:none}.visitor-weather-moon,:root[saved-theme=dark] .visitor-weather-sun{display:none}:root[saved-theme=dark] .visitor-weather-moon{display:block}.visitor-weather-readout{white-space:nowrap;column-gap:.5rem;font-size:.55rem}.visitor-weather-readout [data-weather-wind]{text-transform:none}.visitor-weather-wind{align-items:center;gap:.2rem;display:inline-flex}.visitor-weather-wind [data-weather-wind-arrow]{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:10px;height:10px}.visitor-weather-retry{color:var(--darkgray);font:inherit;text-underline-offset:2px;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;margin-top:.25rem;padding:0;text-decoration:underline}.visitor-weather-retry[hidden]{display:none!important}.visitor-weather-retry:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.visitor-weather-sun{animation:6s ease-in-out infinite alternate visitor-weather-sun-float}:root[saved-theme=dark] .visitor-weather-moon-motion{transform-origin:0 0;animation:9s ease-in-out infinite visitor-weather-moon-drift}.visitor-weather[data-moon-motion=paused] .visitor-weather-moon-motion,.visitor-weather[data-moon-motion=paused] .visitor-weather-sun,.visitor-weather[data-moon-motion=paused] .visitor-weather-rays{animation-play-state:paused}.visitor-weather-rays{transform-origin:12px 12px;animation:36s linear infinite visitor-weather-sun-turn}}@keyframes visitor-weather-moon-drift{0%,to{transform:translateY(.5px)rotate(-3deg)}50%{transform:translateY(-.75px)rotate(3deg)}}@keyframes visitor-weather-sun-float{0%{transform:translateY(1px)}to{transform:translateY(-1px)}}@keyframes visitor-weather-sun-turn{to{transform:rotate(360deg)}}@media (min-width:601px) and (hover:hover) and (pointer:fine){.visitor-weather-toggle{width:28px}}@media (max-width:600px){.visitor-weather{--weather-edge:.5rem}}.homepage-trail-scene .trail-map-reader-head{animation:none}.homepage-trail-scene .trail-map-reader[data-phase=waiting]{visibility:hidden}.homepage-trail-scene [data-reader-pose=read],.homepage-trail-scene .trail-map-reader[data-phase=reading] [data-reader-pose=walk]{display:none}.homepage-trail-scene .trail-map-reader[data-phase=reading] [data-reader-pose=read]{display:block}.homepage-trail-scene .trail-map-reader[data-stride="0"] .trail-reader-stride[data-stride="1"],.homepage-trail-scene .trail-map-reader[data-stride="1"] .trail-reader-stride[data-stride="0"]{display:none}.homepage-trail-scene .trail-reader-2 .trail-camper-coat{fill:color-mix(in srgb, var(--gray) 45%, #788891)}.homepage-trail-scene .trail-reader-map{transform-origin:11px -12px}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-map-reader[data-phase=reading] .trail-reader-map{animation:.22s ease-out both trail-map-unfold}}@keyframes trail-map-unfold{0%{opacity:0;scale:.4 1}to{opacity:1;scale:1}}.homepage-trail-scene .trail-hiker-hat{fill:color-mix(in srgb, var(--lightgray) 45%, #ae9066)}.homepage-trail-scene .trail-hiker-coat{fill:color-mix(in srgb, var(--gray) 40%, #899275)}.homepage-trail-scene .trail-hiker-boot,.homepage-trail-scene .trail-hiker-grip{fill:var(--dark)}.homepage-trail-scene .trail-hiker-pole,.homepage-trail-scene .trail-hiker-pack-cloth{fill:color-mix(in srgb, var(--darkgray) 65%, #957352)}.homepage-trail-scene .trail-hiker-pack-strap{fill:var(--darkgray)}.homepage-trail-scene .trail-hiker-bedroll{fill:color-mix(in srgb, var(--lightgray) 45%, #b7ad8a)}.homepage-trail-scene [data-hiker-pose=bend],.homepage-trail-scene [data-hiker-pose=rest],.homepage-trail-scene .trail-hiker-parked-pole,.homepage-trail-scene .trail-backpacker[data-stride="0"] .trail-hiker-stride[data-stride="1"],.homepage-trail-scene .trail-backpacker[data-stride="1"] .trail-hiker-stride[data-stride="0"],.homepage-trail-scene .trail-backpacker:is([data-phase=unpacking],[data-phase=packing]) [data-hiker-pose=walk]{display:none}.homepage-trail-scene .trail-backpacker:is([data-phase=unpacking],[data-phase=packing]) [data-hiker-pose=bend],.homepage-trail-scene .trail-backpacker:is([data-phase=unpacking],[data-phase=packing]) .trail-hiker-parked-pole{display:block}.homepage-trail-scene .trail-backpacker[data-phase=resting] [data-hiker-pose=walk]{display:none}.homepage-trail-scene .trail-backpacker[data-phase=resting] [data-hiker-pose=rest],.homepage-trail-scene .trail-backpacker[data-phase=resting] .trail-hiker-parked-pole{display:block}.homepage-trail-scene .trail-scene-controls{--control-font-size:.66rem;--control-height:24px;--control-accent:var(--darkgray);--control-focus:var(--dark);box-sizing:border-box;overscroll-behavior:contain;scrollbar-width:thin;border:1px solid var(--darkgray);background:var(--light);width:244px;max-width:calc(100vw - 16px);height:min(70dvh,560px);color:var(--darkgray);font:var(--control-font-size)/1.5 var(--codeFont);font-variant-numeric:tabular-nums;pointer-events:auto;border-radius:0;margin:0;padding:0;position:fixed;inset:auto;overflow-y:auto}.homepage-trail-scene .trail-scene-controls:popover-open{display:block}.homepage-trail-scene .trail-scene-controls:focus-visible,.homepage-trail-scene .trail-scene-controls :is(button,input):focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.homepage-trail-scene .trail-tuning-head{color:var(--dark);background:color-mix(in srgb, var(--light) 92%, var(--darkgray));border-bottom:1px solid var(--lightgray);justify-content:space-between;align-items:center;padding:4px 8px 4px 12px;display:flex}.homepage-trail-scene .trail-tuning-head>button{width:24px;min-height:24px;color:inherit;font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;padding:0}.homepage-trail-scene .trail-season-toggle,.homepage-trail-scene .trail-holiday-toggle{box-sizing:border-box;border:0;border-bottom:1px solid var(--lightgray);width:100%;min-height:30px;color:inherit;font:inherit;text-align:left;cursor:var(--cursor-pointer,pointer);background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:8px;padding:5px 12px;display:flex}.homepage-trail-scene .trail-season-toggle[data-forced=true] .trail-scene-value,.homepage-trail-scene .trail-holiday-toggle[data-forced=true] .trail-scene-value{text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.homepage-trail-scene .trail-tuning-section>h3{box-sizing:border-box;border-bottom:1px solid var(--lightgray);background:color-mix(in srgb, var(--light) 96%, var(--darkgray));min-height:30px;color:var(--dark);font:inherit;margin:0;padding:5px 12px}.homepage-trail-scene .trail-tuning-row{border-bottom:1px solid var(--lightgray);padding:6px 12px 2px}.homepage-trail-scene .trail-tuning-row label{justify-content:space-between;align-items:center;gap:8px;display:flex}.homepage-trail-scene .trail-tuning-row output{border:1px solid var(--darkgray);text-align:right;min-width:3.5em;color:var(--dark);padding:0 4px}.homepage-trail-scene .trail-tuning-row input[type=range]{appearance:none;box-sizing:border-box;width:100%;min-width:0;height:24px;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;margin:0;padding:0}.homepage-trail-scene .trail-tuning-row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--darkgray) var(--trail-control-progress), var(--lightgray) var(--trail-control-progress));height:4px}.homepage-trail-scene .trail-tuning-row input[type=range]::-moz-range-track{background:var(--lightgray);height:4px}.homepage-trail-scene .trail-tuning-row input[type=range]::-moz-range-progress{background:var(--darkgray);height:4px}.homepage-trail-scene .trail-tuning-row input[type=range]::-webkit-slider-thumb{appearance:none;border:1px solid var(--dark);background:var(--light);border-radius:0;width:10px;height:12px;margin-top:-4px}.homepage-trail-scene .trail-tuning-row input[type=range]::-moz-range-thumb{border:1px solid var(--dark);background:var(--light);border-radius:0;width:8px;height:10px}.homepage-trail-scene .trail-tuning-choice{border:0;border-bottom:1px solid var(--lightgray);min-width:0;margin:0;padding:5px 12px}.homepage-trail-scene .trail-tuning-choice legend{padding:0}.homepage-trail-scene .trail-tuning-options{gap:4px;display:flex}.homepage-trail-scene .trail-tuning-options label{border:1px solid var(--darkgray);min-height:24px;cursor:var(--cursor-pointer,pointer);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.homepage-trail-scene .trail-tuning-options span{flex:1;justify-content:center;align-self:stretch;align-items:center;display:flex}.homepage-trail-scene .trail-tuning-options input:checked+span{background:color-mix(in srgb, var(--light) 88%, var(--darkgray));color:var(--dark)}.homepage-trail-scene .trail-tuning-options input:focus-visible+span{outline:2px solid var(--dark);outline-offset:-2px}.homepage-trail-scene .trail-tuning-options input{clip-path:inset(50%);width:1px;height:1px;margin:0;position:absolute}.homepage-trail-scene .trail-tuning-action{box-sizing:border-box;border:0;border-bottom:1px solid var(--lightgray);width:100%;min-height:30px;color:var(--darkgray);font:inherit;text-align:left;cursor:var(--cursor-pointer,pointer);background:0 0;border-radius:0;padding:5px 12px}.homepage-trail-scene .trail-tuning-action:disabled{color:var(--darkgray);cursor:var(--cursor-default,default)}.homepage-trail-scene .trail-tuning-reset{text-underline-offset:2px;text-decoration:underline}.homepage-trail-scene .trail-tuning-reset:disabled{text-decoration:none}.homepage-trail-scene .trail-tuning-note{border-bottom:1px solid var(--lightgray);margin:0;padding:5px 12px}.homepage-trail-scene .trail-tuning-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.homepage-trail-scene .trail-tuning-status.trail-tuning-error{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:5px 12px;display:block;position:static;overflow:visible}@media (hover:hover) and (pointer:fine){.homepage-trail-scene :is(.trail-season-toggle,.trail-holiday-toggle,.trail-tuning-action:not(:disabled),.trail-tuning-head>button):hover,.homepage-trail-scene .trail-tuning-options label:hover{background:color-mix(in srgb, var(--light) 92%, var(--darkgray));color:var(--dark)}}@media (pointer:coarse){.homepage-trail-scene .trail-scene-controls{--control-height:44px}.homepage-trail-scene .trail-scene-controls button,.homepage-trail-scene .trail-tuning-options label,.homepage-trail-scene .trail-tuning-row input[type=range]{min-height:44px}.homepage-trail-scene .trail-tuning-head>button{width:44px}}.homepage-trail-scene .trail-weather{pointer-events:none}.homepage-trail-scene .trail-sky{pointer-events:none;shape-rendering:crispedges}.homepage-trail-scene .trail-sky-sun{fill:color-mix(in srgb, #ec8b49 calc(var(--trail-sun-low,0) * 85%), color-mix(in srgb, var(--lightgray) 55%, #bd9f67));opacity:calc(.25 + var(--trail-sun-clear,0) * .45)}.homepage-trail-scene .trail-sky-glow-outer{fill:#fdb2a2;opacity:.32}.homepage-trail-scene .trail-sky-glow-inner{fill:#ec8b49;opacity:.3}.homepage-trail-scene .trail-sky-moon{opacity:.5}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-sky-moon{opacity:1}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-sky-glow{opacity:.18}.homepage-trail-scene .trail-weather-dapple{fill:color-mix(in srgb, var(--lightgray) 72%, #c3ad7c);opacity:.45;shape-rendering:crispedges}.homepage-trail-scene .trail-weather-gust{fill:none;stroke:color-mix(in srgb, var(--gray) 65%, #82918c);stroke-width:1px;stroke-linecap:square;stroke-dasharray:34 200;stroke-dashoffset:34px;opacity:0}@media (prefers-reduced-motion:reduce){.homepage-trail-scene .trail-weather-gust{stroke-dasharray:none;opacity:calc(.15 + var(--trail-gust-strength,0) * .25)}}.homepage-trail-scene .trail-weather-sweep{fill:color-mix(in srgb, var(--gray) 55%, #84916b);opacity:0;shape-rendering:crispedges}@media (prefers-reduced-motion:reduce){.homepage-trail-scene .trail-weather-sweep{opacity:calc(.15 + var(--trail-gust-strength,0) * .2)}}.homepage-trail-scene .trail-weather-paw{fill:color-mix(in srgb, var(--light) 45%, #6f878c);opacity:0;shape-rendering:crispedges}.homepage-trail-scene .trail-weather-snow{fill:var(--darkgray);opacity:.2;shape-rendering:crispedges}.homepage-trail-scene .trail-far-gate{opacity:.8}.homepage-trail-scene .trail-far-gate-stone{fill:color-mix(in srgb, var(--lightgray) 45%, #b9ae98)}.homepage-trail-scene .trail-far-gate-joint{fill:color-mix(in srgb, var(--gray) 60%, #6f6656)}.homepage-trail-scene .trail-far-gate-portal{fill:#2c2d55}.homepage-trail-scene .trail-far-gate-star{fill:#8b7ec8}.homepage-trail-scene .trail-far-gate-tick{fill:#857967}.homepage-trail-scene .trail-far-gate-minute{fill:#f1d67e}.homepage-trail-scene .trail-far-gate-hour{fill:#fbf3dc}.homepage-trail-scene .trail-far-gate-link{pointer-events:auto;cursor:var(--cursor-pointer,pointer);display:block;position:absolute}.homepage-trail-scene .trail-far-gate-link:focus-visible{outline:1px dashed var(--darkgray);outline-offset:2px}.homepage-trail-scene .trail-scene:not([data-trail-opening=complete]) .trail-far-gate-link{visibility:hidden}.homepage-trail-scene .trail-scene-toggle{pointer-events:auto;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:0;position:absolute}.homepage-trail-scene .trail-scene-toggle:hover .trail-scene-mark,.homepage-trail-scene .trail-scene-toggle:focus-visible .trail-scene-mark{color:var(--darkgray)}.homepage-trail-scene .trail-scene-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.homepage-trail-scene .trail-scene-mark{left:50%;top:calc(50% + var(--scene-mark-offset));width:10px;height:11px;color:color-mix(in srgb, var(--darkgray) 65%, var(--lightgray));fill:none;stroke:currentColor;stroke-width:1px;shape-rendering:crispedges;pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.homepage-trail-scene .trail-scene-mark-edge{stroke:var(--light);opacity:.6}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-scene-mark{color:color-mix(in srgb, var(--darkgray) 80%, var(--lightgray))}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-scene-toggle:is(:hover,:focus-visible) .trail-scene-mark{color:color-mix(in srgb, var(--darkgray) 80%, var(--dark))}.homepage-trail-scene .trail-scene:not([data-trail-opening=complete]) .trail-scene-toggle{visibility:hidden}.homepage-trail-scene .trail-weather-fog{fill:var(--light);opacity:.9;shape-rendering:crispedges}.homepage-trail-scene .trail-sky-bolt{fill:color-mix(in srgb, var(--light) 30%, #f4efd8);opacity:0}.homepage-trail-scene .trail-weather-snow-ground{fill:color-mix(in srgb, var(--lightgray) 25%, #e9eee8);opacity:calc(var(--trail-snow-cover,0) * .55);shape-rendering:crispedges}.homepage-trail-scene .trail-tree-gold{opacity:.75}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-weather-gust{animation:trail-weather-gust var(--trail-wind-period,8s) linear infinite;animation-delay:var(--trail-weather-delay,0s)}.homepage-trail-scene .trail-weather-sweep{animation:trail-weather-sweep var(--trail-wind-period,8s) steps(40, end) infinite;animation-delay:var(--trail-weather-delay,0s)}.homepage-trail-scene .trail-weather-paw{animation:trail-weather-paw var(--trail-wind-period,8s) linear infinite;animation-delay:var(--trail-weather-delay,0s)}.homepage-trail-scene .trail-weather-snow{animation:2.8s steps(8,end) infinite trail-weather-fall;animation-delay:var(--trail-weather-delay,0s);animation-duration:6s}.homepage-trail-scene .trail-sky-bolt{animation:11s linear infinite trail-storm-bolt;animation-delay:var(--trail-storm-delay,0s)}.homepage-trail-scene .trail-weather-dapple{animation:10s ease-in-out infinite trail-weather-dapple;animation-delay:var(--trail-weather-delay,0s)}.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-gust,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-sweep,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-paw,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-snow,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-leaf,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-weather-dapple,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-sky-bolt{animation-play-state:paused}}@keyframes trail-weather-gust{0%,20%{stroke-dashoffset:34px;opacity:0}26%{opacity:calc(.35 + var(--trail-gust-strength,0) * .45)}42%{opacity:calc(.3 + var(--trail-gust-strength,0) * .4)}48%,to{stroke-dashoffset:-100px;opacity:0}}@keyframes trail-weather-sweep{0%,22%{opacity:0;transform:translate(0)}30%{opacity:calc(.4 + var(--trail-gust-strength,0) * .5)}44%{opacity:calc(.3 + var(--trail-gust-strength,0) * .4);transform:translate(var(--trail-sweep-x,0), var(--trail-sweep-y,0))}52%,to{opacity:0;transform:translate(calc(var(--trail-sweep-x,0px) * 1.4), calc(var(--trail-sweep-y,0px) * 1.4))}}@keyframes trail-weather-paw{0%,24%{opacity:0}32%{opacity:calc(.45 + var(--trail-gust-strength,0) * .45)}40%{opacity:calc(.3 + var(--trail-gust-strength,0) * .3)}50%,to{opacity:0}}@keyframes trail-weather-fall{0%{opacity:0;transform:translate(0)}20%,75%{opacity:calc(.12 + var(--trail-rain-strength,0) * .3)}to{opacity:0;transform:translate(var(--trail-rain-x,0px), 44px)}}@keyframes trail-weather-dapple{0%,to{opacity:.3;transform:translate(0)}50%{opacity:.5;transform:translate(var(--trail-wind-x,0px), var(--trail-wind-y,0px))}}@keyframes trail-storm-bolt{0%,.9%,2.2%,to{opacity:0}1%,1.4%{opacity:1}1.5%,1.9%{opacity:0}2%,2.1%{opacity:.8}}.homepage-trail-scene .trail-tree-flip{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-tree-light) 82%, var(--trail-leaf-lit)) calc(100% - var(--trail-tree-haze,0%)), var(--light));opacity:0}.homepage-trail-scene .trail-tree-hollow{fill:color-mix(in srgb, var(--trail-tree-dark) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-limbs,.homepage-trail-scene .trail-tree-sprout,.homepage-trail-scene .trail-tree-bud{display:none}.homepage-trail-scene .trail-scene:is([data-foliage-season=winter],[data-foliage-season=spring][data-season-phase=early],[data-foliage-season=spring][data-season-phase=mid],[data-foliage-season=autumn][data-season-phase=late]) :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-limbs{display:inline}.homepage-trail-scene .trail-scene:is([data-foliage-season=winter],[data-foliage-season=spring][data-season-phase=early]) :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-canopy{display:none}.homepage-trail-scene .trail-scene[data-foliage-season=spring][data-season-phase=early] :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-bud{fill:color-mix(in srgb, var(--lightgray) 30%, #c8cf86);display:inline}.homepage-trail-scene .trail-scene[data-foliage-season=spring][data-season-phase=early] :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=larch]) .trail-tree-bud{fill:color-mix(in srgb, var(--gray) 20%, #fdb2a2)}.homepage-trail-scene .trail-scene[data-foliage-season=spring][data-season-phase=early] :is(.trail-tree,.trail-woodland-tree):is([data-tree=aspen],[data-tree=birch]) .trail-tree-bud{fill:color-mix(in srgb, var(--gray) 35%, #b8a98a)}.homepage-trail-scene .trail-scene:is([data-foliage-season=spring][data-season-phase=mid],[data-foliage-season=autumn][data-season-phase=late]) :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-canopy :is(.trail-tree-hollow,.trail-tree-light,.trail-tree-crown,.trail-tree-dark,.trail-tree-gold,.trail-tree-flip){display:none}.homepage-trail-scene .trail-scene:is([data-foliage-season=spring][data-season-phase=mid],[data-foliage-season=autumn][data-season-phase=late]) :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-canopy .trail-tree-sprout{fill:var(--trail-tree-crown);display:inline}.homepage-trail-scene .trail-scene[data-foliage-season=spring][data-season-phase=mid] :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]) .trail-tree-sprout{fill:color-mix(in srgb, var(--lightgray) 35%, #b4c77a)}.homepage-trail-scene .trail-scene[data-foliage-season=spring][data-season-phase=late] :is(.trail-tree,.trail-woodland-tree):is([data-tree=maple],[data-tree=oak],[data-tree=aspen],[data-tree=birch],[data-tree=larch],[data-tree=willow],[data-tree=beech]){--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 40%, #94ab62);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 45%, #c4d28c);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #6f8a4a)}.homepage-trail-scene .trail-scene[data-foliage-season=spring]:is([data-season-phase=mid],[data-season-phase=late]) :is(.trail-tree,.trail-woodland-tree):is([data-tree=pine],[data-tree=spruce],[data-tree=fir],[data-tree=hemlock],[data-tree=cypress],[data-tree=sequoia]) .trail-tree-sprout{fill:color-mix(in srgb, var(--lightgray) 40%, #b9c98a);display:inline}.homepage-trail-scene .trail-tree-snow{fill:color-mix(in srgb, var(--trail-snow-lit) calc(100% - var(--trail-tree-haze,0%)), var(--trail-snow-shade));opacity:var(--trail-snow-cover,0);transition:opacity 1.8s ease-out}.homepage-trail-scene .trail-scene .trail-tree-shadow{fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), var(--gray))}.homepage-trail-scene .trail-scene :is(.trail-tree,.trail-woodland-tree):is([data-tree=fir],[data-tree=hemlock]){--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 45%, #5f7a6c);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 50%, #8fa59a);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 40%, #44594f)}.homepage-trail-scene .trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree=willow]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 40%, #9aa860);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 45%, #c8cf86);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 35%, #6f7c43)}.homepage-trail-scene .trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree=beech]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 30%, #7d902a);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 35%, #b4bf6a);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #4d6212);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 25%, #e0b43c)}.homepage-trail-scene .trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree=beech] .trail-tree-trunk{fill:color-mix(in srgb, var(--trail-leaf-shade) 30%, #3e3128)}.homepage-trail-scene .trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree=beech] .trail-tree-trunk-lit{fill:color-mix(in srgb, var(--trail-leaf-mid) 30%, #7e6a55)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree)[data-tree=beech]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 22%, #bc5215);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 30%, #da702c);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 28%, #6b2c0b);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 25%, #d0a215)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree)[data-tree=maple]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 25%, #c4402f);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 35%, #e0703f);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #8e2d2a);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 35%, #e39a4c)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree):is([data-tree=aspen],[data-tree=larch]){--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 25%, #c99a3a);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 35%, #e2bf5e);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #9a7130);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 30%, #e8c86a)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree)[data-tree=willow]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 30%, #b5aa52);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 40%, #d6cb78)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree)[data-tree=oak]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 30%, #b94e3d);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 45%, #d78b55);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #873c35);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 40%, #ca7852)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] :is(.trail-tree,.trail-woodland-tree)[data-tree=birch]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 30%, #c29b4e);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 35%, #d6b16a);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 30%, #9c693e);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 30%, #d1a352)}.homepage-trail-scene .trail-understory{shape-rendering:crispedges;opacity:calc(.92 - var(--trail-snow-cover,0) * .55)}.homepage-trail-scene .trail-under-light{fill:color-mix(in srgb, var(--lightgray) 50%, #a9b981)}.homepage-trail-scene .trail-under-dark{fill:color-mix(in srgb, var(--darkgray) 35%, #5a6e44)}.homepage-trail-scene .trail-under-berry{fill:#af3029}.homepage-trail-scene .trail-under-wood{fill:color-mix(in srgb, var(--darkgray) 60%, #7d5d45)}.homepage-trail-scene .trail-under-knot{fill:color-mix(in srgb, var(--dark) 70%, #4f3b2c)}.homepage-trail-scene .trail-under-ring{fill:color-mix(in srgb, var(--lightgray) 45%, #d4b98e)}.homepage-trail-scene .trail-under-heart{fill:color-mix(in srgb, var(--lightgray) 30%, #b48c5c)}.homepage-trail-scene .trail-under-moss{fill:color-mix(in srgb, var(--gray) 35%, #879a57)}.homepage-trail-scene .trail-under-stem{fill:color-mix(in srgb, var(--lightgray) 40%, #e3dcc6)}.homepage-trail-scene .trail-under-petal{fill:color-mix(in srgb, var(--light) 30%, #f2ecd8)}.homepage-trail-scene .trail-under-pollen{fill:#d0a215}.homepage-trail-scene .trail-under-cap{fill:#c4402f}.homepage-trail-scene .trail-under-stone-edge{fill:color-mix(in srgb, var(--darkgray) 40%, var(--gray))}.homepage-trail-scene .trail-understory[data-plant=stone] .trail-under-stem{fill:color-mix(in srgb, var(--lightgray) 70%, var(--gray))}.homepage-trail-scene .trail-under-grass{fill:color-mix(in srgb, var(--lightgray) 35%, #c9a85a)}.homepage-trail-scene .trail-scene[data-foliage-season=spring] .trail-under-grass{fill:color-mix(in srgb, var(--lightgray) 40%, #9fb36a)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-under-grass{fill:color-mix(in srgb, var(--lightgray) 55%, #b8a888)}.homepage-trail-scene .trail-understory[data-plant=manzanita] .trail-under-light{fill:color-mix(in srgb, var(--lightgray) 45%, #8f9f84)}.homepage-trail-scene .trail-under-manzanita{fill:color-mix(in srgb, var(--darkgray) 25%, #a3402c)}.homepage-trail-scene .trail-under-lupine{fill:color-mix(in srgb, var(--gray) 20%, #6b5fa8)}.homepage-trail-scene .trail-under-poppy{fill:#e2752f}.homepage-trail-scene .trail-under-granite{fill:color-mix(in srgb, var(--gray) 40%, var(--light))}.homepage-trail-scene .trail-under-granite-lit{fill:color-mix(in srgb, var(--lightgray) 45%, var(--light))}.homepage-trail-scene .trail-scene .trail-tree[data-tree=sequoia] .trail-tree-trunk{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-leaf-shade) 30%, #a5502f) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-scene .trail-tree[data-tree=snag] .trail-tree-trunk{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-leaf-mid) 55%, #c9c3b6) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-understory:is([data-plant=fern],[data-plant=sedge]) .trail-under-light{fill:color-mix(in srgb, var(--lightgray) 40%, #c99a5b)}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-understory:is([data-plant=fern],[data-plant=sedge]) .trail-under-dark{fill:color-mix(in srgb, var(--darkgray) 30%, #8a5a33)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-understory:is([data-plant=fern],[data-plant=flowers]),.homepage-trail-scene .trail-scene:is([data-foliage-season=autumn],[data-foliage-season=winter]) .trail-understory:is([data-plant=lupine],[data-plant=poppy]),.homepage-trail-scene .trail-scene:is([data-foliage-season=autumn],[data-foliage-season=winter]) .trail-understory[data-plant=flowers],.homepage-trail-scene .trail-scene:is([data-foliage-season=winter],[data-foliage-season=spring]) :is(.trail-under-berry,.trail-under-fungi),.homepage-trail-scene .trail-scene[data-foliage-season=summer] .trail-under-fungi{display:none}.homepage-trail-scene .trail-weather-leaf{fill:color-mix(in srgb, var(--gray) 25%, #b66041);opacity:.45;shape-rendering:crispedges}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-weather-leaf{animation:trail-autumn-leaf var(--trail-wind-period,9s) ease-out infinite;animation-delay:var(--trail-weather-delay,0s)}}@media (prefers-reduced-motion:reduce){.homepage-trail-scene .trail-tree-snow{transition:none}}@keyframes trail-autumn-leaf{0%,20%,to{opacity:0;transform:translate(0)rotate(0)}38%{opacity:.55}88%{opacity:0;transform:translate(var(--trail-leaf-travel-x,0px), var(--trail-leaf-travel-y,24px)) rotate(120deg)}}.trail-scene .trail-holiday-ink,.homepage-trail-toggle .trail-holiday-ink{fill:color-mix(in srgb, var(--darkgray) 70%, #4c493f)}.trail-scene .trail-holiday-shade,.homepage-trail-toggle .trail-holiday-shade{fill:color-mix(in srgb, var(--gray) 72%, #8d8875)}.trail-scene .trail-holiday-paper,.homepage-trail-toggle .trail-holiday-paper{fill:color-mix(in srgb, var(--lightgray) 30%, #ece3ce)}.trail-scene .trail-holiday-brown,.homepage-trail-toggle .trail-holiday-brown{fill:color-mix(in srgb, var(--darkgray) 32%, #85745c)}.trail-scene .trail-holiday-orange,.homepage-trail-toggle .trail-holiday-orange{fill:color-mix(in srgb, var(--gray) 30%, #c18a53)}.trail-scene .trail-holiday-red,.homepage-trail-toggle .trail-holiday-red{fill:color-mix(in srgb, var(--gray) 25%, #af5e4c)}.trail-scene .trail-holiday-gold,.homepage-trail-toggle .trail-holiday-gold{fill:color-mix(in srgb, var(--lightgray) 30%, #c6a66a)}.trail-scene .trail-holiday-green,.homepage-trail-toggle .trail-holiday-green{fill:color-mix(in srgb, var(--gray) 45%, #879773)}.trail-scene .trail-holiday-yellow,.homepage-trail-toggle .trail-holiday-yellow{fill:color-mix(in srgb, var(--gray) 25%, #c9b062)}.trail-scene .trail-holiday-lantern,.homepage-trail-toggle .trail-holiday-lantern{fill:color-mix(in srgb, var(--darkgray) 30%, #57402a)}.trail-scene .trail-holiday-hollow,.homepage-trail-toggle .trail-holiday-hollow{fill:#2b2622}.trail-scene .trail-holiday-blood,.homepage-trail-toggle .trail-holiday-blood{fill:#8c2f27}.trail-scene .trail-holiday-iron,.homepage-trail-toggle .trail-holiday-iron{fill:#3b3733}.homepage-trail-holiday{line-height:0}.homepage-trail-holiday svg{shape-rendering:crispedges;width:23px;height:23px}.homepage-trail-holiday svg path{stroke:none;stroke-dasharray:none}.homepage-trail-toggle[data-holiday]>svg{display:none}.trail-scene .trail-halloween-costume{pointer-events:none;display:none}.trail-scene[data-holiday=halloween] .trail-halloween-costume{display:block}.trail-scene .trail-holiday-thread{fill:none;stroke:color-mix(in srgb, var(--lightgray) 30%, #ece3ce);stroke-width:.6px;vector-effect:non-scaling-stroke;opacity:.7;pointer-events:none}.trail-scene [data-holiday-decoration],.trail-scene [data-holiday-tree],.trail-scene .trail-holiday-bat{shape-rendering:crispedges}.trail-scene .trail-holiday-ghost .trail-holiday-float{opacity:.85}.trail-scene .trail-holiday-shadow{fill:var(--gray);opacity:.3}.trail-scene :is(.trail-holiday-glow,.trail-holiday-glow-core){fill:#f0a94e;display:none}.trail-scene[data-lighting=moonlit] .trail-holiday-lantern{fill:#f6c868}.trail-scene[data-lighting=moonlit] .trail-holiday-hollow{fill:#1c1917}.trail-scene[data-lighting=moonlit] .trail-holiday-blood{fill:#a1362b}.trail-scene[data-lighting=moonlit] .trail-holiday-iron{fill:#6e685d}.trail-scene[data-lighting=moonlit] .trail-holiday-glow{opacity:.12;display:inline}.trail-scene[data-lighting=moonlit] .trail-holiday-glow-core{opacity:.18;display:inline}.trail-scene .trail-holiday-egg-0 .trail-holiday-paper{fill:color-mix(in srgb, var(--gray) 20%, #d99a8b)}.trail-scene .trail-holiday-egg-0 .trail-holiday-green{fill:color-mix(in srgb, var(--lightgray) 30%, #f1e4cc)}.trail-scene .trail-holiday-egg-1 .trail-holiday-paper{fill:color-mix(in srgb, var(--gray) 20%, #95b4ca)}.trail-scene .trail-holiday-egg-1 .trail-holiday-green{fill:color-mix(in srgb, var(--gray) 20%, #dcc77e)}.trail-scene .trail-holiday-egg-2 .trail-holiday-paper{fill:color-mix(in srgb, var(--gray) 20%, #d8c477)}.trail-scene .trail-holiday-egg-2 .trail-holiday-green{fill:color-mix(in srgb, var(--gray) 20%, #a58fb6)}.trail-scene .trail-holiday-garland{fill:color-mix(in srgb, var(--gray) 20%, #c9ad6c)}.trail-scene .trail-holiday-bulb-gold{fill:#edbb59}.trail-scene .trail-holiday-bulb-red{fill:#cf654f}.trail-scene .trail-holiday-bulb-white{fill:#fff0c5}.trail-scene [data-holiday-animal][data-phase=wandering][data-stride="1"] .trail-holiday-body{transform:translateY(-1px)}@media (prefers-reduced-motion:no-preference){.trail-scene .trail-holiday-float{animation:7s ease-in-out infinite trail-holiday-float}.trail-scene .trail-holiday-lights{animation:6s ease-in-out infinite trail-holiday-lights}.trail-scene[data-weather-motion=paused] .trail-holiday-float,.trail-scene[data-weather-motion=paused] .trail-holiday-lights{animation-play-state:paused}}@keyframes trail-holiday-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes trail-holiday-lights{0%,to{opacity:.78}50%{opacity:1}}.trail-scene [data-trail-wander]{shape-rendering:crispedges}.trail-scene .trail-goose{animation:none}.trail-scene .trail-bear-coat{fill:color-mix(in srgb, var(--darkgray) 58%, #967953)}.trail-scene .trail-bear-shade,.trail-scene .trail-bear-paw{fill:color-mix(in srgb, var(--darkgray) 70%, #6c5c45)}.trail-scene .trail-bear-muzzle{fill:color-mix(in srgb, var(--lightgray) 60%, #ba9e70)}.trail-scene [data-phase=wandering][data-stride="0"] .trail-animal-leg-front{transform:translateX(var(--trail-animal-step))}.trail-scene [data-phase=wandering][data-stride="0"] .trail-animal-leg-back,.trail-scene [data-phase=wandering][data-stride="1"] .trail-animal-leg-front{transform:translateX(calc(-1 * var(--trail-animal-step)))}.trail-scene [data-phase=wandering][data-stride="1"] .trail-animal-leg-back{transform:translateX(var(--trail-animal-step))}.trail-scene [data-phase=wandering][data-stride="1"] .trail-goose-wake{opacity:.8;transform:translate(-1px)}.trail-scene [data-trail-animal=cow][data-phase=resting] .trail-cow-head{transform:translateY(calc(4 * var(--trail-animal-step)))}.trail-scene [data-trail-animal=cow][data-herd=lying] .trail-animal-leg-front,.trail-scene [data-trail-animal=cow][data-herd=lying] .trail-animal-leg-back{visibility:hidden}.trail-scene [data-trail-animal=cow][data-herd=lying] .trail-cow-body{transform:translateY(calc(2 * var(--trail-animal-step)))}.trail-scene [data-trail-animal=cow][data-herd=lying] .trail-cow-head{transform:none}.trail-scene [data-motion=paused] :is(.trail-cow-tail,.trail-dog-tail,.trail-cat-tail){animation-play-state:paused}.trail-scene [data-motion=still] :is(.trail-cow-tail,.trail-dog-tail,.trail-cat-tail){animation:none}@media (prefers-reduced-motion:no-preference){.trail-scene [data-trail-wander][data-motion=active] .trail-cow-head{transition:transform .4s steps(2,end)}}.homepage-trail-scene .trail-backdrop{pointer-events:none}.homepage-trail-scene [data-formation]{shape-rendering:crispedges}.homepage-trail-scene .trail-mountain-rock{fill:color-mix(in srgb, var(--gray) 24%, var(--light))}.homepage-trail-scene .trail-mountain-shade{fill:color-mix(in srgb, var(--gray) 46%, var(--light))}.homepage-trail-scene .trail-mountain-basalt{fill:color-mix(in srgb, color-mix(in srgb, var(--darkgray) 70%, #4b5a63) 42%, var(--light))}.homepage-trail-scene .trail-mountain-moss{fill:color-mix(in srgb, #7f9550 42%, var(--light))}.homepage-trail-scene .trail-mountain-ochre{fill:color-mix(in srgb, #c9a26b 52%, var(--light))}.homepage-trail-scene .trail-mountain-rust{fill:color-mix(in srgb, #b5673e 44%, var(--light))}.homepage-trail-scene .trail-mountain-ash{fill:color-mix(in srgb, #8b8780 40%, var(--light))}.homepage-trail-scene .trail-mountain-light{fill:color-mix(in srgb, var(--gray) 13%, var(--light))}.homepage-trail-scene .trail-mountain-snow{fill:color-mix(in srgb, #edf2eb var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-summit-snow{opacity:1}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-mountain-snow{fill:var(--trail-snow-lit)}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-skylight{display:inline}.homepage-trail-scene .trail-skylight{pointer-events:none;display:none}.homepage-trail-scene .trail-skylight-rim{fill:var(--trail-snow-lit);opacity:.3}.homepage-trail-scene .trail-skylight-cool{fill:var(--trail-snow-ground);opacity:.6}.homepage-trail-scene .trail-skylight-ember{fill:#fdb2a2;opacity:.16}.homepage-trail-scene .trail-skylight-glow-0{fill:#fdb2a2;opacity:.17}.homepage-trail-scene .trail-skylight-glow-1{fill:#fdb2a2;opacity:.12}.homepage-trail-scene .trail-skylight-glow-2{fill:#fdb2a2;opacity:.075}.homepage-trail-scene .trail-skylight-glow-3{fill:#fdb2a2;opacity:.04}.homepage-trail-scene .trail-scene[data-holiday=christmas] [data-formation=bernese-alps] .trail-mountain-rock{fill:color-mix(in srgb, #e5eae4 55%, color-mix(in srgb, var(--gray) 24%, var(--light)))}.homepage-trail-scene .trail-scene[data-holiday=christmas] [data-formation=bernese-alps] .trail-mountain-light{fill:color-mix(in srgb, #eef2eb 70%, var(--light))}.homepage-trail-scene .trail-scene[data-holiday=christmas] [data-formation=bernese-alps] .trail-mountain-shade{fill:color-mix(in srgb, #b6c2c0 28%, color-mix(in srgb, var(--gray) 46%, var(--light)))}.homepage-trail-scene .trail-mountain-fracture{fill:color-mix(in srgb, var(--darkgray) 22%, var(--light))}.homepage-trail-scene .trail-mountain-lichen{fill:color-mix(in srgb, var(--gray) 25%, var(--lightgray))}.homepage-trail-scene .trail-foothill-far{fill:color-mix(in srgb, var(--gray) 15%, var(--light))}.homepage-trail-scene .trail-foothill-mid{fill:color-mix(in srgb, var(--gray) 25%, var(--light))}.homepage-trail-scene .trail-foothill-near{fill:color-mix(in srgb, var(--lightgray) 65%, var(--light))}.homepage-trail-scene .trail-valley-haze{fill:color-mix(in srgb, var(--trail-snow-ground) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-valley-bank{fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), color-mix(in srgb, var(--darkgray) 30%, var(--light)))}.homepage-trail-scene .trail-valley-field{fill:color-mix(in srgb, var(--trail-snow-ground) var(--trail-snow-mix,0%), var(--trail-field-0))}.homepage-trail-scene .trail-mountain-track,.homepage-trail-scene .trail-mountain-route{fill:none;stroke:none}.homepage-trail-scene .trail-mountain-cut{shape-rendering:crispedges}.homepage-trail-scene .trail-mountain-cut-contour{fill:color-mix(in srgb, var(--darkgray) 20%, var(--light))}.homepage-trail-scene .trail-mountain-cut-spoil{fill:color-mix(in srgb, var(--gray) 28%, var(--light))}.homepage-trail-scene .trail-mountain-cut-bank{fill:color-mix(in srgb, var(--darkgray) 32%, var(--light))}.homepage-trail-scene .trail-mountain-cut-wear{fill:color-mix(in srgb, #c9a26b 20%, color-mix(in srgb, var(--gray) 14%, var(--light)))}.homepage-trail-scene .trail-mountain-cut-tread{fill:color-mix(in srgb, #c9a26b 10%, var(--light))}.homepage-trail-scene .trail-mountain-cut-stone{fill:color-mix(in srgb, var(--gray) 38%, var(--light))}.homepage-trail-scene .trail-mountain-cut-riser{fill:color-mix(in srgb, var(--darkgray) 42%, var(--light))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-mountain-cut-contour,.trail-mountain-cut-spoil,.trail-mountain-cut-wear){fill:color-mix(in srgb, var(--trail-snow-lit) var(--trail-snow-mix,0%), color-mix(in srgb, var(--gray) 24%, var(--light)))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-mountain-cut-tread{fill:color-mix(in srgb, var(--trail-snow-ground) var(--trail-snow-mix,0%), color-mix(in srgb, #c9a26b 10%, var(--light)))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-mountain-cut-bank{fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), color-mix(in srgb, var(--darkgray) 32%, var(--light)))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-mountain-cut-stone,.trail-mountain-cut-riser){fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), color-mix(in srgb, var(--darkgray) 38%, var(--light)))}.homepage-trail-scene .trail-relief,.homepage-trail-scene .trail-landform,.homepage-trail-scene .trail-ravine,.homepage-trail-scene .trail-ravine-stream{shape-rendering:crispedges}.homepage-trail-scene .trail-landform-top{fill:color-mix(in srgb, var(--trail-landform-field,var(--light)) 50%, var(--light))}.homepage-trail-scene .trail-landform-ground{fill:var(--trail-landform-field,var(--light))}.homepage-trail-scene .trail-ravine-body{fill:color-mix(in srgb, var(--gray) 17%, var(--light))}.homepage-trail-scene .trail-ravine-butte{fill:color-mix(in srgb, #d9b99a 36%, var(--light))}.homepage-trail-scene .trail-ravine-rock{fill:color-mix(in srgb, #8c887f 68%, var(--light))}.homepage-trail-scene .trail-ravine-rock-lit{fill:color-mix(in srgb, #cfcabd 66%, var(--light))}.homepage-trail-scene .trail-ravine-top{fill:color-mix(in srgb, var(--lightgray) 26%, var(--light))}.homepage-trail-scene .trail-ravine-face-lit{fill:color-mix(in srgb, var(--gray) calc(58% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-face{fill:color-mix(in srgb, var(--darkgray) calc(42% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-face-dark{fill:color-mix(in srgb, var(--darkgray) calc(60% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-outline{fill:color-mix(in srgb, var(--darkgray) calc(64% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-crest{fill:color-mix(in srgb, #fffdf6 calc(34% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-lip{fill:color-mix(in srgb, var(--darkgray) calc(72% * var(--trail-relief-strength,1)), var(--light))}.homepage-trail-scene .trail-ravine-shadow{fill:color-mix(in srgb, var(--darkgray) calc(68% * var(--trail-relief-strength,1)), var(--light))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-landform-top{fill:color-mix(in srgb, var(--dark) calc(8% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-crest{fill:color-mix(in srgb, var(--dark) calc(12% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-face-lit{fill:color-mix(in srgb, var(--dark) calc(6% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-face,:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-rock{fill:color-mix(in srgb, var(--dark) calc(4% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-face-dark{fill:color-mix(in srgb, var(--dark) calc(2% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-rock-lit{fill:color-mix(in srgb, var(--dark) calc(8% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-shadow,:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-lip{fill:color-mix(in srgb, var(--light) calc(40% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}:where(:root[saved-theme=dark]) .homepage-trail-scene .trail-ravine-outline{fill:color-mix(in srgb, var(--light) calc(60% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}.homepage-trail-scene .trail-ravine-hollow{fill:color-mix(in srgb, var(--gray) 48%, var(--light))}.homepage-trail-scene .trail-ravine-knoll{fill:color-mix(in srgb, #b9b98a 30%, var(--light))}.homepage-trail-scene .trail-ravine-rim{fill:color-mix(in srgb, #4f4a40 40%, var(--light))}.homepage-trail-scene .trail-ravine-lit{fill:color-mix(in srgb, #a2a875 44%, var(--light))}.homepage-trail-scene .trail-ravine-shade{fill:color-mix(in srgb, #6d6250 30%, var(--light))}.homepage-trail-scene .trail-ravine-sand{fill:color-mix(in srgb, #aaa08c 38%, var(--light))}.homepage-trail-scene .trail-ravine-shoulder{fill:color-mix(in srgb, #9da582 18%, var(--light))}.homepage-trail-scene .trail-ravine-grass{fill:color-mix(in srgb, #8e9773 65%, var(--light))}.homepage-trail-scene .trail-ravine-grass-dark{fill:color-mix(in srgb, #6c7657 55%, var(--light))}.homepage-trail-scene .trail-ravine-water{fill:color-mix(in srgb, #6f97a6 72%, var(--light))}.homepage-trail-scene .trail-ravine-deep{fill:color-mix(in srgb, #557986 74%, var(--light))}.homepage-trail-scene .trail-river-fish-silver{fill:color-mix(in srgb, #cbd6cb 84%, var(--light))}.homepage-trail-scene .trail-river-fish-flank{fill:color-mix(in srgb, #c18a79 80%, var(--light))}.homepage-trail-scene .trail-river-fish-fin{fill:color-mix(in srgb, #617b7d 82%, var(--light))}.homepage-trail-scene :is(.trail-river-current,.trail-river-fish,.trail-river-bear){shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-river-jump,.homepage-trail-scene .trail-river-splash{opacity:0}.homepage-trail-scene .trail-river-fish[data-caught=true] :is(.trail-river-jump,.trail-river-splash){opacity:0;animation:none}.homepage-trail-scene .trail-river-bear[data-driven=true] .trail-river-strike,.homepage-trail-scene .trail-river-bear[data-driven=true] .trail-river-catch,.homepage-trail-scene .trail-river-bear[data-driven=true] .trail-river-nap,.homepage-trail-scene .trail-river-bear[data-driven=true] .trail-river-drops,.homepage-trail-scene .trail-river-bear[data-driven=true] .trail-river-wade,.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=striking] .trail-river-paw{display:none}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=striking] .trail-river-strike,.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=caught] .trail-river-catch,.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=eating] .trail-river-catch{display:inline}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=eating] .trail-river-bear-stance{animation:.36s step-end infinite trail-river-chew}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=walking] .trail-river-bear-stance{animation:.26s step-end infinite trail-river-lumber}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=shaking] .trail-river-bear-stance{animation:90ms step-end infinite trail-river-shake}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=shaking] .trail-river-drops{display:inline}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=napping] .trail-river-bear-stance{transform:translateY(4px)scaleY(.76)}.homepage-trail-scene .trail-river-bear[data-driven=true][data-pose=napping] .trail-river-nap{animation:1.4s step-end infinite trail-river-snore;display:inline}.homepage-trail-scene .trail-river-bear[data-driven=true][data-wading=true] .trail-river-wade{display:inline}.homepage-trail-scene .trail-river-bear[data-driven=true][data-denned=true]{display:none}.homepage-trail-scene .trail-river-glint{opacity:.45;transform:translate(var(--current-x0), var(--current-y0)) rotate(var(--current-angle0))}.homepage-trail-scene .trail-ravine-foam,.homepage-trail-scene .trail-ravine-mist{fill:color-mix(in srgb, #eef4f3 88%, var(--light))}.homepage-trail-scene .trail-ravine-mist{opacity:.8}:where(:root[saved-theme=dark]) .homepage-trail-scene :is(.trail-ravine-foam,.trail-ravine-mist){fill:color-mix(in srgb, #eef4f3 66%, var(--light))}.homepage-trail-scene .trail-ravine-stone-lit{fill:color-mix(in srgb, #cfcabd 80%, var(--light))}.homepage-trail-scene .trail-ravine-gully{fill:color-mix(in srgb, #2b2824 55%, var(--light))}.homepage-trail-scene .trail-ravine-stone{fill:color-mix(in srgb, #8c887f 72%, var(--light))}.homepage-trail-scene .trail-beaver-lodge,.homepage-trail-scene .trail-beaver{shape-rendering:crispedges}.homepage-trail-scene .trail-beaver-coat{fill:color-mix(in srgb, #6e4a2f 85%, var(--light))}.homepage-trail-scene .trail-beaver-eye{fill:#1c1b1a}.homepage-trail-scene .trail-wayside{shape-rendering:crispedges}.homepage-trail-scene .trail-wayside-tread,.homepage-trail-scene .trail-wayside-stone-lit{fill:color-mix(in srgb, #d8d2c2 82%, var(--light))}.homepage-trail-scene .trail-wayside-riser,.homepage-trail-scene .trail-wayside-stone{fill:color-mix(in srgb, #7d786e 80%, var(--light))}.homepage-trail-scene .trail-wayside-log,.homepage-trail-scene .trail-wayside-bench,.homepage-trail-scene .trail-wayside-sign{fill:color-mix(in srgb, #9a7650 86%, var(--light))}.homepage-trail-scene .trail-wayside-log-end,.homepage-trail-scene .trail-wayside-bench-back{fill:color-mix(in srgb, #c49a6c 86%, var(--light))}.homepage-trail-scene .trail-wayside-post,.homepage-trail-scene .trail-wayside-bench-leg,.homepage-trail-scene .trail-wayside-plank-gap{fill:color-mix(in srgb, #4a3b2c 86%, var(--light))}.homepage-trail-scene .trail-wayside-plank{fill:color-mix(in srgb, #b89a74 86%, var(--light))}.homepage-trail-scene .trail-wayside-puddle{fill:color-mix(in srgb, #7f9fab 70%, var(--light))}.homepage-trail-scene .trail-wayside-glint{fill:color-mix(in srgb, #eef4f3 88%, var(--light))}.homepage-trail-scene .trail-wayside-blaze-0{fill:#d14d41}.homepage-trail-scene .trail-wayside-blaze-1{fill:#879a39}.homepage-trail-scene .trail-wayside-blaze-2{fill:#da702c}.homepage-trail-scene .trail-wayside-blaze-3{fill:#4385be}.homepage-trail-scene .trail-wayside-blaze-4{fill:#d0a215}.homepage-trail-scene .trail-wayside-blaze-5{fill:#8b7ec8}.homepage-trail-scene .trail-wayside-leaf-red{fill:#c03e35}.homepage-trail-scene .trail-wayside-leaf-orange{fill:#da702c}.homepage-trail-scene .trail-wayside-leaf-yellow{fill:#d0a215}.homepage-trail-scene .trail-wayside-leaf-brown{fill:#8e5b2f}.homepage-trail-scene .trail-scene:not([data-foliage-season=autumn]) :is(.trail-wayside-leaf-red,.trail-wayside-leaf-orange,.trail-wayside-leaf-yellow,.trail-wayside-leaf-brown){display:none}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-river-glint{animation:trail-river-current var(--current-duration) linear var(--current-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-river-jump{animation:trail-river-jump var(--river-cycle) linear var(--river-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-river-splash{animation:trail-river-splash var(--river-cycle) steps(1, end) var(--river-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-river-bear:not([data-driven=true]) .trail-river-paw{animation:trail-river-paw var(--river-cycle) linear var(--river-delay) infinite}.homepage-trail-scene .trail-beaver-swim{animation:36s linear infinite trail-beaver-ferry}.homepage-trail-scene .trail-beaver-stick{animation:36s step-end infinite trail-beaver-stick}.homepage-trail-scene .trail-scene[data-weather-motion=paused] :is(.trail-river-glint,.trail-river-jump,.trail-river-splash,.trail-river-paw,.trail-beaver-swim,.trail-beaver-stick){animation-play-state:paused}}@keyframes trail-river-current{0%,to{opacity:0}12%,82%{opacity:.85}0%{transform:translate(var(--current-x0), var(--current-y0)) rotate(var(--current-angle0))}25%{transform:translate(var(--current-x1), var(--current-y1)) rotate(var(--current-angle1))}50%{transform:translate(var(--current-x2), var(--current-y2)) rotate(var(--current-angle2))}75%{transform:translate(var(--current-x3), var(--current-y3)) rotate(var(--current-angle3))}to{transform:translate(var(--current-x4), var(--current-y4)) rotate(var(--current-angle4))}}@keyframes trail-river-jump{0%,69.9%,76%,to{opacity:0;transform:translate(-2px)rotate(-24deg)}70%{opacity:1;transform:translate(-2px,-1px)rotate(-24deg)}72%{opacity:1;transform:translateY(-9px)rotate(-8deg)}73%{opacity:1;transform:translate(1px,-10px)rotate(12deg)}75%{opacity:1;transform:translateY(1px)rotate(34deg)}}@keyframes trail-river-splash{0%,69%,72%,74%,78%,to{opacity:0}70%,75%{opacity:.7}}@keyframes trail-river-chew{0%,to{transform:translateY(0)}50%{transform:translateY(1px)}}@keyframes trail-river-lumber{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}@keyframes trail-river-shake{0%,to{transform:translate(-1px)}50%{transform:translate(1px)}}@keyframes trail-river-snore{0%,to{opacity:.4}50%{opacity:1}}@keyframes trail-river-paw{0%,73%,78%,to{transform:translate(0)}74%,75%{transform:translate(3px,5px)}}@keyframes trail-beaver-ferry{0%{opacity:1;transform:translate(0, 0) scale(var(--beaver-face,1), 1)}40%,43%{transform:translate(var(--beaver-dx,0), var(--beaver-dy,0)) scale(var(--beaver-face,1), 1)}44%{transform:translate(var(--beaver-dx,0), var(--beaver-dy,0)) scale(calc(var(--beaver-face,1) * -1), 1)}84%{opacity:1;transform:translate(0, 0) scale(calc(var(--beaver-face,1) * -1), 1)}88%,96%{opacity:0;transform:translate(0, 0) scale(var(--beaver-face,1), 1)}to{opacity:1;transform:translate(0, 0) scale(var(--beaver-face,1), 1)}}@keyframes trail-beaver-stick{0%{opacity:1}42%{opacity:0}97%{opacity:1}}.homepage-trail-scene :is(.trail-wetland-pools,.trail-wetland-animal){shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-wetland-water{fill:color-mix(in srgb, #91aaa7 65%, var(--light))}.homepage-trail-scene .trail-wetland-mud{fill:color-mix(in srgb, #8b806a 30%, var(--light))}.homepage-trail-scene .trail-wetland-glint{fill:color-mix(in srgb, #dfe8dd 78%, var(--light))}.homepage-trail-scene .trail-wetland-frog-back{fill:color-mix(in srgb, #71845a 85%, var(--light))}.homepage-trail-scene .trail-wetland-frog-leg{fill:color-mix(in srgb, #506447 85%, var(--light))}.homepage-trail-scene .trail-wetland-belly{fill:color-mix(in srgb, #c3ba89 80%, var(--light))}.homepage-trail-scene .trail-wetland-otter-coat{fill:color-mix(in srgb, #8d7352 84%, var(--light))}.homepage-trail-scene .trail-wetland-otter-tail{fill:color-mix(in srgb, #65543f 87%, var(--light))}.homepage-trail-scene .trail-scene:not([data-ground-damp=true]) .trail-wetland-rain-pools{display:none}.homepage-trail-scene .trail-scene[data-water-frozen=true] .trail-wetland-water{fill:color-mix(in srgb, #b8cfd7 80%, var(--light))}.homepage-trail-scene .trail-scene[data-water-frozen=true] :is(.trail-wetland-frog,.trail-wetland-glint),.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-leap,.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-swim,.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-tongue,.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-splash,.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-throat{display:none}.homepage-trail-scene .trail-wetland-frog[data-driven=true] .trail-frog-tongue{fill:color-mix(in srgb, #c76a5c 80%, var(--light))}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=leaping] .trail-frog-sit{display:none}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=leaping] .trail-frog-leap{display:inline}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=swimming] .trail-frog-sit{display:none}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=swimming] .trail-frog-swim{display:inline}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=crouching] .trail-frog-body{transform:translateY(1px)}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=tongue] .trail-frog-tongue{display:inline}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=croaking] .trail-frog-throat{animation:.42s step-end infinite trail-frog-croak;display:inline}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-pose=swallowing] .trail-frog-body{animation:.24s step-end 2 trail-frog-swallow}.homepage-trail-scene .trail-wetland-frog[data-driven=true][data-splash=true] .trail-frog-splash{display:inline}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-wetland-frog:not([data-driven=true]) .trail-wetland-frog-motion{animation:trail-wetland-hop var(--wetland-cycle) linear var(--wetland-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-wetland-otter-motion{animation:trail-wetland-shuffle var(--wetland-cycle) linear var(--wetland-delay) infinite}.homepage-trail-scene .trail-scene[data-weather-motion=paused] :is(.trail-wetland-frog-motion,.trail-wetland-otter-motion){animation-play-state:paused}}@keyframes trail-wetland-hop{0%,65%,73%,to{transform:translate(0)}66%{transform:translate(-1px,1px)}67.5%{transform:translate(2px,-7px)}69%{transform:translate(5px)}70%{transform:translate(3px,-4px)}72%{transform:translate(0)}}@keyframes trail-wetland-shuffle{0%,56%,75%,to{transform:translate(0)}60%,68%{transform:translate(4px,-1px)}61%,67%{transform:translate(5px)}70%{transform:translate(2px)}}@keyframes trail-frog-croak{0%,to{transform:translateY(0)}50%{transform:translateY(1px)scaleX(1.3)}}@keyframes trail-frog-swallow{0%,to{transform:translateY(0)}50%{transform:translateY(1px)}}.homepage-trail-scene :is(.trail-duck,.trail-pond-fish,.trail-pond-fish-shade,.trail-pond-log,.trail-dragonfly,.trail-heron,.trail-pond-blackbird){shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-duck-head{fill:color-mix(in srgb, #3a7a4e 86%, var(--light))}.homepage-trail-scene .trail-duck-white{fill:var(--lightgray)}.homepage-trail-scene .trail-duck-breast{fill:color-mix(in srgb, #8c5a44 82%, var(--light))}.homepage-trail-scene .trail-duck-flank{fill:color-mix(in srgb, var(--gray) 52%, #b9b4a3)}.homepage-trail-scene .trail-duck-dark{fill:var(--darkgray)}.homepage-trail-scene .trail-duck-hen{fill:color-mix(in srgb, #8c7651 84%, var(--light))}.homepage-trail-scene .trail-duck-mottle{fill:color-mix(in srgb, #5c4b36 86%, var(--light))}.homepage-trail-scene .trail-pond-wake{fill:color-mix(in srgb, var(--light) 80%, #829a9f)}.homepage-trail-scene .trail-pond-shade{fill:var(--darkgray);opacity:.16}.homepage-trail-scene .trail-heron-plume{fill:color-mix(in srgb, #6f8591 86%, var(--light))}.homepage-trail-scene .trail-heron-bill{fill:color-mix(in srgb, #c9a34a 80%, var(--light))}.homepage-trail-scene .trail-heron-leg,.homepage-trail-scene .trail-turtle-skin{fill:color-mix(in srgb, #5d6a46 88%, var(--light))}.homepage-trail-scene .trail-turtle-shell{fill:color-mix(in srgb, #4d5c38 88%, var(--light))}.homepage-trail-scene .trail-dragonfly-body{fill:#4385be}.homepage-trail-scene .trail-dragonfly-wing{fill:var(--light);opacity:.55}.homepage-trail-scene :is(.trail-duck-tip,.trail-heron-strike,.trail-pond-fish-jump,.trail-pond-fish-ring){opacity:0}.homepage-trail-scene .trail-turtle{opacity:0;transition:opacity 1.2s}.homepage-trail-scene .trail-scene:is([data-weather-mode=sun],[data-weather-mode=quiet]):not([data-weather-fog=true]):not([data-weather-storm=true]):not([data-water-frozen=true]):not([data-lighting=moonlit]) .trail-turtle{opacity:1}.homepage-trail-scene .trail-scene[data-lighting=moonlit] :is(.trail-heron,.trail-pond-blackbird,.trail-dragonfly),.homepage-trail-scene .trail-scene:not([data-foliage-season=summer]) .trail-dragonfly,.homepage-trail-scene .trail-scene:is([data-weather-mode=rain],[data-weather-mode=snow],[data-weather-mode=night],[data-weather-fog=true],[data-weather-storm=true]) .trail-dragonfly,.homepage-trail-scene .trail-scene[data-water-frozen=true] :is(.trail-duck,.trail-pond-fish,.trail-pond-fish-shade,.trail-heron,.trail-pond-blackbird,.trail-dragonfly){display:none}.homepage-trail-scene .trail-pond-fish-ring{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-cruise{animation:trail-pond-cruise var(--pond-cycle) ease-in-out var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) :is(.trail-duck,.trail-pond-fish-shade) .trail-pond-facing{animation:trail-pond-turn var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-duck-up,.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-wake{animation:trail-duck-up var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-duck-tip{animation:trail-duck-tip var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-fish-jump{animation:trail-river-jump var(--pond-cycle) linear var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-fish-ring{animation:trail-pond-ring var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-heron .trail-pond-facing{animation:trail-heron-turn var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-heron-stand{animation:trail-heron-stand var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-heron-strike{animation:trail-heron-strike var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-heron-splash{animation:trail-heron-splash var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-hop{animation:trail-pond-hop var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-pond-blackbird .trail-pond-facing{animation:trail-heron-turn var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-turtle-head{animation:trail-turtle-head var(--pond-cycle) steps(1, end) var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-dragonfly-dart{animation:trail-dragonfly-dart var(--pond-cycle) linear var(--pond-delay) infinite}.homepage-trail-scene .trail-scene:not([data-water-frozen=true]) .trail-dragonfly-wing{animation:.14s step-end infinite trail-dragonfly-wing}.homepage-trail-scene .trail-scene[data-weather-motion=paused] :is(.trail-pond-cruise,.trail-pond-facing,.trail-duck-up,.trail-duck-tip,.trail-pond-wake,.trail-pond-fish-jump,.trail-pond-fish-ring,.trail-heron-stand,.trail-heron-strike,.trail-heron-splash,.trail-pond-hop,.trail-turtle-head,.trail-dragonfly-dart,.trail-dragonfly-wing){animation-play-state:paused}}@keyframes trail-pond-cruise{0%,94%,to{transform:translate(0)}44%,52%{transform:translate(var(--pond-dx), var(--pond-dy))}}@keyframes trail-pond-turn{0%,47%,to{transform:scale(var(--pond-face), 1)}48%,99%{transform:scale(calc(-1 * var(--pond-face)), 1)}}@keyframes trail-duck-up{0%,51%,to{opacity:1}45%,50%{opacity:0}}@keyframes trail-duck-tip{0%,51%,to{opacity:0}45%,50%{opacity:1}}@keyframes trail-pond-ring{0%,75.9%,91%,to{opacity:0;transform:scale(.3)}76%{opacity:.8;transform:scale(.45)}82%{opacity:.5;transform:scale(.75)}87%{opacity:.3;transform:scale(1)}}@keyframes trail-heron-turn{0%,39%,to{transform:scale(var(--pond-face), 1)}40%,99%{transform:scale(calc(-1 * var(--pond-face)), 1)}}@keyframes trail-heron-stand{0%,85%,to{opacity:1}78%,84%{opacity:0}}@keyframes trail-heron-strike{0%,85%,to{opacity:0}78%,84%{opacity:1}}@keyframes trail-heron-splash{0%,81%,to{opacity:0}78.5%,80%{opacity:.8}}@keyframes trail-pond-hop{0%,62%,to{transform:translate(0)}60%,61%{transform:translateY(-2px)}}@keyframes trail-turtle-head{0%,82%,to{transform:translate(0)}70%,81%{transform:translate(2px)}}@keyframes trail-dragonfly-dart{0%,18%,to{transform:translate(0)}21%,38%{transform:translate(14px,-6px)}41%,55%{transform:translate(6px,-13px)}58%,75%{transform:translate(-12px,-4px)}78%,95%{transform:translate(-4px,4px)}}@keyframes trail-dragonfly-wing{0%,to{opacity:.25}50%{opacity:.6}}.homepage-trail-scene .trail-meadow{shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-meadow-blade{fill:color-mix(in srgb, #a2a875 62%, var(--light))}.homepage-trail-scene .trail-meadow-blade-dark{fill:color-mix(in srgb, #76814f 72%, var(--light))}.homepage-trail-scene .trail-meadow-ground{fill:color-mix(in srgb, var(--gray) 30%, var(--light))}.homepage-trail-scene .trail-meadow-seed{fill:color-mix(in srgb, #9a7650 80%, var(--light))}.homepage-trail-scene .trail-meadow-bloom-a{fill:#d0a215}.homepage-trail-scene .trail-meadow-bloom-b{fill:#8b7ec8}.homepage-trail-scene .trail-meadow-bloom-c{fill:#fdb2a2}.homepage-trail-scene .trail-scene[data-foliage-season=spring] .trail-meadow-blade{fill:color-mix(in srgb, #9fb06f 66%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=spring] .trail-meadow-bloom-a{fill:#f3ead3}.homepage-trail-scene .trail-scene[data-foliage-season=spring] .trail-meadow-bloom-b{fill:#cdd597}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-meadow-blade{fill:color-mix(in srgb, #c09a5f 52%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-meadow-blade-dark{fill:color-mix(in srgb, #8e6a3f 60%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-meadow-bloom-c{fill:#da702c}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-meadow-blade{fill:color-mix(in srgb, #d6cfb6 70%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-meadow-blade-dark{fill:color-mix(in srgb, #a59d84 72%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-meadow-bloom-a,.trail-meadow-bloom-b,.trail-meadow-bloom-c){display:none}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-meadow-tips{animation:trail-meadow-lean var(--trail-wind-period,8s) steps(1, end) infinite;animation-delay:calc(var(--mx,0) * var(--trail-leaf-lag-x,0s) + var(--my,0) * var(--trail-leaf-lag-y,0s))}.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-meadow-tips{animation-play-state:paused}}@keyframes trail-meadow-lean{0%,to{transform:translate(0)}8%{transform:translateX(round(var(--trail-leaf-push-x,1) * 1px, 1px))}14%{transform:translateX(round(var(--trail-leaf-push-x,1) * 2px, 1px))}26%{transform:translateX(round(var(--trail-leaf-push-x,1) * 1px, 1px))}36%{transform:translate(0)}}.homepage-trail-scene .trail-leaf-fall{pointer-events:none;width:100%;height:100%;image-rendering:pixelated;position:absolute;top:0;left:0}.homepage-trail-scene .trail-sunlight{pointer-events:none;shape-rendering:crispedges;opacity:var(--trail-sunlight-strength,1)}.homepage-trail-scene .trail-leaf-shade{fill:var(--darkgray);opacity:.22}.homepage-trail-scene .trail-leaf-shade-deep{opacity:.18}.homepage-trail-scene .trail-sunfringe{fill:color-mix(in srgb, #ffe3a1 65%, var(--light));opacity:.24}.homepage-trail-scene .trail-sunfleck{fill:color-mix(in srgb, #ffe3a1 45%, var(--light));opacity:.78}.homepage-trail-scene .trail-crown-fleck{fill:#fff1c2;opacity:.6}.homepage-trail-scene .trail-scene[data-weather-mode=sun]:not([data-lighting=moonlit]):not([data-weather-fog=true]) .trail-tree-light{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-tree-light) 72%, #fff1c2) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-sunlight-grove{transform-box:view-box}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-sunlight,.homepage-trail-scene .trail-scene:is([data-weather-mode=cloud],[data-weather-mode=rain],[data-weather-mode=snow],[data-weather-mode=night]) .trail-sunlight,.homepage-trail-scene .trail-scene[data-weather-fog=true] .trail-sunlight,.homepage-trail-scene .trail-scene[data-weather-storm=true] .trail-sunlight{opacity:0}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-sunlight{transition:opacity 1.2s ease-in-out}.homepage-trail-scene .trail-sunlight-grove{animation:11s ease-in-out infinite trail-sunlight-sway;animation-delay:var(--trail-sunlight-delay,0s)}.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-sunlight-grove{animation-play-state:paused}@keyframes trail-sunlight-sway{0%,to{transform:translate(0)}35%{transform:translate(calc(var(--trail-wind-x,2px) * .4 + 2px * var(--trail-sunlight-phase,1)), 1px)}70%{transform:translate(var(--trail-wind-x,3px), calc(var(--trail-wind-y,0px) * .5 + 2px))}}}.homepage-trail-scene .trail-ground-cover{--trail-moss-1:color-mix(in srgb, #4f5f3a 72%, var(--light));--trail-moss-2:color-mix(in srgb, #6b7d47 66%, var(--light));--trail-moss-3:color-mix(in srgb, #a8b07e 74%, var(--light));pointer-events:none}.homepage-trail-scene .trail-scene[data-foliage-season=autumn] .trail-ground-cover{--trail-moss-1:color-mix(in srgb, #4a4a12 72%, var(--light));--trail-moss-2:color-mix(in srgb, #7a7f2a 66%, var(--light));--trail-moss-3:color-mix(in srgb, #d0c889 80%, var(--light))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-ground-cover{--trail-moss-1:color-mix(in srgb, #4b5a3e 62%, var(--light));--trail-moss-2:color-mix(in srgb, #7c8a66 56%, var(--light));--trail-moss-3:color-mix(in srgb, #d6d9c4 78%, var(--light))}.homepage-trail-scene .trail-moss{image-rendering:pixelated;display:block}.homepage-trail-scene .trail-sky-band{pointer-events:none;shape-rendering:crispedges}.homepage-trail-scene .trail-sky-star{fill:var(--dark);opacity:.22}.homepage-trail-scene .trail-sky-star[data-star="1"]{opacity:.14}.homepage-trail-scene .trail-sky-star[data-star="2"]{opacity:.32}.homepage-trail-scene .trail-sky-meteors{display:none}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-sky-meteors{display:inline}.homepage-trail-scene .trail-sky-meteor{opacity:0}.homepage-trail-scene .trail-sky-meteor-head{fill:color-mix(in srgb, var(--dark) 70%, #fdb2a2)}.homepage-trail-scene .trail-sky-meteor-tail{fill:color-mix(in srgb, var(--dark) 55%, #fdb2a2);opacity:.6}.homepage-trail-scene .trail-sky-meteor-trace{fill:var(--dark);opacity:.25}.homepage-trail-scene .trail-sky-cloud{transform:translateX(var(--trail-cloud-x,0px))}.homepage-trail-scene .trail-sky-cloud-lit{fill:color-mix(in srgb, var(--lightgray) 30%, var(--light))}.homepage-trail-scene .trail-sky-cloud-shade{fill:color-mix(in srgb, var(--lightgray) 70%, var(--light))}.homepage-trail-scene .trail-sky-clouds[data-overcast=true] .trail-sky-cloud-lit{fill:color-mix(in srgb, var(--gray) 30%, var(--light))}.homepage-trail-scene .trail-sky-clouds[data-overcast=true] .trail-sky-cloud-shade{fill:color-mix(in srgb, var(--gray) 50%, var(--light))}.homepage-trail-scene .trail-sky-bird-body{fill:color-mix(in srgb, var(--darkgray) 80%, var(--light))}.homepage-trail-scene .trail-sky-bird-down,.homepage-trail-scene .trail-sky-flock{opacity:0}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-sky-cloud{animation:trail-sky-cloud var(--trail-cloud-period,300s) steps(600, end) infinite;animation-delay:var(--trail-cloud-delay,0s)}.homepage-trail-scene .trail-sky-meteor{animation:trail-sky-meteor var(--trail-meteor-period,20s) steps(1, end) infinite;animation-delay:var(--trail-meteor-delay,0s)}.homepage-trail-scene .trail-sky-flock{animation:trail-sky-flock var(--trail-flock-period,46s) linear infinite;animation-delay:var(--trail-flock-delay,0s)}.homepage-trail-scene .trail-sky-bird-up,.homepage-trail-scene .trail-sky-bird-down{animation:trail-sky-flap var(--trail-bird-flap,.5s) steps(1, end) infinite;animation-delay:var(--trail-bird-delay,0s)}.homepage-trail-scene .trail-sky-bird-down{animation-name:trail-sky-flap-down}.homepage-trail-scene .trail-scene[data-weather-motion=paused] :is(.trail-sky-cloud,.trail-sky-meteor,.trail-sky-flock,.trail-sky-bird-up,.trail-sky-bird-down){animation-play-state:paused}}@keyframes trail-sky-cloud{0%{transform:translateX(var(--trail-cloud-from))}to{transform:translateX(var(--trail-cloud-to))}}@keyframes trail-sky-meteor{0%,96%{opacity:0;transform:translate(0)}96.5%{opacity:1;transform:translate(calc(var(--trail-meteor-x) * .2), calc(var(--trail-meteor-y) * .2))}97%{opacity:1;transform:translate(calc(var(--trail-meteor-x) * .45), calc(var(--trail-meteor-y) * .45))}97.5%{opacity:.8;transform:translate(calc(var(--trail-meteor-x) * .7), calc(var(--trail-meteor-y) * .7))}98%{opacity:.4;transform:translate(var(--trail-meteor-x), var(--trail-meteor-y))}98.5%,to{opacity:0;transform:translate(var(--trail-meteor-x), var(--trail-meteor-y))}}@keyframes trail-sky-flock{0%{opacity:1;transform:translate(var(--trail-flock-from), 0)}50%{opacity:1;transform:translate(var(--trail-flock-to), -24px)}50.1%,to{opacity:0;transform:translate(var(--trail-flock-to), -24px)}}@keyframes trail-sky-flap{0%{opacity:1}50%{opacity:0}}@keyframes trail-sky-flap-down{0%{opacity:0}50%{opacity:1}}.homepage-trail-scene .trail-alpine-climbers{pointer-events:none;shape-rendering:crispedges}.homepage-trail-scene .trail-climber-coat{fill:color-mix(in srgb, var(--lightgray) 20%, #a65e49)}.homepage-trail-scene .trail-climber-chalk{fill:color-mix(in srgb, var(--light) 30%, #e4dccb)}.homepage-trail-scene .trail-climber-shoe{fill:color-mix(in srgb, var(--darkgray) 40%, #8a6b4a)}.homepage-trail-scene .trail-climber-holds{fill:color-mix(in srgb, var(--light) 40%, #e9e2d2);opacity:.55}.homepage-trail-scene .trail-climber-chalk-puff{fill:color-mix(in srgb, var(--light) 40%, #efe9dc);opacity:0}.homepage-trail-scene .trail-alpine-climber[data-pose=resting][data-motion=active] .trail-climber-chalk-puff{animation:2.4s steps(4,end) infinite trail-climber-chalk}@media (prefers-reduced-motion:reduce){.homepage-trail-scene .trail-alpine-climber .trail-climber-chalk-puff{animation:none}}.homepage-trail-scene [data-climbing-pose]{display:none}.homepage-trail-scene .trail-alpine-climber[data-pose=liftLeft] [data-climbing-pose=liftLeft],.homepage-trail-scene .trail-alpine-climber[data-pose=plantLeft] [data-climbing-pose=plantLeft],.homepage-trail-scene .trail-alpine-climber[data-pose=stepLeft] [data-climbing-pose=stepLeft],.homepage-trail-scene .trail-alpine-climber[data-pose=pullLeft] [data-climbing-pose=pullLeft],.homepage-trail-scene .trail-alpine-climber[data-pose=liftRight] [data-climbing-pose=liftRight],.homepage-trail-scene .trail-alpine-climber[data-pose=plantRight] [data-climbing-pose=plantRight],.homepage-trail-scene .trail-alpine-climber[data-pose=stepRight] [data-climbing-pose=stepRight],.homepage-trail-scene .trail-alpine-climber[data-pose=pullRight] [data-climbing-pose=pullRight],.homepage-trail-scene .trail-alpine-climber[data-pose=resting] [data-climbing-pose=resting]{display:block}.homepage-trail-scene .trail-alpine-traveler,.homepage-trail-scene .trail-alpine-tracks{shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-alpine-tracks{fill:var(--darkgray);opacity:.3}.homepage-trail-scene [data-alpine-pose=read],.homepage-trail-scene .trail-alpine-traveler:is([data-phase=reading],[data-phase=resting]) [data-alpine-pose=walk]{display:none}.homepage-trail-scene .trail-alpine-traveler:is([data-phase=reading],[data-phase=resting]) [data-alpine-pose=read]{display:block}.homepage-trail-scene .trail-alpine-traveler[data-stride="0"] .trail-alpine-stride[data-stride="1"],.homepage-trail-scene .trail-alpine-traveler[data-stride="1"] .trail-alpine-stride[data-stride="0"]{display:none}.homepage-trail-scene .trail-alpine-traveler[data-alpine-traveler="1"] .trail-hiker-coat{fill:color-mix(in srgb, var(--gray) 55%, #a87564)}.homepage-trail-scene .trail-alpine-traveler[data-alpine-traveler="2"] .trail-hiker-coat{fill:color-mix(in srgb, var(--gray) 45%, #788891)}@keyframes trail-climber-chalk{0%,45%{opacity:0;transform:translateY(0)}60%{opacity:.7}to{opacity:0;transform:translateY(-3px)}}.homepage-trail-scene .trail-athlete,.homepage-trail-scene .trail-athlete-tracks{shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-athlete-tracks{fill:var(--darkgray);opacity:.3}.homepage-trail-scene .trail-athlete-tracks [data-footprint=tyre]{opacity:.7}.homepage-trail-scene .trail-athlete-cap{fill:color-mix(in srgb, var(--lightgray) 35%, #e6e1cf)}.homepage-trail-scene .trail-athlete-shirt{fill:color-mix(in srgb, var(--gray) 35%, #8d9aa0)}.homepage-trail-scene .trail-athlete-vest{fill:color-mix(in srgb, var(--gray) 20%, #fdb2a2)}.homepage-trail-scene .trail-athlete-bib{fill:var(--light)}.homepage-trail-scene .trail-athlete-shorts,.homepage-trail-scene .trail-athlete-shoe,.homepage-trail-scene .trail-athlete-tyre{fill:var(--dark)}.homepage-trail-scene .trail-athlete-helmet{fill:color-mix(in srgb, var(--gray) 30%, #6f7f6a)}.homepage-trail-scene .trail-athlete-visor,.homepage-trail-scene .trail-athlete-bar,.homepage-trail-scene .trail-athlete-saddle{fill:var(--darkgray)}.homepage-trail-scene .trail-athlete-jersey{fill:color-mix(in srgb, var(--gray) 20%, #cdd597)}.homepage-trail-scene .trail-athlete-frame{fill:color-mix(in srgb, var(--darkgray) 30%, #b0543e)}.homepage-trail-scene .trail-athlete-hub{fill:var(--gray)}.homepage-trail-scene .trail-athlete[data-stride="0"] .trail-athlete-stride[data-stride="1"],.homepage-trail-scene .trail-athlete[data-stride="1"] .trail-athlete-stride[data-stride="0"]{display:none}.homepage-trail-scene .trail-athlete-lamp{fill:color-mix(in srgb, var(--light) 30%, #f4e7b4)}.homepage-trail-scene .trail-athlete-beam{fill:color-mix(in srgb, var(--light) 30%, #f4e7b4);opacity:.22}.homepage-trail-scene .trail-scene:not([data-night=true]) :is(.trail-athlete-lamp,.trail-athlete-beam){display:none}.homepage-trail-scene .trail-tree-touch{transform-box:view-box;transform-origin:0 0}.homepage-trail-scene .trail-tree-water{pointer-events:auto;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.homepage-trail-scene .trail-tree-water:focus-visible{outline:1px dashed var(--darkgray);outline-offset:3px}.homepage-trail-scene .trail-water-feedback{z-index:3;right:max(16px, env(safe-area-inset-right));bottom:calc(max(16px, env(safe-area-inset-bottom)) + 28px);max-width:min(270px,100vw - 32px);color:var(--darkgray);font:10px/1.6 var(--codeFont);pointer-events:none;background:0 0;border:0;padding:6px 9px;position:fixed}.homepage-trail-scene .trail-water-feedback[data-visible=false]{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;overflow:hidden}.homepage-trail-scene .trail-tent,.homepage-trail-scene .trail-camp-person{shape-rendering:crispedges}.homepage-trail-scene .trail-tent-ground{fill:var(--lightgray)}.homepage-trail-scene .trail-tent-roof{fill:color-mix(in srgb, var(--gray) 50%, #987a54)}.homepage-trail-scene .trail-tent-light{fill:color-mix(in srgb, var(--lightgray) 55%, #b7a783)}.homepage-trail-scene .trail-tent-door{fill:color-mix(in srgb, var(--darkgray) 50%, #79806b)}.homepage-trail-scene .trail-tent-poles{fill:none;stroke:var(--gray);stroke-width:1px}.homepage-trail-scene .trail-tent-canvas{opacity:var(--tent-progress,1)}.homepage-trail-scene .trail-tent[data-phase=packed] .trail-tent-canvas{visibility:hidden}.homepage-trail-scene .trail-tent[data-phase=packed] .trail-tent-poles{stroke-dasharray:3 8;opacity:.3}.homepage-trail-scene .trail-tent-sleeper{fill:#cbb488;visibility:hidden}.homepage-trail-scene .trail-tent-lantern{opacity:0;pointer-events:none}.homepage-trail-scene .trail-tent[data-lit=true] .trail-tent-lantern{opacity:1}.homepage-trail-scene .trail-tent[data-lit=true][data-occupied=true] .trail-tent-lantern{opacity:.65}.homepage-trail-scene .trail-tent-lamp,.homepage-trail-scene .trail-tent-window{fill:#f1d6a0}.homepage-trail-scene .trail-tent-lamp-frame{fill:var(--darkgray)}.homepage-trail-scene .trail-tent-lamp-pool{fill:#d6ae6c;opacity:.2}.homepage-trail-scene .trail-tent[data-tent-style=dome] .trail-tent-roof{fill:color-mix(in srgb, var(--gray) 45%, #6f8160)}.homepage-trail-scene .trail-tent[data-tent-style=dome] .trail-tent-light{fill:color-mix(in srgb, var(--lightgray) 50%, #a4b089)}.homepage-trail-scene .trail-tent[data-tent-style=dome] .trail-tent-door{fill:color-mix(in srgb, var(--darkgray) 55%, #4e5a44)}.homepage-trail-scene .trail-tent[data-tent-style=tunnel] .trail-tent-roof{fill:color-mix(in srgb, var(--gray) 45%, #9b6a4c)}.homepage-trail-scene .trail-tent[data-tent-style=tunnel] .trail-tent-light{fill:color-mix(in srgb, var(--lightgray) 50%, #c79b6c)}.homepage-trail-scene .trail-tent[data-tent-style=tunnel] .trail-tent-door{fill:color-mix(in srgb, var(--darkgray) 55%, #6b4a38)}.homepage-trail-scene .trail-tent-gear{opacity:var(--tent-progress,1)}.homepage-trail-scene .trail-tent[data-phase=packed] .trail-tent-gear{visibility:hidden}.homepage-trail-scene .trail-gear-tyre,.homepage-trail-scene .trail-gear-dark{fill:var(--darkgray)}.homepage-trail-scene .trail-gear-frame{fill:color-mix(in srgb, var(--gray) 25%, #b9573f)}.homepage-trail-scene .trail-gear-seat{fill:color-mix(in srgb, var(--gray) 40%, #4f7a8a)}.homepage-trail-scene .trail-gear-pad,.homepage-trail-scene .trail-gear-lid{fill:color-mix(in srgb, var(--lightgray) 50%, #a7adae)}.homepage-trail-scene .trail-gear-pad-band{fill:color-mix(in srgb, var(--gray) 60%, #6e7476)}.homepage-trail-scene .trail-gear-cooler{fill:color-mix(in srgb, var(--gray) 40%, #5d7f99)}.homepage-trail-scene .trail-tent[data-carried=true]{visibility:hidden}.homepage-trail-scene .trail-camp[data-camp-phase=empty]{opacity:0;pointer-events:none}.homepage-trail-scene .trail-fire{opacity:var(--trail-fire-strength,1)}.homepage-trail-scene .trail-camp[data-fire-state=out] :is(.trail-fire,.trail-firelight){visibility:hidden}.homepage-trail-scene .trail-camp[data-fire-state=out] :is(.trail-flame-frame,.trail-smoke,.trail-ember,.trail-firelight-pool){animation-play-state:paused}.homepage-trail-scene .trail-camp[data-fire-state=out] .trail-log-lit{fill:var(--darkgray)}.homepage-trail-scene .trail-smoulder{visibility:hidden}.homepage-trail-scene .trail-smoulder-puff{fill:color-mix(in srgb, var(--darkgray) 55%, #8f909c);opacity:.6;shape-rendering:crispedges}.homepage-trail-scene .trail-scene[data-fire-weather=wet] .trail-camp:not([data-fire-state=out]) :is(.trail-fire,.trail-firelight,.trail-ember){visibility:hidden}.homepage-trail-scene .trail-scene[data-fire-weather=wet] .trail-camp:not([data-fire-state=out]) .trail-log-lit{fill:var(--darkgray)}.homepage-trail-scene .trail-scene[data-fire-weather=wet] .trail-camp:not([data-fire-state=out]) .trail-smoulder{visibility:visible}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-scene[data-fire-weather=wet] .trail-camp:not([data-fire-state=out]) .trail-smoulder-puff{animation:5s steps(10,end) infinite trail-smoulder;animation-delay:var(--smoulder-delay,0s)}.homepage-trail-scene [data-camp-motion=paused] .trail-smoulder-puff,.homepage-trail-scene .trail-scene[data-weather-motion=paused] .trail-smoulder-puff{animation-play-state:paused}}@keyframes trail-smoulder{0%{opacity:0;transform:translateY(6px)}20%{opacity:.8}to{transform:translate(calc(var(--trail-wind-x,0px) * 1.6), -12px);opacity:0}}.homepage-trail-scene .trail-tent[data-occupied=true] .trail-tent-sleeper{visibility:visible}.homepage-trail-scene .trail-camp-person:is([data-phase=walking],[data-phase=departing])[data-stride="1"] .trail-camp-person-art{transform:translate(-3px,-13px)}.homepage-trail-scene .trail-camp-person:is([data-phase=building],[data-phase=packing],[data-phase=dousing]) .trail-camp-person-art{transform:translate(-5px,-14px)}.homepage-trail-scene .trail-camp-person[data-phase=sleeping]{visibility:hidden}.homepage-trail-scene .trail-camp-question{visibility:hidden;fill:var(--darkgray);font:10px var(--codeFont)}.homepage-trail-scene [data-pet-notice=surprised] .trail-camp-question{visibility:visible}.homepage-trail-scene .trail-camp-tracks{fill:var(--gray);opacity:.35}.homepage-trail-scene .trail-ranger-tracks{fill:var(--gray);opacity:.3}.homepage-trail-scene .trail-park-horse{fill:color-mix(in srgb, var(--gray) 45%, #947753)}.homepage-trail-scene .trail-park-mane{fill:var(--darkgray)}.homepage-trail-scene .trail-park-muzzle{fill:color-mix(in srgb, var(--lightgray) 50%, #bca47b)}.homepage-trail-scene .trail-park-saddle{fill:#776947}.homepage-trail-scene .trail-park-hat{fill:color-mix(in srgb, var(--darkgray) 40%, #9c885c)}.homepage-trail-scene .trail-park-uniform{fill:color-mix(in srgb, var(--darkgray) 45%, #7b8961)}.homepage-trail-scene .trail-park-rein{fill:none;stroke:var(--darkgray);stroke-width:1px}.homepage-trail-scene .trail-park-check{visibility:hidden;fill:var(--darkgray);font:10px var(--codeFont)}.homepage-trail-scene .trail-park-ranger[data-phase=checking] .trail-park-check{visibility:visible}.homepage-trail-scene .trail-park-ranger[data-phase=patrolling][data-stride="1"] .trail-park-front-leg{transform:translate(2px)}.homepage-trail-scene .trail-park-ranger[data-phase=patrolling][data-stride="1"] .trail-park-back-leg{transform:translate(-2px)}.homepage-trail-scene [data-camp-motion=paused] :is(.trail-flame-frame,.trail-smoke,.trail-ember){animation-play-state:paused}.homepage-trail-scene .trail-visitor{shape-rendering:crispedges}.homepage-trail-scene .trail-visitor-tracks{fill:var(--darkgray);opacity:.3}.homepage-trail-scene .trail-visitor-labels{pointer-events:none;position:absolute;inset:0}.homepage-trail-scene .trail-visitor-label{width:28px;height:32px;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);pointer-events:auto;background:0 0;border:0;border-radius:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.homepage-trail-scene .trail-visitor-label:focus-visible{outline:1px dashed var(--darkgray);outline-offset:2px}.homepage-trail-scene .trail-visitor-popover{box-sizing:border-box;border:1px solid var(--lightgray);background:var(--light);max-width:min(280px,100vw - 16px);color:var(--darkgray);font:10px/1.5 var(--codeFont);overflow-wrap:anywhere;pointer-events:none;border-radius:0;margin:0;padding:5px 8px;position:fixed;inset:auto}.homepage-trail-scene .trail-visitor-popover span{display:block}@media (pointer:coarse),(max-width:700px){.homepage-trail-scene .trail-visitor-label{width:44px;height:44px}}.homepage-trail-scene [data-face="-1"]>.trail-pet-art .trail-pet-blob{display:none}.homepage-trail-scene [data-face="-1"]>.trail-pet-art .trail-pet-blob-mirrored{display:inline}.homepage-trail-scene .trail-pet-art{shape-rendering:crispedges}.homepage-trail-scene .trail-pet-art .trail-pet-ink,.homepage-trail-scene .trail-pet-art .trail-pet-hand{fill:#1c1b1a}.homepage-trail-scene .trail-pet-art .trail-pet-body{fill:#fffcf0}.homepage-trail-scene .trail-pet-art .trail-pet-plate{fill:#f4ecd6}.homepage-trail-scene .trail-pet-art .trail-pet-shade{fill:#bbb8b0}.homepage-trail-scene .trail-pet-art .trail-pet-hat{fill:#d8c08e}.homepage-trail-scene .trail-pet-art .trail-pet-hat-light{fill:#ecd9ae}.homepage-trail-scene .trail-pet-art .trail-pet-blob-mirrored{display:none}.homepage-trail-scene .trail-pet-art .trail-pet-band,.homepage-trail-scene .trail-pet-art .trail-pet-cloth{fill:#e9a090}.homepage-trail-scene .trail-pet-art .trail-pet-panel{fill:#cdd597}.homepage-trail-scene .trail-pet-art .trail-pet-shell-light{fill:#e2e7bf}.homepage-trail-scene .trail-pet-art .trail-pet-shell{fill:#cdd597}.homepage-trail-scene .trail-pet-art .trail-pet-shell-shade{fill:#a9b46c}.homepage-trail-scene .trail-pet-art .trail-pet-knit-light{fill:#fecdc1}.homepage-trail-scene .trail-pet-art .trail-pet-knit{fill:#fdb2a2}.homepage-trail-scene .trail-pet-art .trail-pet-knit-shade,.homepage-trail-scene .trail-pet-art .trail-pet-rib{fill:#d98e7f}.homepage-trail-scene .trail-pet-art .trail-pet-flame{fill:#f3a35a}.homepage-trail-scene .trail-pet-art .trail-pet-glass{fill:#fde7a8}.homepage-trail-scene .trail-pet-art .trail-pet-brass{fill:#a8834a}.homepage-trail-scene .trail-pet-art .trail-pet-screen{fill:#cfe0e6}.homepage-trail-scene .trail-pet-art .trail-pet-air{fill:#9c998f;opacity:.7}.homepage-trail-scene .trail-pet-art [data-part]{display:none}.homepage-trail-scene .trail-pet-art [data-part]>.trail-pet-frame{animation:trail-pet-step var(--trail-pet-swap,.4s) step-end infinite}.homepage-trail-scene .trail-pet-art [data-part]>.trail-pet-frame+.trail-pet-frame{animation-delay:calc(var(--trail-pet-swap,.4s) / -2)}.homepage-trail-scene .trail-pet-art [data-part=eyes]{translate:calc(clamp(-1, round(var(--pet-lx,0) / .09), 1) * 2px) calc(clamp(-1, round(var(--pet-ly,0) / .08), 1) * 2px);animation:4.2s step-end infinite trail-pet-blink;display:inline}.homepage-trail-scene .trail-pet-art[data-pet-state=wave] [data-part=wave]{--trail-pet-swap:.5s;display:inline}.homepage-trail-scene .trail-pet-art[data-pet-state=notice] [data-part=eyes]{display:none}.homepage-trail-scene .trail-pet-art[data-pet-state=notice] [data-part=eyes-wide]{display:inline}.homepage-trail-scene .trail-pet-art[data-pet-state=failed] [data-part=eyes]{display:none}.homepage-trail-scene .trail-pet-art[data-pet-state=failed] [data-part=eyes-scared]{display:inline}.homepage-trail-scene .trail-pet-art:is([data-pet-state=happy],[data-pet-state=cheer],[data-pet-state=thumb],[data-pet-state=wave]) [data-part=eyes]{display:none}.homepage-trail-scene .trail-pet-art:is([data-pet-state=happy],[data-pet-state=cheer],[data-pet-state=thumb],[data-pet-state=wave]) [data-part=eyes-happy]{display:inline}.homepage-trail-scene .trail-pet-art[data-pet-state=think] [data-part=eyes]{display:none}.homepage-trail-scene .trail-pet-art[data-pet-state=think] [data-part=eyes-thinking],.homepage-trail-scene .trail-pet-art[data-pet-state=think] [data-part=dots]{display:inline}.homepage-trail-scene .trail-pet-art[data-pet-state=work] [data-part=eyes]{display:none}.homepage-trail-scene .trail-pet-art[data-pet-state=work] [data-part=eyes-down],.homepage-trail-scene .trail-pet-art[data-pet-state=work] [data-part=laptop]{display:inline}.homepage-trail-scene .trail-pet-art[data-heat] [data-part^=eyes]{display:none}.homepage-trail-scene .trail-pet-art[data-heat] [data-part=shades],.homepage-trail-scene .trail-pet-art[data-cold=cool] [data-part=windbreaker],.homepage-trail-scene .trail-pet-art[data-cold=cold] [data-part=jumper],.homepage-trail-scene .trail-pet-art[data-cold=cold] [data-part=breath]{display:inline}.homepage-trail-scene .trail-pet-art[data-cold=cold] [data-part=breath]>.trail-pet-frame{opacity:0;animation:2.4s linear infinite trail-pet-puff}.homepage-trail-scene .trail-pet-art[data-cold=cold] [data-part=breath]>.trail-pet-frame+.trail-pet-frame{animation-delay:.3s}.homepage-trail-scene .trail-pet-art[data-rain] :is([data-part=umbrella],[data-part=brolly-open],[data-part=shaft]){display:inline}.homepage-trail-scene .trail-pet-art[data-rain][data-storm] [data-part=brolly-open]{animation:11s step-end infinite pet-storm-trail-open}.homepage-trail-scene .trail-pet-art[data-rain][data-storm] [data-part=brolly-out]{opacity:0;animation:11s step-end infinite pet-storm-trail-out;display:inline}.homepage-trail-scene .trail-pet-art:is([data-windy],[data-storm]) [data-part=gust],.homepage-trail-scene .trail-pet-art[data-windy]:not([data-rain],[data-pet-state=wave]) [data-part=hold]{display:inline}.homepage-trail-scene .trail-pet-art[data-windy]:not([data-rain],[data-pet-state=wave]) .trail-pet-crown{animation:2.2s step-end infinite trail-pet-tug}.homepage-trail-scene .trail-pet-art[data-snow] .trail-pet-hand{fill:#fdb2a2}.homepage-trail-scene .trail-pet-art[data-snow]:is([data-pet-state=idle],[data-pet-state=wait]):not([data-rain],[data-windy]) [data-part=reach],.homepage-trail-scene .trail-pet-art[data-lantern]:not([data-pet-state=wave],[data-pet-state=work],[data-snow][data-pet-state=idle],[data-snow][data-pet-state=wait]) [data-part=lantern],.homepage-trail-scene .trail-pet-art[data-lantern]:not([data-pet-state=wave],[data-pet-state=work],[data-snow][data-pet-state=idle],[data-snow][data-pet-state=wait]) [data-part=flame]{display:inline}.homepage-trail-scene .trail-pet-art[data-lantern]:not([data-pet-state=wave],[data-pet-state=work],[data-snow][data-pet-state=idle],[data-snow][data-pet-state=wait]) [data-part=flame]{--trail-pet-swap:.3s}.homepage-trail-scene .trail-pet-tracks path:nth-last-child(n+17){opacity:.5}.homepage-trail-scene .trail-scene:not([data-foliage-season=winter]):not([data-lighting=moonlit]) .trail-pet-tracks path[data-wet]{fill:color-mix(in srgb, var(--darkgray) 45%, #5e4630)}.homepage-trail-scene .trail-scene:not([data-foliage-season=winter])[data-lighting=moonlit] .trail-pet-tracks{fill:#ecd6ac}@media (prefers-reduced-motion:reduce){.homepage-trail-scene .trail-pet-art [data-part],.homepage-trail-scene .trail-pet-art [data-part]>.trail-pet-frame,.homepage-trail-scene .trail-pet-art .trail-pet-crown{animation:none}.homepage-trail-scene .trail-pet-art [data-part]>.trail-pet-frame+.trail-pet-frame{display:none}.homepage-trail-scene .trail-pet-art [data-part=breath]>.trail-pet-frame{opacity:1}.homepage-trail-scene .trail-pet-art[data-rain][data-storm] [data-part=brolly-open]{opacity:0}.homepage-trail-scene .trail-pet-art[data-rain][data-storm] [data-part=brolly-out]{opacity:1}}@keyframes trail-pet-step{0%{opacity:1}50%{opacity:0}}@keyframes trail-pet-blink{0%{opacity:1}96%{opacity:0}}@keyframes trail-pet-puff{0%{opacity:0}15%{opacity:1}45%{opacity:0}}@keyframes trail-pet-tug{0%{translate:0}70%{translate:0 -2px}80%{translate:0 -1px}88%{translate:0}}@keyframes pet-storm-trail-open{0%{opacity:1}1.6%{opacity:0}36%{opacity:1}}@keyframes pet-storm-trail-out{0%{opacity:0}1.6%{opacity:1}36%{opacity:0}}.homepage-trail-scene .trail-scene{--trail-snow-lit:#f2f5f1;--trail-snow-ground:#e1e9eb;--trail-snow-shade:#adbfcb;--trail-winter-wood:#6a5349;--trail-winter-bark:#c3b6a0;--trail-winter-coat:#476e65;--trail-winter-coat-red:#a34f42;--trail-winter-coat-blue:#4a677f;--trail-winter-ink:#3d3d45;--trail-winter-skin:#cda17b;--trail-winter-hearth:#8f7b6a}.homepage-trail-scene .trail-scene[data-lighting=moonlit]{--trail-snow-lit:#b6c9d8;--trail-snow-ground:#637b94;--trail-snow-shade:#455d76;--trail-winter-wood:#514a4d;--trail-winter-bark:#9babb8;--trail-winter-coat:#a3bda6;--trail-winter-coat-red:#d59479;--trail-winter-coat-blue:#abc4d8;--trail-winter-ink:#303946;--trail-winter-skin:#e2b68e;--trail-winter-hearth:#665953}.homepage-trail-scene .trail-scene :is(.trail-ground-snow,.trail-summit-snow){opacity:var(--trail-snow-cover,0);shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-scene .trail-snow-blanket{fill:var(--trail-snow-ground);opacity:1}.homepage-trail-scene .trail-scene .trail-snow-dune{fill:color-mix(in srgb, var(--trail-snow-lit) 22%, var(--trail-snow-ground))}.homepage-trail-scene .trail-scene .trail-snow-lee{fill:var(--trail-snow-shade);opacity:.2}.homepage-trail-scene .trail-scene .trail-snow-crest{fill:color-mix(in srgb, var(--trail-snow-lit) 54%, var(--trail-snow-ground));opacity:.45}.homepage-trail-scene .trail-scene :is(.trail-winter-clothes,.trail-winter-kit){display:none}.homepage-trail-scene .trail-scene .trail-winter-hat{fill:var(--trail-winter-coat-red)}.homepage-trail-scene .trail-scene .trail-winter-scarf{fill:#dbad67}.homepage-trail-scene .trail-scene .trail-winter-cuff{fill:var(--trail-snow-lit)}.homepage-trail-scene .trail-scene .trail-winter-mitten{fill:var(--trail-winter-coat-red)}.homepage-trail-scene .trail-scene .trail-winter-boot{fill:var(--trail-winter-ink)}.homepage-trail-scene .trail-scene .trail-winter-blanket{fill:var(--trail-winter-coat-blue)}.homepage-trail-scene .trail-scene .trail-camp-snow{fill:var(--trail-snow-lit)}.homepage-trail-scene .trail-scene .trail-camp-snow-shade{fill:var(--trail-snow-shade)}.homepage-trail-scene .trail-scene .trail-kettle{fill:var(--trail-winter-ink)}.homepage-trail-scene .trail-scene .trail-summit-snow-cap{fill:var(--trail-snow-lit)}.homepage-trail-scene .trail-scene .trail-summit-snow-shade{fill:var(--trail-snow-shade)}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-meadow-tuft,.trail-meadow-ground,.trail-meadow-blade,.trail-meadow-reed){fill:color-mix(in srgb, var(--trail-snow-lit) var(--trail-snow-mix,0%), #889372)}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-meadow-blade-dark{fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), #788059)}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-meadow-tips{opacity:calc(1 - var(--trail-snow-cover,0) * .78)}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-foothill-far{fill:color-mix(in srgb, var(--trail-snow-lit) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-foothill-mid,.trail-foothill-near,.trail-mountain-moss){fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), var(--lightgray))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-ravine-top,.trail-ravine-lit,.trail-ravine-shoulder,.trail-ravine-crest){fill:color-mix(in srgb, var(--trail-snow-lit) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-landform-top{fill:color-mix(in srgb, var(--trail-snow-lit) var(--trail-snow-mix,0%), color-mix(in srgb, var(--trail-landform-field,var(--light)) 50%, var(--light)))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-landform-ground{fill:color-mix(in srgb, var(--trail-snow-ground) var(--trail-snow-mix,0%), var(--trail-landform-field,var(--light)))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-ravine-body,.trail-ravine-face-lit,.trail-ravine-knoll,.trail-ravine-sand,.trail-upland-ground){fill:color-mix(in srgb, var(--trail-snow-ground) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) :is(.trail-ravine-face-dark,.trail-ravine-shadow,.trail-ravine-shade,.trail-ravine-hollow,.trail-upland-edge){fill:color-mix(in srgb, var(--trail-snow-shade) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene:not([data-snow-cover="0.000"]) .trail-ravine-face{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-snow-ground) 70%, var(--trail-snow-shade)) var(--trail-snow-mix,0%), var(--light))}.homepage-trail-scene .trail-scene .trail-pond-ice{fill:none;stroke:var(--trail-snow-shade);stroke-width:1px;opacity:0;shape-rendering:crispedges}.homepage-trail-scene .trail-scene .trail-fire-thaw{fill:color-mix(in srgb, var(--trail-snow-shade) 65%, var(--trail-winter-hearth));opacity:var(--trail-snow-cover,0)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-winter-clothes,.trail-winter-kit){display:inline}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-fair-weather-clothes,.trail-fair-weather-kit){display:none}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-tree,.trail-woodland-tree,.trail-jay-roost) .trail-tree-trunk{fill:color-mix(in srgb, var(--trail-winter-wood) calc(100% - var(--trail-tree-haze,0%)), var(--trail-snow-shade))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-tree-bark{fill:color-mix(in srgb, var(--trail-winter-bark) calc(100% - var(--trail-tree-haze,0%)), var(--trail-snow-shade))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-tree,.trail-woodland-tree)[data-tree=sequoia]{--trail-winter-wood:color-mix(in srgb, #a46549 72%, var(--trail-snow-shade))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-tree,.trail-woodland-tree)[data-tree=snag]{--trail-winter-wood:var(--trail-winter-bark)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-camper-coat,.trail-hiker-coat){fill:var(--trail-winter-coat)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-camper-right,.trail-reader-1) .trail-camper-coat,.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-alpine-traveler[data-alpine-traveler="1"] .trail-hiker-coat,.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-climber-coat{fill:var(--trail-winter-coat-red)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-reader-2 .trail-camper-coat,.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-alpine-traveler[data-alpine-traveler="2"] .trail-hiker-coat{fill:var(--trail-winter-coat-blue)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-camper-hair,.trail-camper-trousers,.trail-hiker-boot,.trail-hiker-grip){fill:var(--trail-winter-ink)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-camper-skin{fill:var(--trail-winter-skin)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-hiker-hat,.trail-hiker-bedroll){fill:color-mix(in srgb, #ddbb83 75%, var(--trail-snow-lit))}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-hiker-pack-cloth,.trail-hiker-pole,.trail-log){fill:var(--trail-winter-wood)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-hearth{fill:var(--trail-winter-hearth)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-firelight-gradient stop:first-child{stop-color:#ffcf86;stop-opacity:.65}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-firelight-gradient stop:nth-child(2){stop-color:#ef9d53;stop-opacity:.3}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-rocks{fill:var(--trail-snow-lit);opacity:.8}.homepage-trail-scene .trail-scene[data-foliage-season=winter] .trail-smoke{fill:var(--trail-snow-lit);opacity:.3}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-camp-shadow,.trail-tent-ground){fill:var(--trail-snow-shade)}.homepage-trail-scene .trail-scene[data-foliage-season=winter] :is(.trail-hiker-tracks,.trail-reader-tracks,.trail-camp-tracks,.trail-visitor-tracks){fill:var(--trail-winter-ink)}.homepage-trail-scene .trail-scene[data-water-frozen=true] :is(.trail-water,.trail-ravine-water,.trail-ravine-deep,.trail-wayside-puddle){fill:color-mix(in srgb, #b8cfd7 80%, var(--light))}.homepage-trail-scene .trail-scene[data-water-frozen=true] .trail-pond-bank .trail-water{fill:var(--trail-snow-lit)}.homepage-trail-scene .trail-scene[data-water-frozen=true] .trail-pond-ice{opacity:.85}.homepage-trail-scene .trail-scene[data-water-frozen=true] :is(.trail-pond-ripple,.trail-pond-lily,.trail-river-current,.trail-river-fish,.trail-ravine-mist,.trail-weather-paw,.trail-beaver){display:none}.homepage-trail-scene .trail-scene[data-water-frozen=true] :is(.trail-beaver-swim,.trail-beaver-stick,.trail-meadow-tips){animation:none}.homepage-trail-scene .trail-scene :is([data-phase=departing],[data-phase=returning]) .trail-goose-wake{display:none}.homepage-trail-scene .trail-scene :is([data-phase=departing],[data-phase=returning]) .trail-goose-wing{transform-box:fill-box;transform-origin:50%;transform:scaleY(2.6)rotate(-12deg)}.homepage-trail-scene .trail-scene :is([data-phase=departing],[data-phase=returning])[data-stride="1"] .trail-goose-wing{transform:scaleY(.65)rotate(12deg)}.homepage-trail-scene .trail-scene{contain:layout style paint;color:var(--darkgray);font:10px/1.6 var(--codeFont);position:absolute;inset:0}.homepage-trail-scene .trail-canvas{width:100%;height:100%;display:block}.homepage-trail-scene .trail-compositor{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;display:block;position:absolute;inset:0}.homepage-trail-scene .trail-scene:not([data-trail-renderer=webgl]) .trail-compositor{display:none}.homepage-trail-scene .trail-scene[data-trail-renderer=webgl] .trail-canvas,.homepage-trail-scene .trail-scene[data-trail-opening=pending] .trail-canvas{clip-path:inset(50%)}.homepage-trail-scene .trail-scene[data-trail-opening=pending] .trail-compositor,.homepage-trail-scene .trail-scene[data-trail-opening=pending] .trail-campsite,.homepage-trail-scene .trail-scene:not([data-trail-opening=complete]) .trail-visitor-labels,.homepage-trail-scene .trail-scene:not([data-trail-opening=complete]) .trail-leaf-fall,.homepage-trail-scene .trail-scene[data-trail-rendered=false]:not([data-trail-visible=true]) .trail-tree-waterings,.homepage-trail-scene .trail-scene[data-trail-rendered=false]:not([data-trail-visible=true]) .trail-visitor-labels,.homepage-trail-scene .trail-scene[data-camp-positioned=false] .trail-campsite{visibility:hidden}.homepage-trail-scene .trail-canvas,.homepage-trail-scene .trail-canvas *{pointer-events:none}.homepage-trail-scene .trail-path{fill:none;stroke:none}.homepage-trail-scene .trail-steps{fill:var(--gray);opacity:.55}.homepage-trail-scene .trail-steps [data-route]:not([data-route=main]){opacity:.7}.homepage-trail-scene .trail-hiker-tracks{fill:var(--darkgray);opacity:.38}.homepage-trail-scene .trail-reader-tracks{fill:var(--darkgray);opacity:.3}.homepage-trail-scene .trail-reader-tracks path:nth-last-child(n+25){opacity:.4}.homepage-trail-scene .trail-backpacker{shape-rendering:crispedges}.homepage-trail-scene .trail-backpacker[data-phase=waiting],.homepage-trail-scene .trail-backpacker[data-phase=gone]{visibility:hidden}.homepage-trail-scene .trail-upland,.homepage-trail-scene .trail-ground-base,.homepage-trail-scene .trail-terrain,.homepage-trail-scene .trail-pond,.homepage-trail-scene .trail-pasture,.homepage-trail-scene .trail-map-reader{shape-rendering:crispedges}.homepage-trail-scene .trail-terrace{fill:var(--trail-field-0)}.homepage-trail-scene .trail-terrace-1{fill:var(--trail-field-1)}.homepage-trail-scene .trail-terrace-2{fill:var(--trail-field-2)}.homepage-trail-scene .trail-terrace-3{fill:var(--trail-field-3)}.homepage-trail-scene .trail-terrace-riser{fill:color-mix(in srgb, var(--darkgray) 12%, var(--light))}.homepage-trail-scene .trail-terrace-riser-1{fill:color-mix(in srgb, var(--darkgray) 17%, var(--light))}.homepage-trail-scene .trail-terrace-riser-2{fill:color-mix(in srgb, var(--darkgray) 22%, var(--light))}.homepage-trail-scene .trail-terrace-riser-3{fill:color-mix(in srgb, var(--darkgray) 28%, var(--light))}:where(:root[saved-theme=dark]) .homepage-trail-scene :is(.trail-terrace-riser,.trail-terrace-riser-1,.trail-terrace-riser-2,.trail-terrace-riser-3){fill:color-mix(in srgb, var(--dark) calc(8% * var(--trail-relief-strength,1)), var(--trail-landform-field,var(--light)))}.homepage-trail-scene .trail-meadow-tuft{fill:color-mix(in srgb, var(--gray) 36%, var(--light))}.homepage-trail-scene .trail-meadow-reed{fill:color-mix(in srgb, var(--gray) 55%, #84916b)}.homepage-trail-scene .trail-reed-head{fill:color-mix(in srgb, var(--darkgray) 60%, #ac9068)}.homepage-trail-scene .trail-water{fill:color-mix(in srgb, var(--light) 64%, #9caeb0)}.homepage-trail-scene .trail-pond-bank .trail-water{fill:color-mix(in srgb, var(--lightgray) 42%, var(--light))}.homepage-trail-scene .trail-pond-ripple,.homepage-trail-scene .trail-goose-wake{fill:color-mix(in srgb, var(--light) 80%, #829a9f)}.homepage-trail-scene .trail-animal-coat{fill:color-mix(in srgb, var(--gray) 45%, #b6a084)}.homepage-trail-scene .trail-animal-tone-1 .trail-animal-coat{fill:var(--darkgray)}.homepage-trail-scene .trail-animal-tone-2 .trail-animal-coat{fill:color-mix(in srgb, var(--lightgray) 45%, #c1aa86)}.homepage-trail-scene .trail-animal-patch,.homepage-trail-scene .trail-animal-paw,.homepage-trail-scene .trail-animal-nose{fill:var(--darkgray)}.homepage-trail-scene .trail-animal-tone-1 .trail-animal-patch{fill:var(--lightgray)}.homepage-trail-scene .trail-animal-eye,.homepage-trail-scene .trail-goose-neck{fill:var(--dark)}.homepage-trail-scene .trail-goose-feather,.homepage-trail-scene .trail-goose-cheek{fill:var(--lightgray)}.homepage-trail-scene .trail-goose-wing{fill:var(--darkgray)}.homepage-trail-scene .trail-goose-bill{fill:color-mix(in srgb, var(--gray) 40%, #c69b60)}.homepage-trail-scene .trail-jay,.homepage-trail-scene .trail-jay-roost,.homepage-trail-scene .trail-jay-acorn{shape-rendering:crispedges;pointer-events:none}.homepage-trail-scene .trail-jay-blue{fill:#4385be}.homepage-trail-scene .trail-jay-bar{fill:#205ea6}.homepage-trail-scene .trail-jay-ink{fill:#282726}.homepage-trail-scene .trail-jay-white{fill:#f2f0e5}.homepage-trail-scene .trail-jay-belly{fill:#cecdc3}.homepage-trail-scene .trail-jay-acorn{fill:#8a6a3f}.homepage-trail-scene .trail-jay-up,.homepage-trail-scene .trail-jay-down,.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-birds,.homepage-trail-scene .trail-jay[data-pose=flying] .trail-jay-perched{display:none}.homepage-trail-scene .trail-jay[data-pose=flying] .trail-jay-up,.homepage-trail-scene .trail-jay[data-pose=flying] .trail-jay-down{animation:.28s step-end infinite trail-jay-flap;display:inline}.homepage-trail-scene .trail-jay[data-pose=flying] .trail-jay-down{animation-direction:reverse}.homepage-trail-scene .trail-jay[data-pose=digging] .trail-jay-peck{animation:.4s step-end infinite trail-jay-dig}.homepage-trail-scene .trail-woodpecker-nape{fill:#d14d41}.homepage-trail-scene .trail-jay-roost:not([data-guest=woodpecker]) .trail-woodpecker{display:none}.homepage-trail-scene .trail-jay-roost[data-guest=woodpecker] .trail-woodpecker-drum{animation:.16s step-end infinite trail-woodpecker-drum}.homepage-trail-scene .trail-animal-shadow{fill:var(--gray);opacity:.25}.homepage-trail-scene .trail-map-paper{fill:var(--light)}.homepage-trail-scene .trail-map-edge,.homepage-trail-scene .trail-map-fold{fill:var(--gray)}.homepage-trail-scene .trail-map-route{fill:color-mix(in srgb, var(--darkgray) 65%, #84916b)}.homepage-trail-scene .trail-reader-1 .trail-camper-coat{fill:color-mix(in srgb, var(--gray) 55%, #a87564)}.homepage-trail-scene .trail-upland-ground{fill:color-mix(in srgb, var(--lightgray) 28%, var(--light))}.homepage-trail-scene .trail-upland-edge{fill:color-mix(in srgb, var(--gray) 24%, var(--light))}.homepage-trail-scene .trail-upland-stone{fill:var(--gray)}.homepage-trail-scene .trail-cow{shape-rendering:crispedges}.homepage-trail-scene .trail-cow-coat,.homepage-trail-scene .trail-cow-horn{fill:var(--lightgray)}.homepage-trail-scene .trail-cow-patch,.homepage-trail-scene .trail-cow-tail,.homepage-trail-scene .trail-cow-leg{fill:var(--darkgray)}.homepage-trail-scene .trail-cow-russet .trail-cow-patch{fill:color-mix(in srgb, var(--darkgray) 55%, #a36a40)}.homepage-trail-scene .trail-cow-nose{fill:color-mix(in srgb, var(--tertiary) 55%, var(--lightgray))}.homepage-trail-scene .trail-cow-eye,.homepage-trail-scene .trail-cow-hoof{fill:var(--dark)}.homepage-trail-scene .trail-cow-shadow{fill:var(--gray);opacity:.3}.homepage-trail-scene .trail-scene{--trail-leaf-lit:#e6e4d9;--trail-leaf-mid:#b7b5ac;--trail-leaf-shade:#6f6e69}.homepage-trail-scene .trail-scene[data-lighting=moonlit]{--trail-leaf-lit:#7a8392;--trail-leaf-mid:#525a68;--trail-leaf-shade:#2b2f38}.homepage-trail-scene .trail-scene{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 50%, #84916b);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 60%, #b6b58a);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 35%, #65724f);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 45%, #b49a62)}.homepage-trail-scene .trail-tree,.homepage-trail-scene .trail-woodland-tree{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 50%, #84916b);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 60%, #b6b58a);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 35%, #65724f);--trail-tree-gold:color-mix(in srgb, var(--trail-leaf-lit) 45%, #b49a62);shape-rendering:crispedges}.homepage-trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree-tone=lichen]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 55%, #91a18b);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 55%, #c3c7a5);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 40%, #667d69)}.homepage-trail-scene :is(.trail-tree,.trail-woodland-tree)[data-tree-tone=ochre]{--trail-tree-crown:color-mix(in srgb, var(--trail-leaf-mid) 50%, #b7a270);--trail-tree-light:color-mix(in srgb, var(--trail-leaf-lit) 55%, #d3be8d);--trail-tree-dark:color-mix(in srgb, var(--trail-leaf-shade) 45%, #958257)}.homepage-trail-scene .trail-tree-crown{fill:color-mix(in srgb, var(--trail-tree-crown) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-light{fill:color-mix(in srgb, var(--trail-tree-light) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-dark{fill:color-mix(in srgb, var(--trail-tree-dark) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-gold{fill:color-mix(in srgb, var(--trail-tree-gold) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-trunk{fill:color-mix(in srgb, color-mix(in srgb, var(--trail-leaf-shade) 75%, #80624a) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-bark{fill:color-mix(in srgb, var(--trail-leaf-lit) calc(100% - var(--trail-tree-haze,0%)), var(--light))}.homepage-trail-scene .trail-tree-shadow{fill:var(--lightgray);opacity:.65}.homepage-trail-scene .trail-hearth{fill:color-mix(in srgb, var(--tertiary) 25%, var(--light))}.homepage-trail-scene .trail-camp{shape-rendering:crispedges}.homepage-trail-scene .trail-camp-shadow{fill:var(--gray);opacity:.25}.homepage-trail-scene .trail-log{fill:color-mix(in srgb, var(--darkgray) 70%, #745439)}.homepage-trail-scene .trail-log-lit{fill:#a36a40}.homepage-trail-scene .trail-camper-hair{fill:var(--darkgray)}.homepage-trail-scene .trail-camper-skin{fill:#bd9773}.homepage-trail-scene .trail-camper-coat{fill:color-mix(in srgb, var(--gray) 55%, #7c8b66)}.homepage-trail-scene .trail-camper-right .trail-camper-coat{fill:color-mix(in srgb, var(--gray) 55%, #a87564)}.homepage-trail-scene .trail-camper-trousers{fill:var(--darkgray)}.homepage-trail-scene .trail-flame-frame{opacity:0}.homepage-trail-scene .trail-flame-frame:first-child{opacity:1}.homepage-trail-scene .trail-flame-core{fill:#fff1c4}.homepage-trail-scene .trail-flame-gold{fill:#f1d67e}.homepage-trail-scene .trail-flame-orange{fill:#da702c}.homepage-trail-scene .trail-flame-tip{fill:#af3029}.homepage-trail-scene .trail-rocks,.homepage-trail-scene .trail-smoke{fill:var(--gray);opacity:.45}.homepage-trail-scene .trail-ember{fill:#da702c;opacity:0}.homepage-trail-scene .trail-campsite{pointer-events:none;width:128px;height:96px;position:absolute;transform:translate(-50%,-50%)}.homepage-trail-scene .trail-campsite svg{width:128px;height:96px;display:block;overflow:visible}.homepage-trail-scene [hidden]{display:none!important}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-cow-tail{animation:trail-tail-flick 9s steps(1, end) var(--trail-cow-delay) infinite}.homepage-trail-scene .trail-dog-tail{transform-origin:4px 6px;animation:trail-dog-wag 1.4s steps(2, end) var(--trail-animal-delay) infinite}.homepage-trail-scene .trail-cat-tail{animation:trail-tail-flick 11s steps(1, end) var(--trail-animal-delay) infinite}.homepage-trail-scene .trail-flame-frame{animation:trail-fire 1.05s steps(1, end) var(--phase) infinite}.homepage-trail-scene .trail-smoke{animation:4s steps(8,end) infinite trail-smoke}.homepage-trail-scene .trail-smoke-late{animation-delay:-2s}.homepage-trail-scene .trail-ember{animation:1.8s steps(8,end) infinite trail-ember}.homepage-trail-scene .trail-ember-late{animation-duration:2.4s;animation-delay:-1600ms}}@keyframes trail-tail-flick{0%,78%,90%,to{transform:translate(0)}82%,86%{transform:translate(-2px)}}@keyframes trail-jay-flap{0%{visibility:visible}50%{visibility:hidden}}@keyframes trail-jay-dig{0%{transform:translateY(0)}50%{transform:translateY(2px)}}@keyframes trail-woodpecker-drum{0%,40%{transform:translate(0)}50%,60%{transform:translate(-2px)}70%,to{transform:translate(0)}}@keyframes trail-dog-wag{0%,to{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}@keyframes trail-fire{0%,33.333%{opacity:1}33.334%,to{opacity:0}}@keyframes trail-ember{0%{opacity:0;transform:translate(0)}15%{opacity:.8}to{opacity:0;transform:translate(7px,-24px)}}@keyframes trail-smoke{to{transform:translate(calc(var(--trail-wind-x,0px) * 1.4), calc(-16px + var(--trail-wind-strength,0) * 10px + var(--trail-wind-y,0px) * .3));opacity:0}}body[data-slug=index] .visitor-weather-sun,body[data-slug=index] .visitor-weather-moon{transform-origin:12px 12px;opacity:1;display:block;transform:none}body[data-slug=index] .visitor-weather-moon{opacity:0;transform:translateY(3px)rotate(-15deg)}body[data-home-theme-freeze],body[data-home-theme-freeze] *,body[data-home-theme-freeze] :before,body[data-home-theme-freeze] :after{transition:none!important}:root:active-view-transition-type(homepage-theme)::view-transition-group(root){mix-blend-mode:normal;animation:none}:root:active-view-transition-type(homepage-theme)::view-transition-new(root){mix-blend-mode:normal;animation:none}:root:active-view-transition-type(homepage-theme)::view-transition-old(root){mix-blend-mode:normal;animation:none}:root:active-view-transition-type(homepage-theme)::view-transition-old(root){z-index:1;image-rendering:pixelated;animation:1s linear both paused homepage-theme-hold;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}@keyframes homepage-theme-hold{0%,to{opacity:1}}:root[saved-theme=dark] body[data-slug=index] .visitor-weather-sun{opacity:0;transform:translateY(3px)rotate(15deg)}:root[saved-theme=dark] body[data-slug=index] .visitor-weather-moon{opacity:1;transform:none}.homepage-trail-scene .trail-weather-night{opacity:0;pointer-events:none;shape-rendering:crispedges;transform:translateY(8px)}.homepage-trail-scene .trail-weather-daylight{opacity:1}.homepage-trail-scene .trail-moon-shadow{fill:#c9c8b9;opacity:.12}.homepage-trail-scene .trail-moon-lit{fill:color-mix(in srgb, var(--dark) 70%, #d8d2b4);opacity:.65}.homepage-trail-scene .trail-moon-crater{fill:var(--light);opacity:.25}.homepage-trail-scene .trail-weather-star{fill:var(--dark);opacity:.2}.homepage-trail-scene .trail-firelight{opacity:0;pointer-events:none;shape-rendering:auto}.homepage-trail-scene [data-night=true]{--trail-fire-night-dim:.4}.homepage-trail-scene .trail-tree-shadow{transform-origin:0 0;transform-box:view-box}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-weather-night{opacity:1;transform:none}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-weather-daylight{opacity:0}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-firelight{opacity:var(--trail-fire-strength,1)}.homepage-trail-scene .trail-scene[data-lighting=moonlit] [data-night=true] .trail-firelight{opacity:calc(var(--trail-fire-strength,1) * .4)}@media (prefers-reduced-motion:no-preference){.homepage-trail-scene .trail-weather-night{transition:opacity 1.2s ease-in-out,transform 1.2s ease-in-out}.homepage-trail-scene .trail-weather-daylight,.homepage-trail-scene .trail-firelight{transition:opacity 1.2s ease-in-out}.homepage-trail-scene .trail-tree-shadow{transition:opacity 1.2s ease-in-out,transform 1.2s ease-in-out}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-moon-motion{animation:10s ease-in-out infinite trail-moon-drift}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-weather-star{animation:7s ease-in-out infinite alternate trail-star-fade}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-weather-star:nth-child(2n){animation-delay:-3s}.homepage-trail-scene .trail-scene[data-lighting=moonlit][data-weather-motion=paused] .trail-moon-motion,.homepage-trail-scene .trail-scene[data-lighting=moonlit][data-weather-motion=paused] .trail-weather-star{animation-play-state:paused}.homepage-trail-scene .trail-scene[data-lighting=moonlit] .trail-firelight-pool{animation:4.2s ease-in-out infinite trail-firelight-breathe}.homepage-trail-scene .trail-scene[data-lighting=moonlit][data-camp-motion=paused] .trail-firelight-pool,.homepage-trail-scene .trail-scene[data-lighting=moonlit] [data-night=true] .trail-firelight-pool{animation-play-state:paused}}@keyframes trail-moon-drift{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes trail-star-fade{0%{opacity:.12}to{opacity:.3}}@keyframes trail-firelight-breathe{0%,to{opacity:.65}45%{opacity:.9}72%{opacity:.72}}.homepage-trail,.homepage-trail-scene{--trail-footer-panel-bottom:calc(max(16px, env(safe-area-inset-bottom)) + 28px + 1rem)}.trail-almanac[hidden]{display:none}.trail-almanac{inset:auto auto max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));z-index:var(--z-dropdown);font:10px/1.6 var(--codeFont);font-variant-numeric:tabular-nums;background:0 0;align-items:end;gap:8px;padding-inline:2px;display:flex;position:fixed}.trail-grove-total{color:var(--darkgray);white-space:nowrap}.homepage-trail:has(.homepage-trail-scene[hidden]) .trail-grove-total{display:none}button.homepage-moon-toggle{min-height:28px;color:var(--darkgray);font:10px/1.6 var(--codeFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;align-items:end;padding:0 2px;text-decoration:none;display:inline-flex}button.homepage-moon-toggle[hidden]{display:none!important}button.homepage-moon-toggle:hover,button.homepage-moon-toggle[aria-expanded=true]{color:var(--dark)}button.homepage-moon-toggle:disabled{color:var(--gray);cursor:var(--cursor-default,default)}button.homepage-moon-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.homepage-moon-panel{--control-font-size:10px;inset:auto auto var(--trail-footer-panel-bottom) max(16px, env(safe-area-inset-left));width:min(18rem,100vw - 1rem);max-height:calc(100dvh - var(--trail-footer-panel-bottom) - 1rem);box-sizing:border-box;border:1px solid var(--darkgray);border-radius:var(--radius-none);background:var(--light);color:var(--darkgray);font:var(--control-font-size)/1.4 var(--codeFont);font-variant-numeric:tabular-nums;transform-origin:0 100%;transition:opacity .15s ease-out, transform .22s cubic-bezier(.23, 1, .32, 1), display .22s allow-discrete, overlay .22s allow-discrete;margin:0;padding:.65rem;position:fixed;overflow-y:auto}.homepage-moon-panel::backdrop{background:0 0}@starting-style{.homepage-moon-panel:popover-open{opacity:0;transform:translateY(4px)}}.moon-calendar .g-cal-head{margin-bottom:.35rem}.moon-calendar .g-cal-title{white-space:normal;text-overflow:clip;font-size:1.1em;font-weight:400;overflow:visible}.moon-calendar .g-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.moon-calendar .g-calendar-weekdays>span{text-align:center;font-size:var(--control-font-size);padding:.2rem 0}.moon-calendar .g-calendar-grid{background:0 0;border:0}.moon-calendar .g-calendar-day-header{padding:0}.moon-calendar .g-calendar-day{color:var(--darkgray);border:0;align-items:center;gap:0;padding:.2rem 0;position:relative}.moon-calendar .g-calendar-day[data-outside]{opacity:.5;background-image:none}.moon-calendar .g-calendar-day[data-today] .g-calendar-day-header time{text-decoration:none}.moon-calendar .g-calendar-day[data-selected]{color:var(--dark);opacity:1}.moon-calendar .g-calendar-day[data-selected] .g-calendar-day-header h3,.moon-calendar .g-calendar-day[data-selected] .g-calendar-day-header time{color:inherit;text-underline-offset:.2em;font-weight:600;text-decoration:underline}.moon-calendar .g-calendar-day .g-calendar-day-header h3{font-size:var(--control-font-size)}.moon-calendar button.moon-calendar-day{width:100%;color:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;justify-content:center;align-items:end;padding:0 0 .3rem;display:flex;position:absolute;inset:0}.moon-calendar button.moon-calendar-day svg{width:15px;height:15px}.moon-calendar button.moon-calendar-day:hover{color:var(--dark)}.moon-calendar button.moon-calendar-day:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.moon-calendar .g-icon-button:hover:not(:disabled){color:var(--dark);background:0 0}.moon-calendar-outline{fill:none;stroke:currentColor;stroke-width:.6px}.moon-calendar-lit{fill:currentColor;stroke:none}.moon-calendar-readout{align-items:center;gap:.5rem;margin-top:.55rem;display:flex}.moon-calendar-readout>svg{flex:none;width:22px;height:22px}.moon-calendar-readout>div{gap:.1rem;min-width:0;display:grid}.moon-calendar-readout time{font-size:var(--control-font-size)}.moon-calendar-readout>button{margin-left:auto}.moon-calendar-source{min-height:1.4rem;font-size:var(--control-font-size);justify-content:space-between;align-items:center;display:flex}@media (max-width:600px),(pointer:coarse){.homepage-trail,.homepage-trail-scene{--trail-footer-panel-bottom:calc(max(16px, env(safe-area-inset-bottom)) + 7rem)}.trail-almanac{bottom:calc(max(16px, env(safe-area-inset-bottom)) + 2rem);flex-wrap:wrap;max-inline-size:calc(100vw - 2rem)}}@media (pointer:coarse){button.homepage-moon-toggle{min-height:44px}}@media (prefers-reduced-motion:reduce){.homepage-moon-panel{transition:none}}.homepage-visitor-panel{box-sizing:border-box;border:1px solid var(--lightgray);background:var(--light);width:min(320px,100vw - 16px);max-height:calc(100dvh - 24px);color:var(--darkgray);font:10px/1.6 var(--codeFont);font-variant-numeric:tabular-nums;border-radius:0;margin:0;padding:0;position:fixed;inset:auto}.homepage-visitor-panel:popover-open{flex-direction:column;display:flex}.homepage-visitor-panel .visitor-register-columns,.homepage-visitor-panel .visitor-register-list li{grid-template-columns:minmax(0,1fr) 48px 44px 32px;align-items:baseline;gap:8px;padding:5px 12px;display:grid}.homepage-visitor-panel .visitor-register-columns{color:var(--gray)}.homepage-visitor-panel .visitor-register-list{scrollbar-width:thin;scrollbar-color:var(--darkgray) var(--lightgray);min-height:0;max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.homepage-visitor-panel .visitor-register-list::-webkit-scrollbar{width:4px}.homepage-visitor-panel .visitor-register-list::-webkit-scrollbar-thumb{background:var(--darkgray);border-radius:0}.homepage-visitor-panel .visitor-register-list li{border-top:1px solid var(--lightgray)}.homepage-visitor-panel .visitor-register-list li[data-visit-state=left]{color:var(--gray)}.homepage-visitor-panel .visitor-register-list time{position:relative}.homepage-visitor-panel .visitor-register-list .visitor-register-approximate{position:absolute;inset-inline-end:100%}.homepage-visitor-panel .visitor-register-list li>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.homepage-visitor-panel p{color:var(--gray);margin:0;padding:5px 12px}.homepage-visitor-panel .visitor-register-total{border-top:1px solid var(--lightgray);padding:5px 12px}.homepage-visitor-panel .visitor-register-connection{border-top:1px solid var(--lightgray);justify-content:space-between;align-items:center;gap:8px;min-height:28px;padding:0 12px;display:flex}.homepage-visitor-panel .visitor-register-connection [data-trail-retry]{min-height:28px;color:inherit;font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;padding:0 4px;text-decoration:underline}.homepage-visitor-panel .visitor-register-connection [data-trail-retry]:focus-visible{outline:1px solid var(--darkgray);outline-offset:2px}.homepage-visitor-panel [hidden]{display:none}@media (pointer:coarse){.homepage-visitor-panel [data-trail-retry]{min-width:44px;min-height:44px}}.homepage-trail .trail-shared-cursor{z-index:var(--z-tooltip);box-sizing:border-box;width:6px;height:6px;color:var(--darkgray);pointer-events:none;opacity:.75;background:currentColor;position:fixed;transform:translate(-50%,-50%)}.homepage-trail .trail-shared-cursor span{font:9px/1.5 var(--codeFont);white-space:nowrap;background:0 0;padding:1px 4px;position:absolute;top:8px;left:8px}.homepage-trail .trail-shared-cursor[data-flipped=true] span{left:auto;right:8px}.homepage-trail .trail-shared-cursor[data-touch=true]{opacity:.5}.homepage-trail .trail-shared-cursor[data-raised=true] span{top:auto;bottom:8px}.homepage-trail,.homepage-trail-scene{--trail-field-0:color-mix(in srgb, #9fb0c2 9%, var(--light));--trail-field-1:color-mix(in srgb, #a9afa6 19%, var(--light));--trail-field-2:color-mix(in srgb, #9c9a82 27%, var(--light));--trail-field-3:color-mix(in srgb, #8a846a 30%, var(--light))}.trail-local-time{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:var(--z-dropdown);color:var(--darkgray);font:var(--text-meta)/1 var(--codeFont);font-variant-numeric:tabular-nums;pointer-events:none;background:0 0;padding:0 2px;position:fixed}.trail-local-time[hidden]{visibility:hidden;display:block}.homepage-trail-toggle[hidden]{display:none}.homepage-trail-toggle{z-index:var(--z-dropdown);min-width:44px;height:44px;color:var(--darkgray);font-family:var(--codeFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;place-items:center;padding:0 .25rem;font-size:.6rem;display:grid;position:fixed;top:1rem;right:calc(1rem + 44px)}.homepage-trail-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.homepage-trail-toggle:hover{color:var(--dark)}.homepage-trail-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.homepage-trail-toggle svg path:first-child{stroke-dasharray:.5 3}.trail-visitor-count{z-index:var(--z-dropdown);min-width:44px;height:44px;color:var(--darkgray);font:10px/1 var(--codeFont);font-variant-numeric:tabular-nums;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;align-items:center;gap:4px;padding:0 4px;display:flex;position:fixed;top:1rem;right:calc(1rem + 88px)}.trail-visitor-count:hover,.trail-visitor-count[aria-expanded=true]{color:var(--dark)}.trail-visitor-count:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.trail-visitor-count .trail-visitor-marker{box-sizing:border-box;background:currentColor;width:6px;height:6px}.trail-gate-transition{width:100vw;height:100vh;z-index:var(--z-overlay);pointer-events:none;image-rendering:pixelated;position:fixed;inset:0}.homepage-trail-scene{z-index:10;pointer-events:none;contain:layout style paint;background:0 0;width:100%;height:100dvh;position:fixed;top:0;left:0;overflow:clip}.homepage-trail-scene[hidden]{opacity:0;display:block!important}body[data-slug=index][data-trail-open=true] .garden-pet-bubble{background:0 0;border:0}body[data-slug=index][data-trail-open=true] .site-perf-debug,body[data-slug=index][data-trail-open=true] .site-perf-chart{background:var(--light);border:0}@media (min-width:601px) and (hover:hover) and (pointer:fine){.homepage-trail-toggle{min-width:28px;right:calc(1rem + 28px)}.trail-visitor-count{min-width:28px;right:calc(1rem + 56px)}}@media (max-width:600px){.homepage-trail-toggle{top:.5rem;right:calc(.5rem + 44px)}.trail-visitor-count{top:.5rem;right:calc(.5rem + 88px)}.homepage-trail:has(>.homepage-trail-toggle[hidden]) .trail-visitor-count{right:calc(.5rem + 44px)}}:target{scroll-margin-block-start:20px}.site-cursor-layer,.site-cursor,.site-cursor-bracket,.site-cursor-chart-line{display:none}@media (hover:hover) and (pointer:fine){html.site-cursor-ready .site-cursor-layer:popover-open{pointer-events:none;background:0 0;border:0;width:0;height:0;margin:0;padding:0;display:block;position:fixed;inset:0 auto auto 0;overflow:visible}.site-cursor-layer::backdrop{display:none}html.site-cursor-ready,html.site-cursor-ready body,html.site-cursor-ready body *{cursor:none!important}html.site-cursor-ready .site-cursor{z-index:var(--z-tooltip);width:24px;height:24px;color:var(--dark);opacity:0;pointer-events:none;will-change:transform;transition:opacity 90ms cubic-bezier(.22,1,.36,1);display:block;position:fixed;top:0;left:0;transform:translate(-52px,-52px)}html.site-cursor-ready .site-cursor[data-visible=true]{opacity:1}html.site-cursor-ready .site-cursor-bracket{z-index:var(--z-tooltip);color:var(--dark);opacity:0;pointer-events:none;transition:opacity 90ms cubic-bezier(.22,1,.36,1);display:block;position:fixed;top:0;left:0;transform:translate(-52px,-52px)}html.site-cursor-ready .site-cursor-bracket[data-visible=true]{opacity:.82}.site-cursor-bracket:before,.site-cursor-bracket:after{pointer-events:none;content:"";width:.3rem;height:calc(100% + .32rem);position:absolute;top:50%;transform:translateY(-50%)}.site-cursor-bracket:before{background:linear-gradient(currentColor,currentColor) 0/1px 100% no-repeat,linear-gradient(currentColor,currentColor) 0 0/100% 1px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;right:calc(100% + .12rem)}.site-cursor-bracket:after{background:linear-gradient(currentColor,currentColor) 100%/1px 100% no-repeat,linear-gradient(currentColor,currentColor) 100% 0/100% 1px no-repeat,linear-gradient(currentColor,currentColor) 100% 100%/100% 1px no-repeat;left:calc(100% + .12rem)}html.site-cursor-ready .site-cursor[data-magnetic]{transition:opacity 90ms cubic-bezier(.22,1,.36,1),transform .14s cubic-bezier(.77,0,.175,1)}html.site-cursor-ready .site-cursor[data-magnetic=release]{transition-duration:90ms,.11s}.site-cursor-diamond,.site-cursor-question,.site-cursor-crosshair,.site-cursor-line{pointer-events:none;transition:opacity .12s cubic-bezier(.22,1,.36,1),transform .12s cubic-bezier(.22,1,.36,1),background-color .12s cubic-bezier(.22,1,.36,1);display:block;position:absolute;top:50%;left:50%}.site-cursor-diamond{box-sizing:border-box;opacity:1;border:1px solid;width:10px;height:10px;transform:translate(-50%,-50%)rotate(45deg)scale(1)}.site-cursor-question{font-family:var(--codeFont);opacity:0;font-size:9px;line-height:1;transform:translate(-50%,-50%)scale(.4)}.site-cursor-crosshair{opacity:0;width:13px;height:13px;transform:translate(-50%,-50%)rotate(45deg)scale(.35)}.site-cursor-crosshair:before,.site-cursor-crosshair:after{content:"";background:currentColor;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.site-cursor-crosshair:before{width:1px;height:13px}.site-cursor-crosshair:after{width:13px;height:1px}.site-cursor-line{opacity:0;background:currentColor;width:1px;height:24px;transform:translate(-50%,-50%)scaleY(.12)}.site-cursor[data-mode=timeline] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(45deg)scale(.18)}.site-cursor[data-mode=chart] .site-cursor-diamond{opacity:0}html.site-cursor-ready .site-cursor-chart-line{z-index:6;pointer-events:none;background:#fc4c02;width:2px;display:block;position:absolute;top:0;bottom:0;transform:translate(-50%)}.site-cursor[data-mode=timeline] .site-cursor-line{opacity:1;background:#fc4c02;width:2px;transition:opacity .12s cubic-bezier(.22,1,.36,1)}.site-cursor[data-mode=text] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(45deg)scale(.18)}.site-cursor[data-mode=text] .site-cursor-line{opacity:1}.site-cursor[data-mode=bracket] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(45deg)scale(.65)}.site-cursor[data-mode=action] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(0)scale(.18)}:is([data-site-cursor-action],[data-site-cursor-close],button[aria-label^=close i]) :is([data-site-cursor-icon],svg){transition:transform .12s cubic-bezier(.22,1,.36,1)}:is([data-site-cursor-action],[data-site-cursor-close],button[aria-label^=close i])[data-site-cursor-active=true] :is([data-site-cursor-icon],svg){transform:scale(1.14)}.site-cursor[data-mode=close] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(0)scale(.18)}.site-cursor[data-mode=crosshair] .site-cursor-diamond{opacity:0;transform:translate(-50%,-50%)rotate(45deg)scale(.18)}.site-cursor[data-mode=crosshair] .site-cursor-crosshair{opacity:1;transform:translate(-50%,-50%)rotate(0)scale(1)}.site-cursor[data-mode=help] .site-cursor-diamond{opacity:1;transform:translate(-50%,-50%)rotate(45deg)scale(1.35)}.site-cursor[data-mode=help] .site-cursor-question{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){html.site-cursor-ready .site-cursor[data-magnetic],.site-cursor[data-mode=timeline] .site-cursor-line,.site-cursor-bracket,:is([data-site-cursor-action],[data-site-cursor-close],button[aria-label^=close i]) :is([data-site-cursor-icon],svg),.site-cursor,.site-cursor-diamond,.site-cursor-question,.site-cursor-crosshair,.site-cursor-line{transition:none}}.breadcrumb-container:empty{display:none}.breadcrumb-container{min-width:0;font-style:normal;font-weight:300;font-family:var(--bodyFont);flex-flow:row;gap:.25rem;margin:0;padding:0;display:flex}@media (max-width:800px){.breadcrumb-container .breadcrumb-element{display:none}.breadcrumb-container .breadcrumb-element:first-child,.breadcrumb-container .breadcrumb-element:last-child{display:flex}}.breadcrumb-element{text-transform:lowercase;flex-direction:row;flex-shrink:0;justify-content:flex-start;align-items:center;min-width:0;max-width:100%;display:flex}.breadcrumb-element:last-child{flex-shrink:1}.breadcrumb-element>a{text-decoration:none}.breadcrumb-element>a:hover{color:var(--darkgray);background:initial;text-decoration:underline}.breadcrumb-element p{margin:0 0 0 .25rem;padding:0;line-height:normal}a[data-breadcrumbs]{text-overflow:ellipsis;white-space:nowrap;max-width:320px;display:inline-block;overflow:hidden}a[data-breadcrumbs][aria-current=page]{max-width:none}.breadcrumb-overflow{position:relative}.breadcrumb-overflow>.breadcrumb-overflow-trigger{cursor:var(--cursor-pointer,pointer);color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;padding:0 .25rem;line-height:1;display:flex}.breadcrumb-overflow>.breadcrumb-overflow-trigger:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.breadcrumb-overflow>.breadcrumb-overflow-menu{display:none}.breadcrumb-overflow-floating{border-radius:var(--radius-none);font-family:var(--bodyFont);background-color:var(--light);border:1px solid color-mix(in srgb, var(--lightgray) 80%, transparent);width:max-content;z-index:var(--z-overlay);pointer-events:auto;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.5rem .75rem;font-style:normal;display:flex;position:fixed}.breadcrumb-overflow-floating>a{white-space:nowrap;border-radius:var(--radius-none);justify-content:flex-start;align-self:flex-start;align-items:center;width:max-content;max-width:100%;padding:.125rem .5rem;text-decoration:none;display:inline-flex}.breadcrumb-overflow-floating>a:hover{color:var(--dark);text-decoration:underline}.stacked-copy{display:none!important}#stacked-note-toggle{width:40px;height:24px;cursor:var(--cursor-pointer,pointer);float:right;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.view-toggle-slide{border:1px solid var(--lightgray);border-radius:var(--radius-none);width:36px;height:20px;line-height:1rem;position:absolute}.view-toggle-switch{width:18px;height:18px;transition:transform .1s linear;position:absolute;top:3px;left:3px}.view-toggle-switch svg{width:18px;height:18px;transition:filter .16s cubic-bezier(.2,0,0,1),opacity .16s cubic-bezier(.2,0,0,1),transform .16s cubic-bezier(.2,0,0,1);position:absolute;inset:0}.view-toggle-switch .single-view-icon{opacity:1;filter:blur();transform:scale(1)}.view-toggle-switch .stacked-view-icon{opacity:0;filter:blur(4px);transform:scale(.25)}#stacked-note-toggle[aria-checked=true] .view-toggle-switch{transform:translate(16px)}#stacked-note-toggle[aria-checked=true] .view-toggle-switch .single-view-icon{opacity:0;filter:blur(4px);transform:scale(.25)}#stacked-note-toggle[aria-checked=true] .view-toggle-switch .stacked-view-icon{opacity:1;filter:blur();transform:scale(1)}.stacked-buttons{visibility:hidden;flex-direction:row;align-items:center;gap:10px;width:0;display:flex}body.stack-mode>#quartz-root hgroup>.description{display:none}body.stack-mode>#quartz-root .article-title{font-size:25.5px}body.stack-mode>#quartz-root .expand-button,body.stack-mode>#quartz-root .aside-container,body.stack-mode>#quartz-root .page-content,body.stack-mode>#quartz-root .page-footer:not(#stacked-notes-container .page-footer),body.stack-mode>#quartz-root .page-header:not(#stacked-notes-container .page-header),body.stack-mode>#quartz-root .sidepanel-container,body.stack-mode>#quartz-root ul.content-meta>li.readable-source,body.stack-mode>#quartz-root footer{display:none}body.stack-mode>#quartz-root .keybind,body.stack-mode>#quartz-root .breadcrumb-container{visibility:hidden}body.stack-mode>#quartz-root .stacked-copy{display:inline-block!important}a.dag{background-color:color-mix(in srgb, var(--gold) 34%, #fff0)!important}#stacked-notes-container{background:var(--light);z-index:var(--z-popover);height:calc(97vh - .1em);display:none;overflow:auto hidden}#stacked-notes-container.active{flex-direction:row;display:flex}#stacked-notes-container a[data-role=anchor]{display:none}#stacked-notes-container>#stacked-notes-main{--note-content-width:620px;--note-title-width:40px;flex-grow:1;display:flex;overflow:auto hidden}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column{flex-grow:1;height:100%;display:flex}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover{z-index:var(--z-overlay);transform-origin:0 0;will-change:opacity, scale;transition:opacity .12s linear,scale .16s cubic-bezier(.2,0,0,1),visibility 0s linear .12s;scale:.98}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover.active-popover,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover:hover{transition-delay:0s;scale:1}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover .page-footer,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover .byline{display:none}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note{width:var(--note-content-width);max-width:var(--note-content-width);background:var(--light);border-left:1px solid var(--lightgray);flex-grow:1;flex-shrink:0;height:100%;transition:opacity 75ms linear,transform .2s cubic-bezier(.19,1,.22,1);position:sticky;top:0;overflow:hidden auto}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note:first-of-type{border-left:none}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.overlay{box-shadow:-6px 0 14px -8px color-mix(in srgb, var(--dark) 22%, transparent)}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.highlights{animation:.5s forwards noteHighlight}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.pending .stacked-content,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.failed .stacked-content{min-height:100%}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.hidden-note{opacity:.98}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note[data-entering=true]{opacity:0;transform:translate(16px)}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note:nth-last-child(1 of .stacked-note){border-right:1px solid var(--lightgray)}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title{transition:opacity .15s linear}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content{opacity:1;max-width:100%;margin:0 auto;padding:.5rem 2rem}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .title-col:not(.popover *){grid-column:1/-1}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .byline{display:none}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .byline div.first,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .byline menu.tags{grid-column:1/1}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .byline .content-meta{grid-column:2/2}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .published span{color:#aaa;font-size:12px;font-weight:500;line-height:15px}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .grid{grid-template-columns:1fr auto 1fr}@media (max-width:800px){#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content .grid{grid-template-columns:repeat(2,1fr)}}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status{min-height:50vh;color:var(--gray);text-align:center;place-content:center;justify-items:center;gap:.75rem;font-size:.9rem;display:grid}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status p{margin:0}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry]{border:1px solid var(--lightgray);border-radius:var(--radius-none);background:var(--light);color:var(--dark);cursor:var(--cursor-pointer,pointer);place-items:center;block-size:40px;inline-size:40px;padding:0;transition:background-color .12s linear,transform .12s linear;display:inline-grid}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry] svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;block-size:1.05rem;inline-size:1.05rem}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry]:hover,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry]:focus-visible{background:color-mix(in srgb, var(--light) 72%, var(--lightgray))}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry]:focus-visible{outline:2px solid var(--tertiary);outline-offset:2px}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-note-status button[data-stacked-retry]:active{transform:scale(.96)}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .backlinks{margin:1.5rem 0 2rem}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title{text-align:start;writing-mode:vertical-rl;background:var(--light);color:var(--dark);width:var(--note-title-width);opacity:0;cursor:var(--cursor-pointer,pointer);visibility:hidden;border:0;border-radius:0;margin:36px 0 0;padding:0;font-family:inherit;font-size:17px;font-weight:500;line-height:40px;position:absolute;inset:0;overflow:hidden}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title:hover,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title:focus-visible{text-underline-offset:.15em;text-decoration:underline}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title:focus-visible{outline:2px solid var(--tertiary);outline-offset:-2px}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title.dag{color:var(--foam);text-decoration:underline}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.collapsed .stacked-content{opacity:0}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.collapsed .stacked-title{opacity:1;visibility:visible}@media (max-width:800px){#stacked-notes-container{overflow-x:hidden}#stacked-notes-container.active{height:100vh}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note{display:none;width:100vw!important;max-width:100vw!important;left:0!important;right:0!important}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note:nth-last-child(1 of .stacked-note){display:block}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note:nth-last-child(1 of .stacked-note) .stacked-title{display:none}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note:nth-last-child(1 of .stacked-note) .stacked-content{padding:1rem}#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note.collapsed{display:none}}@media (prefers-reduced-motion:reduce){.view-toggle-switch,.view-toggle-switch svg,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-popover,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-content,#stacked-notes-container>#stacked-notes-main>.stacked-notes-column .stacked-note .stacked-title{transition-duration:0s;animation-duration:0s}}@keyframes noteHighlight{0%{border:0;border-image:linear-gradient(135deg, var(--secondary) 0%, var(--secondary) 0%, var(--gray) 0%, var(--gray) 100%) 1}1%{border:2px;border-image:linear-gradient(135deg, var(--secondary) 0%, var(--secondary) 50%, var(--gray) 50%, var(--gray) 100%) 1}to{border:2px;border-image:linear-gradient(135deg, var(--secondary) 0%, var(--secondary) 100%, var(--gray) 100%, var(--gray) 100%) 1}}.image-popup-modal{background:0 0;border:none;width:100vw;max-width:none;height:100vh;max-height:none;padding:0;position:fixed;inset:0}.image-popup-modal[open]{justify-content:center;align-items:center;display:flex}.image-popup-modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3}.image-popup-modal .image-popup-content{z-index:var(--z-overlay);max-width:90vw;max-height:90vh;position:relative}.image-popup-modal .image-popup-content .image-popup-img{object-fit:contain;border-radius:var(--radius-none);max-width:100%;max-height:90vh}.image-popup-modal .image-popup-close{border-radius:var(--radius-none);width:32px;height:32px;color:var(--darkgray);transition:var(--transition-normal);background:0 0;border:none;justify-content:center;align-items:center;position:absolute;top:-2rem;right:-2rem}.image-popup-modal .image-popup-close:hover{background:var(--lightgray);color:var(--dark)}.image-popup-modal .image-popup-close,.image-popup-modal .image-popup-close:hover{color:var(--light)}.image-popup-modal .image-popup-close:hover{background:0 0;transform:scale(1.1)}.palette>#palette-container>#space>output:has(>.search-results-table){padding:0}.palette>#palette-container>#space>output>.search-results-table .search-empty-row>td{white-space:normal;color:var(--dark);cursor:var(--cursor-default,default);padding:1.25rem .75rem}.palette>#palette-container>#space>output>.search-results-table .search-empty-row p{font-size:var(--text-ui);overflow-wrap:anywhere;margin:0;line-height:1.5}.palette>#palette-container>#space>output>.search-results-table .search-empty-row .search-empty-hint{color:var(--darkgray);font-size:var(--text-meta);margin-top:.25rem}.palette>#palette-container>#space>output>.search-results-table .search-empty-row:hover{cursor:var(--cursor-default,default);background:0 0}.palette>#palette-container>#space>output>.search-results-table{table-layout:fixed;border-collapse:collapse;--search-line:color-mix(in srgb, var(--dark) 12%, var(--light));width:100%;margin:0}.palette>#palette-container>#space>output>.search-results-table th,.palette>#palette-container>#space>output>.search-results-table td{text-align:left;border-bottom:1px solid var(--search-line);border-right:1px solid var(--search-line);padding:.4rem .75rem}.palette>#palette-container>#space>output>.search-results-table th:last-child,.palette>#palette-container>#space>output>.search-results-table td:last-child{border-right:0}.palette>#palette-container>#space>output>.search-results-table th{background:var(--light);z-index:1;font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);font-weight:400;position:sticky;top:0}.palette>#palette-container>#space>output>.search-results-table .search-column-score{text-align:right;font-variant-numeric:tabular-nums;width:10rem}.palette>#palette-container>#space>output>.search-results-table .suggestion-item{padding:0;display:table-row}.palette>#palette-container>#space>output>.search-results-table .suggestion-item .suggestion-content{min-width:0;color:var(--dark);font-weight:400;display:block}.palette>#palette-container>#space>output>.search-results-table .suggestion-item .suggestion-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.palette>#palette-container>#space>output>.search-results-table .suggestion-item .suggestion-aux{white-space:nowrap;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.palette>#palette-container>#space>output>.search-results-table .suggestion-item .suggestion-aux .suggestion-rank{margin-inline-start:auto}.palette>#palette-container>#space>output>.search-results-table .suggestion-item .suggestion-aux{font-size:var(--text-meta)}@container search-results (max-width:360px){.search-container .code-search-mobile-location{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;display:block}}@media (hover:hover) and (pointer:fine){.search-completions .search-completion:hover .search-completion-value{text-underline-offset:.2em;text-decoration:underline}}@media (pointer:coarse){.search-completions .search-completion{min-height:44px}}@media (pointer:coarse){.image-similar-button.image-similar-button-icon{width:44px}}@media (hover:hover) and (pointer:fine){.image-similar-button:hover{background:color-mix(in srgb, var(--dark) 8%, var(--light))}}@media (pointer:coarse){.image-similar-button{min-height:44px}}@media (max-width:480px){.image-search-row{grid-template-columns:minmax(0,1fr)}.image-search-row>.image-similar-button{justify-self:start;margin-top:0}}#avatar-editor{box-sizing:border-box;width:min(30rem,100vw - 2rem);max-height:calc(100dvh - 2rem);padding:var(--space-4);border:1px solid var(--dark);border-radius:var(--radius-none);background:var(--light);color:var(--dark);overflow-y:auto}#avatar-editor::backdrop{background:color-mix(in srgb, var(--dark) 24%, transparent)}#avatar-editor header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}#avatar-editor h2{font:500 1.25rem/1.2 var(--headerFont);margin:0}#avatar-editor button{min-height:1.75rem;padding:0 var(--space-2);border:1px solid var(--darkgray);border-radius:var(--radius-none);color:var(--dark);cursor:var(--cursor-pointer,pointer);font:400 var(--text-meta)/1 var(--codeFont);text-transform:lowercase;background:0 0;transition:background-color .12s}#avatar-editor button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}#avatar-editor button:disabled{cursor:var(--cursor-progress,progress);opacity:.6}@media (hover:hover) and (pointer:fine){#avatar-editor button:hover{background:color-mix(in srgb, var(--dark) 6%, var(--light))}}#avatar-editor svg{width:100%;height:100%;display:block}#avatar-editor .avatar-editor-close{border-color:#0000;place-items:center;width:1.75rem;padding:0;display:grid}#avatar-editor .avatar-editor-close svg{width:1rem;height:1rem}@media (pointer:coarse){#avatar-editor .avatar-editor-close{width:44px;height:44px}}.avatar-editor-preview{width:7.5rem;height:7.5rem;margin:var(--space-4) auto 0}.avatar-editor-name{margin:var(--space-1) 0 var(--space-4);color:var(--darkgray);font:400 var(--text-meta)/1.4 var(--codeFont);text-align:center}.avatar-editor-rows{gap:var(--space-3);display:grid}.avatar-editor-rows fieldset{gap:var(--space-1);border:0;flex-wrap:wrap;min-width:0;margin:0;padding:0;display:flex}.avatar-editor-rows legend{width:100%;margin-bottom:var(--space-1);color:var(--darkgray);font:400 var(--text-meta)/1.4 var(--codeFont);padding:0}#avatar-editor .avatar-editor-option{border-color:color-mix(in srgb, var(--dark) 14%, var(--light));width:2.75rem;height:2.75rem;padding:.125rem}#avatar-editor .avatar-editor-option[aria-pressed=true]{border-color:var(--dark);background:color-mix(in srgb, var(--dark) 12%, var(--light))}.avatar-editor-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}#avatar-editor .avatar-editor-save{border-color:var(--dark);background:var(--dark);color:var(--light)}@media (hover:hover) and (pointer:fine){#avatar-editor .avatar-editor-save:hover{background:color-mix(in srgb, var(--dark) 85%, var(--light))}}ul#helper{border-top:1px solid var(--lightgray);-webkit-user-select:none;user-select:none;font-size:var(--text-meta);padding-inline:0;margin-inline:0;flex-flow:wrap;justify-content:flex-start;gap:4px 12px;margin:0;padding:8px;line-height:1.4;list-style-type:none;display:flex;overflow-x:visible}ul#helper kbd{white-space:nowrap;font-family:var(--bodyFont);font-weight:600;line-height:inherit;border-width:0;margin-inline-end:4px;padding:0}ul#helper>li{white-space:normal;min-width:0;max-width:100%;line-height:inherit;flex:none;display:inline-block}.sidepanel-container{--sidepanel-width:calc(var(--grid-col-width) * 3);width:var(--sidepanel-width);flex-direction:column;grid-column:9/-1;display:flex;position:fixed;top:0;bottom:0;right:0}@media (max-width:1400px){.sidepanel-container{display:none}}.sidepanel-container.active{top:var(--sidepanel-top-offset,0px)}@media (min-width:800px) and (max-width:1400px){.sidepanel-container{--sidepanel-width:calc(var(--grid-col-width) * 2);width:var(--sidepanel-width)}}.sidepanel-container>.sidepanel-content{contain:layout;flex:1;min-width:0;min-height:0}.sidepanel-container>.sidepanel-content>.sidepanel-inner{box-sizing:border-box;border:1px solid var(--gray);border-radius:var(--radius-none);background-color:var(--light);white-space:normal;border-top-width:0;border-bottom-width:0;border-right-width:0;flex-direction:column;width:100%;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden auto}body[data-slug=index] .sidepanel-container>.sidepanel-content>.sidepanel-inner{border-top-width:1px}.sidepanel-container>.sidepanel-content>.sidepanel-inner iframe{border-width:0;width:100%;height:100%;padding:0}.sidepanel-container>.sidepanel-content>.sidepanel-inner>.pdf-embed-preview{--pdf-annotation-rail-width:0px;border-width:0;flex:auto;width:100%;height:100%;min-height:0;margin:0;padding:0}.sidepanel-container>.sidepanel-content>.sidepanel-inner>.pdf-embed-preview .pdf-annotation-rail{display:none}.sidepanel-container>.sidepanel-content>.sidepanel-inner .notes-list,.sidepanel-container>.sidepanel-content>.sidepanel-inner div[data-pagelist]{height:100%}.sidepanel-container>.sidepanel-content>.sidepanel-inner>*{padding:var(--sidepanel-padding);z-index:calc(var(--z-popover) - 1)}.sidepanel-container>.sidepanel-content>.sidepanel-inner footer,.sidepanel-container>.sidepanel-content>.sidepanel-inner .collapsible-header .toggle-button{display:none}.sidepanel-container>.sidepanel-content>.sidepanel-inner .collapsible-header-content-outer{padding-left:0!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .collapsible-header-content-outer>.collapsible-header-content{border-inline-start:0!important;padding-left:0!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .article-title{text-overflow:ellipsis;white-space:nowrap;margin-top:0;overflow-x:hidden}.sidepanel-container>.sidepanel-content>.sidepanel-inner .grid{--layout-reading-column:1 / -1;--layout-wide-column:1 / -1;--layout-side-column:1 / -1;--layout-full-column:1 / -1;--layout-header-column:1 / -1;--layout-byline-column:1 / -1;--layout-byline-template:minmax(0, 1fr) minmax(12rem, 1fr);grid-template-columns:minmax(0,1fr)!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .page-header,.sidepanel-container>.sidepanel-content>.sidepanel-inner .page-content,.sidepanel-container>.sidepanel-content>.sidepanel-inner .page-footer,.sidepanel-container>.sidepanel-content>.sidepanel-inner .title-col,.sidepanel-container>.sidepanel-content>.sidepanel-inner .main-col,.sidepanel-container>.sidepanel-content>.sidepanel-inner .side-col,.sidepanel-container>.sidepanel-content>.sidepanel-inner .full-col,.sidepanel-container>.sidepanel-content>.sidepanel-inner .all-col{min-width:0;grid-column:1/-1!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .byline{margin-bottom:0;grid-column:1/-1!important;grid-template-columns:var(--layout-byline-template)!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .byline div.first,.sidepanel-container>.sidepanel-content>.sidepanel-inner .byline menu.tags{min-width:0;grid-column:1/2!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner .byline .content-meta{min-width:0;grid-column:2/3!important}.sidepanel-container>.sidepanel-content>.sidepanel-inner>.page-content{flex:auto}.sidepanel-container>.sidepanel-content>.sidepanel-inner>.page-footer{margin-top:auto}.sidepanel-container>.sidepanel-header{padding:4px var(--sidepanel-padding);border:1px solid var(--gray);border-top-color:var(--lightgray);background:var(--light);z-index:var(--z-popover);box-sizing:border-box;border-bottom-width:0;border-right-width:0;flex:none;justify-content:flex-end;gap:.3em;width:100%;display:flex}.sidepanel-container>.sidepanel-header>.redirect-button,.sidepanel-container>.sidepanel-header>.close-button{width:24px;height:24px;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:none;flex:0 0 24px;justify-content:center;align-items:center;padding:0;transition:background-color .12s,color .12s,transform .12s cubic-bezier(.23,1,.32,1);display:flex}.sidepanel-container>.sidepanel-header>.redirect-button:focus-visible,.sidepanel-container>.sidepanel-header>.close-button:focus-visible{outline:2px solid var(--secondary);outline-offset:-3px}.sidepanel-container>.sidepanel-header>.redirect-button:active,.sidepanel-container>.sidepanel-header>.close-button:active{transform:scale(.96)}@media (hover:hover) and (pointer:fine){.sidepanel-container>.sidepanel-header>.redirect-button:hover,.sidepanel-container>.sidepanel-header>.close-button:hover{background-color:var(--lightgray);color:var(--dark)}}@media (prefers-reduced-motion:reduce){.sidepanel-container>.sidepanel-header>.redirect-button,.sidepanel-container>.sidepanel-header>.close-button{transition:background-color .12s,color .12s}.sidepanel-container>.sidepanel-header>.redirect-button:active,.sidepanel-container>.sidepanel-header>.close-button:active{transform:none}}.palette{min-width:fit-content;max-width:14rem}.palette>#palette-container{contain:layout;z-index:var(--z-modal);width:100vw;height:100vh;display:none;position:fixed;top:0;left:0;overflow:hidden}.palette>#palette-container.active{display:flex}.palette>#palette-container{width:100%;height:100dvh;color:inherit;background:0 0;border:0;margin:0;padding:0;inset:0}.palette>#palette-container:popover-open{visibility:visible}.palette>#palette-container[data-mode=quick_open]>#space{height:min(80dvh, var(--command-panel-height))}.palette>#palette-container>#space{border:1px solid var(--gray);border-radius:var(--radius-none);background-color:var(--light);box-sizing:border-box;flex-direction:column;max-width:80vw;max-height:80vh;margin-top:7vh;margin-left:auto;margin-right:auto;display:flex;overflow:hidden}.palette>#palette-container>#space .input-container{display:flex;position:relative}.palette>#palette-container>#space .input-container>input{box-sizing:border-box;width:100%;font-family:var(--bodyFont);color:var(--dark);background-color:var(--light);padding:1rem;font-size:1.1em}@media (max-width:800px){.palette>#palette-container>#space .input-container>input{font-size:max(16px,1.1em)}}.palette>#palette-container>#space .input-container>input{border-radius:var(--radius-none);border:none}.palette>#palette-container>#space .input-container>input:focus{outline:none}.palette>#palette-container>#space{--command-panel-top:max(7vh, 1rem, env(safe-area-inset-top));--command-panel-right:max(1rem, env(safe-area-inset-right));--command-panel-left:max(1rem, env(safe-area-inset-left));--command-panel-bottom:max(1rem, env(safe-area-inset-bottom));--command-panel-height:calc(100dvh - var(--command-panel-top) - var(--command-panel-bottom));width:min(75%, 100% - var(--command-panel-left) - var(--command-panel-right));max-width:none;max-height:var(--command-panel-height);margin:var(--command-panel-top) auto 0;align-self:flex-start}@media (max-width:800px){.palette>#palette-container>#space{width:calc(100% - var(--command-panel-left) - var(--command-panel-right))}}.palette>#palette-container>#space{height:min(var(--palette-content-height,80dvh), var(--command-panel-height))}.palette>#palette-container>#space>.search-footer{flex-shrink:0;margin-top:auto}.palette>#palette-container>#space .input-container{border-bottom:1px solid var(--lightgray);flex-shrink:0;padding:.25rem .5rem 0}.palette>#palette-container>#space>.search-completions:not([hidden])+output{display:none}.palette>#palette-container>#space>output .search-load-more{width:100%;min-height:1.75rem;color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;margin:0;padding:.5rem;display:block}.palette>#palette-container>#space>output .search-load-more:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.palette>#palette-container>#space>output .search-load-more:hover{text-underline-offset:.15em;text-decoration:underline}}@media (pointer:coarse){.palette>#palette-container>#space>output .search-load-more{min-height:44px}}.palette>#palette-container>#space>output{flex:1;min-height:0;margin:0;padding:12px;list-style:none;overflow-y:auto}.palette>#palette-container>#space>output:empty{display:none}.palette>#palette-container>#space>output[data-palette-transition]{animation:.18s ease-out palette-continuity}.palette>#palette-container>#space>output .suggestion-item{border-radius:var(--radius-none);white-space:pre-wrap;padding-inline-start:12px;cursor:var(--cursor-default,default);justify-content:space-between;align-items:baseline;padding:6px 12px;display:flex}.palette>#palette-container>#space>output .suggestion-item:focus .suggestion-title,.palette>#palette-container>#space>output .suggestion-item.focus .suggestion-title{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}.palette>#palette-container>#space>output .suggestion-item:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content{text-overflow:ellipsis;flex-direction:column;margin-inline-end:auto;display:flex;overflow:hidden}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content .suggestion-title{overflow-wrap:break-word}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content .suggestion-title .highlight{font-weight:700}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content .suggestion-title>.suggestion-title-prefix{color:var(--gray);vertical-align:-.125em;flex-shrink:0;align-items:center;margin-inline-end:8px;display:inline-flex}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content .suggestion-title>.suggestion-title-prefix svg{width:1em;height:1em}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content .suggestion-title .subscript{font-weight:inherit}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux{flex-shrink:0;align-self:center;align-items:center;gap:8px;display:flex}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux kbd{font-family:var(--bodyFont);font-weight:600;line-height:inherit;border-width:0;margin-inline-end:4px;padding:0}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-action{color:var(--iris);font-size:11px}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status{color:var(--gray);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status:before{content:"";transform-origin:50%;background:currentColor;border-radius:999px;width:8px;height:8px;animation:1.8s ease-in-out infinite palette-status-pulse}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=ready]{color:var(--lime)}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=warming],.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=interrupting]{color:var(--gold)}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=running]{color:var(--foam)}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=running]:before{animation:.9s ease-in-out infinite palette-status-pulse}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=failed],.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=killed]{color:var(--rose)}.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=interrupted],.palette>#palette-container>#space>output .suggestion-item>.suggestion-aux>.suggestion-status[data-status-tone=stopped]{color:var(--love)}body[data-slug=index] .palette>#palette-container>#space>.input-container{padding:0}body[data-slug=index] .palette>#palette-container>#space>.input-container,body[data-slug=index] .palette>#palette-container>#space>.search-footer{flex-shrink:0}body[data-slug=index] .palette>#palette-container>#space>output{flex:1;min-height:0}@keyframes palette-continuity{0%{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes palette-status-pulse{0%,to{opacity:.55;transform:scale(.82)}50%{opacity:1;transform:scale(1)}}.palette>#palette-container>#space{overflow:visible}.palette>#palette-container>#space .input-container{justify-content:space-between;align-items:center;gap:8px;display:flex}.palette>#palette-container>#space .input-container #bar{flex:1;width:0;min-width:0}.palette>#palette-container>#space .input-container #bar::placeholder{color:var(--darkgray);opacity:1}.palette>#palette-container>#space .palette-rank-button{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:relative}.palette>#palette-container>#space .palette-rank-button[hidden]{display:none}@media (pointer:coarse){.palette>#palette-container>#space .palette-rank-button{width:44px;height:44px}}.palette>#palette-container>#space .palette-rank-button{color:var(--darkgray);font:inherit;font-size:var(--text-meta);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;margin-right:8px;padding:6px 4px}.palette>#palette-container>#space .palette-rank-button:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.palette>#palette-container>#space>output .suggestion-item{gap:12px;min-width:0}.palette>#palette-container>#space>output .suggestion-item>.suggestion-content{overflow-wrap:anywhere;min-width:0}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank{width:80px;height:28px;color:var(--darkgray);flex:none;margin-inline-start:8px;display:block;overflow:visible}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank text{font:400 9px var(--codeFont);font-variant-numeric:tabular-nums;fill:var(--darkgray)}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-position{fill:var(--dark)}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-axis{stroke:var(--lightgray);stroke-width:1px}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-median{stroke:var(--darkgray);stroke-width:1px;stroke-dasharray:2 1.5}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-base{fill:var(--lightgray)}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-top{fill:var(--dark)}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-source,.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-rest{fill:var(--darkgray)}.palette>#palette-container>#space>output .suggestion-item .suggestion-rank .rank-rest{opacity:.55}@media (max-width:480px){.palette>#palette-container>#space #bar{font-size:16px}}.keybind{min-width:fit-content;cursor:var(--cursor-pointer,pointer);visibility:hidden;width:0;flex-grow:0!important;font-size:.8rem!important}@media (max-width:800px){.keybind{display:none}}.keybind>#shortcut-container{max-width:28rem;max-height:80vh;z-index:var(--z-popover);visibility:hidden;border:1px solid var(--lightgray);border-radius:var(--radius-none);display:none;position:fixed;bottom:1rem;right:1rem;overflow-y:auto}.keybind>#shortcut-container.active{visibility:visible;display:block}.keybind>#shortcut-container>#shortcut-space{background:var(--light)}.keybind>#shortcut-container>#shortcut-space #title{border-bottom:1px solid var(--lightgray);color:var(--dark);padding:.75rem 1rem;font-size:1.1rem;font-weight:600}.keybind>#shortcut-container>#shortcut-space ul{margin:0;padding:.5rem 1rem .75rem;list-style:none}.keybind>#shortcut-container>#shortcut-space ul span{color:var(--darkgray);font-size:.85rem}.keybind>#shortcut-container>#shortcut-space ul>li{margin:0;padding:0}.keybind>#shortcut-container>#shortcut-space ul>li>#shortcuts{grid-template-columns:auto 1fr;align-items:center;gap:1rem;margin:.5rem 0;display:grid}.keybind>#shortcut-container>#shortcut-space ul>li>#shortcuts kbd{white-space:nowrap}[saved-theme=dark] .keybind>#shortcut-container>#shortcut-space{background:var(--dark);border-color:var(--darkgray)}[saved-theme=dark] .keybind>#shortcut-container>#shortcut-space #title{color:var(--light);border-bottom-color:var(--darkgray)}[saved-theme=dark] .keybind>#shortcut-container>#shortcut-space ul span{color:var(--lightgray)}.homepage-shortcut-help{border-top:1px solid var(--lightgray);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 1rem .75rem;display:flex}.homepage-shortcut-help button{min-block-size:24px;color:inherit;font:inherit;text-underline-offset:.2em;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:0;text-decoration:underline}.homepage-shortcut-help button:focus-visible{outline:2px solid var(--dark);outline-offset:3px}@media (pointer:coarse){.homepage-shortcut-help button{min-block-size:44px}}.link-hint-marker,.link-hint-marker-exiting{border:1px solid color-mix(in srgb, var(--gray) 55%, transparent);border-radius:var(--radius-none);background:var(--light);color:var(--darkgray);font-family:var(--codeFont);text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;margin:0;padding:0 .2em;font-size:.68rem;font-weight:400;line-height:1.3;transition:opacity .14s cubic-bezier(.2,0,0,1),transform .14s cubic-bezier(.2,0,0,1);transform:translateY(.25rem)}@media (prefers-reduced-motion:reduce){.link-hint-marker,.link-hint-marker-exiting{transition:none;transform:none}}.link-hint-marker,.link-hint-marker-exiting{z-index:var(--z-max);position:fixed}.link-hint-marker{opacity:1;transform:translateY(0)}@starting-style{.link-hint-marker{opacity:0;transform:translateY(.25rem)}}.link-hint-typed{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}kbd.clickable{padding:.2rem .4rem}@media (prefers-reduced-motion:reduce){.status-flap[data-flipping] .status-flap-outgoing{display:none}}@container search-results (max-width:360px){.search-container .code-search-mobile-location{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;display:block}}@media (hover:hover) and (pointer:fine){.search-completions .search-completion:hover .search-completion-value{text-underline-offset:.2em;text-decoration:underline}}@media (pointer:coarse){.search-completions .search-completion{min-height:44px}}@media (pointer:coarse){.image-similar-button.image-similar-button-icon{width:44px}}@media (hover:hover) and (pointer:fine){.image-similar-button:hover{background:color-mix(in srgb, var(--dark) 8%, var(--light))}}@media (pointer:coarse){.image-similar-button{min-height:44px}}@media (max-width:480px){.image-search-row{grid-template-columns:minmax(0,1fr)}.image-search-row>.image-similar-button{justify-self:start;margin-top:0}}@keyframes semantic-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.search-mode-toggle .mode-option[data-mode=semantic].is-loading svg>g{opacity:.5;animation:none}}@media (prefers-reduced-motion:reduce){.semantic-search-progress[aria-hidden=false]{transition:none}}@media (max-width:800px){.search{flex-grow:.3}}@media (max-width:800px){.search>.search-container>.search-space .input-container>input{font-size:max(16px,1.1em)}}@media (max-width:800px){.search>.search-container>.search-space{width:calc(100% - var(--command-panel-left) - var(--command-panel-right))}}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.input-container .search-preview-toggle:enabled:not([aria-expanded=true]):hover{color:var(--dark)}}@media (prefers-reduced-motion:reduce){.search>.search-container>.search-space>.input-container .search-preview-toggle{transition:none}}@media (pointer:coarse){.search>.search-container>.search-space>.input-container .search-preview-toggle{width:44px;height:44px}}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option:not(.active):hover{color:var(--dark)}}@media (pointer:coarse){.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option{width:44px;height:44px}}@media (max-width:800px){.search>.search-container>.search-space>.search-layout[data-preview=true] .result-card>p.preview{display:none}.search>.search-container>.search-space>.search-layout[data-preview=true]>div:first-child{border-top-right-radius:unset;border-bottom-right-radius:unset}.search>.search-container>.search-space>.search-layout[data-preview=true]>div:last-child{border-top-left-radius:unset;border-bottom-left-radius:unset}}@media (max-width:800px){.search>.search-container>.search-space>.search-layout{flex-direction:column}.search>.search-container>.search-space>.search-layout>div{height:auto}.search>.search-container>.search-space>.search-layout[data-preview=true]>.results-container{border-right:0;flex:40%}.search>.search-container>.search-space>.search-layout[data-preview=true]>.preview-container{border-top:1px solid var(--lightgray);flex:60%}}@media (prefers-reduced-motion:reduce){.search>.search-container>.search-space>.search-layout>.preview-container{transition:none}}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button:hover{background:color-mix(in srgb, var(--dark) 6%, var(--light))}}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button{min-height:44px}}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-label,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-table,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-list,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-cards span{font-size:var(--text-meta)}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.results-container .search-load-more:hover{text-underline-offset:.15em;text-decoration:underline}}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.results-container .search-load-more{min-height:44px}}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table tbody tr:not(.search-empty-row):hover{cursor:var(--cursor-pointer,pointer)}}@container search-results (max-width:600px){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-note{width:45%}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-match{width:55%}}@container search-results (max-width:360px){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-match{display:none}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table:has(.search-empty-row) .search-column-match{display:table-cell}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-note{width:auto}}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card>hgroup{min-height:44px}}@media (max-width:800px){.search #base-search-bar input[type=text],.search #base-search-bar input[type=search]{font-size:max(16px,1em)}}@media (max-width:800px){.search-space .search-footer>ul#helper>li:nth-child(n+4){display:none}.search-footer{grid-template-columns:auto minmax(0,1fr)}.search-footer>ul#helper>li{font-size:0}.search-footer>ul#helper>li>kbd{font-size:var(--text-meta)}.search-footer>ul#helper>li[data-quick-open],.search-footer>ul#helper>li[data-command]{display:none}}.darkmode{cursor:var(--cursor-pointer,pointer);width:24px;height:24px;color:var(--darkgray);-webkit-user-select:none;user-select:none;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;transition:color .15s,transform .15s;display:inline-flex}.darkmode:hover,.darkmode:focus-visible{color:var(--secondary)}.darkmode:active{transform:scale(.92)}.darkmode:focus-visible{outline:1px solid var(--secondary);outline-offset:2px;border-radius:var(--radius-full)}.darkmode svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:18px;height:18px}#light-toggle-system,#light-toggle-dark,#light-toggle-light{display:none}:root:not([data-theme-mode]) #light-toggle-system,:root[data-theme-mode=daylight] #light-toggle-system,:root[data-theme-mode=system] #light-toggle-system,:root[data-theme-mode=dark] #light-toggle-dark,:root[data-theme-mode=light] #light-toggle-light{display:block}:root[saved-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[saved-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.svg-diagram{vertical-align:middle;max-width:100%;color:var(--dark);display:inline-block}.svg-diagram svg{max-width:100%;height:auto;display:block;overflow:visible}.course-home,.course-unit-bar,.course-unit-foot{--course-line:color-mix(in srgb, var(--gray) 55%, transparent);--course-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--course-selected:color-mix(in srgb, var(--secondary) 18%, var(--course-surface));--course-control-height:1.75rem;min-width:0;color:var(--darkgray)}.course-home a:hover,.course-unit-bar a:hover,.course-unit-foot a:hover{color:inherit;background:0 0}@media (pointer:coarse){.course-home,.course-unit-bar,.course-unit-foot{--course-control-height:44px}}.course-home a.internal,.course-unit-bar a.internal,.course-unit-foot a.internal{background:0 0}.course-num,.course-count,.course-stats,[data-due],[data-last]{font-family:var(--codeFont);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1}.course-count,.course-stats{font-size:var(--text-meta);color:var(--darkgray);text-transform:lowercase;line-height:1.4}.course-action{align-items:baseline;gap:var(--space-1);min-height:var(--course-control-height);font-family:var(--codeFont);font-size:var(--text-meta);line-height:var(--course-control-height);text-transform:lowercase;color:var(--dark);text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em;transition:text-decoration-color .12s cubic-bezier(.2,0,0,1);display:inline-flex}.course-action:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-action[aria-disabled=true]{color:var(--darkgray);cursor:var(--cursor-default,default);text-decoration:none}@media (hover:hover) and (pointer:fine){.course-action:not([aria-disabled=true]):hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}}@media (forced-colors:active){.course-action:focus-visible{outline-color:highlight}}.course-new{margin-left:var(--space-1);padding:0 var(--space-1);background:color-mix(in srgb, var(--secondary) 45%, transparent);color:var(--dark)}.course-bar{align-items:center;gap:var(--space-2) var(--space-4);margin:0 0 var(--space-3);flex-wrap:wrap;display:flex}.course-bar h2{font-size:var(--text-ui);font-weight:400;font-family:var(--codeFont);text-transform:lowercase;color:var(--dark);margin:0}.course-bar .course-count{flex:auto;min-width:0;margin:0}.course-bar .course-action{margin-left:auto}@media (max-width:800px){.course-bar .course-action{margin-left:0}}.course-home.course-home--index{grid-column:var(--layout-wide-column)}.course-home.course-home--index>.course-unit-bar{grid-column:1/-1;margin-top:0}.course-index{min-width:0}.course-index-list{border:1px solid var(--dark);margin:0;padding:0;list-style:none}.course-row{margin:0;padding:0}.course-row+.course-row{border-top:1px solid var(--dark)}.course-row-link{gap:var(--space-1) var(--space-3);font-size:var(--text-ui);color:var(--darkgray);grid-template-columns:7ch minmax(0,1fr) auto;align-items:baseline;padding:.4rem .75rem;line-height:1.45;text-decoration:none;transition:background-color .12s cubic-bezier(.2,0,0,1);display:grid}.course-row-link .course-num{color:var(--dark)}.course-row-link .course-row-title{min-width:0;color:var(--dark);overflow-wrap:anywhere;text-wrap:pretty}.course-row-link .course-row-term{font-size:var(--text-meta);white-space:nowrap}.course-row-link .course-stats{grid-column:2/-1}.course-row-link:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.course-row-link:hover .course-row-title{text-underline-offset:.2em;text-decoration:underline}}@media (max-width:800px){.course-row-link{grid-template-columns:minmax(0,1fr)}.course-row-link .course-row-term,.course-row-link .course-stats{white-space:normal;grid-column:1}}.course-home{--course-rail-width:11rem;grid-column:var(--layout-full-column);align-content:start;gap:var(--space-6);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid;container:course-home/inline-size}@media (max-width:800px){.course-home{grid-column:var(--layout-reading-column)}}.folder-layout.course-home--folder{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.folder-layout.course-home--folder>.folder-layout--article,.folder-layout.course-home--folder>.notes-list{grid-column:1}.folder-layout.course-home--folder>.notes-list{margin-top:0}.page:has(>.page-body-grid>.page-content>:is(.course-home:not(.course-home--index),.course-home--folder))>.header{--layout-full-column:3 / -3}.page:has(>.page-body-grid>.page-content>:is(.course-home:not(.course-home--index),.course-home--folder))>.page-body-grid>.page-content{--layout-full-column:3 / -3}.page:has(>.page-body-grid>.page-content>:is(.course-home:not(.course-home--index),.course-home--folder))>.header>.header-content{grid-column:var(--layout-full-column);justify-self:center;inline-size:100%;max-inline-size:66rem}.page:has(>.page-body-grid>.page-content>:is(.course-home:not(.course-home--index),.course-home--folder))>.page-body-grid>.page-content>:is(.course-home,.course-home--folder){grid-column:var(--layout-full-column);justify-self:center;inline-size:100%;max-inline-size:66rem}.course-body{gap:var(--space-6) var(--space-8);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}@container course-home (min-width:56rem){.course-body{grid-template-columns:var(--course-rail-width) minmax(0, 1fr)}.course-rail{top:var(--space-6);align-self:start;position:sticky}}.course-masthead{min-width:0;padding:0 0 var(--space-4);border-bottom:1px solid var(--dark);display:block}.course-masthead .course-masthead-num{gap:var(--space-1) 1ch;font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);flex-wrap:wrap;margin:0;line-height:1.4;display:flex}.course-masthead .course-masthead-num .course-unit-sep{color:var(--gray)}.course-masthead .course-masthead-num a{color:var(--darkgray);text-decoration:none}.course-masthead .course-masthead-num a:hover{text-underline-offset:.2em;text-decoration:underline}.course-masthead .course-masthead-title{margin:var(--space-1) 0 var(--space-2);text-wrap:balance;font-size:2rem;line-height:1.15}.course-masthead .course-masthead-meta{font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);margin:0}.course-masthead .course-masthead-meta .course-sep{color:var(--gray);margin:0 1ch}.course-masthead .course-masthead-meta a{color:var(--dark);text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em}.course-masthead .course-masthead-meta a:hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}.course-masthead .course-masthead-desc{max-width:72ch;margin:var(--space-4) 0 0;color:var(--darkgray);text-wrap:pretty;font-size:1rem;line-height:1.5}.course-rail{min-width:0;font-size:var(--text-ui);line-height:1.45}.course-rail section+section{margin-top:var(--space-5)}.course-rail h2{margin:0 0 var(--space-1);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);font-weight:400}.course-rail ul{margin:0;padding:0;list-style:none}.course-rail li,.course-rail dl{margin:0}.course-rail dt{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray)}.course-rail dd{margin:0 0 var(--space-2);overflow-wrap:anywhere}.course-rail a{color:var(--dark);text-decoration:none}.course-rail a:hover{text-underline-offset:.2em;text-decoration:underline}.course-rail a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@container course-home (max-width:56rem){.course-rail{gap:var(--space-4) var(--space-8);flex-wrap:wrap;display:flex}.course-rail section+section{margin-top:0}}.course-main{min-width:0;container:course-spine/inline-size}.course-spine-table{border:1px solid var(--dark);border-collapse:collapse;width:100%;font-size:var(--text-ui);margin:0;line-height:1.45}.course-spine-table th,.course-spine-table td{text-align:left;vertical-align:baseline;overflow-wrap:anywhere;border:0;padding:.4rem .6rem}.course-spine-table thead th{font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);border-bottom:1px solid var(--dark);font-weight:400}.course-spine-table .course-part-head th{font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--dark);background:var(--course-surface);border-top:1px solid var(--dark);padding-top:.5rem;font-weight:400}.course-spine-table .course-part-head th .course-count{margin-left:var(--space-3)}.course-spine-table .course-unit-row+.course-unit-row td{border-top:1px solid var(--course-line)}.course-spine-table .course-unit-row[data-frontier=true] td{background:var(--course-selected)}.course-spine-table .course-unit-row[data-state=new] .course-unit-title{color:var(--darkgray)}.course-spine-table .course-unit-row .course-unit-title{color:var(--dark)}.course-spine-table .course-c-n,.course-spine-table .course-c-cards,.course-spine-table .course-c-due,.course-spine-table .course-c-last{white-space:nowrap;text-align:right;width:1%}.course-spine-table .course-unit-dates{font-size:var(--text-meta);color:var(--darkgray);display:block}.course-spine-table a{color:inherit;overflow-wrap:anywhere;text-decoration:none}.course-spine-table a:hover{text-underline-offset:.2em;text-decoration:underline}.course-spine-table a:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@container course-spine (max-width:36rem){.course-spine-table .course-c-last{display:none}}@container course-spine (max-width:24rem){.course-spine-table .course-c-src{display:none}}.course-spine-trailing{margin:var(--space-2) 0 0;font-size:var(--text-meta);font-family:var(--codeFont);text-transform:lowercase}.course-unit-foot{grid-column:var(--layout-wide-column);min-width:0;margin-top:var(--space-0);padding-top:var(--space-0);display:block}.course-unit-foot h2{margin:var(--space-6) 0 var(--space-2);font-size:var(--text-ui);font-family:var(--codeFont);text-transform:lowercase;color:var(--dark);font-weight:400}.course-unit-foot .course-count{margin:0 0 var(--space-2)}.course-unit-foot ul{font-size:var(--text-ui);margin:0;padding-left:1.2em}.course-unit-pager{margin-top:var(--space-6);border:1px solid var(--dark);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.course-unit-pager a,.course-unit-pager span{box-sizing:border-box;align-items:baseline;gap:var(--space-2);min-height:var(--course-control-height);font-size:var(--text-ui);color:var(--dark);padding:.4rem .75rem;text-decoration:none;display:flex}.course-unit-pager .course-num{flex:none}.course-unit-pager .course-pager-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:0;padding:0;display:block;overflow:hidden}.course-unit-pager a:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.course-unit-pager a:hover{text-underline-offset:.2em;text-decoration:underline}}.course-unit-pager [rel=next]{text-align:right;border-left:1px solid var(--dark);justify-content:flex-end}@media (prefers-reduced-motion:reduce){.course-action,.course-row-link{transition:none}}.course-resource-strip{min-width:0;padding:0 var(--pdf-gutter,1rem);grid-column:1/-1}.course-strip{--course-line:color-mix(in srgb, var(--gray) 55%, transparent);--course-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--course-control-height:1.75rem;gap:var(--space-2) var(--space-4);min-width:0;padding:var(--space-2) 0;border-bottom:1px solid var(--course-line);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head links";align-items:start;display:grid}.course-strip a{color:var(--dark);background:0 0;text-decoration:none}.course-strip a:hover{color:var(--dark);text-underline-offset:.2em;background:0 0;text-decoration:underline}.course-strip a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-strip code{font-size:inherit;background:0 0;padding:0}@media (pointer:coarse){.course-strip{--course-control-height:44px}}.course-strip-head{grid-area:head;min-width:0}.course-strip-head .course-crumb{gap:var(--space-1) var(--space-2);flex-wrap:wrap;margin:0;display:flex}.course-strip-head .course-unit-sep{color:var(--gray)}.course-strip-head .course-card-title{margin:var(--space-1) 0 0;font-family:var(--headerFont);font-size:var(--text-ui);text-transform:none;color:var(--dark);text-wrap:balance;overflow-wrap:anywhere;font-weight:400;line-height:1.3}.course-strip-head .course-count{margin:var(--space-1) 0 0}.course-strip-toggle{min-height:var(--course-control-height);padding:0 var(--space-2);border:1px solid var(--course-line);border-radius:var(--radius-none);color:var(--dark);font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;grid-area:links;align-self:center;display:none}.course-strip-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-strip-links{align-items:stretch;gap:var(--space-4);grid-area:links;place-self:start end;margin:0;padding:0;display:flex}.course-strip-links[popover]{color:inherit;background:0 0;border:0;position:static;inset:auto;overflow:visible}.course-strip-table{border-collapse:collapse;width:max-content;max-width:min(100%,28rem);font:inherit;text-transform:inherit;background:0 0;border:0;margin:0}.course-strip-table tr{background:0 0;border:0}.course-strip-table th,.course-strip-table td{font:inherit;font-weight:inherit;text-align:right;vertical-align:baseline;white-space:nowrap;background:0 0;border:0;padding:.12rem 0 .12rem 1.1rem}.course-strip-table th{text-align:left;color:var(--darkgray);padding-left:0}.course-strip-table .course-sep{color:var(--gray);margin:0 .45em}@media not (max-width:50rem){.course-strip:has(>.course-strip-head>.course-card-title){grid-template-rows:auto auto 1fr;grid-template-areas:"crumb crumb""title links""meta links";row-gap:0}.course-strip:has(>.course-strip-head>.course-card-title)>.course-strip-head{display:contents}.course-strip:has(>.course-strip-head>.course-card-title) .course-crumb{grid-area:crumb}.course-strip:has(>.course-strip-head>.course-card-title) .course-card-title{grid-area:title;align-self:baseline}.course-strip:has(>.course-strip-head>.course-card-title) .course-count{grid-area:meta}.course-strip:has(>.course-strip-head>.course-card-title)>.course-strip-links{align-self:baseline}}@media (max-width:50rem){.course-strip{grid-template-columns:minmax(0,1fr) auto auto}.course-strip-toggle{align-items:center;display:inline-flex}.course-strip-links[popover]{width:auto;max-width:none;max-height:70dvh;padding:var(--space-2) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom));border:1px solid var(--dark);background:var(--light);text-align:left;border-bottom:0;place-self:normal;display:none;position:fixed;inset:auto 0 0;overflow:auto}.course-strip-links[popover]:popover-open{gap:var(--space-2);flex-direction:column;display:flex}.course-strip-links[popover] .course-strip-table{width:100%;max-width:none}.course-strip-links[popover] .course-strip-table th,.course-strip-links[popover] .course-strip-table td{padding:var(--space-2) 0;border-top:1px solid var(--course-line);text-align:left;white-space:normal;line-height:var(--course-control-height)}.course-strip-links[popover] .course-strip-table th{width:1%;padding-right:var(--space-3)}.course-strip-links[popover] .course-strip-table tr:first-child th,.course-strip-links[popover] .course-strip-table tr:first-child td{border-top:0}.course-strip-links[popover] .course-strip-table a{display:inline-block}.course-strip-links[popover]::backdrop{background:color-mix(in srgb, var(--dark) 25%, transparent)}}.course-spine-table .course-c-src,.course-spine-table .course-c-marks{white-space:nowrap;overflow-wrap:normal;width:1%}.course-spine-table .course-c-marks{text-align:right}.course-spine-table .course-slots{gap:var(--space-2);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;grid-auto-columns:max-content;grid-auto-flow:column;display:inline-grid}.course-spine-table .course-slot{text-align:center;white-space:nowrap;min-width:3ch;color:var(--dark)}.course-spine-table .course-slot--empty{color:var(--darkgray)}.course-spine-table .course-unit-src{display:none}@container course-spine (max-width:36rem){.course-spine-table .course-c-marks{display:none}}@container course-spine (max-width:24rem){.course-spine-table .course-unit-src{justify-content:start;gap:var(--space-2);margin-top:var(--space-1);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;grid-auto-flow:column;display:grid}}#quartz-root[data-course-crumb]>section.header,#quartz-root[data-course-crumb] .header-content{display:contents}#quartz-root[data-course-crumb] .header-content>.breadcrumb-container,#quartz-root[data-course-crumb] .header-content>.stacked-buttons,#quartz-root[data-course-crumb] .header-content>.keybind,#quartz-root[data-course-crumb] .header-content>.darkmode,#quartz-root[data-course-crumb] .header-content>.search>.search-button{display:none}#quartz-root[data-course-crumb] .course-watch-body{height:100dvh;top:0}#quartz-root[data-course-crumb]>.page-body-grid>.page-header>:not(.course-resource-strip),#quartz-root[data-course-crumb]>.page-body-grid>.page-content>.main-col,#quartz-root[data-course-crumb]>.page-body-grid>.page-content>.course-reading-split,#quartz-root[data-course-crumb]>.page-body-grid>.page-content>.course-resource,#quartz-root[data-course-crumb]>.page-body-grid>.page-footer>*{justify-self:center;inline-size:100%;max-inline-size:66rem}.byline .course-unit-notes p{font-family:var(--codeFont);text-transform:lowercase;margin:0}.byline .course-unit-notes a{color:var(--dark)}article.course-notes blockquote.callout[data-callout-metadata=latex]{--color:var(--dark);--border:var(--dark);--bg:transparent;padding:0 var(--space-3);border:1px solid var(--dark);border-radius:var(--radius-none);color:var(--dark);background:0 0;margin:1rem 0}article.course-notes blockquote.callout[data-callout-metadata=latex]:before{content:none}article.course-notes blockquote.callout[data-callout-metadata=latex]>.callout-title{padding:var(--space-3) 0 0;color:var(--dark);align-items:baseline}article.course-notes blockquote.callout[data-callout-metadata=latex]>.callout-title:last-child,article.course-notes blockquote.callout[data-callout-metadata=latex].is-collapsed>.callout-title{padding-bottom:var(--space-3)}article.course-notes blockquote.callout[data-callout-metadata=latex]>.callout-content>p:last-child>a:only-child{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray)}article.course-notes a.latex-eq{visibility:hidden;display:block;position:relative;top:-4rem}article.course-notes img[src*="/static_resources/latex/"]{width:auto;max-width:100%;margin:var(--space-4) auto;border-radius:0;display:block}:root[saved-theme=dark] article.course-notes img[src*="/static_resources/latex/"]{filter:invert(.88)hue-rotate(180deg)}.course-latex{margin-top:var(--space-6);border:1px solid var(--dark);font-size:var(--text-ui)}.course-latex summary{font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--dark);cursor:var(--cursor-pointer,pointer);padding:.4rem .75rem}.course-latex summary:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.course-latex[open] summary{border-bottom:1px solid var(--course-line)}.course-latex .course-latex-tools{align-items:center;gap:var(--space-3);padding:var(--space-2) .75rem;font-family:var(--codeFont);font-size:var(--text-meta);display:flex}.course-latex .course-latex-tools .course-count{flex:auto;margin:0}.course-latex .course-latex-tools button{appearance:none;min-height:var(--course-control-height);padding:0 var(--space-2);border:1px solid var(--course-line);border-radius:var(--radius-none);color:var(--dark);font:inherit;text-transform:lowercase;cursor:var(--cursor-pointer,pointer);background:0 0}.course-latex .course-latex-tools button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-latex .course-latex-pre{max-height:60vh;padding:var(--space-3) .75rem;border:0;border-top:1px solid var(--course-line);background:var(--course-surface);font-size:var(--text-meta);tab-size:2;border-radius:0;margin:0;line-height:1.5;overflow:auto}.course-latex .course-latex-pre code{white-space:pre;background:0 0;padding:0;display:block}.course-page{--course-line:color-mix(in srgb, var(--gray) 55%, transparent);--course-control-height:1.75rem}.course-page .course-page-head{margin:0 0 var(--space-4)}.course-page .course-page-links{margin:0}code.course-path{font-size:inherit}.page:has(>.page-body-grid>.page-content>.course-page>.course-calendar)>.header>.header-content{grid-column:3/-3;justify-self:center;inline-size:100%;max-inline-size:66rem}.page:has(>.page-body-grid>.page-content>.course-page>.course-calendar)>.page-body-grid>.page-content>.course-page{grid-column:3/-3;justify-self:center;inline-size:100%;max-inline-size:66rem}.course-calendar{--control-focus:var(--dark)}.course-calendar .g-calendar-day-header{padding:.1rem .15rem .2rem}.course-calendar .g-calendar-day-header h3{font-size:1em}.course-calendar a.g-event{text-decoration:none}.course-calendar .g-calendar-day,.fr-calendar .g-calendar-day{position:relative}.fr-calendar .g-calendar-day-header{padding:.1rem .15rem .2rem}.course-calendar-due{background:var(--light);color:var(--darkgray);font-family:var(--codeFont);font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;pointer-events:none;padding-inline:.25rem;transition:opacity .15s;position:absolute;inset-block-start:.3rem;inset-inline-end:.4rem}.g-calendar-day:hover .course-calendar-due,.g-calendar-day:focus-within .course-calendar-due{opacity:1}@media (prefers-reduced-motion:reduce){.course-calendar-due{transition:none}}.course-calendar-foot{margin-top:var(--space-3);color:var(--darkgray);font:400 var(--text-meta)/1.5 var(--codeFont)}.course-calendar-foot p{margin:var(--space-2) 0 0}.course-calendar-foot code{background:0 0;padding:0}.course-calendar-legend{gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.course-calendar-legend li{align-items:center;gap:var(--space-2);margin:0;display:inline-flex}.course-unit-bar{grid-column:var(--layout-byline-column);align-items:center;gap:var(--space-1) var(--space-3);margin:var(--space-3) 0 var(--space-4);padding:var(--space-2) 0;border-top:1px solid var(--course-line);border-bottom:1px solid var(--course-line);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;flex-wrap:wrap;flex:100%;line-height:1.4;display:flex}@media (pointer:coarse){.course-unit-bar{padding-block:0}}.course-unit-bar .course-crumb,.course-unit-bar .course-unit-dates,.course-unit-bar .course-unit-actions,.course-unit-bar .fr-unit-facts{min-block-size:var(--course-control-height)}.course-unit-bar .course-crumb,.course-unit-bar .course-unit-dates,.course-unit-bar .course-unit-actions{flex-wrap:wrap;align-items:center;display:flex}.course-unit-bar .course-crumb{column-gap:1ch}.course-unit-bar .course-unit-sep{color:var(--gray)}.course-unit-bar .course-unit-dates{color:var(--darkgray)}.course-unit-bar a{padding-block:calc((var(--course-control-height) - 1lh) / 2);color:var(--dark);line-height:1.4;text-decoration:none}.course-unit-bar a:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.course-unit-bar a:hover{color:var(--dark);text-underline-offset:.2em;text-decoration:underline}}.course-unit-bar .course-unit-actions{gap:0 var(--space-3);margin-left:auto}@media (max-width:800px){.course-unit-bar .course-unit-actions{margin-left:0}}.course-unit-bar .course-unit-actions a,.course-unit-bar .course-unit-actions .course-action,.course-unit-bar .course-unit-actions .course-study-toggle{text-decoration:underline;-webkit-text-decoration-color:var(--course-line);text-decoration-color:var(--course-line);text-underline-offset:.2em;margin:0;padding-block:0}.course-unit-bar .course-unit-actions a,.course-unit-bar .course-unit-actions .course-action{min-block-size:var(--course-control-height);color:var(--dark);align-items:center;line-height:1.4;display:inline-flex}.course-unit-bar .course-unit-actions .course-action[aria-disabled=true]{color:var(--darkgray);text-decoration:none}.course-unit-bar .course-unit-actions .course-study{align-items:center;gap:0 var(--space-3)}.course-unit-bar .course-unit-actions .course-study-toggle{align-items:center}@media (hover:hover) and (pointer:fine){.course-unit-bar .course-unit-actions a:hover,.course-unit-bar .course-unit-actions .course-action:not([aria-disabled=true]):hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}}.course-unit-bar button.course-fold{appearance:none;cursor:var(--cursor-pointer,pointer);background:0 0;border:0}.course-unit-bar button.course-fold[aria-pressed=true]{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark);text-decoration-style:double}.course-study{align-items:baseline;gap:var(--space-1) var(--space-2);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);flex-wrap:wrap;display:inline-flex}.course-study-toggle,.course-desk-toggle{min-height:var(--course-control-height,1.75rem);font:inherit;font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-transform:lowercase;color:var(--dark);cursor:var(--cursor-pointer,pointer);background:0 0;border-radius:0}.course-study-toggle:focus-visible,.course-desk-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-study-toggle[aria-busy=true],.course-desk-toggle[aria-busy=true]{cursor:var(--cursor-progress,progress)}.course-study-toggle{color:var(--darkgray);text-decoration:underline;-webkit-text-decoration-color:var(--course-line,var(--gray));text-decoration-color:var(--course-line,var(--gray));text-underline-offset:.2em;border:0;padding:0}.course-study-toggle[aria-pressed=true]{color:var(--dark);-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark);text-decoration-thickness:2px}@media (hover:hover) and (pointer:fine){.course-study-toggle:hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}}.course-desk-toggle{padding:0 var(--space-2);border:1px solid var(--course-line,var(--gray))}.course-desk-toggle[aria-pressed=true]{background:var(--course-selected,var(--light));border-color:var(--dark)}@media (hover:hover) and (pointer:fine){.course-desk-toggle:hover{border-color:var(--dark)}}.course-study-status{white-space:nowrap}.course-study-status:empty{display:none}.course-spine-table .course-c-state,.course-spine-table .course-c-date,.course-spine-table .course-c-what{white-space:nowrap;overflow-wrap:normal;width:1%}.course-spine-table .course-state{gap:var(--space-1);font-family:var(--codeFont);font-size:var(--text-meta);grid-auto-columns:2ch;grid-auto-flow:column;display:inline-grid}.course-spine-table .course-state-slot{text-align:center;color:var(--dark);text-decoration:none}.course-study-log .course-log-table .course-c-date,.course-study-log .course-log-table .course-c-what{font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.course-promote{text-align:start;flex-direction:column;flex:none;align-items:flex-end;min-width:0;display:flex;position:relative}.course-promote[open]{width:min(32rem,45vw)}.course-promote>summary{list-style:none}.course-promote>summary::-webkit-details-marker{display:none}.course-promote>summary:after{content:"";background-color:var(--darkgray);width:1em;height:1em;transition:transform var(--transition-fast,.15s) ease;flex:none;transform:rotate(-90deg);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"black\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Cpolyline points=\"6 9 12 15 18 9\"/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"black\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Cpolyline points=\"6 9 12 15 18 9\"/%3E%3C/svg%3E") 50%/contain no-repeat}.course-promote>summary{width:fit-content;cursor:var(--cursor-pointer,pointer);color:var(--dark);text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em;align-items:center;gap:.35em;display:inline-flex}.course-promote>summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-promote[open]>summary:after,.course-promote .course-promote-preview[open]>summary:after{transform:none}.course-promote .course-promote-body{inset:calc(1lh + var(--space-1)) 0 auto 0;z-index:var(--z-popover);align-items:center;gap:var(--space-2);max-height:min(36rem,70dvh);padding:var(--space-4) var(--space-4) var(--space-3);border:1px solid var(--dark);background:var(--light);overscroll-behavior:contain;text-align:center;white-space:normal;flex-direction:column;min-width:0;display:flex;position:absolute;overflow:auto}.course-promote .course-promote-lede{color:var(--dark);font-family:var(--bodyFont);font-size:var(--text-ui);margin:0}.course-promote .course-promote-lede code{font-size:inherit}.course-promote .course-promote-hint{max-width:34ch;color:var(--darkgray);font-family:var(--bodyFont);font-size:var(--text-meta);text-wrap:pretty;margin:0;line-height:1.5}.course-promote .course-promote-counts{gap:.12rem var(--space-4);margin:var(--space-1) 0 0;grid-template-columns:max-content max-content;display:grid}.course-promote .course-promote-counts dt{color:var(--gray);text-align:start}.course-promote .course-promote-counts dd{color:var(--dark);text-align:end;font-variant-numeric:tabular-nums;margin:0}.course-promote .course-promote-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.course-promote .course-promote-actions button{justify-content:center;align-items:center;display:inline-flex}.course-promote .course-promote-status{min-height:1lh;color:var(--darkgray);margin:0}.course-promote .course-promote-status:empty{display:none}.course-promote .course-promote-preview{margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--course-line);text-align:start;align-self:stretch}.course-promote .course-promote-preview>summary{list-style:none}.course-promote .course-promote-preview>summary::-webkit-details-marker{display:none}.course-promote .course-promote-preview>summary:after{content:"";background-color:var(--darkgray);width:1em;height:1em;transition:transform var(--transition-fast,.15s) ease;flex:none;transform:rotate(-90deg);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"black\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Cpolyline points=\"6 9 12 15 18 9\"/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"black\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"%3E%3Cpolyline points=\"6 9 12 15 18 9\"/%3E%3C/svg%3E") 50%/contain no-repeat}.course-promote .course-promote-preview>summary{width:fit-content;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);align-items:center;gap:.35em;margin-inline:auto;display:flex}.course-promote .course-promote-preview>summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-promote .course-promote-preview+.course-promote-preview{margin-top:0}.course-promote pre{min-width:0;margin:var(--space-2) 0 0;padding:var(--space-2);font-size:var(--text-meta);color:var(--dark);border:1px solid var(--course-line);background:0 0;overflow:auto}@media (max-width:50rem){.course-promote{align-items:stretch}.course-promote[open]{width:auto}.course-promote>summary{line-height:var(--course-control-height)}.course-promote .course-promote-body{max-height:60dvh;margin-top:var(--space-1);position:static}}.course-desk{grid-column:var(--layout-byline-column);min-width:0;margin:0 0 var(--space-4);container:course-spine/inline-size}.course-desk .course-desk-head{align-items:baseline;gap:var(--space-1) var(--space-3);margin:0 0 var(--space-2);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);flex-wrap:wrap;display:flex}.course-desk .course-desk-head h2{font-family:var(--codeFont);font-size:var(--text-ui);color:var(--dark);margin:0;font-weight:400}.course-desk .course-desk-states{gap:var(--space-1);flex-wrap:nowrap;display:inline-flex}.course-desk .course-c-uses,.course-desk .course-c-log{font-family:var(--codeFont);font-size:var(--text-meta)}.course-desk .course-c-log{white-space:nowrap;font-variant-numeric:tabular-nums;width:1%}.course-desk .course-desk-reveal{margin-top:var(--space-2)}@container course-spine (max-width:30rem){.course-desk .course-c-uses{display:none}.course-desk .course-desk-states{flex-direction:column}}.course-statements>.course-desk{grid-column:1/-1}.course-statements .course-c-kind,.course-statements .course-c-lec,.course-statements .course-c-cards{white-space:nowrap;width:1%;font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.course-statements .course-c-used{font-family:var(--codeFont);font-size:var(--text-meta)}.course-statements .course-muted{color:var(--darkgray)}@container course-spine (max-width:36rem){.course-statements .course-c-used{display:none}}.course-statements .course-unit-row[data-arrived]{background:var(--course-selected)}@charset "UTF-8";.course-unit-bar.fr-unit-bar{flex-wrap:nowrap}.course-unit-bar.fr-unit-bar .fr-unit-facts{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:var(--course-control-height);flex:1 1 0;overflow:hidden}.course-unit-bar.fr-unit-bar .fr-unit-facts a{white-space:inherit;padding-block:calc((var(--course-control-height) - 1.1667em) / 2)}.course-unit-bar.fr-unit-bar .course-unit-sep{margin-inline:1ch}.course-unit-bar.fr-unit-bar .course-unit-actions{white-space:nowrap;flex:none}.course-unit-bar.fr-unit-bar .course-new{display:none}.fr-home>.course-unit-bar{grid-column:1/-1;margin-top:0}.fr-home .course-new{display:none}.fr-home .fr-h{margin:0 0 var(--space-2);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--dark);font-weight:400}.fr-home .fr-h a{color:inherit}.fr-home .fr-shelf{align-items:baseline;gap:var(--space-1) var(--space-4);font-size:var(--text-ui);flex-wrap:wrap;margin:0;display:flex}.fr-home .fr-shelf a{min-height:1.5rem;color:var(--dark);text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em}@media (hover:hover) and (pointer:fine){.fr-home .fr-shelf a:hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}}.fr-home .fr-shelf a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.fr-home .fr-saisons{border:1px solid var(--course-line);background:var(--course-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.fr-home .fr-saison{min-width:0;padding:var(--space-2) var(--space-3);background:var(--light);flex-direction:column;display:flex}.fr-home .fr-saison-name{margin-bottom:var(--space-1);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--dark)}.fr-home .fr-ep{gap:var(--space-1);min-height:1.5rem;margin-inline:calc(-1 * var(--space-3));padding-inline:var(--space-3);font-size:var(--text-ui);color:var(--dark);grid-template-columns:1.6rem minmax(0,1fr) auto;align-items:baseline;text-decoration:none;transition:background-color .12s cubic-bezier(.2,0,0,1);display:grid}.fr-home .fr-ep .fr-ep-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fr-home .fr-ep[data-frontier]{background:var(--course-selected)}.fr-home .fr-ep[data-frontier] .fr-ep-title{font-weight:500}.fr-home .fr-ep[data-frontier] .fr-ep-title:after{content:" ·";color:var(--darkgray)}.fr-home .fr-ep:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.fr-home .fr-ep:hover .fr-ep-title{text-underline-offset:.2em;text-decoration:underline}}.fr-home .fr-canvas.canvas-embed-container{aspect-ratio:3/2;border-color:var(--course-line);background:var(--course-surface);height:auto;min-height:0;max-height:80vh;cursor:var(--cursor-default,default);margin:0}.fr-home .fr-canvas.canvas-embed-container:before{display:none}.fr-home .fr-canvas.canvas-embed-container:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.fr-home .fr-canvas.canvas-embed-container:-webkit-full-screen{background:var(--light);border:0;height:100%}.fr-home .fr-canvas.canvas-embed-container:fullscreen{background:var(--light);border:0;height:100%}.fr-calendar :is(a,button).g-event{grid-template-columns:.375rem minmax(0,1fr)}.fr-calendar .g-event-meta{display:none}@container course-home (max-width:35rem){.fr-home .fr-parcours{display:none}.fr-home .fr-saisons{grid-template-columns:repeat(2,minmax(0,1fr))}.fr-home :is(a,button).g-event{background:0 0;grid-template-columns:minmax(0,1fr);min-height:1rem;padding:0}.fr-home :is(a,button).g-event .g-event-title,.fr-home :is(a,button).g-event .g-event-meta{display:none}.fr-home :is(a,button).g-event .g-event-mark{width:100%;height:.375rem;display:block}}@media (prefers-reduced-motion:reduce){.fr-ep{transition:none}}:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root>section.header,:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content{display:contents}:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content>.breadcrumb-container,:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content>.stacked-buttons,:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content>.keybind,:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content>.darkmode,:is([data-slug=fr],[data-slug^=fr\/]) #quartz-root .header-content>.search>.search-button{display:none}ul.tags,menu.tags,menu.tags>li>ul{flex-flow:wrap;gap:.4rem;margin:0;padding-left:0;list-style:none;display:flex}ul.tags{margin:1rem 0}div.first{padding-left:0!important}div.first,menu.tags{grid-column:auto}li.socials address{font-style:normal}.section-li>.section>.tags{justify-content:flex-end}ul.tags>li{white-space:nowrap;overflow-wrap:normal;margin:0;display:inline-block}ul.content-meta{color:var(--darkgray);cursor:var(--cursor-pointer,pointer);flex-flow:column wrap;grid-column:auto;gap:.3rem;margin:0;padding-inline-start:0;font-weight:400;list-style:none;display:flex}ul.content-meta pre{color:var(--darkgray)}ul.content-meta li>.container{align-items:baseline;gap:.5em;display:flex}ul.content-meta .clipboard-button{float:none;color:inherit;font:inherit;opacity:1;border:0;justify-content:center;align-items:center;line-height:0;position:relative}ul.content-meta .clipboard-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}ul.content-meta .clipboard-button[aria-busy=true]{cursor:var(--cursor-wait,wait)}ul.content-meta .readable-source>.container{flex-wrap:wrap;align-items:center}ul.content-meta .source-actions{align-items:center;gap:.5em;display:inline-flex}ul.content-meta .source-actions .clipboard-button>svg{width:11px;height:11px}@media (hover:hover) and (pointer:fine){ul.content-meta .source-actions .clipboard-button{opacity:0;pointer-events:none}ul.content-meta .source-actions:hover .clipboard-button,ul.content-meta .source-actions:focus-within .clipboard-button{opacity:1;pointer-events:auto}}ul.content-meta .source-copy-status{font-size:var(--text-meta)}.llm-source,.content-meta-link{color:inherit;font-weight:inherit;text-decoration:underline}button.content-meta-link{color:inherit;font:inherit;padding:0;text-decoration:underline;display:inline}button.content-meta-link:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.seealso-tree{--seealso-tree-rail-width:var(--rail-width);--seealso-tree-line-width:1px;margin-top:0}@media (max-width:800px){.seealso-tree{--seealso-tree-gap:.5rem}}.seealso-tree h2{text-transform:lowercase;color:rgba(var(--darkgray), .6);margin:1rem 0 .25rem;font-size:1rem;font-weight:400}.seealso-tree .seealso-tree-body{grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.seealso-tree .seealso-tree-body:has(>.seealso-rail){grid-template-columns:var(--seealso-tree-rail-width) minmax(0, 1fr)}.seealso-tree .seealso-rail{width:var(--seealso-tree-rail-width);pointer-events:none;flex-direction:column;align-items:center;display:flex}.seealso-tree .seealso-rail-line{width:var(--seealso-tree-line-width);background:color-mix(in srgb, var(--gray) 24%, transparent);border-radius:var(--radius-none);flex:1;min-height:100%}.seealso-tree .seealso-tree-lines{font-family:var(--codeFont);margin:0;row-gap:.125rem;min-width:0;margin-block:0;padding:0;padding-block-start:var(--seealso-tree-gap,2rem);font-size:11.1px;line-height:1.45;display:grid}.seealso-tree .seealso-tree-line{grid-template-columns:max-content max-content minmax(0,1fr);align-items:baseline;display:grid}.seealso-tree .seealso-prefix,.seealso-tree .seealso-label{white-space:pre}.seealso-tree .seealso-label{margin-inline-end:2ch}.seealso-tree .seealso-title{line-height:inherit;overflow-wrap:anywhere;white-space:normal;justify-self:start;min-width:0}.seealso-tree .seealso-title:hover{background:initial;color:initial;text-decoration:underline}body[data-layout=technical] .seealso-tree,body[data-layout=technical-tractatus] .seealso-tree{--seealso-tree-rail-width:0px;--seealso-tree-line-width:0px}@media (hover:hover) and (pointer:fine){.course-transcript-tools button:hover:not([aria-pressed=true]){color:var(--dark);background:var(--course-surface);border-color:var(--gray)}}@media (prefers-reduced-motion:reduce){.course-transcript-list p{scroll-behavior:auto}}.course-reading-split{grid-column:var(--layout-wide-column);min-width:0}.course-reading-split>article.course-lecture{min-width:0}.course-workspace{--course-workspace-top:0px;--course-workspace-edge:calc(var(--kern) * 1.5);--course-workspace-line:color-mix(in srgb, var(--gray) 45%, transparent);min-width:0;font:var(--text-ui)/1.5 var(--bodyFont);color:var(--darkgray)}@media (min-width:1401px){.course-workspace{top:max(var(--course-workspace-top), var(--course-workspace-edge));bottom:var(--course-workspace-edge);left:calc(var(--kern) * 4.5 + var(--grid-col-width) * 6 + var(--space-4));right:var(--course-workspace-edge);z-index:1;position:fixed}[data-course-workspace-mount],.course-workspace-app,.course-workspace-panel{height:100%}}.course-workspace-app{box-sizing:border-box;position:relative}.course-workspace-app *,.course-workspace-app :before,.course-workspace-app :after{box-sizing:border-box}.course-workspace-app button:not(.tri-map-tab){appearance:none;border:1px solid var(--course-workspace-line,var(--lightgray));border-radius:var(--radius-none);min-height:1.5rem;color:var(--dark);font:.66rem/1.3 var(--codeFont);cursor:var(--cursor-pointer,pointer);background:0 0;justify-content:center;align-items:center;gap:.35em;padding:.2rem .6rem;display:inline-flex}.course-workspace-app button:not(.tri-map-tab):disabled{cursor:var(--cursor-default,default);color:var(--gray)}.course-workspace-app button:not(.tri-map-tab):hover:not(:disabled){background:var(--highlight)}.course-workspace-app button:focus-visible,.course-workspace-app a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.course-workspace-app a{color:var(--dark);text-underline-offset:.2em;text-decoration:underline}.course-workspace-app a:hover{background:0 0}.course-workspace-panel{border:1px solid var(--course-workspace-line);border-radius:var(--radius-none);background:var(--light);width:100%;max-width:none;height:100%;max-height:none;color:inherit;flex-direction:column;margin:0;padding:0;display:flex;overflow:hidden}.course-workspace-loading{box-sizing:border-box;height:100%;padding:var(--space-3);color:var(--dark);font:var(--text-ui)/1.6 var(--bodyFont);text-align:center;place-content:center;margin:0;display:grid}.course-workspace-loading p{color:inherit;font:inherit;margin:0}.course-workspace-loading{flex:auto;min-height:0}.course-workspace-header,.course-workspace-actions,.course-draft-toolbar,.course-note-actions,.course-note-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.course-workspace-header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--course-workspace-line);flex-wrap:nowrap;justify-content:space-between}.course-workspace-tabs{--tri-accent:var(--dark);min-width:0}.course-workspace-actions{gap:var(--space-1);flex-wrap:nowrap;flex:none}.course-workspace-app .course-workspace-actions button{min-height:0;padding:.18rem .4rem;font-size:.62rem;line-height:normal}.course-workspace-pane{flex:auto;min-height:0;overflow:auto}.course-workspace-pane[hidden]{display:none}.course-workspace-source{flex-direction:column;display:flex;overflow:hidden}.course-source-links{align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--course-workspace-line);font:var(--text-meta)/1.5 var(--codeFont);flex-wrap:wrap;flex:none;display:flex}.course-source-license{color:var(--darkgray);margin-inline-start:auto}.course-source-frame{border:0;flex:auto;width:100%;height:100%;min-height:0}.course-workspace-video{flex-direction:column;display:flex;overflow:hidden}.course-workspace-watch{--course-line:var(--course-workspace-line);--course-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--course-selected:color-mix(in srgb, var(--secondary) 18%, var(--course-surface));--course-control-height:1.5rem;flex-direction:column;flex:auto;min-height:0;display:flex}.course-workspace-watch-body{min-height:0;padding:var(--space-3) var(--space-3) 0;flex:auto;grid-template-rows:auto auto minmax(0,1fr);display:grid}.course-workspace-watch-body .course-player{border-color:var(--course-workspace-line)}.course-workspace-watch-body .course-player-line{font:var(--text-meta)/1.5 var(--codeFont);margin:0}.course-workspace-watch-body .course-transcript{margin-top:var(--space-3)}.course-workspace-draft,.course-workspace-notes{padding:var(--space-3);flex-direction:column;display:flex}.course-workspace-draft>.course-draft-editor,.course-workspace-notes>.course-note-card,.course-workspace-notes>.course-note-card>.course-draft-editor{flex:1 0 auto}.course-workspace-notes>.course-note-card{border:0;flex-direction:column;margin-bottom:0;padding:0;display:flex}.course-draft-toolbar{margin-bottom:var(--space-3);color:var(--darkgray);font:var(--text-meta)/1.5 var(--codeFont);justify-content:space-between}.course-draft-editor{min-height:14rem;padding:var(--space-2);border:1px solid var(--course-workspace-line);font:var(--text-ui)/1.6 var(--codeFont)}.course-draft-editor:focus-within{outline:1px solid var(--dark);outline-offset:-1px}.course-draft-editor .cm-tooltip{box-shadow:none!important}.course-draft-editor{flex-direction:column;display:flex}.course-draft-editor .cm-editor{flex:auto}.course-draft-editor .cm-scroller{overflow:auto!important}.course-draft-preview{overflow-wrap:anywhere}.course-draft-preview p{margin:var(--space-2) 0}.course-draft-preview pre{max-width:100%;overflow:auto}.course-notes-empty{margin:var(--space-3) 0;color:var(--darkgray);font-size:var(--text-meta)}.course-notes-list{margin:0;padding:0;list-style:none}.course-note-card{margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--course-workspace-line)}.course-note-card blockquote{margin:var(--space-3) 0;color:var(--darkgray);font-size:var(--text-ui);overflow-wrap:anywhere;border:0;padding:0}.course-note-card .course-note-actions{margin-top:var(--space-3)}.course-note-card .course-note-actions button[aria-pressed=true]{background:var(--highlight)}.course-note-meta{font:var(--text-meta)/1.4 var(--codeFont);justify-content:space-between}.course-deleted-notes{font-size:var(--text-meta)}.course-deleted-notes>div{justify-content:space-between;align-items:center;gap:var(--space-2);padding-block:var(--space-2);display:flex}.course-deleted-notes summary{cursor:var(--cursor-pointer,pointer)}::highlight(course-mark){background:var(--textHighlight);color:var(--dark)}::highlight(course-question){background:var(--textHighlight);color:var(--dark)}::highlight(course-contra){background:color-mix(in srgb, var(--rose) 30%, var(--light));color:var(--dark);text-decoration:underline}@media (max-width:1400px){.course-workspace{margin-block-start:var(--space-6)}.course-workspace-panel{height:min(48rem, 100dvh - var(--space-6))}.course-workspace-app .selection-toolbar button{min-height:2.75rem}}@media (pointer:coarse){.course-workspace-app button:not(.tri-map-tab),.course-workspace-app .course-workspace-actions button,.course-workspace-tabs .tri-map-tab{min-height:2.75rem}}@property --fr-gutter{syntax:"<length>";inherits:true;initial-value:0}.fr-anchor{position:relative}.fr-n{font-family:var(--codeFont);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--darkgray);margin-inline-end:.4em;font-size:.62rem;font-style:normal;font-weight:400}.fr-anchor.fr-hot>.fr-n{color:var(--dark)}.fr-group,.fr-fold{gap:var(--space-4);min-width:0;font-family:var(--bodyFont);text-align:start;text-indent:0;text-wrap:pretty;color:var(--darkgray);flex-direction:column;font-size:.85rem;font-style:normal;font-weight:400;line-height:1.5;display:flex}.fr-entry{--course-workspace-line:color-mix(in srgb, var(--gray) 45%, transparent);gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.fr-entry[data-fr-kind=rev],.fr-entry[data-fr-kind=listing]{--fr-entry-tone:var(--color-orange)}.fr-entry[data-fr-kind=notes]{--fr-entry-tone:var(--color-green)}.fr-entry[data-fr-kind=cite]{--fr-entry-tone:var(--color-yellow)}.fr-entry-label{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-align:start;background:0 0;border:0;align-self:flex-start;padding:0}.fr-group.fr-hot .fr-entry-label{color:var(--dark)}.fr-entry-body{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.fr-entry .course-draft-editor{box-sizing:border-box;width:100%;min-height:5rem;display:block}.fr-leaders{pointer-events:none;display:none;position:absolute;inset:0;overflow:visible}.fr-leaders path{fill:none;stroke:color-mix(in srgb, var(--gray) 45%, transparent);stroke-width:1px;shape-rendering:crispedges}.fr-leaders path.fr-hot{stroke:var(--dark)}article[data-fr-mode=margin] .fr-leaders{display:block}article[data-fr-mode=margin] .fr-group{top:0;right:calc(100% + var(--fr-dx,0px) + var(--fr-gutter));width:15.5rem;position:absolute}article[data-fr-mode=margin] .fr-entry{box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--fr-entry-tone,color-mix(in srgb, var(--gray) 45%, transparent));border-radius:var(--radius-none)}article[data-fr-mode=margin] .fr-entry.fr-hot{border-color:var(--dark)}article[data-fr-mode=margin] .fr-entry-label{cursor:var(--cursor-default,default)}article[data-fr-mode=margin] .fr-entry-body[data-fr-cap]{max-height:var(--fr-cap);overflow:clip}article[data-fr-mode=margin] .callout:not(.is-collapsed){overflow:visible}article[data-fr-mode=margin] .callout:not(.is-collapsed)>.callout-content{grid-template-columns:minmax(0,1fr)}article[data-fr-mode=margin] .callout:not(.is-collapsed)>.callout-content>:not(.katex-display,.table-container){overflow:visible}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-n{display:none}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) :is(td,th).fr-anchor>.fr-n{display:inline}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]),:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out])>.fr-entry{display:contents}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]) .fr-entry-label{font:inherit;color:var(--darkgray);margin-inline-end:.4em;display:inline}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]) .fr-entry-label:before{content:"("}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]) .fr-entry-label:after{content:")"}@media (any-pointer:coarse){:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]) .fr-entry-label{box-sizing:border-box;min-width:44px;max-width:100%;min-height:44px;padding-inline:var(--space-2);vertical-align:middle;align-items:center;display:inline-flex}}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group:not([data-out]) .fr-entry-body{display:none}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-fold{margin-top:var(--space-2)}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group[data-out]{margin-block:var(--space-2)}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group[data-out]+.fr-group[data-out]{margin-top:calc(var(--space-2) * -1)}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group[data-out] .fr-entry-label{text-underline-offset:.2em;min-height:1.5rem;text-decoration:underline}@media (any-pointer:coarse){:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group[data-out] .fr-entry-label{min-width:44px;min-height:44px}}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group[data-out] .fr-entry:not([data-open])>.fr-entry-body{display:none}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-entry-label{cursor:var(--cursor-pointer,pointer)}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-entry-label:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@keyframes fr-reveal{to{visibility:visible}}@media (min-width:1400px){.page-content article.main-col:not([data-fr-mode]) .fr-leaders{display:block}.page-content article.main-col:not([data-fr-mode]) .fr-group{top:0;right:calc(100% + var(--fr-dx,0px) + var(--fr-gutter));width:15.5rem;position:absolute}.page-content article.main-col:not([data-fr-mode]) .fr-entry{box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--fr-entry-tone,color-mix(in srgb, var(--gray) 45%, transparent));border-radius:var(--radius-none)}.page-content article.main-col:not([data-fr-mode]) .fr-entry.fr-hot{border-color:var(--dark)}.page-content article.main-col:not([data-fr-mode]) .fr-entry-label{cursor:var(--cursor-default,default)}.page-content article.main-col:not([data-fr-mode]) .fr-entry-body[data-fr-cap]{max-height:var(--fr-cap);overflow:clip}.page-content article.main-col:not([data-fr-mode]) .callout:not(.is-collapsed){overflow:visible}.page-content article.main-col:not([data-fr-mode]) .callout:not(.is-collapsed)>.callout-content{grid-template-columns:minmax(0,1fr)}.page-content article.main-col:not([data-fr-mode]) .callout:not(.is-collapsed)>.callout-content>:not(.katex-display,.table-container){overflow:visible}.page-content article.main-col:not([data-fr-mode]) .fr-group{visibility:hidden;animation:0s 3s forwards fr-reveal}}@media not all and (min-width:1400px){.page-content article.main-col:not([data-fr-mode]) .fr-n{display:none}.page-content article.main-col:not([data-fr-mode]) :is(td,th).fr-anchor>.fr-n{display:inline}.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]),.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out])>.fr-entry{display:contents}.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]) .fr-entry-label{font:inherit;color:var(--darkgray);margin-inline-end:.4em;display:inline}.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]) .fr-entry-label:before{content:"("}.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]) .fr-entry-label:after{content:")"}@media (any-pointer:coarse){.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]) .fr-entry-label{box-sizing:border-box;min-width:44px;max-width:100%;min-height:44px;padding-inline:var(--space-2);vertical-align:middle;align-items:center;display:inline-flex}}.page-content article.main-col:not([data-fr-mode]) .fr-group:not([data-out]) .fr-entry-body{display:none}.page-content article.main-col:not([data-fr-mode]) .fr-fold{margin-top:var(--space-2)}.page-content article.main-col:not([data-fr-mode]) .fr-group[data-out]{margin-block:var(--space-2)}.page-content article.main-col:not([data-fr-mode]) .fr-group[data-out]+.fr-group[data-out]{margin-top:calc(var(--space-2) * -1)}.page-content article.main-col:not([data-fr-mode]) .fr-group[data-out] .fr-entry-label{text-underline-offset:.2em;min-height:1.5rem;text-decoration:underline}@media (any-pointer:coarse){.page-content article.main-col:not([data-fr-mode]) .fr-group[data-out] .fr-entry-label{min-width:44px;min-height:44px}}.page-content article.main-col:not([data-fr-mode]) .fr-group[data-out] .fr-entry:not([data-open])>.fr-entry-body{display:none}.page-content article.main-col:not([data-fr-mode]) .fr-entry-label{cursor:var(--cursor-pointer,pointer)}.page-content article.main-col:not([data-fr-mode]) .fr-entry-label:focus-visible{outline:2px solid var(--dark);outline-offset:2px}}article:has(.fr-group){--fr-gutter:max(3rem, calc(var(--fr-reach,18.5rem) - 15.5rem));--sidenote-gutter:var(--fr-gutter);position:relative}article:has(.fr-group) .sidenote-content[data-fr-tone="1"]{--sidenote-border-color:var(--color-orange)}article:has(.fr-group) .sidenote-content[data-fr-tone="2"]{--sidenote-border-color:var(--color-green)}article:has(.fr-group) .sidenote-content[data-fr-tone="3"]{--sidenote-border-color:var(--color-yellow)}@media (min-width:1400px){.page-body-grid:has(.fr-group)>.page-header{--layout-wide-column:5 / span 5;--layout-byline-template:1fr}.page-body-grid:has(.fr-group)>.page-content{--layout-wide-column:7 / span 3;--fr-reach:calc(var(--grid-col-width) * 2)}.page-body-grid:has(.fr-group)>.page-footer{--layout-wide-column:5 / span 5}}.popover .fr-group,.popover .fr-fold,.popover .fr-n,.popover .fr-leaders{display:none}.fr-margin{gap:var(--space-2);min-width:0;color:var(--darkgray);flex-direction:column;font-size:.85rem;line-height:1.5;display:flex}.fr-label,.fr-meta{font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;color:var(--darkgray)}.fr-meta{display:block}.fr-label a,.fr-meta a{color:var(--dark)}.fr-card{gap:var(--space-2);flex-direction:column;display:flex}.fr-card[hidden]{display:none}.fr-q,.fr-a{color:var(--dark)}.fr-q p,.fr-a p{margin:0}.fr-a{padding-top:var(--space-2);border-top:1px solid color-mix(in srgb, var(--gray) 45%, transparent)}.fr-bar{gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.fr-btn{border-radius:var(--radius-none);min-height:1.5rem;color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;align-self:flex-start;align-items:center;padding:0;display:inline-flex}.fr-btn[hidden]{display:none}.fr-btn:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.fr-btn:hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark)}}@media (pointer:coarse){.fr-btn{min-height:44px}}.fr-btn.fr-link{color:var(--darkgray)}@media (hover:hover) and (pointer:fine){.fr-btn.fr-link:hover{color:var(--dark)}}.fr-note{gap:var(--space-1);flex-direction:column;font-style:italic;display:flex}.fr-note .fr-meta{font-style:normal}.fr-note+.fr-note{padding-top:var(--space-2);border-top:1px solid color-mix(in srgb, var(--gray) 45%, transparent)}.fr-editor{align-items:stretch;gap:var(--space-2);flex-direction:column;display:flex}.fr-area{box-sizing:border-box;border:1px solid var(--dark);border-radius:var(--radius-none);background:var(--light);width:100%;color:var(--dark);font:inherit;resize:vertical;padding:.35rem .45rem;font-size:max(16px,.85rem)}.fr-area:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.fr-gloss{display:block}.fr-gloss b{color:var(--dark);font-weight:500}.fr-gloss>.fr-meta{font-family:var(--bodyFont);color:var(--darkgray);margin-top:.1rem;font-size:.78rem}.fr-gloss+.fr-gloss{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid color-mix(in srgb, var(--gray) 45%, transparent)}@media (any-pointer:coarse){.fr-gloss>a:only-child{overflow-wrap:anywhere;align-items:center;min-height:44px;display:flex}}.fr-para{display:block}.fr-para+.fr-para{margin-top:var(--space-2)}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group .fr-entry[data-fr-kind=listing]>.fr-entry-label{display:none}:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group .fr-entry[data-fr-kind=listing]>.fr-entry-body,:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group .fr-entry[data-fr-kind=listing] .fr-margin,:is(article[data-fr-mode=inline],.preview-container>.preview-inner) .fr-group .fr-entry[data-fr-kind=listing] .fr-meta{font:inherit;color:inherit;display:inline}.inquiry-map{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--gray) 55%, transparent);background:var(--light);grid-column:1/-1;width:100%;height:42rem;margin:1.5rem 0;position:relative;overflow:hidden}.inquiry-map svg.inquiry-map-links{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.inquiry-map svg.inquiry-map-links path{fill:none;stroke:var(--lightgray);stroke-width:1px;transition:opacity 1s,stroke 1s}.inquiry-map canvas.inquiry-map-halo{opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity 1s;position:absolute;inset:0}.inquiry-map .nd{z-index:2;transform:translate(-50%, -50%) scale(var(--scale,1));color:var(--dark);white-space:nowrap;text-decoration:none;transition:opacity 1s;position:absolute;top:0;left:0}.inquiry-map .nd:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.inquiry-map .nd.theme{border:1px solid var(--dark);background:var(--light);font:400 .75rem/1 var(--bodyFont);padding:.3rem .5rem}.inquiry-map .nd.mvt{border:1px solid var(--dark);background:var(--light);font:400 .75rem/1 var(--codeFont);letter-spacing:.04em;text-transform:uppercase;border-radius:2em;padding:.28rem .6rem}.inquiry-map .nd.pg{background:var(--dark);color:var(--light);font:400 .75rem/1 var(--codeFont);border-radius:2em;padding:.22rem .5rem}.inquiry-map.hov canvas.inquiry-map-halo{opacity:.7}.inquiry-map.hov .nd{opacity:.05}.inquiry-map.hov .nd.h3{opacity:.15}.inquiry-map.hov .nd.h2{opacity:.3}.inquiry-map.hov .nd.h1,.inquiry-map.hov .nd.h0{opacity:1}.inquiry-map.hov svg.inquiry-map-links path{opacity:0}.inquiry-map.hov svg.inquiry-map-links path.h1{opacity:1;stroke:var(--dark)}.inquiry-map .inquiry-map-list{display:none}@media (max-width:600px){.inquiry-map{grid-column:3/-3;width:auto;height:auto}.inquiry-map svg.inquiry-map-links,.inquiry-map canvas.inquiry-map-halo,.inquiry-map .nd{display:none}.inquiry-map .inquiry-map-list{flex-direction:column;gap:.5rem;min-width:0;padding:.6rem;font-size:.875rem;display:flex}.inquiry-map .inquiry-map-list b{font:500 .75rem var(--codeFont);text-transform:uppercase;letter-spacing:.04em;color:var(--darkgray);display:block}}@media (prefers-reduced-motion:reduce){.inquiry-map svg.inquiry-map-links path,.inquiry-map canvas.inquiry-map-halo,.inquiry-map .nd{transition:none}}.license-meta{color:var(--gray);margin-bottom:1.9rem;font-size:.9rem;line-height:1.5}.license-meta h2{margin-bottom:.5rem}.license-meta p{margin:0}.license-meta a{color:inherit;align-items:center;gap:.3em;text-decoration:none;display:inline-flex}.license-meta a span{text-decoration:underline;text-decoration-thickness:from-font}.license-meta a:hover{color:var(--dark);background:0 0}.license-meta .cc-icon{flex:none;block-size:1.3em;inline-size:1.3em}.backlinks{--backlinks-line:color-mix(in srgb, var(--gray) 55%, transparent);--backlinks-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));margin:1.9rem 0}.backlinks>.overflow{border:1px solid var(--backlinks-line);border-radius:var(--radius-none);height:auto}.backlinks>.overflow .backlinks-table{border-collapse:collapse;table-layout:fixed;width:100%;font-family:var(--bodyFont);color:var(--darkgray);border:0;margin:0;font-size:.85rem;line-height:1.45;display:table}.backlinks>.overflow .backlinks-table thead{background:var(--backlinks-surface);font-family:var(--codeFont);font-size:var(--text-meta);color:var(--dark);line-height:1.5}.backlinks>.overflow .backlinks-table tr{border:0;border-bottom:1px solid var(--backlinks-line)}.backlinks>.overflow .backlinks-table tbody tr:last-child{border-bottom:0}.backlinks>.overflow .backlinks-table th,.backlinks>.overflow .backlinks-table td{text-align:left;vertical-align:top;white-space:nowrap;border:0;padding:.4rem .75rem;font-weight:400}.backlinks>.overflow .backlinks-table th:first-child{border-right:1px solid var(--backlinks-line);width:35%}.backlinks>.overflow .backlink-card{position:relative}.backlinks>.overflow .backlink-card a[data-backlink]{text-overflow:ellipsis;white-space:nowrap;color:var(--dark);text-decoration:none;display:block;overflow:hidden}.backlinks>.overflow .backlink-card a[data-backlink]:after{content:"";position:absolute;inset:0}.backlinks>.overflow .backlink-card a[data-backlink]:focus-visible{outline:none}.backlinks>.overflow .backlink-card a[data-backlink]:focus-visible:after{outline:2px solid var(--dark);outline-offset:-2px}.backlinks>.overflow .backlink-card a[data-backlink]>.small{text-overflow:ellipsis;white-space:nowrap;font-size:inherit;display:block;overflow:hidden}.backlinks>.overflow .backlink-card .description{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;color:var(--darkgray);position:relative;overflow:hidden}.backlinks>.overflow .backlink-card .description a,.backlinks>.overflow .backlink-card .description .katex,.backlinks>.overflow .backlink-card .description .math{white-space:inherit}.backlinks>.overflow .backlink-card .description a{z-index:1;pointer-events:auto;position:relative}@media (hover:hover) and (pointer:fine){.backlinks .backlink-card a[data-backlink]:hover{background:initial;text-decoration:underline}.backlinks .backlink-card:hover{background:var(--backlinks-surface)}}.toc{flex-direction:column;display:flex;position:relative}.toc[data-layout=minimal]{--toc-rail-width:7.25rem;--toc-label-offset:calc(var(--toc-rail-width) + 1.5rem);--toc-left-offset:.8rem;--fill-width:1rem;--toc-stick-top:clamp(7rem, 30svh, 18rem);--toc-scroll-buffer:48px;--toc-mask-buffer:32px;top:var(--toc-stick-top);z-index:100001;width:var(--toc-rail-width);max-width:calc(100vw - var(--toc-left-offset));max-height:calc(100svh - var(--toc-stick-top) - var(--toc-scroll-buffer));min-width:0;margin-left:var(--toc-left-offset);align-self:start;position:sticky;left:auto;overflow:visible}@media (min-width:800px) and (max-width:1400px),(max-width:800px){.toc[data-layout=minimal]{display:none}}.page-content.has-minimal-toc{position:relative}.page-content.has-minimal-toc>.aside-container{z-index:100001;isolation:isolate;position:relative}.page-content.has-minimal-toc.toc-hovering:before{content:"";z-index:100000;pointer-events:none;background:color-mix(in srgb, var(--light) 56%, transparent);position:fixed;inset:0}.page-content.has-minimal-toc.toc-hovering:not(.toc-scrolling):before{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fillExpand{0%{transform:scaleX(0)}to{transform:scaleX(1)}}nav#toc-vertical{--button-height:.6rem;cursor:var(--cursor-pointer,pointer);z-index:var(--z-popover);width:min(100%, var(--toc-rail-width));max-width:var(--toc-rail-width);max-height:inherit;overscroll-behavior:contain;scrollbar-width:none;scroll-padding-block:var(--toc-scroll-buffer);flex-direction:column;display:flex;position:relative;overflow:hidden auto}nav#toc-vertical::-webkit-scrollbar{display:none}nav#toc-vertical.is-scrollable{-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black calc(100% - var(--toc-mask-buffer)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black calc(100% - var(--toc-mask-buffer)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black calc(100% - var(--toc-mask-buffer)), transparent 100%)}nav#toc-vertical.is-scrollable.at-start{-webkit-mask-image:linear-gradient(to bottom, black calc(100% - var(--toc-mask-buffer)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, black calc(100% - var(--toc-mask-buffer)), transparent 100%);mask-image:linear-gradient(to bottom, black calc(100% - var(--toc-mask-buffer)), transparent 100%)}nav#toc-vertical.is-scrollable.at-end{-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black 100%);mask-image:linear-gradient(to bottom, transparent 0, black var(--toc-mask-buffer), black 100%)}nav#toc-vertical.is-scrollable.at-start.at-end{-webkit-mask-image:none;mask-image:none}nav#toc-vertical button.toc-item{background:inherit;height:var(--button-height);min-block-size:var(--button-height);max-width:var(--fill-width);text-indent:1rem;transform-origin:50%;border:none;flex:none;align-items:center;padding:0;transition:transform .3s cubic-bezier(.2,0,0,1);display:inline-flex;position:relative}nav#toc-vertical button.toc-item.in-view>.fill{opacity:.75}nav#toc-vertical button.toc-item>.fill{opacity:.35;background-color:var(--dark);width:100%;height:3px;min-width:var(--fill-width);transform-origin:0 0;animation:.5s forwards fillExpand;animation-delay:calc((var(--animation-order) - 1) * .1s + .5s);will-change:transform;transition:background-color 80ms cubic-bezier(.2,0,0,1),opacity 80ms cubic-bezier(.2,0,0,1);transform:scaleX(0)}nav#toc-vertical button.toc-item>.indicator{display:none}.toc[data-layout=minimal][data-density=dense] nav#toc-vertical button.toc-item>.fill{animation:none;transform:scaleX(1)}.toc[data-layout=minimal].is-hovering nav#toc-vertical button.toc-item>.fill{background-color:var(--darkgray);opacity:.45}.toc[data-layout=minimal].is-hovering nav#toc-vertical button.toc-item.is-active>.fill{background-color:var(--dark);opacity:.9}.toc[data-layout=minimal]>.toc-label{top:0;left:var(--toc-label-offset);max-width:min(22rem, 100vw - var(--toc-left-offset) - var(--toc-label-offset) - 1rem);color:var(--dark);font-family:var(--bodyFont);white-space:nowrap;text-overflow:ellipsis;opacity:0;pointer-events:none;transform:translate3d(0, var(--toc-label-y,0px), 0) translateY(-50%);transform-origin:0;will-change:transform, opacity;padding-block:.1em;font-size:.8rem;font-weight:400;line-height:1.3;transition:opacity .12s cubic-bezier(.2,0,0,1);position:absolute;overflow:hidden}.toc[data-layout=minimal].is-hovering>.toc-label.is-visible{opacity:1}button#toc{text-align:left;cursor:var(--cursor-pointer,pointer);color:var(--dark);background-color:#0000;border:none;align-items:center;padding:0;display:flex}button#toc h3{margin:0;font-size:1rem;display:inline-block}#toc-content{visibility:visible;max-height:80vh;list-style:none;transition:max-height .35s,visibility linear;position:relative;overflow:hidden auto}#toc-content ul{padding:0;list-style:none}#toc-content ul>li>a{color:var(--dark);opacity:.35;transition:opacity .5s,color .3s}#toc-content ul>li>a.in-view{opacity:.75}#toc-content>ul.overflow{width:100%;position:relative}#toc-content .depth-0{margin-left:0;transition:opacity .5s,color .3s}#toc-content .depth-1{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:1rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-1.in-view{--pseudo-opacity:.75}#toc-content .depth-1:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-1~.depth-0:first-of-type{margin-top:.2rem}#toc-content .depth-1:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:1.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-1:has(+.depth-0):after{content:"";background-color:var(--pseudo-bg);width:1.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-1:has(+.depth-2):after{content:"";background-color:var(--pseudo-bg);width:1.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-2{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:2rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-2.in-view{--pseudo-opacity:.75}#toc-content .depth-2:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-2~.depth-1:first-of-type{margin-top:.2rem}#toc-content .depth-2:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:2.4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-2:has(+.depth-1):after{content:"";background-color:var(--pseudo-bg);width:2.4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-2:has(+.depth-3):after{content:"";background-color:var(--pseudo-bg);width:2.4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-3{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:3rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-3.in-view{--pseudo-opacity:.75}#toc-content .depth-3:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-3~.depth-2:first-of-type{margin-top:.2rem}#toc-content .depth-3:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:3.2rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-3:has(+.depth-2):after{content:"";background-color:var(--pseudo-bg);width:3.2rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-3:has(+.depth-4):after{content:"";background-color:var(--pseudo-bg);width:3.2rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-4{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:4rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-4.in-view{--pseudo-opacity:.75}#toc-content .depth-4:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-4~.depth-3:first-of-type{margin-top:.2rem}#toc-content .depth-4:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-4:has(+.depth-3):after{content:"";background-color:var(--pseudo-bg);width:4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-4:has(+.depth-5):after{content:"";background-color:var(--pseudo-bg);width:4rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-5{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:5rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-5.in-view{--pseudo-opacity:.75}#toc-content .depth-5:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-5~.depth-4:first-of-type{margin-top:.2rem}#toc-content .depth-5:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:4.8rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-5:has(+.depth-4):after{content:"";background-color:var(--pseudo-bg);width:4.8rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-5:has(+.depth-6):after{content:"";background-color:var(--pseudo-bg);width:4.8rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-6{--pseudo-opacity:.35;--pseudo-bg:var(--gray);margin-left:6rem;transition:opacity .5s,color .3s;position:relative}#toc-content .depth-6.in-view{--pseudo-opacity:.75}#toc-content .depth-6:before{content:"";background-color:var(--pseudo-bg);width:1px;opacity:var(--pseudo-opacity);position:absolute;top:0;bottom:0;left:-.8rem}#toc-content .depth-6~.depth-5:first-of-type{margin-top:.2rem}#toc-content .depth-6:last-of-type:after{content:"";background-color:var(--pseudo-bg);width:5.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-6:has(+.depth-5):after{content:"";background-color:var(--pseudo-bg);width:5.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}#toc-content .depth-6:has(+.depth-7):after{content:"";background-color:var(--pseudo-bg);width:5.6rem;height:1px;opacity:var(--pseudo-opacity);position:absolute;bottom:0;left:-.8rem}:root[reader-mode=on] .byline,:root[reader-mode=on] .page-content>.left-col,:root[reader-mode=on] .seealso-tree,:root[reader-mode=on] #wc-modal,:root[reader-mode=on] .page-footer{transition:display .2s;display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group)>.sidenotes{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .fr-group{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .fr-fold{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .fr-n{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .fr-leaders{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .sidenote-content{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .sidenote-label[data-auto]{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .sidenote-arrow{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article section[data-footnotes]{display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article :is(figure:not([data-rehype-pretty-code-figure]),[class*=figure],.svg-diagram){display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article :is(img:not(.inline-icons),picture,video,audio,iframe,canvas){display:none!important}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .sidenote-label{color:inherit;cursor:var(--cursor-text,text);border-bottom:0}:root[reader-mode=on] .page-body-grid:has(.fr-group) article .sidenote{cursor:var(--cursor-text,text)}@media (min-width:1400px){:is(:root[reader-mode=on] .page-body-grid:has(.fr-group)>.page-header,:root[reader-mode=on] .page-body-grid:has(.fr-group)>.page-content){--layout-wide-column:6 / span 3}}footer{box-sizing:border-box;font-family:var(--bodyFont);font-size:var(--text-meta);flex-flow:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;font-style:normal;display:flex}footer p{margin:0}footer menu{flex-flow:wrap;gap:1rem;margin:0;padding:0;padding-inline-start:0;line-height:1.4;list-style:none;display:flex}footer menu>li{font-size:inherit;box-sizing:border-box;flex-direction:row;justify-content:center;align-items:center;list-style:none;display:inline-flex;border:none!important}footer menu>li>*{color:inherit}footer a{color:inherit;border-radius:var(--radius-none);background-color:inherit;text-decoration:underline;text-decoration-thickness:from-font;transition:none}.poetry{border-top:1px solid var(--darkgray);padding-top:1rem}ul.section-ul{border:1px solid var(--dark);grid-template-columns:minmax(0,1fr) fit-content(35%) max-content;column-gap:.5rem;margin-block-start:0;padding-left:0;list-style:none;display:grid}ul.section-ul:not(:has(>.section-li:not([hidden]))){display:none}li.section-li{grid-column:1/-1;grid-template-columns:subgrid;background:var(--light);padding:0;display:grid}li.section-li[hidden]{display:none}li.section-li:has(~.section-li:not([hidden])){border-bottom:1px solid var(--dark)}li.section-li:hover .desc,li.section-li.focus .desc{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}li.section-li .note-link{grid-column:1/-1;grid-template-columns:subgrid;font-weight:400;font-size:var(--text-ui);color:var(--darkgray);padding:.4rem .75rem;line-height:1.45;text-decoration:none;transition:color .2s;display:grid}li.section-li .note-link:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}li.section-li .note-link>.note-grid{grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;row-gap:.25rem;display:grid}li.section-li .note-link>.note-grid .desc{overflow-wrap:anywhere;text-wrap:pretty;grid-column:1;min-width:0}li.section-li .note-link>.note-grid .desc:only-child{grid-column:1/-1}li.section-li .note-link>.note-grid>.tag-highlights{flex-wrap:wrap;grid-column:2;justify-content:flex-start;justify-self:end;gap:.25rem;min-width:0;margin-block:0;padding-inline:0;list-style:none;display:flex}.popover li.section-li .note-link>.note-grid>.tag-highlights,.stacked-content li.section-li .note-link>.note-grid>.tag-highlights{display:none}@media (min-width:800px) and (max-width:1400px){li.section-li .note-link>.note-grid>.tag-highlights{display:none}}li.section-li .note-link>.note-grid>.tag-highlights li{border:1px solid var(--gray);border-radius:var(--radius-none);font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);overflow-wrap:anywhere;padding:.1em .4em;font-size:11px;font-weight:400;line-height:1.4}li.section-li .note-link>.note-grid>.meta{color:var(--darkgray);font-family:var(--codeFont);font-variant-numeric:tabular-nums;white-space:nowrap;grid-column:3;justify-self:end;font-size:11px;line-height:1.4}.section-ul:has(>.section-li.fade-out)>.section-li:not(.fade-out)>.note-link{color:var(--dark)}.listing-count{font-size:var(--text-meta);line-height:1.4}.notes-list{padding-right:calc(var(--kern) * 2);margin-top:1em}.popover-inner .notes-list{grid-column:1/-1;padding-right:0}@media (max-width:800px){.notes-list{padding-right:0}.tag-highlights{display:none!important}}.notes-evergreen{grid-column:var(--layout-side-column);padding-left:calc(var(--kern) * 2);flex-direction:column;margin-top:1rem;display:flex}@media (min-width:1400px){.notes-evergreen{box-sizing:border-box;grid-column:8/span 3;max-inline-size:576px}}@media (max-width:800px),(min-width:800px) and (max-width:1400px){.page-content:has(>.notes-list,>.folder-layout){align-content:start}.notes-evergreen{grid-column:var(--layout-reading-column);padding-left:0}.notes-evergreen .evergreen-content{position:static}.notes-evergreen .note-permanent{display:none}}.folder-layout--et-a,.folder-layout--a-l,.folder-layout--l{display:contents}.folder-layout--et-a .folder-layout--list{height:fit-content}.folder-layout--et-a .folder-layout--evergreen{gap:calc(var(--kern) * 2);flex-direction:column;display:flex}.folder-layout--et-a .folder-layout--article{grid-column:var(--layout-full-column);margin:0}@media (min-width:1400px){.folder-layout--et-a .folder-layout--article{grid-column:5/span 6}}.folder-layout--et-a .note-tags{margin-top:calc(var(--kern) * 2)}@media (max-width:800px){.folder-layout--et-a .folder-layout--list{padding-right:0}}@media (max-width:800px),(min-width:800px) and (max-width:1400px){.folder-layout--et-a .folder-layout--evergreen{display:none}.folder-layout--et-a .folder-layout--article{grid-column:var(--layout-reading-column)}}.folder-layout--a-l .folder-layout--article{min-width:0;margin:0}.folder-layout--a-l section{grid-column:var(--layout-wide-column);min-width:0;padding-right:0}.folder-layout--l section{grid-column:var(--layout-wide-column);padding-right:0}.folder-layout--article{grid-column:var(--layout-wide-column)}.evergreen-content{top:calc(var(--kern) * 4);font-size:var(--text-ui);flex-direction:column;gap:.8rem;line-height:1.45;display:flex;position:sticky}.note-tags .notes-list{flex-flow:wrap;gap:.5rem;display:flex}.note-tag{appearance:none;font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:none;margin:0;padding:0;font-weight:400;line-height:1.4;transition:color .2s}.note-tag:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.note-tag[aria-pressed=true]{text-underline-offset:.2em;text-decoration:underline}.notes-list:has(>.note-tag.fade-out)>.note-tag:not(.fade-out){color:var(--dark)}a[data-list].perma:hover{text-decoration:underline;color:var(--foam)!important}a[data-list].perma[data-tag]>.title{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);font-weight:400;line-height:1.4}.perma:after,.permanent-grid:after{content:"";border:1px solid var(--dark);pointer-events:none;position:absolute;inset:-.5px}.perma{padding:calc(var(--kern) * 1) calc(var(--kern) * 1.2);font-weight:400;line-height:1.45;text-decoration:none;display:block;position:relative;color:inherit!important}.perma:hover{background:inherit}.perma>.title{font-size:var(--text-ui)}.perma>.perma-link{color:inherit;font-weight:inherit;text-decoration:none;display:block}.perma>.perma-link:after{content:"";position:absolute;inset:0}.perma>.perma-link:hover{background:inherit;color:var(--foam);text-decoration:underline}.perma>.perma-link:focus-visible{outline:none}.perma>.perma-link:focus-visible:after{outline:2px solid var(--dark);outline-offset:2px}.perma>.description{font-size:var(--text-meta);pointer-events:none;line-height:1.4}.perma>.description a{z-index:1;pointer-events:auto;position:relative}.permanent-grid .grid-line{grid-template-columns:repeat(12,1fr);width:100%;display:grid}.permanent-grid .large>*{padding-bottom:calc(var(--kern) * 2);grid-column:span 6}.permanent-grid .mid>*{grid-column:span 4}.permanent-grid .small>*{grid-column:span 3}.page-list-search-container{width:100%;margin-bottom:1rem}.page-list-search-form{width:100%;display:flex}.page-list-search-input-wrapper{box-sizing:border-box;border:1px solid var(--dark);border-radius:var(--radius-none);background:var(--light);align-items:center;gap:.5rem;width:100%;min-height:2rem;padding:.125rem .5rem;display:flex}.page-list-search-input-wrapper:has(>.page-list-search-input:focus){outline:2px solid var(--dark);outline-offset:2px}@media (pointer:coarse){.page-list-search-input-wrapper{min-height:44px}}.page-list-search-input{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--dark);background:0 0;border:none;flex:1;align-self:stretch;min-width:0;line-height:1.4}.page-list-search-input:focus{outline:none}.page-list-search-input::placeholder{color:var(--darkgray);opacity:1}@media (pointer:coarse){.page-list-search-input{font-size:1rem}}.page-list-search-clear{color:var(--gray);cursor:var(--cursor-pointer,pointer);border-radius:var(--radius-none);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;transition:color .2s;display:none}.page-list-search-clear:hover{color:var(--dark)}.page-list-search-clear:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (pointer:coarse){.page-list-search-clear{width:2rem;height:2rem}}.page-list-search-status{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);min-height:1.2em;margin-top:.5rem;display:block}.page-list-search-status:empty,li.section-li[hidden]{display:none}.preview-container>.preview-inner:has(.page-list-search-container){margin-top:1rem}body[data-is-canvas=true]{height:100dvh;overflow:hidden}body[data-is-canvas=true] #quartz-root{height:100%;min-height:0!important}body[data-is-canvas=true] .page-body-grid,body[data-is-canvas=true] .page-content,body[data-is-canvas=true] .main-col{min-height:0}body[data-is-canvas=true] .page-content{margin-bottom:0;padding-bottom:0}body[data-is-canvas=true] .main-col{grid-column:1/-1}body[data-is-canvas=true] .canvas-container{box-sizing:border-box;touch-action:none;border:0;min-width:0;height:100%;min-height:0}.canvas-component,.canvas-embed{width:100%;height:100%;position:relative}.canvas-embed-container,.canvas-container{background:var(--light);border:1px solid var(--gray);border-radius:var(--radius-none);width:100%;min-width:0;height:95%;min-height:400px;position:relative;overflow:hidden}.canvas-embed-container>svg,.canvas-container>svg{width:100%;height:100%}.canvas-embed-container:before,.canvas-container:before{content:attr(data-canvas-title);color:var(--gray);background:var(--light);border-radius:var(--radius-none);border:1px solid var(--lightgray);z-index:var(--z-sidenote);pointer-events:none;opacity:.9;padding:4px 10px;font-size:.85rem;font-weight:600;position:absolute;top:12px;left:16px}.canvas-embed-container .node{cursor:var(--cursor-default,default)}.canvas-embed-container .node.node-file,.canvas-embed-container .node.node-text{cursor:var(--cursor-pointer,pointer)}.canvas-embed-error{text-align:center;border-radius:var(--radius-none);background:var(--lightgray);color:var(--darkgray);margin:2rem auto;padding:1.5rem}.node{cursor:var(--cursor-grab,grab)}.node.is-dragging,.node:active{cursor:var(--cursor-grabbing,grabbing)}.node.is-focused .node-content{cursor:var(--cursor-text,text)}.node.node-file,.node.node-text{cursor:var(--cursor-pointer,pointer)}.node.node-group,.node.node-group:active{cursor:var(--cursor-default,default)}.node.node-text .node-bg{fill:var(--light);stroke:var(--gray);stroke-width:2px;transition:stroke var(--transition-normal)}.node.node-text .node-border-overlay{stroke:var(--gray)}.node.node-file .node-bg{fill:var(--light);stroke:var(--gray);stroke-width:2px;fill-opacity:.9;transition:stroke var(--transition-normal)}.node.node-file .node-border-overlay{stroke:var(--gray)}.node.node-link .node-bg{fill:var(--secondary);stroke:var(--gray);stroke-width:2px;fill-opacity:.8;transition:stroke var(--transition-normal)}.node.node-link .node-border-overlay{stroke:var(--gray)}.node.node-group .node-bg{fill:var(--lightgray);stroke:var(--gray);stroke-width:2px;fill-opacity:.3;stroke-dasharray:5 5;transition:stroke var(--transition-normal)}.node.node-group .node-border-overlay{stroke:var(--gray);stroke-dasharray:5 5}.node-content{box-sizing:border-box;contain:layout paint;word-wrap:break-word;-ms-overflow-style:none;width:100%;height:100%;padding:0;font-size:.85rem;line-height:1.4;position:relative;overflow:hidden}.canvas-html-surface{width:100%;height:100%;display:block}.canvas-scene{transform-origin:0 0;transform-box:view-box}.node-skeleton{pointer-events:none;display:none}.node-skeleton .node-skeleton-line{fill:var(--lightgray);opacity:.65}.node-title-text{fill:var(--darkgray);cursor:var(--cursor-pointer,pointer);pointer-events:all;font-weight:400;transition:fill .2s}.node-title-text:hover{fill:var(--secondary)}.node-title-text.node-title-center{display:none}.node-text,.node-file-content{box-sizing:border-box;overscroll-behavior:contain;min-width:0;max-width:100%;height:100%;color:var(--dark);text-align:left;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;padding:1rem;overflow:hidden auto}.node-text p,.node-file-content p{margin:.5em 0}.node-text p:first-child,.node-file-content p:first-child{margin-top:0}.node-text p:last-child,.node-file-content p:last-child{margin-bottom:0}.node-text strong,.node-text b,.node-file-content strong,.node-file-content b{font-weight:600}.node-text em,.node-text i,.node-file-content em,.node-file-content i{font-style:italic}.node-text code,.node-file-content code{background:var(--lightgray);border-radius:var(--radius-none);font-family:var(--codeFont);padding:.1em .3em;font-size:.9em}.node-text pre,.node-file-content pre{background:var(--lightgray);border-radius:var(--radius-none);margin:.5em 0;padding:.5em;overflow-x:auto}.node-text pre code,.node-file-content pre code{background:0 0;padding:0}.node-text ul,.node-text ol,.node-file-content ul,.node-file-content ol{margin:.5em 0;padding-left:1.5em}.node-text a,.node-file-content a{color:var(--secondary);text-decoration:underline}.node-text blockquote,.node-file-content blockquote{margin:.5em 0;padding-left:.75em}.node-text h1,.node-text h2,.node-text h3,.node-text h4,.node-text h5,.node-text h6,.node-file-content h1,.node-file-content h2,.node-file-content h3,.node-file-content h4,.node-file-content h5,.node-file-content h6{margin:.75em 0 .5em;font-weight:600;line-height:1.3}.node-text h1:first-child,.node-text h2:first-child,.node-text h3:first-child,.node-text h4:first-child,.node-text h5:first-child,.node-text h6:first-child,.node-file-content h1:first-child,.node-file-content h2:first-child,.node-file-content h3:first-child,.node-file-content h4:first-child,.node-file-content h5:first-child,.node-file-content h6:first-child{margin-top:0}.node-text h1,.node-file-content h1{font-size:1.4em}.node-text h2,.node-file-content h2{font-size:1.2em}.node-text h3,.node-file-content h3{font-size:1.1em}.node-text h4,.node-text h5,.node-text h6,.node-file-content h4,.node-file-content h5,.node-file-content h6{font-size:1em}.node-text .grid,.node-file-content .grid{grid-template-columns:1fr 1fr!important}.node-text .table-container,.node-file-content .table-container{overscroll-behavior:contain;max-width:100%;overflow-x:auto}.node-text .byline>:last-child,.node-file-content .byline>:last-child{border-left:1px solid var(--lightgray)}.node-text .byline div.first,.node-text .byline menu.tags,.node-file-content .byline div.first,.node-file-content .byline menu.tags{grid-column:1/1!important}.node-text .byline .content-meta,.node-file-content .byline .content-meta{grid-column:2/2!important}.node-text a,.node-file-content a{pointer-events:all;cursor:var(--cursor-pointer,pointer)}.node-text,.node-file-content{-ms-overflow-style:none}.node-text-label{text-align:center;align-content:center;justify-items:center;padding:.25rem .5rem;display:grid}.node-text-label p{width:100%;text-align:inherit;margin:0}.node-file-content>:is(section,div,pre,blockquote,figure),.node-file-content .collapse-body-content>:is(section,div,pre,p,ul,ol,blockquote,figure){content-visibility:auto;contain-intrinsic-block-size:auto 100px}.node-link{color:var(--dark);align-items:center;gap:8px;font-weight:500;display:flex}.node-link .link-icon{flex-shrink:0;font-size:1.2em}.node-group-label{fill:var(--darkgray);cursor:var(--cursor-grab,grab);-webkit-user-select:none;user-select:none;font-weight:400;transition:fill .2s}.node-group-label:hover{fill:var(--secondary)}.node-group.is-dragging .node-group-label{cursor:var(--cursor-grabbing,grabbing)}.canvas-embed-container .node-group-label,.edge{pointer-events:none}.edge line,.edge path{stroke:var(--gray);stroke-width:2px;opacity:.6;transition:opacity .2s,stroke-width .2s}.edge:hover line,.edge:hover path{opacity:1;stroke-width:3px}.edge-label{fill:var(--darkgray);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:500}.edge-label-bg,.edge-label-group{pointer-events:none}.canvas-loading{height:100%;color:var(--gray);justify-content:center;align-items:center;font-size:1.1rem;display:flex}.canvas-error{height:100%;color:var(--gray);text-align:center;justify-content:center;align-items:center;padding:1rem;font-size:1.1rem;display:flex}.canvas-help-modal{width:100vw;max-width:none;height:100vh;max-height:none;z-index:var(--z-modal);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:none;position:fixed;top:0;left:0}.canvas-help-modal.is-visible{display:flex}.canvas-help-backdrop{width:100%;height:100%;cursor:var(--cursor-pointer,pointer);background:#00000080;position:absolute;top:0;left:0}.canvas-help-content{background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);width:90%;max-width:450px;max-height:70vh;z-index:var(--z-base);padding:16px;position:relative;overflow:auto}.canvas-help-header{border-bottom:1px solid var(--lightgray);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.canvas-help-header h2{color:var(--dark);margin:0;font-size:1.1rem;font-weight:600}.canvas-help-close{cursor:var(--cursor-pointer,pointer);border-radius:var(--radius-none);color:var(--gray);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.canvas-help-close:hover{background:var(--lightgray);color:var(--dark)}.canvas-help-close svg{width:12px;height:12px}.canvas-help-body{flex-direction:column;gap:16px;display:flex}.canvas-help-section h3{text-transform:uppercase;color:var(--gray);margin:0 0 8px;font-size:.75rem;font-weight:600}.canvas-help-row{color:var(--dark);justify-content:space-between;align-items:center;padding:6px 0;font-size:.85rem;display:flex}.canvas-help-row:not(:last-child){border-bottom:1px solid var(--lightgray)}.canvas-help-keys{align-items:center;gap:2px;font-size:.7rem;display:flex}.canvas-help-keys kbd{background:var(--lightgray);border:1px solid var(--gray);border-radius:var(--radius-none);font-family:var(--codeFont);color:var(--dark);padding:2px 4px;font-size:.75em;line-height:1}.canvas-controls{z-index:var(--z-dropdown);pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;top:16px;right:16px}.canvas-control-group{background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);pointer-events:all;flex-direction:column;display:flex;overflow:hidden}.canvas-control-item{border-radius:var(--radius-none);background:var(--light);border:none;border-bottom:1px solid var(--lightgray);width:28px;height:28px;cursor:var(--cursor-pointer,pointer);color:var(--gray);justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.canvas-control-item:last-child{border-bottom:none}.canvas-control-item:hover:not(.is-disabled){background:var(--lightgray);color:var(--dark)}.canvas-control-item:active:not(.is-disabled){background:var(--gray)}.canvas-control-item.is-active{color:var(--secondary)}.canvas-control-item.is-disabled{opacity:.3;cursor:var(--cursor-not-allowed,not-allowed)}.canvas-control-item svg{pointer-events:none;width:14px;height:14px}.canvas-control-item[data-action=help] svg{width:12px;height:12px}.canvas-container>svg{cursor:var(--cursor-grab,grab);display:block}.canvas-container>svg:focus{outline:none}.canvas-container .node.is-focused .node-border-overlay,.canvas-container .node:focus-visible .node-border-overlay{stroke:var(--darkgray)!important;stroke-width:3px!important}.canvas-container .node:focus{outline:none}.canvas-node-link{width:fit-content;max-width:100%;color:var(--darkgray);text-overflow:ellipsis;white-space:nowrap;background:0 0;font-size:14px;line-height:24px;display:block;overflow:hidden}.canvas-node-link:hover{color:var(--secondary);background:0 0}.canvas-node-link:focus-visible{outline:2px solid var(--secondary);outline-offset:-2px}.canvas-control-item:focus-visible,.canvas-help-close:focus-visible{outline:2px solid var(--secondary);outline-offset:-3px}.node-file-content[data-loading=true]{color:var(--gray)}.canvas-skeleton-view .canvas-card-title{display:none}.canvas-skeleton-view .node-content{justify-content:center;align-items:center;padding:12px;display:flex!important}.canvas-skeleton-view .node-file-content{display:none!important}.canvas-skeleton-view .node.node-text .node-content{visibility:hidden;pointer-events:none}.canvas-skeleton-view .node.node-text .node-skeleton{display:block!important}.canvas-skeleton-view .node.node-text .node-skeleton .node-skeleton-line{opacity:.55}.canvas-skeleton-view .node-link{display:none!important}.canvas-skeleton-view .node .node-bg{fill:var(--light)!important;stroke:var(--gray)!important;fill-opacity:.5!important}.canvas-skeleton-view .node-group .node-bg{fill-opacity:.2!important}.canvas-skeleton-view .node-title-text.node-title-top{display:none!important}.canvas-skeleton-view .node-title-text.node-title-center{fill:var(--dark);font-weight:600;display:block!important}.canvas-skeleton-view .node-group-label{display:block!important}.canvas-skeleton-view .edge path{opacity:.55!important;stroke-width:1px!important}.canvas-skeleton-view .edge-label-group{opacity:.9;display:block!important}@media (max-width:800px){.canvas-container,.canvas-embed-container{height:400px;min-height:300px}.node-content{font-size:.75rem}}.node[data-color="1"] .node-bg,.node[data-color="1"] .node-border-overlay,.node-group[data-color="1"] .node-bg,.node-group[data-color="1"] .node-border-overlay{stroke:var(--rose)!important;stroke-width:2px!important}.node[data-color="2"] .node-bg,.node[data-color="2"] .node-border-overlay,.node-group[data-color="2"] .node-bg,.node-group[data-color="2"] .node-border-overlay{stroke:var(--love)!important;stroke-width:2px!important}.node[data-color="3"] .node-bg,.node[data-color="3"] .node-border-overlay,.node-group[data-color="3"] .node-bg,.node-group[data-color="3"] .node-border-overlay{stroke:var(--gold)!important;stroke-width:2px!important}.node[data-color="4"] .node-bg,.node[data-color="4"] .node-border-overlay,.node-group[data-color="4"] .node-bg,.node-group[data-color="4"] .node-border-overlay{stroke:var(--lime)!important;stroke-width:2px!important}.node[data-color="5"] .node-bg,.node[data-color="5"] .node-border-overlay,.node-group[data-color="5"] .node-bg,.node-group[data-color="5"] .node-border-overlay{stroke:var(--foam)!important;stroke-width:2px!important}.node[data-color="6"] .node-bg,.node[data-color="6"] .node-border-overlay,.node-group[data-color="6"] .node-bg,.node-group[data-color="6"] .node-border-overlay{stroke:var(--iris)!important;stroke-width:2px!important}@charset "UTF-8";.course-watch-body{gap:var(--space-3);height:100dvh;padding-bottom:var(--space-3);grid-template-rows:auto auto minmax(0,1fr);display:grid;position:sticky;top:0}.course-watch-meta .course-count{margin:0}.course-watch-desc{margin:var(--space-1) 0 0;font-size:var(--text-ui);line-height:1.5}.course-player{aspect-ratio:16/9;border:1px solid var(--dark);background:var(--course-surface);width:min(100%,81.7778dvh);display:block;position:relative}.course-player[data-state=mounted]{background:#000}.course-player-frame{border:0;width:100%;height:100%;display:block}.course-player-line{gap:var(--space-3);margin:var(--space-2) 0 0;flex-wrap:wrap;display:flex}.course-player-line .course-player-status:empty{display:none}.course-transcript{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.course-transcript h2{font-size:var(--text-ui);font-weight:400;font-family:var(--codeFont);text-transform:lowercase;color:var(--dark);margin:0 auto 0 0}.course-transcript-pane{overscroll-behavior:contain;min-height:0;padding:var(--space-2);margin-inline-start:calc(-1 * var(--space-2));overflow:auto}.course-transcript-tools{margin:0 0 var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--course-line);font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);flex-wrap:wrap;align-items:center;gap:.375rem .625rem;display:flex}.course-transcript-tools button{appearance:none;box-sizing:border-box;block-size:var(--course-control-height);border:1px solid var(--course-line);border-radius:var(--radius-none);color:inherit;font:inherit;text-transform:lowercase;cursor:var(--cursor-pointer,pointer);touch-action:manipulation;background:0 0;justify-content:center;align-items:center;gap:.35em;padding:0 .5rem;line-height:1;display:inline-flex}.course-transcript-tools button[aria-pressed=true]{color:var(--dark);background:var(--course-selected);border-color:var(--gray)}.course-transcript-tools button:focus-visible{outline:2px solid var(--secondary);outline-offset:-2px}.course-transcript-tools .course-segmented{display:inline-flex}.course-transcript-tools .course-segmented>*+*{margin-inline-start:-1px}.course-transcript-tools .course-transcript-actions .course-icon-button{inline-size:var(--course-control-height);padding:0}.course-transcript-tools .course-transcript-actions svg{flex:none;display:block}.course-transcript-tools .course-transcript-actions [data-transcript-copy] svg[data-glyph=done],.course-transcript-tools .course-transcript-actions [data-transcript-copy][data-copied] svg[data-glyph=copy]{display:none}.course-transcript-tools .course-transcript-actions [data-transcript-copy][data-copied] svg[data-glyph=done]{display:block}.course-transcript-tools .course-transcript-actions [aria-expanded=true]{color:var(--dark)}.course-transcript-tools .course-transcript-find{display:inline-flex}.course-transcript-tools .course-transcript-find[hidden]{display:none}.course-transcript-tools h2{font-size:inherit}.course-transcript-tools input[type=search]{box-sizing:border-box;block-size:var(--course-control-height);border:1px solid var(--course-line);border-radius:var(--radius-none);background:var(--light);width:8rem;max-width:100%;color:var(--dark);font:inherit;padding:0 .4rem;line-height:1}.course-transcript-tools input[type=search]:focus-visible{outline:2px solid var(--secondary);outline-offset:-2px}.course-transcript-tools .course-transcript-hits{font-variant-numeric:tabular-nums;min-width:5em}@media (hover:hover) and (pointer:fine){.course-transcript-tools button:hover:not([aria-pressed=true]){color:var(--dark);background:var(--course-surface);border-color:var(--gray)}}.course-transcript-list{--course-stamp-width:5.5rem;position:relative}.course-transcript-list svg.rough-annotation{z-index:1}.course-transcript-list{font-size:.875rem;line-height:1.6}.course-transcript-list p{margin:0 0 var(--space-3);padding-left:var(--course-stamp-width)}.course-transcript-list p[aria-current=time]{background:var(--course-surface)}.course-transcript-list p[data-match=hit]{-webkit-text-decoration:underline dotted var(--gray);text-decoration:underline dotted var(--gray)}.course-transcript-list p[data-match=active]{outline:1px solid var(--dark);outline-offset:2px}.course-transcript-list a.course-stamp{float:left;width:var(--course-stamp-width);margin-left:calc(-1 * var(--course-stamp-width));white-space:nowrap;font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;line-height:inherit;color:var(--darkgray);text-decoration:none}.course-transcript-list a.course-stamp:hover{color:var(--dark);text-underline-offset:.2em;text-decoration:underline}@media (prefers-reduced-motion:reduce){.course-transcript-list p{scroll-behavior:auto}}.course-resource{--course-line:color-mix(in srgb, var(--gray) 55%, transparent);--course-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--course-selected:color-mix(in srgb, var(--secondary) 18%, var(--course-surface));--course-control-height:1.75rem;grid-column:var(--layout-wide-column,1/-1);min-width:0;color:var(--darkgray)}.course-resource a:hover{color:inherit;background:0 0}.course-resource a.internal{background:0 0}.course-resource .course-strip{margin-bottom:var(--space-4)}@media (pointer:coarse){.course-resource{--course-control-height:44px}}.course-resource-body{min-width:0;font-size:var(--text-ui)}.course-resource-body>p:first-child{margin-top:0}.course-resource-table{border:1px solid var(--dark);border-collapse:collapse;width:100%;font-size:var(--text-ui);margin:0;line-height:1.45}.course-resource-table th,.course-resource-table td{text-align:left;vertical-align:baseline;overflow-wrap:anywhere;border:0;padding:.4rem .6rem}.course-resource-table thead th{font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;color:var(--darkgray);border-bottom:1px solid var(--dark);font-weight:400}.course-resource-table tbody tr+tr td{border-top:1px solid var(--course-line)}.course-resource-table .course-c-n,.course-resource-table .course-c-size,.course-resource-table .course-c-length,.course-resource-table .course-c-format,.course-resource-table .course-c-due{white-space:nowrap;width:1%}.course-resource-table .course-c-n,.course-resource-table .course-c-size,.course-resource-table .course-c-length{text-align:right}.course-resource-table a{color:var(--dark);text-decoration:none}.course-resource-table a:hover{text-underline-offset:.2em;text-decoration:underline}.course-resource-table a:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.course-resource{container:course-resource/inline-size}@container course-resource (max-width:36rem){.course-resource-table .course-c-size{display:none}}@container course-resource (max-width:24rem){.course-resource-table .course-c-format,.course-resource-table .course-c-due{display:none}}.course-resource-heading{align-items:baseline;gap:var(--space-2) var(--space-4);margin:0 0 var(--space-3);flex-wrap:wrap;display:flex}.course-resource-heading h2{font-size:var(--text-ui);font-weight:400;font-family:var(--codeFont);text-transform:lowercase;color:var(--dark);margin:0}.course-resource-links{margin:0 0 var(--space-3);font-family:var(--codeFont);font-size:var(--text-meta);text-transform:lowercase;padding:0;list-style:none}.course-resource-links li{display:inline}.course-resource-links li+li:before{content:" · ";color:var(--gray)}.course-resource-rows{margin:0 0 var(--space-6);border:1px solid var(--dark);padding:0;list-style:none}.course-resource-rows li+li{border-top:1px solid var(--course-line)}.course-resource-rows a{gap:var(--space-3);min-height:var(--course-control-height);color:var(--dark);grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;padding:.4rem .75rem;text-decoration:none;display:grid}.course-resource-rows a:hover .course-row-title{text-underline-offset:.2em;text-decoration:underline}.course-resource-rows a:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.course-resource-rows .course-row-title{overflow-wrap:anywhere;min-width:0}.course-file-meta{gap:var(--space-1) var(--space-4);margin:0 0 var(--space-4);font-size:var(--text-ui);grid-template-columns:max-content minmax(0,1fr);display:grid}.course-file-meta dt{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);text-transform:lowercase}.course-file-meta dd{overflow-wrap:anywhere;margin:0}.course-file-image{max-width:100%;height:auto;margin:0 0 var(--space-4);border:1px solid var(--course-line);display:block}.university-index .university-lede{margin:var(--space-3) 0;font-size:var(--text-ui);color:var(--darkgray);text-wrap:pretty}.university-index .university-term{margin-top:var(--space-4)}.university-index .university-term .course-bar{align-items:baseline}.university-index .university-term h3{font-size:var(--text-ui);font-weight:400;font-family:var(--codeFont);color:var(--dark);margin:0;line-height:1.4}.university-index .course-row-link{grid-template-columns:14ch minmax(0,1fr)}@media (max-width:800px){.university-index .course-row-link{grid-template-columns:minmax(0,1fr)}}.university-course .university-course-inferred{margin-top:var(--space-2);font-family:var(--codeFont);font-size:var(--text-meta);color:var(--gray);display:block}.university-course .course-main>.course-bar{align-items:baseline}.university-course .university-course-body{max-width:72ch;margin:0 0 var(--space-4);font-size:var(--text-ui);line-height:1.5}.university-course .university-course-body>:first-child{margin-top:0}.university-course .university-course-table .course-part-head th a{color:var(--dark)}.university-course .university-course-table .university-c-kind,.university-course .university-course-table .university-c-date{white-space:nowrap;width:1%;font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray)}.university-course .university-course-table .university-c-date{text-align:right}.university-course .university-course-table .university-course-sub{color:var(--darkgray)}@container course-spine (max-width:30rem){.university-course .university-course-table .university-c-date{display:none}}@charset "UTF-8";body[data-slides=true]{height:100dvh;overflow:hidden}html:has(body[data-slides=true]){height:100dvh;overflow:hidden}body[data-slides=true] main#quartz-root{height:100dvh;max-height:100dvh;overflow:hidden}body[data-slides=true] .page-header,body[data-slides=true] .page-footer{display:none}body[data-slides=true] .page-body-grid{grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden}body[data-slides=true] .page-content{box-sizing:border-box;grid-row:1;min-height:0;margin-bottom:0;padding:clamp(.75rem,4dvh,2.5rem) 1rem;overflow:hidden}.slides-root{--slides-line:color-mix(in srgb, var(--gray) 55%, transparent);--slides-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--slides-control-height:1.5rem;--slides-feedback:.15s ease;--slides-gutter:clamp(2rem, 4vw, 4.5rem);--slides-inset:var(--space-4);box-sizing:border-box;background:var(--light);border:1px solid var(--slides-line);border-radius:var(--radius-none);grid-column:1/-1;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(12rem,15rem) minmax(0,1fr);place-self:center;align-items:stretch;column-gap:0;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative}@media (pointer:coarse){.slides-root{--slides-control-height:44px}}@media (min-width:800px) and (max-width:1400px){.slides-root{--main-col-padding-left:0px;--main-col-padding-right:calc(var(--kern) * 2);--slides-gutter:calc(var(--kern) * 2);grid-template-columns:minmax(9rem,12rem) minmax(0,1fr)}}@media (max-width:800px){.slides-root{--main-col-padding-right:0px;--slides-gutter:0px;--slides-inset:var(--space-2);flex-direction:column;height:100%;display:flex}}.slides-toc{--slides-toc-rail-width:var(--rail-width);--slides-toc-rail-center:calc(var(--slides-toc-rail-width) / 2);--slides-toc-line-height:1.4;--slides-toc-node-center:calc(var(--text-ui) * var(--slides-toc-line-height) / 2);--slides-toc-node-size:.4rem;--slides-toc-node-top:calc(var(--slides-toc-node-center) - var(--slides-toc-node-size) / 2);--slides-toc-subnode-size:.25rem;--slides-toc-subnode-center:calc(var(--text-meta) * var(--slides-toc-line-height) / 2);--slides-toc-subnode-top:calc(var(--slides-toc-subnode-center) - var(--slides-toc-subnode-size) / 2);--slides-toc-entry-height:clamp(2.7rem, 5.8svh, 4.7rem);--slides-toc-last-entry-height:2.2rem;--slides-toc-list-tail:var(--space-12);--slides-toc-header-gap:var(--space-6);--slides-toc-mask-buffer:1.8rem;min-height:0;color:var(--darkgray);padding-block:var(--space-4);padding-inline:var(--slides-inset) var(--space-4);border-inline-end:1px solid var(--slides-line);flex-direction:column;grid-area:1/1;align-self:stretch;display:flex;position:relative;overflow:hidden}.slides-toc-header{gap:var(--space-2);flex:none;display:flex}.slides-root.is-rail-collapsed{grid-template-columns:max-content minmax(0,1fr)}.slides-root.is-rail-collapsed :is(.slides-toc-list-scroll,.slides-toc-back){display:none}.slides-toc-back,.slides-toc-toggle{box-sizing:border-box;width:var(--slides-control-height);height:var(--slides-control-height);color:var(--dark);border:1px solid var(--slides-line);border-radius:var(--radius-none);font:var(--text-ui)/1 var(--codeFont);cursor:var(--cursor-pointer,pointer);touch-action:manipulation;background:0 0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition-property:background-color,border-color,color;transition-duration:.15s;transition-timing-function:ease;display:inline-flex}.slides-toc-list-scroll{overscroll-behavior:contain;min-height:0;scroll-padding-block:var(--slides-toc-mask-buffer);scrollbar-width:none;flex:auto;padding-block-start:var(--slides-toc-header-gap);overflow-y:auto}.slides-toc-list-scroll.is-scrollable{-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%)}.slides-toc-list-scroll.is-scrollable.at-start{-webkit-mask-image:linear-gradient(to bottom, black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%);mask-image:linear-gradient(to bottom, black calc(100% - var(--slides-toc-mask-buffer)), transparent 100%)}.slides-toc-list-scroll.is-scrollable.at-end{-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black 100%);mask-image:linear-gradient(to bottom, transparent 0, black var(--slides-toc-mask-buffer), black 100%)}.slides-toc-list-scroll.is-scrollable.at-start.at-end{-webkit-mask-image:none;mask-image:none}.slides-toc-list-scroll::-webkit-scrollbar{display:none}.slides-toc-list{padding:0 0 var(--slides-toc-list-tail);margin:0;list-style:none;position:relative}.slides-toc-entry{min-height:var(--slides-toc-entry-height);margin:0;position:relative}.slides-toc-entry:not(:last-child):before,.slides-toc-entry:not(:last-child):after{content:"";top:var(--slides-toc-node-center);left:var(--slides-toc-rail-center);border-radius:var(--radius-none);pointer-events:none;width:1px;height:100%;position:absolute;transform:translate(-50%)}.slides-toc-entry:not(:last-child):before{background:var(--slides-line)}.slides-toc-entry:not(:last-child):after{background:var(--dark);transform-origin:top;transform:translate(-50%)scaleY(0)}.slides-toc-entry:has(~.slides-toc-entry.is-active):after{transform:translate(-50%)scaleY(1)}.slides-toc-entry.is-active:not(:last-child):after{transform:translateX(-50%) scaleY(var(--slides-toc-sub-progress,0))}.slides-toc-list.is-settled .slides-toc-entry:after{transition:transform .22s cubic-bezier(.23,1,.32,1)}.slides-toc-entry:last-child{min-height:var(--slides-toc-last-entry-height)}.slides-toc-item{min-height:max(2.5rem, var(--slides-control-height));padding:0 var(--space-1) 0 0;color:var(--darkgray);font-size:var(--text-ui);line-height:var(--slides-toc-line-height);text-wrap:pretty;transition:color var(--slides-feedback);margin-inline-start:var(--slides-toc-rail-width);text-decoration:none;display:block;position:relative}.slides-toc-item:before{content:"";top:var(--slides-toc-node-top);left:calc(var(--slides-toc-rail-center) - var(--slides-toc-rail-width));z-index:1;box-sizing:border-box;width:var(--slides-toc-node-size);height:var(--slides-toc-node-size);border:1px solid var(--gray);border-radius:var(--radius-none);background:var(--light);transition-property:background-color,border-color;transition-duration:.15s;transition-timing-function:ease;position:absolute;transform:translate(-50%)}.slides-toc-item.is-complete:before,.slides-toc-item.is-active:before{border-color:var(--dark);background:var(--dark)}.slides-toc-item.is-active{color:var(--dark)}.slides-toc-sublist{visibility:hidden;height:0;margin:0;padding:0;list-style:none;overflow:hidden}.slides-toc-entry.is-active>.slides-toc-sublist{visibility:visible;height:auto}.slides-toc-list.is-settled .slides-toc-sublist{transition:height .22s cubic-bezier(.23,1,.32,1),visibility 0s linear .22s}.slides-toc-list.is-settled .slides-toc-entry.is-active>.slides-toc-sublist{transition:height .22s cubic-bezier(.23,1,.32,1),visibility}.slides-toc-subentry{margin:0;position:relative}.slides-toc-subentry:last-child{padding-block-end:var(--space-2)}.slides-toc-subentry{opacity:0;transform:translateY(calc(-1 * var(--space-1)))}.slides-toc-entry.is-active .slides-toc-subentry{opacity:1;transform:none}.slides-toc-list.is-settled .slides-toc-subentry{transition:opacity .12s,transform .12s}.slides-toc-list.is-settled .slides-toc-entry.is-active .slides-toc-subentry{transition:opacity .22s cubic-bezier(.23,1,.32,1),transform .22s cubic-bezier(.23,1,.32,1);transition-delay:calc(40ms + var(--slides-toc-sub-index,0) * 30ms)}.slides-toc-subitem{min-height:var(--slides-control-height);padding:0 var(--space-1) 0 var(--space-2);color:var(--darkgray);font-size:var(--text-meta);line-height:var(--slides-toc-line-height);text-wrap:pretty;transition:color var(--slides-feedback);margin-inline-start:var(--slides-toc-rail-width);text-decoration:none;display:block;position:relative}.slides-toc-subitem:before{content:"";top:var(--slides-toc-subnode-top);left:calc(var(--slides-toc-rail-center) - var(--slides-toc-rail-width));z-index:1;width:var(--slides-toc-subnode-size);height:var(--slides-toc-subnode-size);border-radius:var(--radius-none);background:var(--gray);transition:background-color var(--slides-feedback);position:absolute;transform:translate(-50%)}.slides-toc-subitem.is-active{color:var(--dark)}.slides-toc-subitem.is-active:before{background:var(--dark)}.slides-toc-item:focus-visible,.slides-toc-subitem:focus-visible{outline:none}.slides-toc-item:focus-visible .slides-toc-label,.slides-toc-subitem:focus-visible .slides-toc-label{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.slides-toc-item:hover,.slides-toc-subitem:hover{color:var(--dark);text-underline-offset:.15em;background:0 0;text-decoration:underline}.slides-toc-back:hover,.slides-toc-toggle:hover,.slides-controls :is(button:enabled,a[href]):hover{color:var(--dark);background:var(--slides-surface);border-color:var(--gray)}.slides-root.is-overview .slide:hover{background:var(--slides-surface)}}.slides-deck{min-width:0;min-height:0;padding-inline:var(--slides-gutter) var(--slides-inset);scrollbar-width:none;touch-action:pan-y pinch-zoom;grid-area:1/2;display:block;overflow-y:auto}.slides-deck::-webkit-scrollbar{display:none}.slides-deck.gradient-active{-webkit-mask-image:linear-gradient(#000 calc(100% - 50px),#0000 100%);mask-image:linear-gradient(#000 calc(100% - 50px),#0000 100%)}.slide{display:none}.slide.active{display:block}@keyframes slides-enter{0%{opacity:0;translate:0 var(--space-1)}}.slides-root:not(.is-overview) .slide.active{animation:.22s cubic-bezier(.23,1,.32,1) slides-enter}.slides-root.is-overview .slides-deck{grid-template-columns:repeat(var(--slides-overview-cols,4), minmax(0, 1fr));gap:var(--space-4);padding:var(--space-1);counter-reset:slide;grid-auto-rows:max-content;align-content:start;display:grid}.slides-root.is-overview .slide{--slides-card-scale:var(--slides-overview-scale,.45);--slides-card-pad:var(--space-3);--slides-card-caption:calc(var(--text-meta) * 1.4 + var(--space-2));aspect-ratio:4/3;min-height:0;padding:var(--slides-card-pad);border:1px solid var(--slides-line);border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);counter-increment:slide;transition-property:background-color,border-color;transition-duration:.15s;transition-timing-function:ease;display:block;position:relative;overflow:hidden}.slides-root.is-overview .slide.active{border-color:var(--dark)}.slides-root.is-overview .slide:before{content:counter(slide) " · " attr(data-title);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-block-end:var(--space-2);line-height:1.4;display:block;overflow:hidden}.slides-root.is-overview .slide.active:before{color:var(--dark)}.slides-root.is-overview .slide:after{content:"";background:linear-gradient(to bottom, transparent, var(--light));pointer-events:none;height:30%;position:absolute;inset:auto 0 0}.slides-root.is-overview .slide-body{inset:calc(var(--slides-card-pad) + var(--slides-card-caption)) auto auto var(--slides-card-pad);width:calc((100% - 2 * var(--slides-card-pad)) / var(--slides-card-scale));height:calc((100% - 2 * var(--slides-card-pad) - var(--slides-card-caption)) / var(--slides-card-scale));transform:scale(var(--slides-card-scale));transform-origin:0 0;pointer-events:none;position:absolute;overflow:hidden}.slides-root.is-presenting{width:100%;height:100%;padding:var(--space-8) clamp(var(--space-6), 6vw, 8rem) 0;background:var(--light);border:0;grid-template-columns:minmax(0,1fr);column-gap:0}.slides-root.is-presenting .slides-toc{display:none}.slides-root.is-presenting .slides-deck{zoom:1.25;grid-column:1;inline-size:min(100%,60rem);margin-inline:auto;padding-inline:0}.slides-root.is-presenting .slides-controls{inset:auto var(--space-6) var(--space-4) auto;gap:var(--space-4);background:0 0;grid-column:auto;padding:0;position:absolute}.slides-root.is-presenting .slides-controls :is(button,a){display:none}.slides-root.is-presenting .slides-progress{position:fixed;inset:auto 0 0}.slides-controls{justify-content:flex-end;align-items:center;gap:var(--space-4);padding-block:var(--space-2);padding-inline:var(--slides-inset);background:var(--light);flex-shrink:0;grid-area:2/1/auto/-1;display:flex;position:relative}.slides-progress{top:0;pointer-events:none;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;height:2px;display:grid;position:absolute;inset-inline:0}.slides-progress-segment{background:var(--slides-line);transition:background-color var(--slides-feedback)}.slides-progress-segment.is-complete{background:var(--dark)}.slides-modes{gap:var(--space-2);display:inline-flex}.slides-pager{gap:var(--space-1);display:inline-flex}.slides-icon{width:1rem;height:1rem;display:block}.slides-controls :is(button,a){box-sizing:border-box;inline-size:var(--slides-control-height);block-size:var(--slides-control-height);color:var(--dark);border:1px solid var(--slides-line);border-radius:var(--radius-none);font:var(--text-ui)/1 var(--codeFont);cursor:var(--cursor-pointer,pointer);touch-action:manipulation;background:0 0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition-property:background-color,border-color,color,opacity;transition-duration:.15s;transition-timing-function:ease;display:inline-flex}.slides-controls :is(button:disabled,a[aria-disabled=true]){opacity:.5;cursor:var(--cursor-default,default)}.slides-controls button[hidden]{display:none}.slides-controls button[aria-pressed=true]{color:var(--light);background:var(--dark);border-color:var(--dark)}.slides-toc-back:focus-visible,.slides-toc-toggle:focus-visible,.slides-controls :is(button,a):focus-visible{outline:2px solid var(--dark);outline-offset:2px}.slides-controls .status,.slides-controls .slides-timer{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;line-height:1.4}.slides-controls .status{margin-inline-end:auto}@media (forced-colors:active){.slides-toc-item:focus-visible .slides-toc-label,.slides-toc-subitem:focus-visible .slides-toc-label,.slides-toc-back:focus-visible,.slides-toc-toggle:focus-visible,.slides-controls :is(button,a):focus-visible{outline-color:highlight}.slides-toc-item.is-complete:before,.slides-toc-item.is-active:before,.slides-toc-subitem.is-active:before,.slides-progress-segment.is-complete{background:highlight;border-color:highlight}}@media (prefers-reduced-motion:reduce){.slides-toc-list.is-settled .slides-toc-entry:after,.slides-toc-list.is-settled .slides-toc-sublist,.slides-toc-list.is-settled .slides-toc-entry.is-active>.slides-toc-sublist,.slides-toc-list.is-settled .slides-toc-subentry,.slides-toc-list.is-settled .slides-toc-entry.is-active .slides-toc-subentry,.slides-toc-item,.slides-toc-item:before,.slides-toc-subitem,.slides-toc-subitem:before,.slides-toc-back,.slides-toc-toggle,.slides-progress-segment,.slides-controls :is(button,a),.slides-root.is-overview .slide{transition:none}.slides-root:not(.is-overview) .slide.active{animation:none}}@media (max-width:800px){.slides-toc{display:none}.slides-deck{flex:auto}.slides-controls{padding:calc(var(--space-1) * 1.5) var(--slides-inset)}.slides-deck{padding-inline:var(--slides-inset)}.slides-controls .status{font-size:var(--text-ui)}}[data-slides=true] .transclude-collapsible{width:100%}@media print{body[data-slides=true],body[data-slides=true] main#quartz-root,body[data-slides=true] .page-body-grid,body[data-slides=true] .page-content{height:auto;max-height:none;overflow:visible}html:has(body[data-slides=true]){height:auto;max-height:none;overflow:visible}.slides-root{height:auto;display:block}.slides-toc,.slides-controls{display:none}.slides-deck{overflow:visible;-webkit-mask-image:none;mask-image:none}.slide{break-after:page;animation:none;display:block}}@media (prefers-reduced-motion:reduce){.status-flap[data-flipping] .status-flap-outgoing{display:none}}body[data-flashcards=true]{height:100dvh;overflow:hidden}html:has(body[data-flashcards=true]){height:100dvh;overflow:hidden}body[data-flashcards=true] main#quartz-root{height:100dvh;max-height:100dvh;overflow:hidden}body[data-flashcards=true] .breadcrumb-container:not(.popover *),body[data-flashcards=true] .stacked-buttons:not(.popover *),body[data-flashcards=true] .page-header:not(.popover *),body[data-flashcards=true] .page-footer:not(.popover *){display:none}body[data-flashcards=true] section[class~=header]{border-bottom-width:0}body[data-flashcards=true] .page-body-grid{grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden}body[data-flashcards=true] .page-content{box-sizing:border-box;grid-row:1;min-height:0;margin-bottom:0;padding:clamp(.75rem,4dvh,2.5rem) 1rem;overflow:hidden}.flashcards-root{--fc-front:#cdd597;--fc-answer:#fdb2a2;--fc-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fc-border:color-mix(in srgb, var(--gray) 55%, transparent);--fc-answer-bg:color-mix(in srgb, var(--fc-answer) 8%, var(--light));--fc-track:color-mix(in srgb, var(--gray) 18%, var(--light));--fc-control-height:2rem;box-sizing:border-box;background:var(--light);border:1px solid var(--fc-border);border-radius:var(--radius-none);grid-column:1/-1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-self:center;width:min(100%,52rem);min-width:0;height:min(100%,36rem);min-height:0;display:grid}.flashcards-root[data-notes=open]{grid-template-columns:minmax(0,11fr) minmax(0,9fr);width:min(100%,88rem);height:min(100%,48rem)}@media (max-width:800px){.flashcards-root[data-notes=open]{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}}.flashcards-root :where(button,a):focus-visible{outline:2px solid var(--secondary);outline-offset:-3px}@media (pointer:coarse){.flashcards-root{--fc-control-height:44px}}.flashcards-main{flex-direction:column;min-width:0;min-height:0;display:flex}.flashcards-notes{border-inline-start:1px solid var(--fc-border);flex-direction:column;min-width:0;min-height:0;display:flex}.flashcards-notes[hidden]{display:none}@media (max-width:800px){.flashcards-notes{border-inline-start:0;border-top:1px solid var(--fc-border)}}.flashcards-notes-head{border-bottom:1px solid var(--fc-border);background:var(--fc-surface);font-family:var(--codeFont);flex:none;padding:.65rem 1.25rem;font-size:.82rem;line-height:1.5}.flashcards-notes-head .flashcards-notes-title{color:var(--dark);text-decoration:underline;-webkit-text-decoration-color:var(--gray);text-decoration-color:var(--gray);text-underline-offset:.2em;overflow-wrap:anywhere}.flashcards-notes-head .flashcards-notes-title:hover{-webkit-text-decoration-color:var(--dark);text-decoration-color:var(--dark);background:0 0}.flashcards-notes-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--fc-border) transparent;min-height:0;color:var(--darkgray);flex:auto;padding:.75rem 1.25rem 1.5rem;font-size:.92rem;line-height:1.55;overflow-y:auto}.flashcards-notes-body h1,.flashcards-notes-body h2,.flashcards-notes-body h3,.flashcards-notes-body h4{color:var(--dark);margin-top:1.4rem}.flashcards-notes-body h1{font-size:1.15rem}.flashcards-notes-body h2{font-size:1.05rem}.flashcards-notes-body h3,.flashcards-notes-body h4{font-size:.95rem}.flashcards-notes-body>article>:first-child,.flashcards-notes-body>article>:first-child>:first-child{margin-top:0}.flashcards-notes-body img,.flashcards-notes-body video,.flashcards-notes-body svg{max-width:100%;height:auto}.flashcards-notes-body .katex-display{overflow:auto hidden}.flashcards-notes-body .flashcards-notes-empty{font-family:var(--codeFont);margin:0;font-size:.78rem}.flashcards-bar{border-bottom:1px solid var(--fc-border);flex:none;align-items:center;gap:1rem;padding:0 1rem 0 0;display:flex}.flashcards-bar .flashcards-exit{box-sizing:border-box;width:3rem;height:max(2.75rem, var(--fc-control-height));color:var(--dark);border:0;border-right:1px solid var(--fc-border);border-radius:var(--radius-none);background:0 0;flex:none;justify-content:center;align-items:center;font-size:.75rem;line-height:1;text-decoration:none;transition:background-color .16s cubic-bezier(.2,0,0,1);display:inline-flex}.flashcards-bar .flashcards-exit:hover,.flashcards-bar .flashcards-exit:focus-visible{background:var(--fc-surface);color:var(--dark)}.flashcards-bar .flashcards-progress{background:var(--fc-track);border-radius:var(--radius-none);flex:auto;min-width:0;height:.25rem;overflow:hidden}.flashcards-bar .flashcards-progress-fill{background:var(--fc-front);width:0;height:100%;transition:width .26s cubic-bezier(.2,0,0,1)}.flashcards-bar .flashcards-status{font-family:var(--codeFont);color:var(--darkgray);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1;text-align:right;flex:none;min-width:3.2rem;font-size:.8rem}.flashcards-bar .fc-notes{flex:none;min-height:0;padding:.2rem .6rem;line-height:1.3}.flashcards-bar .fc-notes[aria-pressed=true]{background:color-mix(in srgb, var(--fc-front) 24%, var(--fc-surface))}.flashcards-bar .flashcards-sync{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:18ch;font-family:var(--codeFont);color:var(--darkgray);flex:0 auto;font-size:.75rem;text-decoration:none;overflow:hidden}.flashcards-bar .flashcards-sync[href]{color:var(--dark);text-underline-offset:.2em;text-decoration:underline}.flashcards-bar .flashcards-sync:hover{background:0 0}.flashcards-bar .flashcards-sync[data-sync=error]{color:var(--dark);background:color-mix(in srgb, var(--fc-answer) 45%, transparent);padding:0 .35rem}.flashcards-stage{flex:auto;align-items:stretch;min-height:0;display:flex;overflow:hidden}.flashcards-card{background:var(--light);border-radius:var(--radius-none);width:100%;min-width:0;min-height:0;max-height:100%;cursor:var(--cursor-pointer,pointer);border:0;flex-direction:column;display:flex;overflow:hidden}.flashcards-card-head{border-bottom:1px solid var(--fc-border);background:var(--fc-surface);flex:none;padding:.65rem 1.25rem}.flashcards-card-head h1{font-family:var(--codeFont);color:var(--dark);overflow-wrap:anywhere;margin:0;font-size:.82rem;font-weight:400;line-height:1.5}.flashcards-card-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--fc-border) transparent;flex:auto;min-height:0;overflow-y:auto}.flashcards-deck{grid-template-columns:minmax(0,1fr);align-content:center;min-height:100%;display:grid}.flashcard{display:none}.flashcard.is-active{animation:.22s cubic-bezier(.2,0,0,1) fc-card-in;display:block}@keyframes fc-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.flashcard-face{text-align:center;overflow-wrap:anywhere;padding:1.5rem;font-size:1.05rem;line-height:1.65}.flashcard-face>:first-child{margin-top:0}.flashcard-face>:last-child{margin-bottom:0}.flashcard-back{border-top:1px solid var(--fc-border);background:var(--fc-answer-bg)}.flashcard-note{border-top:1px dashed var(--fc-border);color:var(--darkgray);margin-top:1rem;padding-top:.75rem;font-size:.9rem}.flashcard-note>:first-child{margin-top:0}.flashcard-note>:last-child{margin-bottom:0}.cloze-blank{border-radius:var(--radius-none);background:color-mix(in srgb, var(--fc-front) 42%, transparent);color:var(--dark);padding:0 .35rem;font-style:italic}.cloze-answer{border-radius:var(--radius-none);background:color-mix(in srgb, var(--fc-answer) 50%, transparent);color:var(--dark);padding:0 .2rem;font-weight:600}.flashcard-face .katex{color:inherit;font-size:1em}.flashcards-controls{border-top:1px solid var(--fc-border);background:var(--fc-surface);flex:none;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.flashcards-controls .fc-spacer{flex:auto}.flashcards-controls .fc-grades:not([hidden]){grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.flashcards-controls .fc-grades:not([hidden]) .fc-grade+.fc-grade{margin-left:-1px}@media (max-width:800px){.flashcards-controls{flex-wrap:wrap;gap:.5rem}.flashcards-controls .fc-spacer{display:none}.flashcards-controls .fc-reveal,.flashcards-controls .fc-grades{order:-1;width:100%}.flashcards-controls .fc-end{margin-left:auto}}.fc-btn[hidden]{display:none}.fc-btn{box-sizing:border-box;min-height:var(--fc-control-height);min-width:0;font-family:var(--codeFont);cursor:var(--cursor-pointer,pointer);color:var(--dark);background:var(--light);border:1px solid var(--fc-border);border-radius:var(--radius-none);justify-content:center;align-items:center;padding:.35rem .85rem;font-size:.75rem;line-height:1.4;transition:background-color .15s cubic-bezier(.2,0,0,1),border-color .15s cubic-bezier(.2,0,0,1);position:relative}.fc-btn:hover:not(:disabled),.fc-btn:focus-visible{z-index:1;background:var(--fc-surface);border-color:color-mix(in srgb, var(--darkgray) 50%, var(--fc-border))}.fc-btn:disabled{cursor:var(--cursor-not-allowed,not-allowed);opacity:.4}.fc-btn.fc-grade[data-grade="1"]{background:color-mix(in srgb, var(--fc-answer) 22%, var(--fc-surface))}.fc-btn.fc-grade[data-grade="4"]{background:color-mix(in srgb, var(--fc-front) 24%, var(--fc-surface))}.fc-key{font-family:var(--codeFont);color:var(--darkgray);background:var(--fc-surface);border:1px solid color-mix(in srgb, var(--darkgray) 32%, var(--fc-border));border-radius:var(--radius-none);pointer-events:none;opacity:0;white-space:nowrap;margin:0;padding:.1rem .32rem;font-size:.68rem;line-height:1.3;transition:opacity .14s cubic-bezier(.2,0,0,1),transform .14s cubic-bezier(.2,0,0,1);position:absolute;bottom:calc(100% + .35rem);left:50%;transform:translate(-50%,.25rem)}.flashcards-root.fc-hints .fc-key{opacity:1;transform:translate(-50%)}.flashcards-finished:not([hidden]){text-align:center;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:.85rem;min-height:0;padding:1.5rem;display:flex;overflow-y:auto}.flashcards-finished:not([hidden]) h1{font-family:var(--headerFont);color:var(--dark);margin:0;font-size:1.6rem}.flashcards-finished:not([hidden]) .flashcards-summary{font-family:var(--bodyFont);color:var(--darkgray);margin:0}.flashcards-finished:not([hidden]) .flashcards-summary-number{font-family:var(--codeFont);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1}.flashcards-root[data-state=finished] .flashcards-stage,.flashcards-root[data-state=finished] .flashcards-controls{display:none}@media (prefers-reduced-motion:reduce){.flashcard.is-active{animation:none}.flashcards-bar .flashcards-exit,.flashcards-bar .flashcards-progress-fill,.fc-btn,.fc-key{transition:none}}.flashcards-notes-status{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:1.4em;color:var(--darkgray);font:var(--text-meta)/1.4 var(--bodyFont);flex:7rem;overflow:hidden}@charset "UTF-8";.pagerank-frame{border:1px solid var(--pr-line);min-width:0}.pagerank-explain{box-sizing:border-box;border-block-end:1px solid var(--pr-line);font:400 var(--text-meta)/1.5 var(--bodyFont);color:var(--darkgray);margin:0;padding:.45rem .75rem}.pagerank-scroll{overscroll-behavior:contain;block-size:min(70dvh,40rem);position:relative;overflow:auto}.pagerank-scroll:focus-visible{outline-offset:-2px}.pagerank-table{table-layout:fixed;border-collapse:collapse;width:100%;font:400 .85rem/1.3 var(--bodyFont);color:var(--darkgray);margin:0}.pagerank-table th{box-sizing:border-box;cursor:var(--cursor-help,help);z-index:var(--z-sticky);background:var(--pr-surface);block-size:2rem;font:400 var(--text-meta)/1.5 var(--codeFont);color:var(--darkgray);text-align:right;text-transform:lowercase;white-space:nowrap;padding:0 .75rem;position:sticky;top:0}.pagerank-table th:after{content:"";background:var(--pr-line);block-size:1px;position:absolute;inset:auto 0 0}.pagerank-table th button{color:inherit;text-align:inherit;font:inherit;text-transform:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:0}.pagerank-table th button:focus-visible{outline-offset:1px}.pagerank-table th[aria-sort=ascending] button:after{content:" ↑"}.pagerank-table th[aria-sort=descending] button:after{content:" ↓"}.pagerank-table th:is([aria-sort=ascending],[aria-sort=descending]) button{color:var(--dark);text-underline-offset:.2em;text-decoration:underline}.pagerank-table td{box-sizing:border-box;block-size:var(--pr-row);border-block-end:1px solid var(--pr-line);text-align:right;vertical-align:middle;white-space:nowrap;font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;padding:0 .75rem;overflow:hidden}.pagerank-table tbody tr:last-child td{border-block-end:0}.pagerank-table tbody tr{block-size:var(--pr-row)}@media (hover:hover) and (pointer:fine){.pagerank-table tbody tr[data-id]:hover{cursor:var(--cursor-pointer,pointer)}.pagerank-table tbody tr[data-id]:hover a.internal{text-underline-offset:.2em;text-decoration:underline}}.pagerank-table tbody tr[aria-current=true]{color:var(--dark);font-style:italic}.pagerank-table tbody tr[aria-current=true] a.internal{background:color-mix(in srgb, var(--secondary) 55%, transparent);-webkit-box-decoration-break:clone;box-decoration-break:clone}.pagerank-table .pagerank-col-position{inline-size:3.75rem}.pagerank-table .pagerank-col-note{text-align:left}.pagerank-table .pagerank-col-times{inline-size:4.5rem}.pagerank-table .pagerank-col-axis{text-align:left;inline-size:7rem}.pagerank-table :is(.pagerank-col-inbound,.pagerank-col-outbound){inline-size:3.25rem}.pagerank-table .pagerank-col-delta{inline-size:4rem}.pagerank-table td.pagerank-col-note{font-family:var(--bodyFont);font-size:.85rem}.pagerank-table td.pagerank-col-note a.internal{white-space:nowrap}.pagerank-table .pagerank-note-line,.pagerank-table .pagerank-slug{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.pagerank-table .pagerank-slug{font:400 .66rem/1.4 var(--codeFont);color:var(--darkgray)}.pagerank-table .pagerank-chip{border:1px solid var(--pr-line);background:var(--pr-surface);font:400 .66rem/1.4 var(--codeFont);color:var(--darkgray);margin-inline-start:.4rem;padding:0 .3rem}.pagerank-table td.pagerank-col-axis{position:relative}.pagerank-table td.pagerank-col-axis:before{content:"";background:var(--pr-line);block-size:1px;position:absolute;inset:50% .75rem auto}.pagerank-table .pagerank-axis-mark{background:var(--dark);block-size:7px;inline-size:7px;position:absolute;inset-block-start:calc(50% - 3.5px);inset-inline-start:calc(.75rem + var(--px) * (100% - 1.5rem - 7px))}.pagerank-table .pagerank-rise{color:var(--dark)}.pagerank-table .pagerank-select{border-radius:var(--radius-none);min-block-size:1.75rem;min-inline-size:2.25rem;color:var(--dark);font:inherit;text-align:right;cursor:var(--cursor-pointer,pointer);background:0 0;border:1px solid #0000;padding:0 .25rem}.pagerank-table .pagerank-select:focus-visible{outline-offset:-2px}@media (pointer:coarse){.pagerank-table .pagerank-select{min-block-size:44px}}.pagerank-table .pagerank-status td{block-size:calc(var(--pr-row) * 2);font-family:var(--bodyFont);font-size:var(--text-ui);text-align:left;white-space:normal;padding:0 .75rem}@container pagerank (max-width:48rem){.pagerank-table th,.pagerank-table td{padding-inline:.4rem}.pagerank-table .pagerank-col-axis{display:none}.pagerank-table .pagerank-col-position{inline-size:3rem}.pagerank-table .pagerank-col-times{inline-size:3.6rem}.pagerank-table :is(.pagerank-col-inbound,.pagerank-col-outbound){inline-size:2.4rem}.pagerank-table .pagerank-col-delta{inline-size:3.4rem}}@container pagerank (max-width:30rem){.pagerank-table :is(.pagerank-col-outbound,.pagerank-col-delta),.pagerank-table .pagerank-chip{display:none}.pagerank-table th,.pagerank-table td{padding-inline:.3rem}.pagerank-table .pagerank-col-position{inline-size:2.75rem}.pagerank-table .pagerank-col-times{inline-size:3.25rem}.pagerank-table .pagerank-col-inbound{inline-size:2.25rem}}.pagerank-pager{border-block-start:1px solid var(--pr-line);background:var(--pr-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;padding:0 .5rem 0 .25rem;display:flex}.pagerank-pager .pagerank-pages{font:400 var(--text-meta) var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);align-items:center;display:flex}.pagerank-pager button{inline-size:2rem;block-size:var(--control-height);border-radius:var(--radius-none);color:var(--dark);font:400 1rem var(--codeFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.pagerank-pager button:disabled{color:var(--gray);cursor:var(--cursor-default,default)}.pagerank-pager button:focus-visible{outline-offset:-2px}@media (hover:hover) and (pointer:fine){.pagerank-pager button:not(:disabled):hover{text-decoration:underline}}@media (pointer:coarse){.pagerank-pager button{inline-size:44px}}.pagerank-pager .pagerank-filtered{padding-block:.4rem}.pagerank-inspector{border:1px solid var(--pr-line);flex-direction:column;min-width:0;display:flex}.pagerank-inspector>*{padding:.75rem}.pagerank-inspector>*+*{border-block-start:1px solid var(--pr-line)}.pagerank-inspector .pagerank-kicker{margin:0 0 .4rem}.pagerank-inspector-head{background:var(--pr-surface);margin:0;display:block}.pagerank-inspector-head h2{font:700 1.15rem/1.25 var(--titleFont);color:var(--dark);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.pagerank-inspector-head .pagerank-slug{min-block-size:1lh;font:400 .66rem/1.4 var(--codeFont);text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 .6rem;overflow:hidden}.pagerank-facts{flex-wrap:wrap;gap:.15rem 1rem;margin:0;display:flex}.pagerank-facts>div{min-width:0}.pagerank-facts dt{font-size:var(--text-meta);color:var(--darkgray);line-height:1.5}.pagerank-facts dd{font:500 var(--text-meta)/1.5 var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.pagerank-facts>div:last-child{flex-basis:100%;align-items:baseline;gap:.75rem;display:flex}.pagerank-facts>div:last-child dt{flex:none}.pagerank-facts>div:last-child dd{min-width:0}.pagerank-ledger-scroll{overscroll-behavior:contain;block-size:24rem;position:relative;overflow:auto}.pagerank-ledger-scroll:focus-visible{outline-offset:-2px}.pagerank-ledger-scroll>.pagerank-kicker{margin:1rem 0 .4rem}.pagerank-ledger-scroll table{table-layout:fixed;border-collapse:collapse;border:1px solid var(--pr-line);inline-size:100%;font:400 var(--text-meta)/1.3 var(--codeFont);font-variant-numeric:tabular-nums;color:var(--darkgray);margin:0}.pagerank-ledger-scroll th,.pagerank-ledger-scroll td{box-sizing:border-box;border-block-end:1px solid var(--pr-line);text-align:right;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;padding:0 .5rem;overflow:hidden}.pagerank-ledger-scroll :is(th,td):first-child{text-align:left}.pagerank-ledger-scroll :is(th,td):nth-child(2){inline-size:3.75rem}.pagerank-ledger-scroll :is(th,td):nth-child(3){inline-size:6rem}.pagerank-ledger-scroll thead th{background:var(--pr-surface);text-transform:lowercase;block-size:2rem;font-weight:400}.pagerank-ledger-scroll td{block-size:2.25rem}.pagerank-ledger-scroll tbody td:first-child{font-family:var(--bodyFont);color:var(--dark);font-size:.85rem}.pagerank-ledger-scroll tbody td:first-child a.internal{white-space:nowrap}.pagerank-ledger-scroll tfoot :is(th,td){background:var(--pr-surface);block-size:2.25rem}.pagerank-ledger-scroll tfoot th{white-space:normal;font:400 var(--text-meta)/1.3 var(--bodyFont);color:var(--darkgray);padding-block:.3rem}.pagerank-ledger-scroll tfoot tr:last-child :is(th,td){color:var(--dark);font-weight:500}.pagerank-ledger-scroll .pagerank-link-rank{min-inline-size:3rem;color:var(--darkgray);font:inherit;font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:left;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;margin-inline-end:.4rem;padding:0;display:inline-block}.pagerank-ledger-scroll .pagerank-link-rank:before{content:"#"}@media (hover:hover) and (pointer:fine){.pagerank-ledger-scroll .pagerank-link-rank:hover{color:var(--dark);text-decoration:underline}}.pagerank-ledger-scroll .pagerank-share{white-space:nowrap}.pagerank-ledger-scroll .pagerank-bar{vertical-align:middle;inline-size:calc(var(--share) * 3rem);background:var(--dark);block-size:3px;margin-inline-end:.35rem;display:inline-block}.pagerank-ledger-scroll .pagerank-status td{white-space:normal;font-family:var(--bodyFont);color:var(--darkgray)}body[data-slug=pagerank] .page-body-grid{min-width:0;display:block}body[data-slug=pagerank] .page-content{box-sizing:border-box;inline-size:100%;max-inline-size:80rem;margin:0 auto;padding-inline:1rem;display:block}.pagerank{--pr-line:color-mix(in srgb, var(--gray) 55%, transparent);--pr-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--pr-selected:color-mix(in srgb, var(--secondary) 18%, var(--pr-surface));--pr-salmon:#fdb2a2;--pr-row:2.875rem;--control-height:2rem;--control-font-size:var(--text-meta);min-width:0;color:var(--darkgray);flex-direction:column;gap:1.5rem;margin-block:1rem 3rem;display:flex;container:pagerank/inline-size}@media (pointer:coarse){.pagerank{--control-height:44px}}.pagerank :focus-visible{outline:2px solid var(--dark);outline-offset:2px}.pagerank :where(th,tr){border:0}.pagerank a.internal{color:var(--dark);background:0 0;text-decoration:none}@media (hover:hover) and (pointer:fine){.pagerank a.internal:hover{color:var(--dark);background:0 0;text-decoration:underline}}.pagerank-intro p{margin:0 0 .75rem}.pagerank-intro .katex-display{margin:.75rem 0 1rem;overflow:auto hidden}.pagerank-title{font:700 1.6rem/1.2 var(--titleFont);color:var(--dark);margin:0 0 .35rem}.pagerank-description{font-size:var(--text-ui);color:var(--darkgray);margin:0 0 1.25rem}.pagerank-meta,.pagerank-filtered,.pagerank-kicker{font:400 var(--text-meta)/1.5 var(--codeFont);font-variant-numeric:tabular-nums;color:var(--darkgray);text-transform:lowercase}.pagerank-readout{border:1px solid var(--pr-line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.pagerank-readout>div{border-inline-end:1px solid var(--pr-line);border-block-end:1px solid var(--pr-line);min-width:0;padding:.55rem .75rem}.pagerank-readout>div:nth-child(4n){border-inline-end:0}.pagerank-readout>div:nth-last-child(-n+4){border-block-end:0}.pagerank-readout dt{font-size:var(--text-meta);color:var(--darkgray)}.pagerank-readout dd{font:500 var(--text-ui)/1.4 var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);overflow-wrap:anywhere;margin:.15rem 0 0}@container pagerank (max-width:40rem){.pagerank-readout{grid-template-columns:repeat(2,minmax(0,1fr))}.pagerank-readout>div:nth-child(4n){border-inline-end:1px solid var(--pr-line)}.pagerank-readout>div:nth-child(2n){border-inline-end:0}.pagerank-readout>div:nth-last-child(-n+4){border-block-end:1px solid var(--pr-line)}.pagerank-readout>div:nth-last-child(-n+2){border-block-end:0}}.pagerank-figure{--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);margin:0;padding:1rem}.pagerank-figure figcaption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.pagerank-figure .pagerank-tex{color:var(--dark)}.pagerank-chart{block-size:240px;min-width:0}.pagerank-chart svg{display:block;overflow:visible}.pagerank-chart .pagerank-grid line{stroke:var(--pr-line);stroke-width:1px}.pagerank-chart .pagerank-plot-frame{fill:none;stroke:var(--pr-line)}.pagerank-chart .pagerank-curve{fill:none;stroke:var(--dark);stroke-width:1.5px;stroke-linejoin:round}.pagerank-chart .pagerank-fit{fill:none;stroke:var(--darkgray);stroke-width:1px;stroke-dasharray:4 3}.pagerank-chart :is(.pagerank-mark-selected,.pagerank-mark-pointer){transition:transform .12s ease-out}@media (prefers-reduced-motion:reduce){.pagerank-chart :is(.pagerank-mark-selected,.pagerank-mark-pointer){transition:none}}.pagerank-chart :is(.pagerank-mark-selected,.pagerank-mark-pointer)[hidden]{display:none}.pagerank-chart .pagerank-mark-selected{fill:var(--pr-salmon);stroke:var(--dark);stroke-width:1px}.pagerank-chart .pagerank-mark-pointer{fill:none;stroke:var(--dark);stroke-width:1.5px}.pagerank-figure figcaption p{margin:0}:is(.pagerank-chart,.pagerank-field-plot) .pagerank-ticks text{font:400 11px var(--codeFont);font-variant-numeric:tabular-nums;fill:var(--darkgray)}:is(.pagerank-chart,.pagerank-field-plot) .pagerank-axis-title{font:400 12px var(--bodyFont);fill:var(--darkgray)}.pagerank-field{overflow:hidden}.pagerank-field-plot{block-size:var(--field-height,430px);min-width:0;position:relative}@container pagerank (max-width:calc(602px + 2rem)){.pagerank-field-plot{block-size:var(--field-height,380px)}}.pagerank-field-plot>:is(canvas,svg,.pagerank-field-notes){block-size:100%;inline-size:100%;position:absolute;inset:0}.pagerank-field-plot>:is(svg,.pagerank-field-notes){pointer-events:none}.pagerank-field-plot:focus-visible{outline-offset:-2px}@media (hover:hover) and (pointer:fine){.pagerank-field-plot[data-hit] canvas{cursor:var(--cursor-pointer,pointer)}}.pagerank-field-plot .pagerank-field-lines line{stroke:var(--darkgray);stroke-width:1px}.pagerank-field-plot .pagerank-leader{stroke-dasharray:2 2}.pagerank-field-note{font:400 var(--text-meta)/1.35 var(--bodyFont);color:var(--dark);white-space:nowrap;margin:0;padding-block:.12rem;position:absolute;inset-block-start:8px}.pagerank-field-top{justify-content:flex-end;gap:.3em;display:flex}.pagerank-field-top>*{flex:none}.pagerank-field-top .pagerank-field-title{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.pagerank-field-top .pagerank-field-title:after{content:","}.pagerank-field-hover{max-inline-size:calc(100% - 32px);font:400 var(--text-meta)/1.35 var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);background:color-mix(in srgb, var(--light) 90%, transparent);text-align:right;pointer-events:none;opacity:0;margin:0;padding:.12rem .4rem;position:absolute;inset:8px 16px auto auto}.pagerank-field-plot :is(.pagerank-field-hover,.pagerank-field-top,.pagerank-leader){transition:opacity .12s ease-out}@media (prefers-reduced-motion:reduce){.pagerank-field-plot :is(.pagerank-field-hover,.pagerank-field-top,.pagerank-leader){transition:none}}.pagerank-field-plot[data-pointer] .pagerank-field-hover{opacity:1}.pagerank-field-plot[data-pointer] :is(.pagerank-field-top,.pagerank-leader){opacity:0}.pagerank-field-number{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.pagerank-field-readout{min-block-size:1lh;font:400 var(--text-meta)/1.5 var(--codeFont);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:.5rem 0 0;overflow:hidden}@container pagerank (max-width:40rem){.pagerank-field-readout{-webkit-line-clamp:3;white-space:normal;-webkit-box-orient:vertical;block-size:3lh;display:-webkit-box}}.pagerank-chart-readout{min-block-size:1lh;font-family:var(--bodyFont);color:var(--dark);margin-block-start:.35rem;font-style:italic}.pagerank-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.pagerank-toolbar .pagerank-search{box-sizing:border-box;min-width:0;block-size:var(--control-height);border:1px solid var(--lightgray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 88%, transparent);color:var(--dark);font:400 var(--text-meta) var(--codeFont);flex:12rem;padding:0 .42rem}.pagerank-toolbar .pagerank-search::placeholder{color:var(--darkgray)}.pagerank-toolbar .pagerank-search:focus-visible{outline-offset:-2px}@media (max-width:800px){.pagerank-toolbar .pagerank-search{font-size:16px}}.pagerank-toolbar .pagerank-folder{flex:0 13rem;min-width:0}.pagerank-toolbar .pagerank-folder .g-select{inline-size:100%}.pagerank-toolbar .pagerank-folder .g-select-trigger{inline-size:100%;block-size:var(--control-height);min-height:0}.pagerank-toggles{box-sizing:border-box;block-size:var(--control-height);border:1px solid var(--lightgray);display:flex}.pagerank-toggles button{box-sizing:border-box;border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 88%, transparent);block-size:100%;color:var(--darkgray);font:400 var(--text-meta)/1 var(--codeFont);text-transform:lowercase;cursor:var(--cursor-pointer,pointer);border:0;justify-content:center;align-items:center;padding:0 .6rem;display:inline-flex}.pagerank-toggles button+button{border-inline-start:1px solid var(--lightgray)}.pagerank-toggles button[aria-pressed=true]{background:var(--pr-selected);color:var(--dark)}.pagerank-toggles button:focus-visible{outline-offset:-2px}@media (hover:hover) and (pointer:fine){.pagerank-toggles button:hover{color:var(--dark)}}.pagerank-toggles .pagerank-icon-toggle{inline-size:var(--control-height);padding:0}.pagerank-toggles .pagerank-icon-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;block-size:1rem;inline-size:1rem}.pagerank-workspace{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@container pagerank (min-width:62rem){.pagerank-workspace{grid-template-columns:minmax(0,1fr) minmax(20rem,24rem)}.pagerank-workspace .pagerank-list{contain:size;align-self:stretch;min-height:0;display:grid}.pagerank-workspace .pagerank-frame{flex-direction:column;min-height:0;display:flex}.pagerank-workspace .pagerank-scroll{block-size:0;flex:1;min-height:0}}@media (hover:hover) and (pointer:fine){.arena-entry-home:hover,.arena-entry-copy:hover{color:var(--dark);background:var(--arena-selected)}}.arena-entry-copy .check-icon,.arena-entry-copy.check .copy-icon{display:none}@keyframes arena-spinner-rotate{to{transform:rotate(360deg)}}html.arena-modal-open,body.arena-modal-open{overscroll-behavior:contain;overflow:hidden}body.arena-modal-open{touch-action:none}[data-slug*=arena]{--arena-line:var(--ledger-line);--arena-surface:var(--ledger-surface);--arena-selected:var(--ledger-selected);--arena-control-height:1.75rem}@media (pointer:coarse){[data-slug*=arena]{--arena-control-height:44px}}[data-slug*=arena] :where(.arena-index,.arena-channel-page,.arena-entry-page) :where(button,a,input,summary,[role=button]):focus-visible{outline:2px solid var(--dark);outline-offset:-2px}[data-slug*=arena] #quartz-root{margin:0 1rem}[data-slug*=arena] a[data-role=anchor],[data-slug*=arena] span[data-role=anchor]{display:none}[data-slug*=arena] section[class~=header]{visibility:hidden;border-bottom:0;height:0;padding-bottom:0}[data-slug*=arena] .page-footer{display:none}[data-slug*=arena] .arena-channel-page,[data-slug*=arena] .arena-index,[data-slug*=arena] .byline,[data-slug*=arena] .bibliography,[data-slug*=arena] .title-col{text-align:start;width:100%;max-width:52rem;margin:0 auto;padding:0}[data-slug*=arena] .page-content,[data-slug*=arena] .byline{display:flex}[data-slug*=arena] .page-footer{flex-direction:column}[data-slug*=arena] .byline{grid-column:6/-4}[data-slug*=arena] .byline>*{padding-top:6px;padding-bottom:6px}[data-slug*=arena] .byline>.tags{flex-grow:0}body[data-arena-subpage=true] .page-footer{display:none}body[data-arena-subpage=true] .arena-title-block>h1>a:first-of-type{color:var(--darkgray)}body[data-arena-subpage=true] .arena-title-block>h1>a:first-of-type:hover{text-decoration:underline}body[data-arena-subpage=true] .byline{grid-column:6/-4;margin-bottom:1rem}.arena-channel-row-preview-text a.external,.arena-channel-row-preview-text a.internal:not([data-bib]),.arena-modal-title a.external,.arena-modal-title a.internal:not([data-bib]),.arena-block-content a.external,.arena-block-content a.internal:not([data-bib]){margin-left:.2em}.arena-title-block{margin-bottom:1rem!important}.arena-title-block .article-title{margin-bottom:.5rem}.arena-title-block .article-title a{color:inherit;text-decoration:none;transition:color .2s}.arena-title-block .article-title a:hover{color:var(--secondary)}.arena-title-block .description{color:var(--gray);font-size:.75rem;font-family:var(--codeFont);margin:0}.arena-channels-list{border:1px solid var(--arena-line);flex-direction:column;margin-block:1rem 2rem;display:flex}.arena-channel-row{color:inherit;background:var(--light)}.arena-channel-row+.arena-channel-row{border-top:1px solid var(--arena-line)}.arena-channel-row-header{background:var(--arena-surface);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.arena-channel-row-header h2{color:var(--dark);margin:0;font-size:1.1rem;font-weight:600;transition:color .2s}.arena-channel-row-header h2 a:hover{background:0 0}.arena-channel-row-header a{color:var(--darkgray);text-decoration:none}.arena-channel-row-header .arena-channel-row-metadata{font-family:var(--codeFont);align-items:center;gap:.5em;font-size:.7rem;display:flex}.arena-channel-row-header .arena-channel-json-link{color:var(--gray);opacity:.6;transition:opacity .2s,color .2s}.arena-channel-row-header .arena-channel-json-link:hover{opacity:1;color:var(--darkgray);background:0 0;text-decoration:underline}.arena-channel-row-header .arena-channel-row-count{color:var(--gray);font-weight:400}.arena-channel-row-preview{flex-direction:column;display:flex}.arena-channel-row-preview-item{color:var(--darkgray);border-top:1px solid var(--arena-line);border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);align-items:center;gap:.75rem;padding:.35rem .75rem;font-size:.85rem;line-height:1.45;text-decoration:none;transition:border-color .2s;display:flex}.arena-channel-row-preview-item:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.arena-channel-row-preview-item:hover{color:var(--dark);text-underline-offset:.15em;text-decoration:underline}.arena-channel-row-preview-item .arena-channel-row-preview-thumb{aspect-ratio:16/10;border-radius:var(--radius-none);background:var(--lightgray);flex:0 0 64px;overflow:hidden}.arena-channel-row-preview-item .arena-channel-row-preview-thumb img{object-fit:cover;width:100%;height:100%;display:block}.arena-channel-row-preview-item .arena-channel-row-preview-text{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.arena-channel-row-preview-item .arena-channel-row-preview-text p{margin:0}.arena-channel-row-preview-item.highlighted{color:var(--tertiary);font-weight:500}.arena-entry-page{width:100%;margin:2rem auto 0}.arena-entry-shell{box-sizing:border-box;border:1px solid var(--arena-line);flex-direction:column;height:calc(100dvh - 4rem);min-height:28rem;display:flex;overflow:hidden}.arena-entry-shell .arena-block-modal-data{display:block}@media (max-width:800px){.arena-entry-shell{height:auto;min-height:0}.arena-entry-shell .arena-modal-layout{flex-direction:column;height:auto;display:flex;overflow:visible}.arena-entry-shell .arena-modal-main{min-height:65dvh}.arena-entry-shell .arena-modal-sidebar.collapsed{display:none}}.arena-modal-text-preview{box-sizing:border-box;width:100%;padding:1.5rem;overflow:auto}.arena-entry-permalink{margin-bottom:.75rem;font-size:.75rem;display:inline-block}.arena-channel-row-preview-more{color:var(--gray);margin-top:.25rem;font-size:.85rem;font-style:italic}.arena-channel-page{view-transition-name:arena-channel;margin-bottom:2rem!important}.arena-channel-controls{align-items:center;gap:.375rem;margin:.75rem 0 1rem;display:flex}.arena-channel-controls .arena-search-row{flex:1 1 0;margin:0}.arena-view-toggle{box-sizing:border-box;height:var(--arena-control-height);border:1px solid var(--arena-line);background:var(--light);flex-shrink:0;align-items:center;display:inline-flex;overflow:hidden}.arena-view-toggle-button{box-sizing:border-box;min-width:var(--arena-control-height);height:100%;font-size:.66rem;font-family:var(--codeFont);text-transform:lowercase;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:none;justify-content:center;align-items:center;gap:.25rem;padding:.25rem;transition:background-color .2s,color .2s;display:inline-flex;padding-block:.25rem!important}.arena-view-toggle-button:hover{color:var(--dark)}.arena-view-toggle-button:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.arena-view-toggle-button.active{background:var(--arena-selected);color:var(--dark)}.arena-view-toggle-button+.arena-view-toggle-button{border-left:1px solid var(--arena-line)}.arena-view-toggle-button svg{width:16px;height:16px}.arena-section-header{border:1px solid var(--arena-line);background:var(--arena-surface);border-bottom:0;margin:1.25rem 0 0;padding:.35rem .75rem}.arena-section-header h3{font-family:var(--codeFont);color:var(--darkgray);text-transform:lowercase;margin:0;font-size:.66rem;font-weight:400;line-height:1.5}.arena-section-header:first-of-type{margin-top:0}.arena-channel-section{margin-top:1.25rem}.arena-channel-section>.arena-section-header{box-sizing:border-box;min-height:var(--arena-control-height);color:var(--darkgray);cursor:var(--cursor-pointer,pointer);justify-content:space-between;align-items:center;gap:.5rem;margin:0;list-style:none;display:flex}.arena-channel-section>.arena-section-header::-webkit-details-marker{display:none}.arena-channel-section>.arena-section-header:hover{background:var(--arena-selected)}.arena-channel-section:not([open])>.arena-section-header{border-bottom:1px solid var(--arena-line)}.arena-channel-section .arena-section-chevron{flex-shrink:0}.arena-channel-section[open]>.arena-section-header .arena-section-chevron{transform:rotate(90deg)}.arena-channel-grid{border:1px solid var(--arena-line);border-width:1px 0 0 1px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:0;display:grid}.arena-channel-grid[data-arena-virtual]{overflow-anchor:none;position:relative}.arena-channel-grid.arena-pinned-section[data-view-mode=grid]{border-color:var(--secondary)}.arena-channel-grid[data-view-mode=list]{border:1px solid var(--arena-line);flex-direction:column;grid-template-columns:minmax(0,1fr);display:flex}@media (max-width:800px){.arena-channel-grid{grid-template-columns:minmax(0,1fr)}}.arena-virtual-row{grid-template-columns:inherit;display:grid;position:absolute;inset-inline:0}.arena-later-section .arena-block{background:color-mix(in srgb, var(--light) 92%, var(--lightgray))}.arena-block{box-sizing:border-box;background:var(--light);border:1px solid var(--arena-line);border-radius:var(--radius-none);min-width:0;min-height:80px;cursor:var(--cursor-pointer,pointer);border-width:0 1px 1px 0;flex-direction:column;display:flex;position:relative;overflow:hidden}.arena-block:hover{border-color:var(--gray)}.arena-block.pinned{background:color-mix(in srgb, var(--secondary) 5%, var(--light));border-color:var(--secondary)}.arena-block.pinned:hover{border-color:var(--secondary)}.arena-channel-grid[data-view-mode=list] .arena-block{border-radius:var(--radius-none);border:0;border-bottom:1px solid var(--arena-line);flex-direction:row;align-items:flex-start;gap:.5rem;min-height:auto;padding:.4rem .75rem}.arena-channel-grid[data-view-mode=list] .arena-block.highlighted:not(.pinned){padding-inline-end:2.25rem}.arena-block-placeholder{color:var(--darkgray);font-family:var(--codeFont);cursor:var(--cursor-default,default);padding:.5rem .75rem;font-size:.66rem}.arena-block-placeholder button{color:inherit;font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:0;text-decoration:underline}.arena-channel-grid[data-view-mode=list] .arena-block:hover{transform:none}.arena-block-connections-indicator{width:20px;height:20px;color:var(--tertiary);z-index:var(--z-base);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:.5rem;right:.5rem}.arena-block-connections-indicator svg{width:12px;height:12px}.arena-block-pdf-indicator{width:20px;height:20px;color:var(--tertiary);z-index:var(--z-base);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:.5rem;right:.5rem}.arena-block-pdf-indicator svg{width:12px;height:12px}.arena-block-favorite-indicator{width:20px;height:20px;color:var(--tertiary);z-index:var(--z-base);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;bottom:.5rem;right:.5rem}.arena-block-favorite-indicator svg{width:12px;height:12px}.arena-block-connections-indicator+.arena-block-pdf-indicator{top:2rem}.arena-channel-grid[data-view-mode=list] .arena-block-connections-indicator{order:2;align-self:flex-start;margin-left:auto;position:static}.arena-channel-grid[data-view-mode=list] .arena-block-pdf-indicator{order:3;align-self:flex-start;margin-left:.5rem;position:static}.arena-block-clickable{color:inherit;outline:none;flex-direction:column;flex:1;gap:0;text-decoration:none;display:flex}.arena-block-clickable:hover{color:inherit;background:0 0}.arena-channel-grid[data-view-mode=list] .arena-block-clickable{gap:.25rem}.arena-block-thumbnail{aspect-ratio:16/10;background:var(--lightgray);width:100%;overflow:hidden}.arena-block-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.arena-block-link{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.arena-block-content{overflow-wrap:anywhere;flex:1;padding:.6rem 1.75rem .6rem .75rem;font-size:.85rem;line-height:1.45;display:inline-block}.arena-block-content p{font-size:inherit;line-height:inherit;margin:0}.arena-channel-grid[data-view-mode=list] .arena-block-content{padding:0}.arena-block-title{color:var(--dark);-webkit-line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.4;display:-webkit-box;overflow:hidden}.arena-block-modal-data{box-sizing:border-box;width:100%;height:100%;display:none;position:relative}.arena-block-modal{view-transition-name:arena-modal;contain:layout;z-index:var(--z-modal);width:100vw;height:100vh;display:none;position:fixed;top:0;left:0;overflow:hidden}.arena-block-modal.active{display:flex}.arena-block-modal{width:100vw;height:100dvh;z-index:var(--z-modal);justify-content:center;align-items:center;top:0;left:0}.arena-block-modal.active{background-color:var(--light)}.arena-modal-content{border:1px solid var(--gray);border-radius:var(--radius-none);background-color:var(--light);box-sizing:border-box;border:1px solid var(--arena-line);flex-direction:column;width:calc(100% - 2rem);max-width:90rem;height:calc(100% - 2rem);max-height:none;margin:auto;padding:0;display:flex;position:relative;overflow:hidden}@media (max-width:800px){.arena-modal-content{width:calc(100% - 1rem);height:calc(100% - 1rem)}}.arena-url-copy-button,.arena-modal-next,.arena-modal-prev,.arena-modal-close,.arena-modal-collapse{border-radius:var(--radius-none);width:32px;height:32px;color:var(--darkgray);transition:var(--transition-normal);background:0 0;border:none;justify-content:center;align-items:center}.arena-url-copy-button:hover,.arena-modal-next:hover,.arena-modal-prev:hover,.arena-modal-close:hover,.arena-modal-collapse:hover{background:var(--lightgray);color:var(--dark)}.arena-url-copy-button,.arena-modal-next,.arena-modal-prev,.arena-modal-close,.arena-modal-collapse{cursor:var(--cursor-pointer,pointer);z-index:var(--z-sidenote);box-sizing:border-box;width:var(--arena-control-height);height:var(--arena-control-height);min-height:0;color:var(--darkgray);background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex}.arena-url-copy-button:hover:not(:disabled),.arena-modal-next:hover:not(:disabled),.arena-modal-prev:hover:not(:disabled),.arena-modal-close:hover:not(:disabled),.arena-modal-collapse:hover:not(:disabled){color:var(--dark);background:var(--arena-selected)}.arena-url-copy-button:disabled,.arena-modal-next:disabled,.arena-modal-prev:disabled,.arena-modal-close:disabled,.arena-modal-collapse:disabled{opacity:.4;cursor:var(--cursor-default,default)}.arena-url-copy-button svg,.arena-modal-next svg,.arena-modal-prev svg,.arena-modal-close svg,.arena-modal-collapse svg{width:14px;height:14px}.arena-modal-collapse.active svg{transform:rotate(90deg)}.arena-modal-body{flex-direction:column;flex:1;height:100%;display:flex;position:relative;overflow:hidden}.arena-modal-layout{grid-template-columns:minmax(0,1fr) 20rem;gap:0;height:100%;min-height:0;display:grid;overflow:clip}.arena-modal-layout:has(.arena-modal-sidebar.collapsed){grid-template-columns:1fr 0}@media (max-width:800px){.arena-modal-layout{grid-template-rows:1fr;grid-template-columns:1fr}}.arena-modal-main{flex-direction:column;flex:1;justify-content:stretch;align-items:stretch;gap:.5rem;min-width:0;min-height:0;padding:.75rem;display:flex;overflow:hidden}.arena-modal-main .arena-modal-map-wrapper{border-radius:var(--radius-none);background:var(--lightgray);border:1px solid color-mix(in srgb, var(--dark) 8%, transparent);height:100%;margin:0;overflow:hidden}.arena-modal-main .arena-modal-map{background:var(--lightgray);width:100%;height:100%;color:var(--darkgray);text-align:center;place-items:center;font-size:.85rem;line-height:1.5;display:grid;position:relative}.arena-modal-main .arena-modal-map.arena-map-error{background:color-mix(in srgb, #d14d41 16%, var(--light));color:var(--dark)}@media (max-width:800px){.arena-modal-main{padding:.5rem}.arena-modal-main .arena-modal-map{height:clamp(200px,45vh,300px)}}.arena-modal-main-content{border:1px solid var(--arena-line);border-radius:var(--radius-none);box-sizing:border-box;flex:1;align-items:stretch;width:100%;max-width:100%;min-height:0;font-size:1rem;line-height:1.6;display:flex}:is(.arena-modal-main-content:has(>.twitter-post),.arena-modal-main-content:has(>.twitter-post-unavailable)){overflow:auto}.arena-modal-main-content>.twitter-post-unavailable{margin:1.5rem}.arena-modal-main-content .byline,.arena-modal-main-content .title-col{max-width:none}.arena-modal-main-content .byline{grid-column:6/9}.arena-modal-main-content .byline>.tags{flex-grow:0 0 20%}.arena-modal-main-content .arena-modal-iframe{background:var(--light);border:0;width:100%;height:100%;min-height:0;display:block}.arena-modal-main-content .arena-modal-external-host{justify-content:center;align-items:flex-start;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.arena-modal-main-content .arena-embed-loading{background:var(--light);color:var(--darkgray);font-family:var(--codeFont);pointer-events:none;place-items:center;font-size:.7rem;display:grid;position:absolute;inset:0}.arena-modal-main-content .arena-modal-capture-link{width:auto;max-width:100%;height:auto;max-height:100%;cursor:var(--cursor-pointer,pointer);display:block}.arena-modal-main-content .arena-modal-capture{object-fit:contain;object-position:top center;background:var(--light);width:auto;max-width:100%;height:auto;max-height:100%;display:block}.arena-modal-main-content .arena-modal-iframe-youtube{aspect-ratio:16/9;height:auto}.arena-modal-main-content .arena-modal-embed{border-radius:var(--radius-none);background:var(--light);width:100%;min-height:0;padding:1.5rem;overflow-y:auto}.arena-modal-main-content .arena-modal-embed-twitter{background:0 0;justify-content:center;align-items:flex-start;padding:0;display:flex}.arena-modal-main-content .arena-modal-embed-twitter blockquote.twitter-tweet{width:100%;max-width:min(550px,100%);margin:0 auto}.arena-modal-main-content .arena-modal-embed-substack{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.arena-modal-main-content .arena-modal-embed-substack .substack-post-embed{width:100%}.arena-modal-main-content .arena-modal-embed-substack .arena-loading-spinner{border-radius:var(--radius-circle);border:2px solid var(--lightgray);border-top-color:var(--secondary);width:1.75rem;height:1.75rem;animation:.75s linear infinite arena-spinner-rotate;display:inline-block}.arena-modal-main-content .arena-modal-embed-substack p{margin:0 0 .75rem}.arena-modal-main-content .arena-modal-embed-substack a[data-post-link]{color:inherit;font-weight:600;text-decoration:underline}.arena-modal-main-content .arena-modal-internal-host{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.arena-modal-main-content .arena-modal-internal-host .byline{grid-column:6/9!important}.arena-modal-main-content .arena-modal-internal-preview{border-radius:var(--radius-none);background:var(--light);gap:1rem;padding:1.5rem;overflow:hidden auto}.arena-modal-main-content .arena-modal-internal-preview::-webkit-scrollbar{width:8px;display:none}.arena-modal-main-content .arena-modal-internal-preview::-webkit-scrollbar-track{background:var(--lightgray)}.arena-modal-main-content .arena-modal-internal-preview::-webkit-scrollbar-thumb{background:var(--gray);border-radius:var(--radius-none)}.arena-modal-main-content .arena-modal-internal-preview::-webkit-scrollbar-thumb:hover{background:var(--darkgray)}.arena-modal-main-content .arena-modal-embed-pdf .pdf-embed-toolbar{--pdf-instrument-height:var(--arena-control-height);--pdf-instrument-font:.66rem;gap:.5rem;padding:.25rem .5rem}@media (pointer:coarse){.arena-modal-main-content .arena-modal-embed-pdf .pdf-embed-toolbar{--pdf-instrument-font:max(1rem, 16px)}}.arena-modal-main-content .arena-modal-embed-pdf{gap:0;width:100%;height:100%;min-height:0;margin:0;padding:0;overflow:hidden}.arena-modal-sidebar{border-left:1px solid var(--arena-line);flex-direction:column;gap:1rem;min-width:0;padding:.75rem;display:flex;overflow-y:auto}@media (max-width:800px){.arena-modal-sidebar{border-left:none;border-top:1px solid var(--lightgray);padding:.75rem}}.arena-modal-sidebar.collapsed{visibility:hidden;opacity:0;pointer-events:none}.arena-modal-info{margin-top:0}.arena-modal-info h3{color:var(--dark);margin:0 0 .75rem;font-size:1rem;font-weight:600}.arena-modal-meta{border:0 solid var(--arena-line);border-top-width:1px;border-bottom-width:1px;flex-direction:column;gap:.4rem;display:flex}.arena-meta-item{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:baseline;gap:.15rem .75rem;display:grid}.arena-meta-item:first-of-type{padding-top:4px}.arena-meta-item:last-of-type{padding-bottom:4px}.arena-meta-label{font-size:.66rem;font-family:var(--codeFont);color:var(--darkgray)}.arena-meta-value{color:var(--dark);overflow-wrap:anywhere;justify-self:end;align-items:center;gap:.25rem;font-size:.75rem;font-style:normal;display:inline-flex}.arena-meta-value time{font-style:inherit;color:inherit}.arena-meta-taglist{flex-wrap:wrap;gap:.25rem;display:flex}.arena-meta-socials{flex-wrap:wrap;gap:.5rem;display:flex}.arena-meta-socials address{margin:0;font-style:normal}.arena-meta-socials a{color:var(--gray);text-decoration:underline}.arena-meta-importance{font-variant-numeric:tabular-nums;color:var(--gray)}span.tag-link{border:1px solid var(--gray);border-radius:var(--radius-none);color:inherit;margin:0 .1em;padding:.1em .4em;font-size:.9em;font-style:normal;line-height:1.4;text-decoration:none;transition:border-color .2s,color .2s}.arena-block-meta{display:none}.arena-block-meta-item{align-items:center;gap:.25rem;display:inline-flex}.arena-block-meta-icon{width:14px;height:14px}.arena-block-meta-tags{flex-wrap:wrap;gap:.25rem;display:inline-flex}.arena-channel-grid[data-view-mode=list] .arena-block-meta{font-size:.66rem;font-family:var(--codeFont);font-variant-numeric:tabular-nums;color:var(--darkgray);flex-wrap:wrap;gap:.5rem;display:flex}span.tag-link:hover{border-color:var(--secondary);color:var(--secondary)}.arena-modal-title{color:var(--dark);margin:0 0 .75rem;font-size:1rem;font-weight:600;line-height:1.4}.arena-modal-nav{border-bottom:1px solid var(--arena-line);background:var(--arena-surface);flex:none;justify-content:flex-end;align-items:center;display:flex}.arena-modal-nav>:is(button,a){border-left:1px solid var(--arena-line)}.arena-modal-url-bar{background:var(--arena-surface);border:1px solid var(--arena-line);box-sizing:border-box;flex:none;align-items:center;gap:.35rem;min-width:0;max-width:100%;padding:0 .35rem 0 0;display:flex}.arena-url-copy-button{cursor:var(--cursor-pointer,pointer);border-radius:var(--radius-none);flex-shrink:0;justify-content:center;align-items:center;padding:.25rem;transition:background-color .2s;display:flex}.arena-url-copy-button:hover{background-color:var(--gray)}.arena-url-copy-button .copy-icon{display:block}.arena-url-copy-button .check-icon{fill:#3fb950;display:none}.arena-url-copy-button.check .copy-icon{display:none}.arena-url-copy-button.check .check-icon{display:block}.arena-modal-link{width:100%;color:var(--dark);font-size:.75rem;font-family:var(--codeFont);outline:none;justify-content:space-between;align-items:center;gap:.5rem;text-decoration:none;display:flex;overflow:hidden}.arena-modal-link:hover{color:var(--dark);background:0 0}.arena-modal-link:hover .arena-modal-link-text{text-decoration:underline}.arena-modal-link svg{color:var(--darkgray);flex-shrink:0}.arena-modal-link-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.arena-modal-connections .arena-modal-connections-header{border-bottom:1px solid var(--lightgray);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.arena-modal-connections .arena-modal-connections-title{-webkit-text-decoration:italic;text-decoration:italic;color:var(--darkgray);font-size:14px}.arena-modal-connections .arena-modal-connections-count{color:var(--gray);font-size:14px}.arena-modal-connections-list{margin:0;padding:0;list-style:none}.arena-modal-connections-list>li{line-height:1.5}.arena-modal-connections-list>li:last-child{border-bottom:none}.arena-modal-connections-list>li a{color:var(--secondary);text-decoration:none}.arena-modal-connections-list>li a:hover{text-decoration:underline}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-header{border-bottom:1px solid var(--lightgray);align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-header .arena-modal-wikilink-icon{color:var(--secondary);flex-shrink:0}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-header .arena-modal-wikilink-trail-title{color:var(--darkgray);font-size:14px;font-style:italic}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-link{padding:.5rem 0;font-size:.9rem;line-height:1.5}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-link .arena-wikilink-trail-anchor{color:var(--secondary);text-decoration:none;transition:color .2s}.arena-modal-wikilink-trail .arena-modal-wikilink-trail-link .arena-wikilink-trail-anchor:hover{color:var(--tertiary);text-decoration:underline}.arena-search-row{align-items:center;gap:.375rem;min-width:0;margin:.75rem 0 1rem;display:flex}.arena-search-row .arena-search{flex:1 1 0;min-width:0}.arena-reader-toggle{box-sizing:border-box;flex:0 0 var(--arena-control-height);width:var(--arena-control-height);height:var(--arena-control-height);border:1px solid var(--arena-line);border-radius:var(--radius-none);background:var(--light);color:var(--darkgray);justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.arena-reader-toggle svg{width:16px;height:16px}.arena-reader-toggle:hover{background:var(--light);color:var(--dark);border-color:var(--secondary)}.arena-reader-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.arena-search{width:100%;position:relative}.arena-search .arena-search-input{width:100%;height:var(--arena-control-height);box-sizing:border-box;border:1px solid var(--arena-line);border-radius:var(--radius-none);font-size:.7rem;font-family:var(--codeFont);background:var(--light);color:var(--dark);padding:.25rem 2rem .25rem .5rem;transition:border-color .2s;display:block}.arena-search .arena-search-input:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.arena-search .arena-search-input::placeholder{color:var(--darkgray)}.arena-search .arena-search-icon{width:14px;height:14px;color:var(--gray);pointer-events:none;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.arena-search #arena-search-container{box-sizing:border-box;background-color:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);width:100%;max-height:50vh;z-index:var(--z-dropdown);margin-top:.5rem;display:none;position:absolute;overflow-y:auto}.arena-search #arena-search-container.active{display:block}.arena-search-result-item{border-bottom:1px solid var(--lightgray);cursor:var(--cursor-pointer,pointer);padding:.4rem .75rem}.arena-search-result-item:hover .arena-search-result-title,.arena-search-result-item.active .arena-search-result-title,.arena-search-result-item:focus-visible .arena-search-result-title{text-underline-offset:.15em;text-decoration:underline}.arena-search-result-item:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.arena-search-result-item:last-child{margin-bottom:0}.arena-search-result-title{color:var(--dark);margin-bottom:.25rem;font-size:.85rem;font-weight:600}.arena-search-result-tags{margin-top:.5rem 0 0;flex-flow:wrap;gap:.375rem;padding:0;list-style:none;display:flex}.arena-search-result-tag-badge{border:1px solid var(--gray);color:inherit;border-radius:var(--radius-none);margin:0 .1em;padding:.1em .4em;font-size:.9em;font-style:normal;line-height:1.4;text-decoration:none;display:inline-block}.arena-search-result-channel-badge{color:var(--gray);background:var(--lightgray);border-radius:var(--radius-none);margin-top:.5rem;padding:.25rem .5rem;font-size:.75rem;display:inline-block}.arena-search-no-results{text-align:center;color:var(--gray);padding:3rem 1.5rem;font-size:.95rem}.arena-iframe-error{background:var(--light);border-radius:var(--radius-none);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.arena-iframe-error-content{text-align:center;font-family:var(--codeFont);padding:1rem;font-size:.7rem}.arena-iframe-error-content p{color:var(--darkgray);margin:0 0 .75rem}.arena-iframe-error-content button,.arena-iframe-error-content .arena-iframe-error-link{box-sizing:border-box;min-height:var(--arena-control-height);border:1px solid var(--arena-line);color:var(--darkgray);font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border-radius:0;align-items:center;margin-inline:.2rem;padding:.2rem .5rem;display:inline-flex}.arena-iframe-error-content button:hover,.arena-iframe-error-content .arena-iframe-error-link:hover{background:var(--arena-surface);color:var(--dark)}@media (pointer:coarse){.arena-search .arena-search-input{font-size:1rem}.arena-channel-row-preview-item{box-sizing:border-box;min-height:44px}}.arena-entry-home,.arena-entry-copy{box-sizing:border-box;width:var(--arena-control-height);height:var(--arena-control-height);min-height:0;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:color .1s,background-color .1s;display:flex}.arena-entry-home:focus-visible,.arena-entry-copy:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.arena-entry-home:hover,.arena-entry-copy:hover{color:var(--dark);background:var(--arena-selected)}}.arena-entry-home svg,.arena-entry-copy svg{width:14px;height:14px}.arena-entry-copy .check-icon,.arena-entry-copy.check .copy-icon{display:none}.arena-entry-copy.check .check-icon{display:block}body[data-slug=arena\/feed]{overflow:hidden}body[data-slug=arena\/feed] .page-content{min-width:0;margin-bottom:0;display:block}body[data-slug=arena\/feed] #quartz-root{margin:0}body[data-slug=arena\/feed] .page-header,body[data-slug=arena\/feed] .page-footer,body[data-slug=arena\/feed] .byline,body[data-slug=arena\/feed] .title-col,body[data-slug=arena\/feed] .sidenotes{display:none}body[data-slug=arena\/feed] .page-body-grid{display:block}.arena-feed{grid-column:1/-1;width:100%;min-width:0;max-width:100%;margin:0;padding:0}.arena-feed-mount{height:100dvh;overflow:hidden}.arena-reader{--arena-line:var(--ledger-line);--arena-surface:var(--ledger-surface);--arena-selected:var(--ledger-selected);--arena-muted:var(--darkgray);--arena-width:52rem;--arena-gutter:max(1rem, env(safe-area-inset-left), env(safe-area-inset-right));--arena-control-height:1.5rem;box-sizing:border-box;color:var(--darkgray);width:100%;max-width:var(--arena-width);border-inline:1px solid var(--arena-line);text-align:start;flex-direction:column;height:100%;min-height:0;margin-inline:auto;display:flex;overflow:clip}.arena-reader *,.arena-reader :before,.arena-reader :after{box-sizing:border-box}.arena-reader button,.arena-reader select,.arena-reader input,.arena-reader textarea{font:inherit;color:inherit}.arena-reader button,.arena-reader select{min-height:var(--arena-control-height);border:1px solid var(--arena-line);border-radius:var(--radius-none);font-family:var(--codeFont);font-variant-numeric:tabular-nums;background:0 0;padding:.22rem .7rem;font-size:.66rem;line-height:1.3}.arena-reader button{appearance:none;text-align:center;cursor:var(--cursor-pointer,pointer);touch-action:manipulation;justify-content:center;align-items:center}.arena-reader button[aria-pressed=true],.arena-reader button[aria-current=page],.arena-reader button[aria-expanded=true]{color:var(--dark);background:var(--arena-selected);border-color:var(--gray)}.arena-reader button:disabled{opacity:.5;cursor:var(--cursor-default,default)}@media (hover:hover) and (pointer:fine){.arena-reader button:hover:not(:disabled,.arena-reader-header>button,[aria-pressed=true],[aria-selected=true],[aria-current=page],[aria-expanded=true]){color:var(--dark);background:var(--arena-surface);border-color:var(--gray)}}@media (pointer:coarse){.arena-reader{--arena-control-height:44px}}.arena-reader :where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.arena-reader input,.arena-reader textarea{background:var(--light);border:1px solid var(--arena-line);border-radius:var(--radius-none);width:100%;padding:.75rem;font-size:1rem}.arena-reader h1,.arena-reader h2,.arena-reader h3{color:var(--dark);text-align:start;text-wrap:balance}.arena-reader :where(header){padding:0;display:block}.arena-reader :where(header)>:nth-last-child(2){margin-left:0}.arena-reader-header{min-height:calc(var(--arena-control-height) + .5rem + 1px);padding:.25rem var(--arena-gutter);border-bottom:1px solid var(--arena-line);font-family:var(--codeFont);flex:none;justify-content:space-between;align-items:center;gap:1rem;font-size:.66rem;display:flex}.arena-reader-header>button{border:0;flex-shrink:0;justify-content:flex-end}.arena-reader-header a{color:var(--dark)}.arena-reader-header a:hover{color:var(--dark);background:0 0;text-decoration:underline}.arena-reader .arena-reader-icon-button{width:var(--arena-control-height);height:var(--arena-control-height);flex:none;padding:0;display:inline-flex}.arena-reader .arena-reader-icon-button svg{flex:none;width:1rem;height:1rem;display:block}.arena-reader-layout{flex:1;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:clip}.arena-reader-main{width:100%;min-width:0;min-height:0;padding:1.75rem var(--arena-gutter) 2rem;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--arena-line) transparent;grid-area:1/1/3;margin:0 auto;overflow-y:auto}.arena-reader-main:has(>.arena-reader-pdf){padding-bottom:var(--arena-gutter);flex-direction:column;display:flex}.arena-reader-main:has(>.arena-reader-pdf)>:not(.arena-reader-pdf){flex-shrink:0}.arena-reader-article-header{border-bottom:1px solid var(--arena-line);margin-bottom:1rem;padding-bottom:1rem}.arena-reader-article-header h1{overflow-wrap:anywhere;margin:.65rem 0 .85rem;font-size:clamp(1.6rem,3.5vw,2.25rem);line-height:1.18}.arena-reader-eyebrow,.arena-reader-status,.arena-reader-source,.arena-reader-queue-meta,.arena-note-card-meta,.arena-note-save-status{color:var(--arena-muted);font-family:var(--codeFont);font-variant-numeric:tabular-nums;font-size:.72rem;line-height:1.5}.arena-reader-eyebrow{font-family:var(--codeFont);margin:0}.arena-reader-loading{border:1px solid var(--arena-line);text-align:start;margin:0;padding:.75rem 1rem}.arena-reader-source,.arena-notes-toolbar,.arena-reader-queue-controls,.arena-note-card-meta{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.arena-reader-quality{color:var(--arena-muted);font-family:var(--codeFont);margin:0 0 1.25rem;font-size:.66rem;line-height:1.3}.arena-reader-prose{overflow-wrap:break-word;font-size:1rem;line-height:1.65;container:arena-prose/inline-size}.arena-reader-prose :where(p,li,blockquote){text-align:start}.arena-reader-prose>:first-child{margin-top:0}.arena-reader-prose :where(img,video,svg){max-width:100%;height:auto}.arena-reader-prose img{width:auto}.arena-reader-prose :where(pre,table){max-width:100%;overflow-x:auto}.arena-reader-prose table{border-collapse:collapse;width:100%;font-size:.85rem;line-height:1.5;display:block}.arena-reader-prose th,.arena-reader-prose td{vertical-align:top;text-align:start;border:1px solid var(--arena-line);padding:.5rem .65rem}.arena-reader-prose :where(h1,h2,h3,h4){clear:both;scroll-margin-top:1rem;line-height:1.3}.arena-reader-prose blockquote{border:0;border-block:1px solid var(--arena-line);background:var(--arena-surface);color:var(--darkgray);margin:1.25rem 0;padding:.85rem 1rem}.arena-reader-prose figure{margin:1.5rem 0}.arena-reader-prose figcaption{color:var(--arena-muted);font-size:.85rem;display:block}.arena-reader-prose .arena-figure{width:var(--arena-figure-width,250px);max-width:100%;margin:1.25rem auto}.arena-reader-prose .arena-figure img{width:100%;margin:0;display:block}.arena-reader-prose .arena-figure figcaption{margin-top:.5rem;line-height:1.45}.arena-reader-prose .arena-figure-group{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.arena-reader-prose .arena-figure-group>.arena-figure{float:none;width:100%;max-width:100%;margin:0}@container arena-prose (min-width:40rem){.arena-reader-prose .arena-figure-right{float:right;max-width:50%;margin:.25rem 0 1rem 1.5rem}.arena-reader-prose .arena-figure-left{float:left;max-width:50%;margin:.25rem 1.5rem 1rem 0}}@container arena-prose (max-width:25rem){.arena-reader-prose .arena-figure-group{grid-template-columns:minmax(0,1fr)}.arena-reader-prose .arena-figure-group>.arena-figure{width:var(--arena-figure-width,250px);margin-inline:auto}}.arena-reader-prose a{overflow-wrap:anywhere}.arena-reader-prose .arena-callout{border:1px solid var(--arena-line);margin-block:1.25rem;padding:.85rem 1rem}.arena-reader-prose .arena-callout>:last-child{margin-bottom:0}.arena-reader-prose .arena-callout-title{border-bottom:1px solid var(--arena-line);margin-bottom:.85rem;padding-bottom:.65rem;font-weight:600}.arena-reader-prose .arena-callout-content>:first-child{margin-top:0}.arena-reader-prose .arena-callout-content>:last-child{margin-bottom:0}.arena-reader-prose math[display=block]{max-width:100%;margin-block:1.25rem;padding-block:.25rem;overflow-x:auto}.arena-reader-prose .katex-display{max-width:100%;margin-block:1.25rem;padding-block:.25rem;overflow:auto hidden}.arena-reader-code pre>code{overflow-wrap:normal;tab-size:4;width:max-content;min-width:100%;overflow:visible}.arena-reader-media iframe{aspect-ratio:16/9;border:0;width:100%}.arena-reader-pdf{flex:1;min-height:0;display:flex}.arena-reader-pdf .pdf-embed{flex:1;width:100%;height:auto;min-height:0;margin:0}.arena-reader-pdf .pdf-embed-toolbar{--pdf-instrument-height:var(--arena-control-height);--pdf-instrument-font:.66rem;gap:.5rem;padding:.25rem .5rem}@media (pointer:coarse){.arena-reader-pdf .pdf-embed-toolbar{--pdf-instrument-font:max(1rem, 16px)}}.arena-reader-saved-context{border-top:1px solid var(--arena-line);margin-top:2rem;padding-top:1rem;font-size:.9rem}.arena-reader-saved-context summary{cursor:var(--cursor-pointer,pointer);min-height:44px}.arena-reader-saved-context section+section{margin-top:1rem}.arena-reader-empty{max-width:38rem;margin:2rem auto;padding:1.5rem 1rem;overflow-y:auto}.arena-reader-empty h1{font-size:1.8rem}.arena-reader-empty a,.arena-reader-empty button{margin-right:.75rem}.arena-reader-notice{padding:.75rem var(--arena-gutter);border:1px solid var(--arena-line);background:var(--arena-surface);flex:none;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;font-size:.85rem;display:flex}.arena-reader-notice span{min-width:0}.arena-reader-notice button{flex-shrink:0}.arena-reader-footer{min-width:0;padding-block:.75rem calc(.75rem + env(safe-area-inset-bottom));border-top:1px solid var(--arena-line);background:var(--light);grid-area:3/1;align-items:center;display:flex}.arena-reader-bottom-bar{background:var(--light);border:1px solid var(--arena-line);gap:0;width:max-content;max-width:calc(100% - 2rem);margin-inline:auto;padding:0;display:flex}.arena-reader-bottom-bar button,.arena-reader-bottom-bar a{white-space:nowrap;border:0;flex:0 auto;min-width:0;padding-inline:.4rem}.arena-reader-bottom-bar button+:is(button,a),.arena-reader-bottom-bar a+:is(button,a){border-inline-start:1px solid var(--arena-line)}.arena-reader .arena-reader-bottom-bar button:hover:not(:disabled),.arena-reader .arena-reader-bottom-bar button[aria-expanded=true]{border-color:var(--arena-line)}.arena-reader-bottom-bar a{color:inherit;background:0 0;justify-content:center;align-items:center;text-decoration:none}@media (hover:hover) and (pointer:fine){.arena-reader-bottom-bar a:hover{color:var(--dark);background:var(--arena-surface)}}.arena-reader-counter{color:var(--arena-muted);font-variant-numeric:tabular-nums;margin-left:.35rem;font-size:.62rem;display:inline-block}.arena-reader-panel{--arena-panel-offset:0, 1.5rem;inset:auto 0 var(--arena-keyboard-inset,0px);width:100%;max-width:none;height:min(70dvh, var(--arena-visible-height,100dvh) - 1rem);max-height:calc(var(--arena-visible-height,100dvh) - .5rem);color:var(--darkgray);border:1px solid var(--arena-line);border-radius:var(--radius-none);background:var(--light);opacity:0;transform:translate(var(--arena-panel-offset));transition:opacity .22s cubic-bezier(.23, 1, .32, 1), transform .22s cubic-bezier(.23, 1, .32, 1), display .22s allow-discrete, overlay .22s allow-discrete;border-bottom:0;margin:0;padding:0;position:fixed;overflow:hidden}.arena-reader-panel[open]{opacity:1;transform:translate(0)}@starting-style{.arena-reader-panel[open]{opacity:0;transform:translate(var(--arena-panel-offset))}}.arena-reader-panel::backdrop{transition:background-color .22s cubic-bezier(.23, 1, .32, 1), display .22s allow-discrete, overlay .22s allow-discrete;background:0 0}.arena-reader-panel[open]::backdrop{background:#0000004d}@starting-style{.arena-reader-panel[open]::backdrop{background:0 0}}.arena-reader-panel[data-editing=true]{height:calc(var(--arena-visible-height,100dvh) - .5rem)}.arena-reader-panel:not([open]){pointer-events:none;display:none}.arena-reader-panel-inner{height:100%;min-height:0;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.arena-reader-panel-inner:has(>.arena-reader-footer){padding-bottom:0}.arena-reader-panel-inner>.arena-reader-footer{flex:none;margin-top:auto}.arena-reader-drawer-handle{touch-action:none;cursor:var(--cursor-grab,grab);flex:0 0 22px}.arena-reader-drawer-handle:before{content:"";background:var(--gray);width:2.5rem;height:2px;margin:9px auto;display:block}.arena-reader-queue{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.arena-reader-queue-entries,.arena-notes-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--arena-line) transparent;min-height:0;overflow-y:auto}.arena-reader-queue-entries{padding-inline:var(--arena-gutter);scrollbar-gutter:stable;flex:1;scroll-padding-block:.5rem}.arena-reader .arena-reader-queue-footer{padding:.5rem var(--arena-gutter);border-top:1px solid var(--arena-line);background:var(--light);flex:none;gap:.35rem;display:grid}.arena-reader .arena-reader-queue-footer .arena-reader-filter-menu{inset:auto auto calc(100% + .2rem) 0}.arena-reader .arena-reader-queue-footer .arena-reader-filter-trigger svg{transform:rotate(180deg)}.arena-reader .arena-reader-queue-footer .arena-reader-filter-trigger[aria-expanded=true] svg{transform:none}.arena-notes-list{padding:var(--arena-gutter)}.arena-reader-queue-controls{font-family:var(--codeFont);flex-wrap:nowrap;flex:none;gap:.35rem;font-size:.62rem}.arena-reader .arena-reader-search-input{min-width:0;min-height:var(--arena-control-height);height:var(--arena-control-height);font-family:var(--codeFont);background:var(--arena-surface);flex:1;padding:.25rem .5rem;font-size:.7rem}.arena-reader .arena-reader-search-input::placeholder{color:var(--arena-muted);font-size:.7rem}@media (pointer:coarse){.arena-reader .arena-reader-search-input{font-size:1rem}}.arena-reader-filter{align-items:center;gap:.4rem;display:flex}.arena-reader-filter-picker{position:relative}.arena-reader .arena-reader-filter-trigger{justify-content:space-between;gap:.6rem;padding-inline:.4rem;font-size:.62rem;display:flex}.arena-reader .arena-reader-filter-trigger svg{flex:none;width:.7rem;height:.7rem}.arena-reader .arena-reader-filter-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.arena-reader-filter-menu{z-index:var(--z-popover);background:var(--light);border:1px solid var(--arena-line);width:max-content;min-width:100%;padding:.2rem;position:absolute;inset:calc(100% + .2rem) auto auto 0}.arena-reader-filter-menu:not([hidden]){display:grid}.arena-reader-filter-menu button{text-align:left;border:0;grid-template-columns:.75rem minmax(0,1fr);gap:.35rem;width:100%;padding:.3rem .4rem;font-size:.62rem;display:grid}.arena-reader-filter-menu button[aria-selected=true]{color:var(--dark);background:var(--arena-selected)}.arena-reader-filter-check{visibility:hidden;width:.75rem;height:.75rem}[aria-selected=true]>.arena-reader-filter-check{visibility:visible}.arena-reader-queue ol{border-inline:1px solid var(--arena-line);margin:0;padding:0;list-style:none}.arena-reader-queue ol li{border-bottom:1px solid var(--arena-line);margin:0;padding:0}.arena-reader-queue ol[data-fills-viewport=true] li:last-child:not(:first-child){border-bottom-color:#0000}.arena-reader-queue ol button{text-align:left;border:0;border-radius:0;width:100%;padding:.35rem .5rem;display:block}.arena-reader-queue-title,.arena-reader-queue-meta{display:block}::highlight(arena-reader-notes){background-color:var(--text-highlight-bg)}.arena-reader-queue-title{font-family:var(--bodyFont);font-variant-numeric:normal;overflow-wrap:anywhere;margin-bottom:.15rem;font-size:.8rem;line-height:1.3}.arena-reader-queue-meta{font-size:.6rem;line-height:1.35}.arena-notes-editor{min-height:0;padding:var(--arena-gutter);flex-direction:column;flex:1;gap:.65rem;display:flex;overflow-y:auto}.arena-notes-editor .arena-notes-toolbar{flex-shrink:0;justify-content:space-between;font-size:.8rem}.arena-notes-article-title{flex-shrink:0;margin:0;font-size:.85rem;font-weight:600;line-height:1.4}.arena-note-input,.arena-note-preview{resize:none;overscroll-behavior:contain;flex:1 0 10rem;min-height:10rem;font-size:.85rem;line-height:1.6;overflow-y:auto}@media (pointer:coarse){.arena-note-input{font-size:1rem}}.arena-note-preview{border:1px solid var(--arena-line);border-radius:var(--radius-none);overflow-wrap:anywhere;padding:.75rem}.arena-note-quote,.arena-note-card blockquote{border:0;border-block:1px solid var(--arena-line);background:var(--arena-surface);flex-shrink:0;max-height:8rem;margin:0;padding:.75rem;font-size:.85rem;line-height:1.5;overflow-y:auto}.arena-note-quote p,.arena-note-card blockquote p{margin:0}.arena-note-actions{border:1px solid var(--arena-line);flex-shrink:0;width:100%;display:flex}.arena-note-actions>button{white-space:nowrap;border:0;flex:auto;min-width:0}.arena-note-actions>button+button{border-inline-start:1px solid var(--arena-line)}.arena-notes-header{align-items:center;gap:.75rem;display:flex}.arena-notes-header .arena-reader-status{overflow-wrap:anywhere;flex:1;min-width:0;margin:0}.arena-note-add{white-space:nowrap;flex-shrink:0}.arena-reader-empty-hint{color:var(--arena-muted);padding:1rem 0;font-size:.9rem;line-height:1.6}.arena-note-card{border:1px solid var(--arena-line);margin-top:.75rem;padding:.85rem}.arena-note-card>button{padding-inline:.5rem;font-size:.66rem}.arena-note-card .arena-note-article-link{text-align:left;border:0;width:100%;margin-bottom:.5rem;padding:.5rem 0;font-size:1rem;font-weight:600;display:block}.arena-note-card-meta{border-bottom:1px solid var(--arena-line);justify-content:space-between;margin-bottom:.75rem;padding-bottom:.65rem}.arena-note-card-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem;line-height:1.5}.arena-note-save-status.conflict,.arena-note-save-status.sync-failed,.arena-note-save-status.unsaved{color:var(--tertiary)}.arena-note-conflict{border:1px solid var(--tertiary);flex-shrink:0;padding:.75rem;font-size:.85rem}.arena-note-conflict p{white-space:pre-wrap}.arena-note-delete{border:1px solid var(--arena-line);border-radius:var(--radius-none);background:var(--light);width:18rem;max-width:calc(100vw - 1rem);color:var(--dark);margin:0;padding:.75rem;font-size:.8rem;position:fixed;inset:auto}.arena-note-delete h3{font-family:var(--bodyFont);font-size:inherit;margin:0;font-weight:600;line-height:1.4}.arena-note-delete p{color:var(--arena-muted);margin:.4rem 0 .75rem;line-height:1.4}.arena-note-delete-actions{justify-content:flex-end;display:flex}.arena-note-delete-actions>button+button{color:var(--dark);margin-inline-start:-1px}.arena-reader-inbox>header h1{margin:0 0 1.25rem;font-size:1.5rem;line-height:1.2}.arena-reader-inbox .arena-notes-list,.arena-reader-inbox .arena-notes-editor{padding:0;overflow:visible}.arena-reader-inbox .arena-notes-editor{min-height:70dvh}.arena-notes-controls{border-bottom:1px solid var(--arena-line);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:1rem;display:flex}.arena-notes-controls .arena-reader-filter{color:var(--arena-muted);font-family:var(--codeFont);gap:.5rem;font-size:.66rem;line-height:1.3}.arena-notes-controls .arena-reader-filter-trigger{min-width:9rem;font-size:inherit;padding-inline:.5rem}.arena-notes-controls .arena-reader-filter-menu{left:auto;right:0}.arena-notes-controls .arena-reader-filter-menu button{font-size:inherit}.arena-reader .arena-notes-export{gap:.4rem;padding-inline:.5rem;display:inline-flex}.arena-reader .arena-notes-export svg{flex:none;width:.85rem;height:.85rem}@media (max-width:800px) and (pointer:coarse){.arena-reader-footer{padding-block:.5rem calc(.5rem + env(safe-area-inset-bottom))}.arena-reader-bottom-bar{--arena-control-height:2rem}.arena-reader-bottom-bar button,.arena-reader-bottom-bar a{padding-inline:.3rem}}@media (min-width:68rem){.arena-reader{--arena-gutter:2rem;transition:max-width .22s cubic-bezier(.23,1,.32,1)}.arena-reader[data-panel=queue],.arena-reader[data-panel=notes]{--arena-width:76rem}.arena-reader-main{grid-row:1;padding-block:2rem 3rem}.arena-reader-footer{grid-row:2}.arena-reader-layout{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) 0;align-items:stretch;transition:grid-template-columns .22s cubic-bezier(.23,1,.32,1)}.arena-reader[data-panel=queue] .arena-reader-layout,.arena-reader[data-panel=notes] .arena-reader-layout{grid-template-columns:minmax(0,1fr) 24rem}.arena-reader-panel{--arena-panel-offset:1rem, 0;border:0;border-inline-start:1px solid var(--arena-line);border-radius:var(--radius-none);grid-area:1/2/-1;align-self:stretch;width:24rem;height:100%;min-height:0;max-height:100%;margin:0;position:relative;inset:auto}.arena-reader-panel[data-editing=true]{height:100%}.arena-reader-panel[data-panel=queue]{grid-template-rows:subgrid}.arena-reader-panel[data-panel=queue][open]{display:grid}.arena-reader-panel[data-panel=queue] .arena-reader-panel-inner,.arena-reader-panel[data-panel=queue] .arena-reader-queue{grid-template-rows:subgrid;display:grid}.arena-reader-panel[data-panel=queue] .arena-reader-panel-inner{grid-row:1/-1;padding-bottom:0}.arena-reader-panel[data-panel=queue] .arena-reader-queue{grid-row:1/-1}.arena-reader-panel[data-panel=queue] .arena-reader-queue-entries{grid-area:1/1}.arena-reader-panel[data-panel=queue] .arena-reader-queue-footer{padding:.75rem var(--arena-gutter);grid-area:2/1}.arena-reader-drawer-handle{display:none}}@media (prefers-reduced-motion:reduce){.arena-reader,.arena-reader *,.arena-reader :before,.arena-reader :after,.arena-reader-panel::backdrop{scroll-behavior:auto;transition:none;animation:none}}body[data-pdf-reader=true]{overflow:hidden}body[data-pdf-reader=true] #quartz-root{margin:0}body[data-pdf-reader=true] .page-body-grid,body[data-pdf-reader=true] .page-content{flex-direction:column;min-width:0;min-height:0;margin-bottom:0;display:flex}body[data-pdf-reader=true] .page-content{flex:auto}@media (min-width:800px) and (max-width:1400px),(min-width:1400px){body[data-pdf-reader=true] #quartz-root>.header{height:0;min-height:0;overflow:hidden}}body[data-pdf-reader=true] .page-header{flex:none}body[data-pdf-reader=true] .page-footer,body[data-pdf-reader=true] .byline,body[data-pdf-reader=true] .title-col,body[data-pdf-reader=true] .sidenotes{display:none}.pdf-reader{flex-direction:column;flex:auto;grid-column:1/-1;width:100%;min-width:0;max-width:100%;min-height:0;margin:0;padding:0;display:flex}body[data-pdf-embedded=course] #quartz-root>.header,body[data-pdf-embedded=course] .pdf-reader-title,body[data-pdf-embedded=course] .pdf-reader-meta{display:none}body[data-pdf-embedded=course] .pdf-reader-app{--pdf-gutter:var(--space-3);position:relative}body[data-pdf-embedded=course] .pdf-reader-app[data-phase=loading]>.pdf-reader-bar,body[data-pdf-embedded=course] .pdf-reader-app[data-phase=loading]>.pdf-reader-body{visibility:hidden}body[data-pdf-embedded=course] .pdf-reader-controls{margin-inline-start:0}body[data-pdf-embedded=course] .pdf-reader-mount>.pdf-reader-status,body[data-pdf-embedded=course] .pdf-reader-loading{box-sizing:border-box;height:100%;padding:var(--space-3);color:var(--dark);font:var(--text-ui)/1.6 var(--bodyFont);text-align:center;place-content:center;margin:0;display:grid}body[data-pdf-embedded=course] .pdf-reader-mount>.pdf-reader-status p,body[data-pdf-embedded=course] .pdf-reader-loading p{color:inherit;font:inherit;margin:0}body[data-pdf-embedded=course] .pdf-reader-loading{position:absolute;inset:0}.pdf-reader-mount{flex:auto;min-height:0;overflow:hidden}.pdf-reader-mount>.pdf-reader-status{padding:2rem}.pdf-reader-app,.pdf-reader-library{--pdf-line:color-mix(in srgb, var(--gray) 55%, transparent);--pdf-surface:color-mix(in srgb, var(--light) 90%, var(--lightgray));--pdf-selected:color-mix(in srgb, var(--secondary) 18%, var(--pdf-surface));--pdf-gutter:max(1rem, env(safe-area-inset-left), env(safe-area-inset-right));--pdf-control-height:1.5rem;--pdf-side-width:clamp(16rem, 24vw, 22rem);--pdf-strip-width:.875rem;box-sizing:border-box;color:var(--darkgray);text-align:start}.pdf-reader-app *,.pdf-reader-app :before,.pdf-reader-app :after,.pdf-reader-library *,.pdf-reader-library :before,.pdf-reader-library :after{box-sizing:border-box}.pdf-reader-app button,.pdf-reader-app input,.pdf-reader-app textarea,.pdf-reader-library button,.pdf-reader-library input,.pdf-reader-library textarea{font:inherit;color:inherit}.pdf-reader-app button,.pdf-reader-library button{appearance:none;min-height:var(--pdf-control-height);border:1px solid var(--pdf-line);border-radius:var(--radius-none);font-family:var(--codeFont);font-variant-numeric:tabular-nums;cursor:var(--cursor-pointer,pointer);touch-action:manipulation;background:0 0;justify-content:center;align-items:center;gap:.35em;padding:.2rem .6rem;font-size:.66rem;line-height:1.3;display:inline-flex}.pdf-reader-app button[aria-pressed=true],.pdf-reader-library button[aria-pressed=true]{color:var(--dark);background:var(--pdf-selected);border-color:var(--gray)}.pdf-reader-app input[type=search],.pdf-reader-app input:not([type]),.pdf-reader-library input[type=search],.pdf-reader-library input:not([type]){min-height:var(--pdf-control-height);border:1px solid var(--pdf-line);border-radius:var(--radius-none);background:var(--light);font-family:var(--codeFont);padding:.2rem .5rem;font-size:.7rem}@media (hover:hover) and (pointer:fine){.pdf-reader-app button:hover:not([aria-pressed=true]),.pdf-reader-library button:hover:not([aria-pressed=true]){color:var(--dark);background:var(--pdf-surface);border-color:var(--gray)}}@media (pointer:coarse){.pdf-reader-app,.pdf-reader-library{--pdf-control-height:44px}}.pdf-reader-app :where(button,a,input,textarea,[tabindex]):focus-visible,.pdf-reader-library :where(button,a,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.pdf-reader-row{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.pdf-reader-segmented{flex-wrap:wrap;display:inline-flex}.pdf-reader-segmented>button+button{margin-inline-start:-1px}.pdf-reader-app .pdf-reader-danger{color:#d14d41;border-color:#d14d4173}.pdf-reader-empty,.pdf-reader-status{color:var(--gray);font-family:var(--codeFont);margin:0;font-size:.7rem;line-height:1.5}.pdf-kind-glyph{text-align:center;min-width:1em;font-family:var(--codeFont);display:inline-block}.pdf-kind-glyph[data-kind=mark]{color:#879a39}.pdf-kind-glyph[data-kind=question]{color:var(--dark)}.pdf-kind-glyph[data-kind=contra]{color:#d14d41}.pdf-reader-app{background:var(--light);grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100%;min-height:0;display:grid}.pdf-reader-bar{padding:.5rem var(--pdf-gutter);border-block-end:1px solid var(--pdf-line);font-family:var(--codeFont);flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;font-size:.7rem;display:flex}.pdf-reader-title{min-width:0;color:var(--dark);font-family:var(--bodyFont);flex:18rem;align-items:baseline;gap:.5rem;font-size:1rem;font-style:normal;font-weight:300;line-height:1.4;display:flex}.pdf-reader-title h1{color:inherit;font:inherit;text-wrap:balance;overflow-wrap:anywhere;margin:0}.pdf-reader-app[data-compact=true] .pdf-reader-title h1{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;min-width:0;overflow:hidden}.pdf-reader-app[data-compact=true] .pdf-reader-meta-marks{display:none}.pdf-reader-crumb{color:inherit;font:inherit;flex:none;text-decoration:none}.pdf-reader-crumb:hover{color:inherit;background:0 0;text-decoration:none}.pdf-reader-meta{color:var(--gray);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.25rem .875rem;margin:0;display:flex}.pdf-reader-download{width:var(--pdf-control-height);height:var(--pdf-control-height);color:var(--darkgray);justify-content:center;align-items:center;display:inline-flex}.pdf-reader-controls{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-inline-start:auto;display:flex}.pdf-reader-page-form{color:var(--gray);align-items:center;gap:.35rem;display:inline-flex}.pdf-reader-page-form input{text-align:end;font-variant-numeric:tabular-nums;width:auto}.pdf-reader-zoom{text-align:center;font-variant-numeric:tabular-nums;min-width:3.5em}.pdf-reader-body{grid-template-columns:minmax(0,1fr) auto;min-height:0;display:grid;position:relative}.pdf-reader-scroller{overscroll-behavior:contain;background:var(--pdf-surface);min-height:0;position:relative;overflow:auto}.pdf-reader-app[data-compact=false] .pdf-reader-scroller{scrollbar-width:none}.pdf-reader-scroller:focus:not(:focus-visible){outline:none}.pdf-reader-scroller:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.pdf-reader-spread{grid-template-columns:max-content var(--pdf-side-width);justify-content:center;align-items:start;min-width:min-content;display:grid;position:relative}.pdf-reader-app[data-compact=true] .pdf-reader-spread{grid-template-columns:max-content}.pdf-reader-app:not([data-phase=ready]) .pdf-reader-spread{grid-template-columns:minmax(0, 1fr) var(--pdf-side-width)}.pdf-reader-app[data-compact=true]:not([data-phase=ready]) .pdf-reader-spread{grid-template-columns:minmax(0,1fr)}.pdf-reader-column{padding:1.25rem var(--pdf-gutter) 40vh;flex-direction:column;align-items:center;gap:1rem;min-width:0;display:flex}.pdf-reader-column>.pdf-reader-status{min-width:min(30rem,80vw);padding-block:2rem}.pdf-reader-column:has(>.pdf-reader-skeleton)>.pdf-reader-status{align-self:stretch;min-width:0;padding-block:0}.pdf-reader-skeleton{aspect-ratio:8.5/11;background:repeating-linear-gradient(to bottom, color-mix(in srgb, var(--gray) 22%, transparent) 0 .4rem, transparent .4rem 1.5rem) center 12%/76% 72% no-repeat, var(--pdf-surface);outline:1px solid color-mix(in srgb, var(--gray) 30%, transparent);opacity:.5;flex:none;width:100%}@media (prefers-reduced-motion:no-preference){.pdf-reader-skeleton{animation:1.6s ease-in-out infinite alternate pdf-reader-skeleton}}@keyframes pdf-reader-skeleton{to{opacity:.25}}.pdf-reader-side{padding-block:1.25rem;padding-inline:0 var(--pdf-gutter);align-self:stretch;min-width:0;position:sticky;inset-inline-end:0}.pdf-reader-page{isolation:isolate;contain:layout paint;outline:1px solid color-mix(in srgb, var(--gray) 30%, transparent);background:#fff;flex:none;position:relative}.pdf-reader-page[data-fits-width]{inset-inline:var(--pdf-gutter) calc(var(--pdf-side-width) + var(--pdf-gutter));position:sticky}.pdf-reader-page>canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.pdf-reader-app[data-tool=region] .pdf-reader-page{cursor:var(--cursor-crosshair,crosshair)}.pdf-reader-app[data-tool=region] .pdf-reader-page .pdf-reader-text,.pdf-reader-app[data-tool=region] .pdf-reader-page .pdf-reader-links{pointer-events:none}.pdf-reader-marks,.pdf-reader-text,.pdf-reader-links{position:absolute;inset:0;overflow:hidden}.pdf-reader-marks{z-index:1;pointer-events:none;mix-blend-mode:multiply}.pdf-reader-links{z-index:3;pointer-events:none}.pdf-reader-links a{box-sizing:border-box;pointer-events:auto;position:absolute}@media (hover:hover) and (pointer:fine){.pdf-reader-links a:hover{border-bottom:1px solid #879a39}}.pdf-reader-mark{position:absolute}.pdf-reader-mark[data-kind=mark]{background:#cdd597}.pdf-reader-mark[data-kind=contra]{background:#fdb2a2}.pdf-reader-mark[data-kind=question]{background:radial-gradient(circle,#100f0fbf .9px,#0000 1.1px) 0 100%/4px 3px repeat-x}.pdf-reader-mark[data-region]{outline-offset:-1px;outline:1.5px dashed #100f0f8c}.pdf-reader-mark[data-region][data-kind=mark]{background:#e9ecd0}.pdf-reader-mark[data-region][data-kind=contra]{background:#fedcd5}.pdf-reader-mark[data-active]{outline-offset:1px;outline:1.5px solid #100f0f}.pdf-reader-region-draft{z-index:4;pointer-events:none;background:#cdd59759;border:1.5px dashed #100f0f;position:absolute}.pdf-reader-text{--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));z-index:2;letter-spacing:normal;word-spacing:normal;text-align:initial;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;line-height:1}.pdf-reader-text[data-main-rotation="90"]{transform:rotate(90deg)translateY(-100%)}.pdf-reader-text[data-main-rotation="180"]{transform:rotate(180deg)translate(-100%,-100%)}.pdf-reader-text[data-main-rotation="270"]{transform:rotate(270deg)translate(-100%)}.pdf-reader-text span,.pdf-reader-text br{color:#0000;white-space:pre;cursor:var(--cursor-text,text);transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.pdf-reader-text>:not(.markedContent),.pdf-reader-text .markedContent span:not(.markedContent){--font-height:0;--scale-x:1;--rotate:0deg;z-index:1;font-size:calc(var(--text-scale-factor) * var(--font-height));transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.pdf-reader-text .markedContent{display:contents}.pdf-reader-text span[role=img]{-webkit-user-select:none;user-select:none;cursor:var(--cursor-default,default)}.pdf-reader-text ::selection{color:#0000;background:#879a3947}.pdf-reader-text br::selection{background:0 0}.pdf-reader-text .endOfContent{z-index:0;cursor:var(--cursor-default,default);-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}.pdf-reader-text.selecting .endOfContent{top:0}.pdf-reader-margin{position:relative}.pdf-reader-margin[hidden]{display:none}.pdf-reader-margin-item{inset-inline:0;transition:transform var(--transition-normal);position:absolute;top:0}.pdf-mark-card,.pdf-cite-card{background:var(--light);border:1px solid var(--pdf-line);font-size:var(--text-ui);gap:.6rem;padding:.75rem .85rem;line-height:1.55;display:grid}.pdf-mark-card{cursor:var(--cursor-default,default)}.pdf-mark-card[data-active=true]{border-color:var(--dark)}.pdf-mark-card[data-status=error],.pdf-mark-card[data-status=conflict]{border-color:#d14d41}.pdf-cite-card{background:0 0;border-style:dashed}.pdf-mark-card-meta{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--gray);flex-wrap:wrap;align-items:center;gap:.25rem .5rem;display:flex}.pdf-mark-card-meta a{color:var(--darkgray)}.pdf-mark-card-meta a:hover{color:var(--dark);background:0 0}.pdf-reader-app .pdf-mark-card-jump{min-height:0;color:var(--darkgray);background:0 0;border:0;gap:.5rem;padding:0}.pdf-reader-app .pdf-mark-card-jump[aria-pressed=true]{color:var(--dark);background:0 0}.pdf-mark-card-page{font-variant-numeric:tabular-nums}.pdf-mark-card-what,.pdf-mark-card-private{background:var(--pdf-surface);padding-inline:.3rem}.pdf-mark-card-status{margin-inline-start:auto}.pdf-mark-card-quote{background:var(--pdf-surface);color:var(--darkgray);font-family:var(--bodyFont);font-size:var(--text-meta);-webkit-line-clamp:4;overflow-wrap:anywhere;border:0;-webkit-box-orient:vertical;margin:0;padding:.45rem .6rem;line-height:1.55;display:-webkit-box;overflow:hidden}.pdf-mark-card[data-active=true] .pdf-mark-card-quote{display:block}.pdf-mark-card-body{color:var(--dark);overflow-wrap:anywhere}.pdf-mark-card-body>:first-child{margin-top:0}.pdf-mark-card-body>:last-child{margin-bottom:0}.pdf-mark-card-body p,.pdf-mark-card-body ul,.pdf-mark-card-body ol{margin-block:.4rem}.pdf-mark-card-input{box-sizing:border-box;resize:none;border:1px solid var(--pdf-line);border-radius:var(--radius-none);background:var(--light);width:100%;min-height:calc(4lh + 1.2rem);color:var(--dark);font-family:var(--bodyFont);font-size:var(--text-ui);field-sizing:content;padding:.6rem .7rem;line-height:1.55;display:block;overflow:hidden}.pdf-mark-card-input::placeholder{color:var(--gray)}.pdf-mark-card-input:focus-visible{outline:2px solid var(--dark);outline-offset:-1px}.pdf-mark-card-error{color:#d14d41;font-family:var(--codeFont);font-size:var(--text-meta);margin:0}.pdf-mark-card-conflict{background:color-mix(in srgb, #fdb2a2 22%, var(--light));gap:.4rem;padding:.5rem;display:grid}.pdf-mark-card-conflict p{margin:0}.pdf-mark-card-actions{border:1px solid var(--pdf-line);flex-wrap:wrap;align-items:center;gap:.15rem;min-width:0;margin:0;padding:.15rem;display:flex}.pdf-reader-app .pdf-mark-card-actions button{min-height:var(--pdf-control-height);white-space:nowrap;border:0;flex:none;padding-inline:.4rem}.pdf-mark-card-actions .pdf-kind-glyph{font-size:.9rem;line-height:1}.pdf-mark-card-kinds{flex:none;display:inline-flex}.pdf-mark-card-kinds button{min-width:1.5rem}.pdf-reader-app .pdf-mark-card-delete{min-width:1.5rem;margin-inline-start:auto}.pdf-reader-app .pdf-mark-copy-button{place-items:center;display:grid}.pdf-reader-app .pdf-mark-copy-button>span,.pdf-reader-app .pdf-mark-copy-button>svg{transition:opacity var(--transition-fast), transform var(--transition-fast);grid-area:1/1}.pdf-reader-app .pdf-mark-copy-button>svg{opacity:0;transform:translateY(3px)scale(.8)}.pdf-reader-app .pdf-mark-copy-button[data-copied=true]{color:#879a39}.pdf-reader-app .pdf-mark-copy-button[data-copied=true]>span{opacity:0;transform:translateY(-3px)}.pdf-reader-app .pdf-mark-copy-button[data-copied=true]>svg{opacity:1;transform:none}.pdf-cite-card-excerpt{color:var(--darkgray);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.pdf-reader-index-overlay{z-index:var(--z-dropdown);width:calc(var(--pdf-side-width) + var(--pdf-gutter) * 2);overscroll-behavior:contain;padding:1.25rem var(--pdf-gutter);background:color-mix(in srgb, var(--light) 94%, var(--lightgray));position:absolute;inset-block:0;inset-inline-end:var(--pdf-strip-width);overflow:auto}.pdf-reader-index{gap:1.75rem;display:grid}.pdf-reader-index section{gap:.5rem;display:grid}.pdf-reader-index h2{color:var(--gray);font-family:var(--codeFont);letter-spacing:.04em;text-transform:lowercase;margin:0;font-size:.66rem;font-weight:400}.pdf-reader-index input[type=search]{flex:auto;min-width:0}.pdf-reader-index .pdf-reader-segmented{display:flex}.pdf-reader-index .pdf-reader-segmented>button{flex:auto}.pdf-reader-outline,.pdf-reader-mark-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.pdf-reader-app .pdf-reader-outline button{width:100%;min-height:0;font-family:var(--bodyFont);text-align:start;color:var(--darkgray);border:0;justify-content:start;padding:.2rem 0;padding-inline-start:calc(var(--depth,0) * .875rem);font-size:.82rem}.pdf-reader-app .pdf-reader-mark-row{text-align:start;border-color:#0000;grid-template-columns:auto auto minmax(0,1fr);justify-content:stretch;align-items:baseline;gap:.5rem;width:100%;padding:.35rem .4rem;display:grid}.pdf-reader-mark-row-text{white-space:nowrap;text-overflow:ellipsis;font-family:var(--bodyFont);font-size:.8rem;overflow:hidden}.pdf-reader-strip{width:var(--pdf-strip-width);background:color-mix(in srgb, var(--light) 80%, var(--lightgray));cursor:var(--cursor-ns-resize,ns-resize);touch-action:none;-webkit-user-select:none;user-select:none;position:relative}.pdf-reader-strip-tick{pointer-events:none;height:2px;margin-top:-1px;position:absolute;inset-inline:3px}.pdf-reader-strip-tick[data-kind=mark]{background:#879a39}.pdf-reader-strip-tick[data-kind=question]{background:var(--dark)}.pdf-reader-strip-tick[data-kind=contra]{background:#d14d41}.pdf-reader-strip-tick[data-kind=cite]{background:var(--gray);inset-inline:5px}.pdf-reader-strip-bracket{background:color-mix(in srgb, var(--dark) 10%, transparent);pointer-events:none;position:absolute;inset-inline:0}.pdf-reader-sheet,.pdf-reader-keys{border:1px solid var(--gray);border-radius:var(--radius-none);background:var(--light);color:var(--darkgray);padding:1rem var(--pdf-gutter)}.pdf-reader-sheet::backdrop,.pdf-reader-keys::backdrop{background:color-mix(in srgb, var(--dark) 28%, transparent)}.pdf-reader-sheet h2,.pdf-reader-keys h2{color:var(--dark);margin:0;font-size:.95rem}.pdf-reader-sheet{width:100%;max-width:100%;max-height:85dvh;padding-bottom:max(1rem, env(safe-area-inset-bottom));overscroll-behavior:contain;border-block-end:0;border-inline:0;margin:auto 0 0;overflow:auto}.pdf-reader-sheet>header{flex-wrap:nowrap;justify-content:space-between;margin-bottom:1rem}.pdf-reader-keys{width:min(32rem,100vw - 2rem)}.pdf-reader-keys dl{grid-template-columns:max-content 1fr;gap:.4rem 1rem;margin:1rem 0;font-size:.82rem;display:grid}.pdf-reader-keys dt{color:var(--dark);font-family:var(--codeFont);font-size:.72rem}.pdf-reader-keys dd{margin:0}.pdf-reader-keys p{font-size:.82rem}.pdf-reader-library{--pdf-line:var(--dark);height:100%;padding:2.5rem var(--pdf-gutter) 4rem;overflow:auto}.pdf-reader-library>*{max-width:46rem;margin-inline:auto}.pdf-reader-library header{gap:.75rem;margin-bottom:1rem;display:grid}.pdf-reader-library h1{color:var(--dark);margin:0;font-size:1.4rem}.pdf-reader-library header p{max-width:38rem;margin:0}.pdf-reader-library input[type=search]{min-height:2rem;color:var(--dark);font-size:var(--text-meta);padding:.125rem .5rem;line-height:1.4}.pdf-reader-library input[type=search]::placeholder{color:var(--darkgray);opacity:1}.pdf-reader-library input[type=search]:focus-visible{outline-color:var(--dark);outline-offset:2px}@media (pointer:coarse){.pdf-reader-library input[type=search]{min-height:44px;font-size:1rem}}.pdf-reader-library-list{border:1px solid var(--pdf-line);margin-block:0;padding:0;list-style:none;display:grid}.pdf-reader-library-list li{margin:0;padding:0}.pdf-reader-library-list li+li{border-top:1px solid var(--pdf-line)}.pdf-reader-library-list a{color:var(--darkgray);background:0 0;gap:.25rem;padding:.4rem .75rem;font-weight:400;text-decoration:none;display:grid}.pdf-reader-library-list a:focus-visible{outline-color:var(--dark)}@media (hover:hover) and (pointer:fine){.pdf-reader-library-list a:hover{color:var(--dark)}.pdf-reader-library-list a:hover .pdf-reader-library-title{text-underline-offset:.15em;text-decoration:underline}}.pdf-reader-library-title{font-family:var(--bodyFont);font-size:var(--text-ui);overflow-wrap:anywhere;text-wrap:pretty;line-height:1.45}.pdf-reader-library-meta{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);overflow-wrap:anywhere;line-height:1.4}@media (prefers-reduced-motion:reduce){.pdf-reader-margin-item{transition:none}.pdf-reader-app .pdf-mark-copy-button>span,.pdf-reader-app .pdf-mark-copy-button>svg{transition:none;transform:none}}.pdf-reader-controls{--pdf-instrument-height:1.5rem;--pdf-instrument-font:.75rem;--pdf-instrument-icon:.75rem;--pdf-instrument-frame:var(--darkgray);--pdf-instrument-line:color-mix(in srgb, var(--gray) 55%, transparent);--pdf-instrument-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--pdf-instrument-selected:color-mix(in srgb, var(--secondary) 18%, var(--pdf-instrument-surface))}@media (pointer:coarse){.pdf-reader-controls{--pdf-instrument-height:44px;--pdf-instrument-font:max(1rem, 16px);--pdf-instrument-icon:1rem}}.pdf-reader-controls{--pdf-instrument-surface:var(--pdf-surface);--pdf-instrument-selected:var(--pdf-selected)}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group){height:var(--pdf-instrument-height);box-sizing:border-box;border:1px solid var(--pdf-instrument-frame);border-radius:var(--radius-none);min-height:0;font-family:var(--codeFont);font-size:var(--pdf-instrument-font);font-variant-numeric:tabular-nums;text-transform:lowercase;color:var(--darkgray);flex:none;align-items:stretch;gap:0;line-height:1;display:inline-flex}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>*{box-sizing:border-box;height:100%;min-height:0;color:var(--dark);font:inherit;border-radius:var(--radius-none);background:0 0;border:0;margin:0}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>:not(:first-child){border-inline-start:1px solid var(--pdf-instrument-line)}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button{min-width:0;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);aspect-ratio:1;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button svg{width:var(--pdf-instrument-icon);height:var(--pdf-instrument-icon);pointer-events:none}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button:active:not(:disabled){color:var(--dark);background:var(--pdf-instrument-surface)}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button[aria-pressed=true]{color:var(--dark);background:var(--pdf-instrument-selected)}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button:disabled{opacity:.5;cursor:var(--cursor-not-allowed,not-allowed)}@media (hover:hover) and (pointer:fine){.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button:hover:not(:disabled,[aria-pressed=true]){color:var(--dark);background:var(--pdf-instrument-surface)}}.pdf-reader-app :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.pdf-reader-app .pdf-reader-controls :is(.pdf-reader-page-form,.pdf-reader-zoom-group)>button:is(:hover,[aria-pressed=true]){border-color:var(--pdf-instrument-line)}.pdf-reader-app .pdf-reader-zoom-group>button:last-child{aspect-ratio:auto;padding:0 .5rem}.pdf-reader-app .pdf-reader-zoom{white-space:nowrap;min-width:calc(4ch + 1rem + 1px);color:var(--dark);justify-content:center;align-items:center;padding:0 .5rem;display:inline-flex}.pdf-reader-app .pdf-reader-page-cell{white-space:nowrap;justify-content:center;align-items:center;padding:0 .5rem;display:inline-flex}.pdf-reader-app .pdf-reader-page-cell label{color:var(--darkgray)}.pdf-reader-app .pdf-reader-page-cell>input{height:100%;min-height:0;color:var(--dark);font:inherit;border-radius:var(--radius-none);width:calc((var(--pdf-instrument-digits,2) + 1) * 1ch + 1ch + 0px);text-align:end;appearance:textfield;background:0 0;border:0;margin:0;padding:0 1ch}.pdf-reader-app .pdf-reader-page-cell>input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pdf-reader-app .pdf-reader-page-cell>input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}@media (hover:hover) and (pointer:fine){.pdf-reader-app .pdf-reader-page-cell>input:hover:not(:disabled,[aria-pressed=true]){color:var(--dark);background:var(--pdf-instrument-surface)}}.pdf-reader-app .pdf-reader-page-cell>input:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.bases-search{grid-column:var(--layout-search-column);margin:1rem 0}.bases-search #base-search-bar{box-sizing:border-box;height:2.125rem}.bases-toolbar{font-family:var(--bodyFont);grid-column:var(--layout-control-column);margin:1rem 0;display:inline-block;position:relative}.sidepanel-container .bases-toolbar,.popover .bases-toolbar{grid-column:1/-1}.bases-toolbar .bases-toolbar-item{display:inline-block;position:relative}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button{appearance:none;box-sizing:border-box;background:var(--light);border:1px solid var(--base-query-line);border-radius:var(--radius-none);height:2.125rem;color:var(--darkgray);font-family:inherit;font-size:var(--base-toolbar-font-size,.6875rem);font-weight:500;line-height:inherit;cursor:var(--cursor-pointer,pointer);-webkit-user-select:none;user-select:none;align-items:center;gap:.375rem;margin:0;padding:0 .75rem;display:flex}@media (hover:hover) and (pointer:fine){.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button:hover{background:var(--base-query-surface)}}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button.has-active-menu{background:var(--base-query-selected)}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button .text-button-icon{width:16px;height:16px;color:var(--gray);flex-shrink:0;justify-content:center;align-items:center;display:flex}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button .text-button-icon svg{width:16px;height:16px}.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button .text-button-label{font-size:inherit;color:var(--dark);font-weight:500}.bases-toolbar .menu-scroll{box-sizing:border-box;z-index:var(--z-popover);background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);flex-direction:column;width:280px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);margin:0;padding:0;display:flex;position:fixed;inset:auto;overflow:hidden}.bases-toolbar .menu-scroll[hidden]{display:none}.bases-toolbar .bases-toolbar-menu-container{flex-direction:column;min-height:0;display:flex}.bases-toolbar .bases-toolbar-menu-container .search-input-container{border-bottom:1px solid var(--lightgray);flex-shrink:0;padding:.5rem;position:relative}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]{background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);width:100%;font-size:var(--base-toolbar-font-size,.6875rem);color:var(--dark);font-family:var(--bodyFont);padding:.375rem 2rem .375rem .75rem}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]:focus-visible{border-color:var(--dark);outline:none}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]::placeholder{color:var(--darkgray);opacity:1}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]::-webkit-search-cancel-button{display:none}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button{appearance:none;inset-block:calc(.5rem + 1px);aspect-ratio:1;border-radius:var(--radius-none);height:auto;min-height:0;cursor:var(--cursor-pointer,pointer);color:var(--gray);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:calc(.5rem + 1px)}@media (hover:hover) and (pointer:fine){.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button:hover{color:var(--dark);background:color-mix(in srgb, var(--lightgray) 60%, transparent)}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button:hover svg{opacity:1}}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button:focus-visible svg{opacity:1}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button[hidden]{display:none}.bases-toolbar .bases-toolbar-menu-container .search-input-container .search-input-clear-button svg{opacity:.5;pointer-events:none;width:14px;height:14px}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items{overscroll-behavior:contain;min-height:0;overflow-y:auto}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items::-webkit-scrollbar{width:8px}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items::-webkit-scrollbar-track{background:0 0}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items::-webkit-scrollbar-thumb{background:var(--lightgray);border-radius:var(--radius-none)}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items::-webkit-scrollbar-thumb:hover{background:var(--gray)}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-group[data-group=views]{text-transform:lowercase;padding:.25rem 0}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item{color:inherit;cursor:var(--cursor-pointer,pointer);text-decoration:none;display:block}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item{box-sizing:border-box;border-radius:var(--radius-none);justify-content:space-between;align-items:center;min-height:2.125rem;margin:0 .25rem;padding:.5rem .75rem;transition:background-color .15s;display:flex}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item[hidden]{display:none}@media (hover:hover) and (pointer:fine){.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item:hover{background:var(--lightgray)}}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item:focus-visible{outline:2px solid var(--dark);outline-offset:-2px;background:var(--lightgray)}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item.mod-active{font-weight:600}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item.is-selected .bases-toolbar-menu-item-info .bases-toolbar-menu-item-name{color:var(--dark);font-weight:600}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item .bases-toolbar-menu-item-info{flex:1;align-items:center;gap:.5rem;display:flex}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item .bases-toolbar-menu-item-info .bases-toolbar-menu-item-info-icon{width:16px;height:16px;color:var(--gray);flex-shrink:0;justify-content:center;align-items:center;display:flex}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item .bases-toolbar-menu-item-info .bases-toolbar-menu-item-info-icon svg{width:16px;height:16px}.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item .bases-toolbar-menu-item-info .bases-toolbar-menu-item-name{font-size:var(--base-toolbar-font-size,.6875rem);color:var(--dark)}@media (prefers-reduced-motion:reduce){.bases-toolbar .bases-toolbar-menu-item{transition:none}}@media (max-width:800px){.bases-toolbar .menu-scroll{width:240px}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]{font-size:16px}}@media (pointer:coarse){.bases-toolbar .bases-toolbar-menu-container .bases-toolbar-items .suggestion-item.bases-toolbar-menu-item,.bases-toolbar .bases-toolbar-item.bases-toolbar-views-menu .text-icon-button{min-height:44px}.bases-toolbar .bases-toolbar-menu-container .search-input-container input[type=search]{min-height:46px;padding-right:3.5rem}}.status-flap{font-variant-numeric:tabular-nums;min-width:0;max-width:100%;min-height:1.4em;line-height:1.4;display:block;position:relative;overflow:hidden}.status-flap .status-flap-label{text-overflow:ellipsis;white-space:nowrap;align-items:baseline;display:flex;overflow:hidden}.status-flap .status-flap-prefix{white-space:pre;text-overflow:ellipsis;min-width:0;overflow:hidden}.status-flap .status-flap-readout{text-overflow:ellipsis;min-width:0;display:inline-block;position:relative;overflow:hidden}.status-flap .status-flap-readout[data-numeric]{font-family:var(--codeFont);text-align:right;flex-shrink:0}.status-flap .status-flap-value{display:inline-block}.status-flap .status-flap-outgoing{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;text-align:inherit;display:none;position:absolute;inset:0;overflow:hidden}.status-flap[data-flipping] .status-flap-outgoing{display:block}@media (prefers-reduced-motion:reduce){.status-flap[data-flipping] .status-flap-outgoing{display:none}}.semantic-search-progress .status-flap-label,.flashcards-notes-status .status-flap-label{justify-content:flex-end}.search-container .code-search-status,.search-container .code-search-detail,#palette-container .code-search-status,#palette-container .code-search-detail{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);overflow-wrap:anywhere}.search-container .code-search-result,#palette-container .code-search-result{flex-wrap:wrap;min-width:0}.search-container .code-search-detail,#palette-container .code-search-detail{white-space:pre-wrap;max-height:4.5rem;overflow:auto}.search-container .code-search-inline-preview,#palette-container .code-search-inline-preview{width:100%;min-width:0;max-height:16rem;overflow:auto}.search-container .code-match-preview,#palette-container .code-match-preview{min-width:0}.search-container .code-match-preview figure,#palette-container .code-match-preview figure{margin:0}.search-container .code-match-preview [data-line]:before,#palette-container .code-match-preview [data-line]:before{color:var(--darkgray)}.search-container .code-match-preview pre,#palette-container .code-match-preview pre{max-height:60vh;overflow:auto}.search-container .code-match-preview [data-code-match],#palette-container .code-match-preview [data-code-match]{background:color-mix(in srgb, var(--dark) 8%, var(--light))}.search-container .code-match-preview figcaption,#palette-container .code-match-preview figcaption{font-variant-numeric:tabular-nums;flex-wrap:nowrap;gap:.25rem;line-height:1.75rem}.search-container .code-match-preview figcaption>a,#palette-container .code-match-preview figcaption>a{flex:none;margin-left:.5rem}.search-container .code-match-preview .code-match-label,#palette-container .code-match-preview .code-match-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.search-container .code-match-preview .code-match-counter,#palette-container .code-match-preview .code-match-counter{text-align:center;flex:none;min-width:5ch}.search-container .code-match-preview mark,#palette-container .code-match-preview mark{color:var(--dark);background:var(--highlight);text-decoration:underline;text-decoration-thickness:2px}.search-container .code-search-mobile-location{display:none}@container search-results (max-width:360px){.search-container .code-search-mobile-location{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;display:block}}.search-container .code-search-result-count,#palette-container .code-search-result-count{color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;margin:0;padding:.4rem .75rem}.search-completions{min-height:0;font-family:var(--codeFont);font-size:var(--text-meta);flex:1;padding:.4rem;overflow:auto}.search-completions[hidden]{display:none}.search-completions .search-completions-label{color:var(--darkgray);padding:.25rem .5rem}.search-completions .search-completions-list{grid-template-columns:max-content minmax(0,max-content) minmax(0,1fr);column-gap:.75rem;display:grid}.search-completions .search-completion{grid-column:1/-1;grid-template-columns:subgrid;width:100%;min-height:1.75rem;color:var(--dark);text-align:left;font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;align-items:baseline;padding:.2rem .5rem;display:grid}.search-completions .search-completion[aria-selected=true] .search-completion-value{text-underline-offset:.2em;text-decoration:underline}.search-completions .search-completion:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.search-completions .search-completion:hover .search-completion-value{text-underline-offset:.2em;text-decoration:underline}}@media (pointer:coarse){.search-completions .search-completion{min-height:44px}}.search-completions .search-completion-token{border:1px solid var(--lightgray);color:var(--darkgray);white-space:nowrap;justify-self:start;padding:.1rem .3rem}.search-completions .search-completion-value{overflow-wrap:anywhere;min-width:0}.search-completions .search-completion-description{min-width:0;color:var(--darkgray);overflow-wrap:anywhere}.image-search-row{border-bottom:1px solid var(--lightgray);grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.image-search-row>a.result-card{border:0;align-items:center;gap:.75rem;min-width:0;display:flex}.image-search-row>a.result-card>hgroup{min-width:0}.image-search-thumbnail{object-fit:contain;flex-shrink:0;width:3.5rem;height:3.5rem}.image-similar-button{font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;color:var(--darkgray);min-height:1.75rem;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;border-radius:0;margin:.5rem;padding:.25rem .5rem}.image-similar-button.image-similar-button-icon{justify-content:center;align-items:center;width:1.75rem;padding:0;display:inline-flex}.image-similar-button.image-similar-button-icon svg{pointer-events:none;width:18px;height:18px}@media (pointer:coarse){.image-similar-button.image-similar-button-icon{width:44px}}.image-similar-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.image-similar-button:hover{background:color-mix(in srgb, var(--dark) 8%, var(--light))}}@media (pointer:coarse){.image-similar-button{min-height:44px}}.image-search-preview{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.image-search-preview>img{object-fit:contain;width:100%;max-height:60vh}.image-search-preview>div{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.image-search-status{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);overflow-wrap:anywhere;margin:0;padding:.5rem 1rem}@media (max-width:480px){.image-search-row{grid-template-columns:minmax(0,1fr)}.image-search-row>.image-similar-button{justify-self:start;margin-top:0}}.result-likelihood{font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;color:var(--darkgray);white-space:nowrap}::highlight(pdf-search-match){background-color:color-mix(in srgb, var(--tertiary) 65%, transparent);color:#0000}.search-pdf-preview .pdf-search-regions{pointer-events:none;z-index:2;position:absolute;inset:0}.search-pdf-preview .pdf-search-regions>span{background:color-mix(in srgb, var(--tertiary) 30%, transparent);outline:1px solid color-mix(in srgb, var(--darkgray) 45%, transparent);position:absolute}.search-mode-toggle .mode-option[data-mode=semantic].is-loading svg{overflow:visible}.search-mode-toggle .mode-option[data-mode=semantic].is-loading svg>g{transform-box:view-box;transform-origin:11.4px 10px;animation:1.2s linear infinite semantic-spin}@media (prefers-reduced-motion:reduce){.search-mode-toggle .mode-option[data-mode=semantic].is-loading svg>g{opacity:.5;animation:none}}.search-footer{border-top:1px solid var(--lightgray);color:var(--darkgray);font-family:var(--bodyFont);font-size:var(--text-meta);flex-shrink:0;grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;margin-top:auto;line-height:1.4;display:grid}.search-footer>ul#helper{scrollbar-width:none;border:0;flex-wrap:nowrap;min-width:0;overflow-x:auto}.search-footer>ul#helper>li{white-space:nowrap;max-width:none}.semantic-search-progress{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font:inherit;padding:8px;overflow:hidden}.semantic-search-progress[aria-hidden=false]{transition:opacity .15s cubic-bezier(.23,1,.32,1) .12s}@media (prefers-reduced-motion:reduce){.semantic-search-progress[aria-hidden=false]{transition:none}}.semantic-search-progress[aria-hidden=true]{visibility:hidden}.search{flex-grow:.3;min-width:fit-content;max-width:14rem}@media (max-width:800px){.search{flex-grow:.3}}.search>.search-button{font-family:inherit;font-size:inherit;text-align:inherit;white-space:nowrap;background-color:#0000;justify-content:space-between;align-items:center;width:100%;padding:0;display:flex}.search>.search-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.search>.search-button>p{color:var(--darkgray);text-wrap:unset;display:inline}.search>.search-button svg{cursor:var(--cursor-pointer,pointer)}.search>.search-button svg .search-path{stroke:var(--darkgray);stroke-width:1.5px;transition:stroke .5s}.search>.search-container{contain:layout;z-index:var(--z-modal);width:100vw;height:100vh;display:none;position:fixed;top:0;left:0;overflow:hidden}.search>.search-container.active{display:flex}.search>.search-container{width:100%;height:100dvh;color:inherit;background:0 0;border:0;margin:0;padding:0;inset:0}.search>.search-container>.search-space{border:1px solid var(--gray);border-radius:var(--radius-none);background-color:var(--light);box-sizing:border-box;flex-direction:column;max-width:80vw;max-height:80vh;margin-top:7vh;margin-left:auto;margin-right:auto;display:flex;overflow:hidden}.search>.search-container>.search-space .input-container{display:flex;position:relative}.search>.search-container>.search-space .input-container>input{box-sizing:border-box;width:100%;font-family:var(--bodyFont);color:var(--dark);background-color:var(--light);padding:1rem;font-size:1.1em}@media (max-width:800px){.search>.search-container>.search-space .input-container>input{font-size:max(16px,1.1em)}}.search>.search-container>.search-space .input-container>input{border-radius:var(--radius-none);border:none}.search>.search-container>.search-space .input-container>input:focus{outline:none}.search>.search-container>.search-space{--command-panel-top:max(7vh, 1rem, env(safe-area-inset-top));--command-panel-right:max(1rem, env(safe-area-inset-right));--command-panel-left:max(1rem, env(safe-area-inset-left));--command-panel-bottom:max(1rem, env(safe-area-inset-bottom));--command-panel-height:calc(100dvh - var(--command-panel-top) - var(--command-panel-bottom));width:min(75%, 100% - var(--command-panel-left) - var(--command-panel-right));max-width:none;max-height:var(--command-panel-height);margin:var(--command-panel-top) auto 0;align-self:flex-start}@media (max-width:800px){.search>.search-container>.search-space{width:calc(100% - var(--command-panel-left) - var(--command-panel-right))}}.search>.search-container>.search-space{height:min(80dvh, var(--command-panel-height));flex-direction:column;display:flex}.search>.search-container>.search-space>.search-footer{flex-shrink:0;margin-top:auto}.search>.search-container>.search-space>.input-container{border-bottom:1px solid var(--lightgray);align-items:center;gap:.5rem;padding:.25rem .5rem 0}.search>.search-container>.search-space>.input-container .search-bar{flex:auto;min-width:0}.search>.search-container>.search-space>.input-container .search-preview-toggle{width:1.75rem;height:1.75rem;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin-right:.5rem;padding:0;transition:color .12s;display:inline-flex}.search>.search-container>.search-space>.input-container .search-preview-toggle[aria-expanded=true]{color:var(--color-yellow)}.search>.search-container>.search-space>.input-container .search-preview-toggle:disabled{color:var(--gray);cursor:var(--cursor-default,default)}.search>.search-container>.search-space>.input-container .search-preview-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.input-container .search-preview-toggle:enabled:not([aria-expanded=true]):hover{color:var(--dark)}}@media (prefers-reduced-motion:reduce){.search>.search-container>.search-space>.input-container .search-preview-toggle{transition:none}}@media (pointer:coarse){.search>.search-container>.search-space>.input-container .search-preview-toggle{width:44px;height:44px}}.search>.search-container>.search-space>.input-container .search-preview-toggle svg{width:18px;height:18px}.search>.search-container>.search-space>.input-container .search-mode-toggle{border-radius:var(--radius-none);background:0 0;flex-shrink:0;align-items:center;gap:.25rem;margin-right:0;display:inline-flex}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option{font:inherit;color:var(--darkgray);border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);background:0 0;border:none;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;padding:0;transition:color .12s;display:inline-flex;position:relative}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option.active{color:var(--color-green)}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option:not(.active):hover{color:var(--dark)}}@media (pointer:coarse){.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option{width:44px;height:44px}}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option[disabled]{opacity:.35;cursor:var(--cursor-not-allowed,not-allowed)}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option svg{width:18px;height:18px}.search>.search-container>.search-space>.input-container .search-mode-toggle .mode-option .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.search>.search-container>.search-space>.search-completions:not([hidden])+.search-layout{display:none}.search>.search-container>.search-space>.search-layout{box-sizing:border-box;background:var(--light);flex-direction:row;flex:1;min-height:0;display:none}.search>.search-container>.search-space>.search-layout.display-results{display:flex}.search>.search-container>.search-space>.search-layout[data-preview=true]>.results-container{border-right:1px solid var(--lightgray)}.search>.search-container>.search-space>.search-layout[data-preview=true]>.results-container .search-result-excerpt{display:none}.search>.search-container>.search-space>.search-layout[data-preview=true]>.preview-container{opacity:1;visibility:visible;flex-basis:60%;padding:0 1rem;transition-delay:0s}@media (max-width:800px){.search>.search-container>.search-space>.search-layout[data-preview=true] .result-card>p.preview{display:none}.search>.search-container>.search-space>.search-layout[data-preview=true]>div:first-child{border-top-right-radius:unset;border-bottom-right-radius:unset}.search>.search-container>.search-space>.search-layout[data-preview=true]>div:last-child{border-top-left-radius:unset;border-bottom-left-radius:unset}}.search>.search-container>.search-space>.search-layout>div{height:100%;min-height:0}@media (max-width:800px){.search>.search-container>.search-space>.search-layout{flex-direction:column}.search>.search-container>.search-space>.search-layout>div{height:auto}.search>.search-container>.search-space>.search-layout[data-preview=true]>.results-container{border-right:0;flex:40%}.search>.search-container>.search-space>.search-layout[data-preview=true]>.preview-container{border-top:1px solid var(--lightgray);flex:60%}}.search>.search-container>.search-space>.search-layout .highlight{font-weight:700}.search>.search-container>.search-space>.search-layout>.preview-container{opacity:0;visibility:hidden;min-width:0;color:var(--dark);box-sizing:border-box;flex:0 0;padding:0;font-family:inherit;font-weight:400;transition:flex-basis .22s cubic-bezier(.23,1,.32,1),padding .22s cubic-bezier(.23,1,.32,1),opacity .15s,visibility 0s linear .15s;display:block;overflow:hidden auto}@media (prefers-reduced-motion:reduce){.search>.search-container>.search-space>.search-layout>.preview-container{transition:none}}:is(.search>.search-container>.search-space>.search-layout>.preview-container:has(>.search-pdf-preview),.search>.search-container>.search-space>.search-layout>.preview-container:has(>.search-code-preview)){overflow:hidden}.search>.search-container>.search-space>.search-layout>.preview-container .highlight{font-weight:inherit;background:color-mix(in srgb, var(--tertiary) 60%, #fff0);scroll-margin-top:2rem}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner{white-space:normal;width:100%;height:100%;max-height:100%;position:relative;overflow:hidden auto}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview{overflow:hidden}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview .pdf-embed-loading{display:none}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview>.pdf-embed{--pdf-embed-height:100%;border:0;height:100%;min-height:0;margin:0;overflow:hidden}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview .pdf-embed-error{box-sizing:border-box;height:100%;min-height:0}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview>.pdf-embed[data-pdf-status=loading] .pdf-viewer{opacity:.4}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview .pdf-embed-page-input{width:calc((max(var(--pdf-instrument-digits,2), 3) + 1) * 1ch + .5rem + 1px)}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-pdf-preview .pdf-embed-control-group>.pdf-embed-page-total{justify-content:flex-start;min-width:calc(5ch + .5rem)}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview{overflow:hidden}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview>figure{flex-direction:column;height:100%;min-height:0;margin:0;display:flex}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption{min-width:0;font-family:var(--codeFont);font-size:var(--text-meta);color:var(--darkgray);border-bottom:1px solid var(--lightgray);flex:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>a{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:inherit;overflow:hidden}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button{min-height:1.75rem;color:inherit;font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;flex:none;padding:0 .5rem}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button.check{color:var(--dark);text-decoration:underline}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button:hover{background:color-mix(in srgb, var(--dark) 6%, var(--light))}}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview figcaption>button{min-height:44px}}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview pre{overscroll-behavior:contain;background:var(--code-background);min-width:0;min-height:0;color:var(--code-normal);flex:auto;margin:0;overflow:auto}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview pre>code{width:max-content;min-width:100%;font-size:var(--text-meta);overflow-wrap:normal;tab-size:4;overflow:visible}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-code-preview :is(a,button,pre):focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-course-preview{box-sizing:border-box;padding-top:1rem}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-card,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .course-popover-card,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-course-preview .document-popover-card,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-course-preview .course-popover-card{padding:0}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-label,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-table,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-list,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.search-document-preview .document-popover-cards span{font-size:var(--text-meta)}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.preview-redacted{min-height:160px;color:var(--darkgray);justify-content:center;align-items:center;font-weight:600;display:flex}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.preview-redacted .preview-redacted-blur{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 65%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:0;margin:1rem;position:absolute;inset:0}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner.preview-redacted .preview-redacted-label{z-index:1;position:relative}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner .grid{grid-template-columns:1fr auto 1fr}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner footer{display:none}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner .byline>:last-child{border-left:1px solid var(--lightgray)}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner .byline div.first,.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner .byline menu.tags{grid-column:1/1}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner .byline .content-meta{grid-column:2/2}.search>.search-container>.search-space>.search-layout>.preview-container .preview-inner hgroup{margin-top:2rem}.search>.search-container>.search-space>.search-layout>.preview-container a[data-role=anchor]{background-color:#0000}.search>.search-container>.search-space>.search-layout>.results-container{box-sizing:border-box;flex:1;min-width:0;padding:12px;overflow-y:auto;container:search-results/inline-size}.search>.search-container>.search-space>.search-layout>.results-container .search-load-more{width:100%;min-height:1.75rem;color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;margin:0;padding:.5rem;display:block}.search>.search-container>.search-space>.search-layout>.results-container .search-load-more:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.results-container .search-load-more:hover{text-underline-offset:.15em;text-decoration:underline}}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.results-container .search-load-more{min-height:44px}}.search>.search-container>.search-space>.search-layout>.results-container:has(>.search-results-table){padding:0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-empty-row>td{white-space:normal;color:var(--dark);cursor:var(--cursor-default,default);padding:1.25rem .75rem}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-empty-row p{font-size:var(--text-ui);overflow-wrap:anywhere;margin:0;line-height:1.5}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-empty-row .search-empty-hint{color:var(--darkgray);font-size:var(--text-meta);margin-top:.25rem}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-empty-row:hover{cursor:var(--cursor-default,default);background:0 0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table{table-layout:fixed;border-collapse:collapse;border-bottom:1px solid var(--search-line);width:100%;font-size:var(--text-ui);--search-line:color-mix(in srgb, var(--dark) 12%, var(--light));margin:0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table th,.search>.search-container>.search-space>.search-layout>.results-container .search-results-table td{border-bottom:1px solid var(--search-line);border-right:1px solid var(--search-line);white-space:nowrap;text-overflow:ellipsis;text-align:left;vertical-align:middle;min-width:0;padding:.4rem .75rem;overflow:hidden}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table th:last-child,.search>.search-container>.search-space>.search-layout>.results-container .search-results-table td:last-child{border-right:0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table th{z-index:1;background:var(--light);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--text-meta);font-weight:400;position:sticky;top:0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-note{width:40%}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-match{width:60%}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-score{width:5rem;font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-align:right}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table td>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table td.search-column-note{padding:0}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .result-card{padding:.4rem .75rem}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .result-card h3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (hover:hover) and (pointer:fine){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table tbody tr:not(.search-empty-row):hover{cursor:var(--cursor-pointer,pointer)}}@container search-results (max-width:600px){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-note{width:45%}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-match{width:55%}}@container search-results (max-width:360px){.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-match{display:none}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table:has(.search-empty-row) .search-column-match{display:table-cell}.search>.search-container>.search-space>.search-layout>.results-container .search-results-table .search-column-note{width:auto}}.search>.search-container>.search-space>.search-layout>.results-container:has(>.image-search-grid){padding:5px}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid{--image-search-gap:5px;align-items:start;gap:var(--image-search-gap);grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));display:grid;position:relative}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid[data-packed]>.image-search-row{position:absolute;top:0;left:0}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row{border:0;min-width:0;display:block;position:relative}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card{border:0;padding:0;display:block}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card>hgroup{min-width:0;min-height:1.75rem;font-family:var(--codeFont);font-size:var(--text-meta);align-items:center;padding-right:4rem;display:flex}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card>hgroup h3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (pointer:coarse){.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>a.result-card>hgroup{min-height:44px}}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row .image-search-thumbnail{aspect-ratio:auto 1;object-fit:contain;content-visibility:visible;width:100%;height:auto;margin:0;display:block}.search>.search-container>.search-space>.search-layout>.results-container .image-search-grid>.image-search-row>.image-similar-button{margin:0;position:absolute;bottom:0;right:0}.search>.search-container>.search-space>.search-layout>.results-container .result-card{cursor:var(--cursor-pointer,pointer);box-sizing:border-box;width:100%;font-family:inherit;font-size:100%;line-height:inherit;text-transform:none;text-align:left;font-weight:inherit;outline:none;margin:0;padding:6px 12px;display:block;overflow:hidden}.search>.search-container>.search-space>.search-layout>.results-container .result-card:hover,.search>.search-container>.search-space>.search-layout>.results-container .result-card:focus,.search>.search-container>.search-space>.search-layout>.results-container .result-card.focus{text-decoration:none}.search>.search-container>.search-space>.search-layout>.results-container .result-card:hover h3,.search>.search-container>.search-space>.search-layout>.results-container .result-card:focus h3,.search>.search-container>.search-space>.search-layout>.results-container .result-card.focus h3{text-underline-offset:.15em;text-decoration:underline}.search>.search-container>.search-space>.search-layout>.results-container .result-card h3{font:inherit;color:inherit;margin:0}.search>.search-container>.search-space>.search-layout>.results-container .result-card .search-result-path{white-space:nowrap;min-width:0;display:block;overflow:hidden}.search #base-search-bar{border-radius:var(--radius-none);border:1px solid var(--gray);background:var(--light);align-items:center;gap:.5rem;max-width:16rem;padding:.25rem .5rem;display:flex}.search #base-search-bar:focus-within{outline:2px solid var(--dark);outline-offset:2px}.search #base-search-bar input[type=text],.search #base-search-bar input[type=search]{font:inherit;color:var(--dark);background:0 0;border:none;flex:auto}@media (max-width:800px){.search #base-search-bar input[type=text],.search #base-search-bar input[type=search]{font-size:max(16px,1em)}}.search #base-search-bar input[type=text]:focus,.search #base-search-bar input[type=search]:focus{outline:none}.search #base-search-bar input[type=text]::placeholder,.search #base-search-bar input[type=search]::placeholder{color:var(--darkgray);opacity:1}.search #base-search-bar .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.search #base-search-bar .search-mode-toggle{flex-shrink:0;align-items:center;gap:.25rem;display:inline-flex}.search #base-search-bar .search-mode-toggle .mode-option{width:1.5rem;height:1.5rem;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.search #base-search-bar .search-mode-toggle .mode-option:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.search #base-search-bar .search-mode-toggle .mode-option.active{color:var(--secondary)}.search #base-search-bar .search-mode-toggle .mode-option[disabled]{opacity:.35;cursor:var(--cursor-not-allowed,not-allowed)}.search #base-search-bar .search-mode-toggle .mode-option svg{width:16px;height:16px}body[data-slug=index] .search>.search-container>.search-space>.input-container{flex-shrink:0;padding:0}body[data-slug=index] .search>.search-container>.search-space>.search-footer{flex-shrink:0;margin-top:auto}.base-search-status{border-top:1px solid var(--lightgray);min-height:1.4em;color:var(--darkgray);font:var(--text-meta)/1.4 var(--bodyFont);grid-column:1/-1;padding:.5rem 0}@media (max-width:800px){.search-space .search-footer>ul#helper>li:nth-child(n+4){display:none}.search-footer{grid-template-columns:auto minmax(0,1fr)}.search-footer>ul#helper>li{font-size:0}.search-footer>ul#helper>li>kbd{font-size:var(--text-meta)}.search-footer>ul#helper>li[data-quick-open],.search-footer>ul#helper>li[data-command]{display:none}}.base-search-error{color:var(--darkgray);font:var(--text-meta)/1.4 var(--bodyFont);grid-column:1/-1}.base-search-error[hidden]{display:none}body[data-is-base=true] #quartz-root>.page-body-grid>.page-header:has(>.bases-search[data-base-query]){align-items:flex-start}body[data-is-base=true] #quartz-root>.page-body-grid>.page-header>.bases-search[data-base-query]{min-width:0;max-width:none;inline-size:min(var(--base-query-search-width) + 7rem + 2px, 100%);flex:0 auto;margin-inline-start:auto}:is(.bases-toolbar,.bases-search[data-base-query]){--base-toolbar-font-size:.6875rem;--base-query-line:color-mix(in srgb, var(--gray) 55%, transparent);--base-query-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--base-query-selected:color-mix(in srgb, var(--secondary) 18%, var(--base-query-surface))}.bases-search[data-base-query]{--base-query-control-height:2.125rem;--base-query-action-size:2rem;--base-query-search-width:min(24rem, calc(100vw - 11rem));--control-height:var(--base-query-action-size);--control-font-size:var(--text-meta);--control-surface:var(--base-query-surface);--control-focus:var(--dark);color:var(--darkgray);font:var(--text-ui)/1.45 var(--bodyFont);position:relative}.bases-search[data-base-query]:has(.base-query-panel:not([hidden])){z-index:var(--z-popover)}.bases-search[data-base-query] [hidden]{display:none!important}.bases-search[data-base-query] .base-query-toolbar{justify-content:flex-end;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.bases-search[data-base-query] #base-search-bar{width:auto;min-width:0;max-width:none;height:auto;min-height:0;padding:0 var(--space-2);background:0 0;border:0;flex:0 auto;position:relative}.bases-search[data-base-query] #base-search-bar .base-search-label{color:var(--darkgray);font:var(--base-toolbar-font-size)/1 var(--codeFont);pointer-events:none;justify-content:center;align-items:center;display:flex}.bases-search[data-base-query] #base-search-bar input[type=text]{font-size:var(--base-toolbar-font-size)}@media (max-width:800px),(pointer:coarse){.bases-search[data-base-query] #base-search-bar input[type=text]{font-size:16px}}.bases-search[data-base-query] #base-search-bar input{opacity:0;width:100%;min-width:0;cursor:var(--cursor-pointer,pointer);padding:0}.bases-search[data-base-query] #base-search-bar:not(:focus-within) input{height:100%;position:absolute;inset:0}.bases-search[data-base-query] #base-search-bar .search-mode-toggle{display:none}.bases-search[data-base-query] #base-search-bar:focus-within{width:var(--base-query-search-width);background:var(--light);outline:2px solid var(--dark);outline-offset:-2px;min-width:8rem}.bases-search[data-base-query] #base-search-bar:focus-within .base-search-label{display:none}.bases-search[data-base-query] #base-search-bar:focus-within input{opacity:1;cursor:var(--cursor-text,text)}.bases-search[data-base-query] #base-search-bar:focus-within .search-mode-toggle{display:inline-flex}@media (hover:hover) and (pointer:fine){.bases-search[data-base-query] #base-search-bar:hover{background:var(--base-query-surface)}}.bases-search[data-base-query] #base-search-bar .mode-option{color:var(--darkgray);min-height:1.5rem}.bases-search[data-base-query] #base-search-bar .mode-option.active{color:var(--dark);background:var(--base-query-selected)}.bases-search[data-base-query] #base-search-bar .mode-option:focus-visible{outline-color:var(--dark)}.bases-search[data-base-query] button:not(.g-select-trigger,.g-select-option){box-sizing:border-box;min-height:var(--base-query-control-height);padding:var(--space-1) var(--space-3);border:1px solid var(--base-query-line);border-radius:var(--radius-none);background:var(--light);color:var(--dark);font:inherit;text-align:center;cursor:var(--cursor-pointer,pointer);line-height:1.35}.bases-search[data-base-query] button:not(.g-select-trigger,.g-select-option):focus-visible{outline:2px solid var(--dark);outline-offset:2px}.bases-search[data-base-query] button:not(.g-select-trigger,.g-select-option):disabled{opacity:.5;cursor:var(--cursor-default,default)}@media (hover:hover) and (pointer:fine){.bases-search[data-base-query] button:not(.g-select-trigger,.g-select-option):hover:enabled{background:var(--base-query-surface)}}.bases-search[data-base-query] button:not(.g-select-trigger,.g-select-option){justify-content:center;align-items:center;display:inline-flex}.bases-search[data-base-query] .base-query-actions{box-sizing:border-box;min-width:0;max-width:100%;height:var(--base-query-control-height);border:1px solid var(--base-query-line);border-radius:var(--radius-none);background:var(--base-query-surface);isolation:isolate;flex:none;align-items:stretch;display:inline-flex}.bases-search[data-base-query] .base-query-tabs{flex:none;align-items:stretch;display:inline-flex}.bases-search[data-base-query] .base-query-tabs>button{appearance:none;min-width:0;height:100%;min-height:0;padding:0 var(--space-2);color:var(--darkgray);font-family:var(--codeFont);font-size:var(--base-toolbar-font-size);white-space:nowrap;background:0 0;border:0;flex:none;margin:0;line-height:1}.bases-search[data-base-query] .base-query-tabs>button:focus-visible{z-index:1;outline-offset:-2px}.bases-search[data-base-query] .base-query-tabs button[aria-expanded=true]{color:var(--dark);background:var(--base-query-selected)}.bases-search[data-base-query][data-base-query-modified=true] .base-query-actions{position:relative}.bases-search[data-base-query][data-base-query-modified=true] .base-query-actions:after{content:"";background:var(--dark);pointer-events:none;block-size:4px;inline-size:4px;position:absolute;inset-block-start:3px;inset-inline-end:3px}.bases-search[data-base-query] .base-query-panel{z-index:var(--z-popover);box-sizing:border-box;max-block-size:min(42rem,100dvh - 8rem);inline-size:min(48rem,100vw - 3rem);padding:var(--space-3);border:1px solid var(--base-query-line);border-radius:var(--radius-none);background:var(--light);overscroll-behavior:contain;min-width:0;margin:0;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0;overflow-y:auto;container:base-query/inline-size}.bases-search[data-base-query] .base-query-panel-heading{align-items:center;gap:var(--space-2);min-width:0;color:var(--dark);display:flex}.bases-search[data-base-query] .base-query-panel-heading>span{overflow-wrap:anywhere;flex:1}.bases-search[data-base-query] .base-query-panel-heading button{width:var(--base-query-control-height);background:0 0;border:0;flex-shrink:0;place-items:center;padding:0;display:grid}.bases-search[data-base-query] .base-query-status,.bases-search[data-base-query] .base-query-help,.bases-search[data-base-query] .base-query-error{font-size:var(--text-meta);overflow-wrap:anywhere;margin:0;line-height:1.5}.bases-search[data-base-query] .base-query-status{font-variant-numeric:tabular-nums;margin-block-end:var(--space-3)}.bases-search[data-base-query] .base-query-help{margin-block-end:var(--space-2)}.bases-search[data-base-query] .base-query-error{white-space:pre-wrap;color:var(--dark);padding:var(--space-2);border:1px solid var(--base-query-line);background:color-mix(in srgb, var(--tertiary) 15%, var(--light));font-family:var(--codeFont);margin-block-start:var(--space-3)}.bases-search[data-base-query] .base-query-editor{border:1px solid var(--base-query-line);min-width:0;font:var(--text-meta)/1.6 var(--codeFont)}.bases-search[data-base-query] .base-query-editor:focus-within{border-color:var(--dark)}.bases-search[data-base-query] .base-query-editor .cm-editor{color:var(--dark);background:0 0}.bases-search[data-base-query] .base-query-editor .cm-editor.cm-focused{outline:1px solid var(--dark)}.bases-search[data-base-query] .base-query-editor .cm-scroller{max-block-size:min(28rem,50dvh);font-family:inherit;overflow:auto}.bases-search[data-base-query] .base-query-editor .cm-content{min-block-size:4.5rem;padding:var(--space-2);caret-color:var(--dark)}.bases-search[data-base-query] .base-query-editor .cm-line{padding:0}.bases-search[data-base-query] .base-query-editor .cm-gutters{background:var(--base-query-surface);color:var(--darkgray);border-color:var(--base-query-line)}.bases-search[data-base-query] .base-query-editor .cm-cursor{border-left-color:var(--dark)}.bases-search[data-base-query] .base-query-editor .cm-selectionBackground{background:var(--base-query-selected)}.bases-search[data-base-query] .base-query-sorts{table-layout:fixed;border-collapse:collapse;border:1px solid var(--base-query-line);width:100%;margin:0;display:table}.bases-search[data-base-query] .base-query-sorts td{border:1px solid var(--base-query-line);vertical-align:middle;padding:0}.bases-search[data-base-query] .base-query-sorts .base-query-column-rank{width:1.75rem}.bases-search[data-base-query] .base-query-sorts .base-query-column-direction{width:7.5rem}.bases-search[data-base-query] .base-query-sorts .base-query-column-remove{width:var(--base-query-action-size)}.bases-search[data-base-query] .base-query-sorts .g-select{min-width:0}.bases-search[data-base-query] .base-query-sorts .g-select-trigger{background:0 0;border:0;width:100%;min-width:0}.bases-search[data-base-query] .base-query-sorts .g-select-trigger:focus-visible{outline-offset:-2px}.bases-search[data-base-query] .base-query-sorts .g-select-menu{background:var(--light)}.bases-search[data-base-query] .base-query-sorts td>button:not([data-base-query-add-sort]){width:100%;min-height:0;height:calc(var(--base-query-action-size) - 1px);background:0 0;border:0;padding:0;display:flex}.bases-search[data-base-query] .base-query-sorts td>button:not([data-base-query-add-sort]):focus-visible{outline-offset:-2px}.bases-search[data-base-query] .base-query-sort-rank{text-align:center;font:var(--text-meta)/1.5 var(--codeFont);font-variant-numeric:tabular-nums}.bases-search[data-base-query] .base-query-sorts button[data-base-query-add-sort]{width:100%;min-height:var(--base-query-action-size);font-size:var(--text-meta);background:0 0;border:0;justify-content:flex-start;margin:0;padding-inline:.42rem}.bases-search[data-base-query] .base-query-scope{font-size:var(--text-meta);margin-block-start:var(--space-3)}.bases-search[data-base-query] .base-query-scope summary{width:fit-content;cursor:var(--cursor-pointer,pointer);color:var(--dark)}.bases-search[data-base-query] .base-query-scope summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.bases-search[data-base-query] .base-query-scope code{font-size:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin-block-start:var(--space-2);display:block}.bases-search[data-base-query] .base-query-footer{align-items:center;gap:var(--space-2);border-block-start:1px solid var(--base-query-line);margin-block-start:var(--space-3);padding-block-start:var(--space-3);display:flex}.bases-search[data-base-query] .base-query-syntax{min-height:var(--base-query-action-size);color:var(--darkgray);font-size:var(--text-meta);text-underline-offset:.2em;white-space:nowrap;align-items:center;text-decoration:underline;display:inline-flex}.bases-search[data-base-query] .base-query-syntax:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.bases-search[data-base-query] .base-query-footer-actions{align-items:center;gap:var(--space-1);flex:none;margin-inline-start:auto;display:flex}.bases-search[data-base-query] .base-query-footer-actions button{min-height:var(--base-query-action-size);height:var(--base-query-action-size);padding:0 var(--space-2);font-size:var(--text-meta);white-space:nowrap}.bases-search[data-base-query] .base-query-footer-actions [data-base-query-download]{width:var(--base-query-action-size);padding:0}.bases-search[data-base-query] .base-query-footer-actions [data-base-query-download] svg{display:block}.bases-search[data-base-query] .base-query-footer-actions [data-base-query-apply]{background:var(--base-query-selected)}@container base-query (max-width:22rem){.bases-search[data-base-query] .base-query-sorts .base-query-column-direction{width:6.75rem}}@media (pointer:coarse){.bases-search[data-base-query]{--base-query-control-height:44px;--base-query-action-size:44px}.bases-search[data-base-query] .cm-content{font-size:1rem}.bases-search[data-base-query] #base-search-bar .mode-option{min-width:32px;min-height:32px}}@media (forced-colors:active){.bases-search[data-base-query] button:focus-visible,.bases-search[data-base-query] .cm-editor.cm-focused{outline-color:highlight}}.stream[data-stream-layout]{--stream-line:color-mix(in srgb, var(--gray) 55%, transparent);--stream-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--stream-group-height:2.25rem;--stream-year-offset:0rem;--stream-month-offset:0rem}.stream[data-stream-layout][data-stream-view=index]{--stream-year-offset:var(--stream-group-height)}.stream[data-stream-layout][data-stream-view=index],.stream[data-stream-layout][data-stream-view=year]{--stream-month-offset:var(--stream-group-height)}.stream[data-stream-layout] .stream-legend-row{z-index:calc(var(--z-sticky) + 2);box-sizing:border-box;height:var(--stream-group-height);background:var(--light);border-color:var(--stream-line);align-items:center;padding:.35rem .5rem;position:sticky;top:0}.stream[data-stream-layout] .stream-legend-month>.stream-legend-row{top:var(--stream-year-offset);z-index:calc(var(--z-sticky) + 1)}.stream[data-stream-layout] .stream-legend-count{margin:.75rem 0}.stream[data-stream-layout] .stream-legend-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;margin:0;display:table;overflow:visible}.stream[data-stream-layout] .stream-legend-entry{box-sizing:border-box;border-color:var(--stream-line);min-height:2.125rem;padding:0;font-size:max(12px,.75rem)}.stream[data-stream-layout] .stream-legend-entry td{overflow-wrap:anywhere;border:0;min-width:0}.stream[data-stream-layout] .stream-legend-title{display:block}.stream[data-stream-layout] .stream-legend-date-cell{grid-area:auto}.stream[data-stream-layout] .stream-legend-summary-metric,.stream[data-stream-layout] .stream-legend-meta,.stream[data-stream-layout] .stream-legend-month>.stream-legend-row .stream-legend-row-title{font-size:max(12px,.75rem)}.stream[data-stream-layout] .stream-legend-lock{color:var(--darkgray)}.stream[data-stream-layout]{box-sizing:border-box;padding:0}.stream[data-stream-layout]>.stream-legend>.stream-legend-groups,.stream[data-stream-layout]>.stream-legend>.stream-legend-table{box-sizing:border-box;border-top:1px solid var(--stream-line);border-inline:1px solid var(--stream-line)}.stream[data-stream-layout] .stream-legend-columns{display:table-header-group}.stream[data-stream-layout] .stream-legend-columns th{top:calc(var(--stream-year-offset) + var(--stream-month-offset));z-index:var(--z-sticky);background:var(--stream-surface);color:var(--darkgray);text-align:left;font:max(12px, .75rem) var(--codeFont);border-bottom:1px solid var(--stream-line);padding:.55rem .5rem;position:sticky}.stream[data-stream-layout] .stream-legend-columns th:first-child{width:3ch}.stream[data-stream-layout] .stream-legend-columns th:nth-child(2){width:48%}.stream[data-stream-layout] .stream-legend-columns th:last-child{text-align:right;width:9ch}.stream[data-stream-layout] .stream-legend-entries{display:table-row-group}.stream[data-stream-layout] .stream-legend-entry{display:table-row}.stream[data-stream-layout] .stream-legend-entry td{border-bottom:1px solid var(--stream-line);border-right:1px solid var(--stream-line);vertical-align:top;padding:.5rem}.stream[data-stream-layout] .stream-legend-entry td:last-child{border-right:0}.stream[data-stream-layout] .stream-legend-entry .stream-legend-tags{display:table-cell}.stream[data-stream-layout] .stream-legend-entry .stream-entry-tag{margin:0 .25rem .25rem 0;padding:1px 3px;font-size:10px;line-height:1.2;display:inline-block}.stream[data-stream-layout] .stream-legend-entry .stream-legend-title{white-space:normal}@media (hover:hover) and (pointer:fine){.stream[data-stream-layout] .stream-legend-entry:hover{background:var(--stream-surface)}}@media (max-width:600px){.stream[data-stream-layout] .stream-legend-columns th:nth-child(2){width:35%}.stream[data-stream-layout] .stream-legend-columns th:last-child{width:6ch}.stream[data-stream-layout] .stream-legend-entry td,.stream[data-stream-layout] .stream-legend-columns th{padding:.5rem .25rem}.stream[data-stream-layout] .stream-legend-meta{white-space:normal}}@media (pointer:coarse){.stream[data-stream-layout] .stream-legend-entry a{align-content:center;min-height:44px}}[data-protected-unlock-trigger][hidden]{display:none!important}.stream-title-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.35rem;font-size:.85rem;font-style:italic;display:flex}.stream-title-actions a,.stream-title-actions button{color:var(--darkgray);background:0 0;text-decoration:none}.stream-title-actions a:hover,.stream-title-actions a:focus-visible,.stream-title-actions button:hover,.stream-title-actions button:focus-visible{color:var(--dark);background:0 0;text-decoration:underline}.stream-title-actions button{appearance:none;font:inherit;cursor:var(--cursor-pointer,pointer);border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.stream-title-actions button:focus-visible{outline:1px solid var(--secondary);outline-offset:3px}.stream-title-actions .stream-title-unlock{width:1.2rem;height:1.2rem}.stream-title-actions .stream-share-actions{flex-wrap:wrap;gap:.5rem;display:inline-flex}.stream-title-actions .stream-unlock-icon{width:.95rem;height:.95rem;display:block}.preview-container>.preview-inner.stream-preview section.header,[data-slug*=stream] section.header{border-bottom:0;padding-bottom:0;position:static!important}.preview-container>.preview-inner.stream-preview .aside-container,[data-slug*=stream] .aside-container{display:none}.preview-container>.preview-inner.stream-preview .page-header:not(.popover *),[data-slug*=stream] .page-header:not(.popover *){padding-top:0!important}.preview-container>.preview-inner.stream-preview .main-col,[data-slug*=stream] .main-col{grid-column-end:9;width:100%}@media (min-width:800px) and (max-width:1400px){.preview-container>.preview-inner.stream-preview .main-col,[data-slug*=stream] .main-col{grid-column:3/-3}}@media (max-width:800px){.preview-container>.preview-inner.stream-preview .main-col,[data-slug*=stream] .main-col{grid-column:3/-3}}.preview-container>.preview-inner.stream-preview .page-footer,[data-slug*=stream] .page-footer{display:none}.preview-container>.preview-inner.stream-preview,.stream{margin:0 auto;padding:1rem 0}.preview-container>.preview-inner.stream-preview .stream-feed,.stream .stream-feed{flex-direction:column;gap:1.2rem;margin:0;padding:0;list-style:none;display:flex}.preview-container>.preview-inner.stream-preview .stream-feed[hidden],.stream .stream-feed[hidden]{display:none}.preview-container>.preview-inner.stream-preview .stream-feed>[data-entry-id][hidden],.stream .stream-feed>[data-entry-id][hidden]{display:none!important}.preview-container>.preview-inner.stream-preview .stream-feed>.stream-entry-spacer,.stream .stream-feed>.stream-entry-spacer{contain:strict;pointer-events:none;min-block-size:1px;inline-size:100%;display:block}.preview-container>.preview-inner.stream-preview .stream-feed-sentinel,.stream .stream-feed-sentinel{min-height:1px;color:var(--darkgray);text-align:center;margin-top:1rem;font-size:.85rem}.preview-container>.preview-inner.stream-preview .stream-feed-sentinel[data-stream-loading=loading],.preview-container>.preview-inner.stream-preview .stream-feed-sentinel[data-stream-loading=error],.stream .stream-feed-sentinel[data-stream-loading=loading],.stream .stream-feed-sentinel[data-stream-loading=error]{min-height:2rem;padding:.5rem 0}.preview-container>.preview-inner.stream-preview .stream-feed-sentinel[hidden],.stream .stream-feed-sentinel[hidden]{display:none}.preview-container>.preview-inner.stream-preview .stream-feed-archive,.stream .stream-feed-archive{color:var(--darkgray);margin:1.5rem 0 0;font-size:.85rem}.preview-container>.preview-inner.stream-preview .stream-feed-archive a,.stream .stream-feed-archive a{color:inherit}.preview-container>.preview-inner.stream-preview .stream-entry-search-result .search-highlight,.stream .stream-entry-search-result .search-highlight{color:var(--dark);background:color-mix(in srgb, var(--secondary) 25%, transparent);border-radius:var(--radius-none);padding:.05em .15em;font-weight:500}.preview-container>.preview-inner.stream-preview .stream-search-loading-label,.preview-container>.preview-inner.stream-preview .stream-search-load-error .stream-entry-body,.stream .stream-search-loading-label,.stream .stream-search-load-error .stream-entry-body{color:var(--darkgray);margin:0}.preview-container>.preview-inner.stream-preview .stream-search-loading,.stream .stream-search-loading{min-block-size:40rem}.preview-container>.preview-inner.stream-preview .stream-protected-unlock,.stream .stream-protected-unlock{color:var(--darkgray);margin:0 0 1rem;padding:.75rem 0}.preview-container>.preview-inner.stream-preview .stream-protected-unlock[hidden],.stream .stream-protected-unlock[hidden]{display:none}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .stream-protected-unlock-form,.stream .stream-protected-unlock .stream-protected-unlock-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-input,.stream .stream-protected-unlock .password-input{box-sizing:border-box;width:min(18rem,100%);color:var(--dark);border:1px solid var(--lightgray);border-radius:var(--radius-none);font-family:var(--bodyFont);background:0 0;padding:.45rem .55rem;font-size:.9rem}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-input:focus,.stream .stream-protected-unlock .password-input:focus{border-color:var(--secondary);outline:none}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-input::placeholder,.stream .stream-protected-unlock .password-input::placeholder{color:var(--darkgray)}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-submit,.stream .stream-protected-unlock .password-submit{color:var(--darkgray);border:1px solid var(--lightgray);border-radius:var(--radius-none);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);background:0 0;padding:.45rem .65rem;font-size:.9rem}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-submit:hover,.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-submit:focus-visible,.stream .stream-protected-unlock .password-submit:hover,.stream .stream-protected-unlock .password-submit:focus-visible{color:var(--dark);border-color:var(--gray);background:0 0}.preview-container>.preview-inner.stream-preview .stream-protected-unlock .password-error,.stream .stream-protected-unlock .password-error{color:var(--rose);margin:.4rem 0 0;font-size:.82rem}.preview-container>.preview-inner.stream-preview .stream-entry,.stream .stream-entry{grid-template-columns:190px 1fr;align-items:start;gap:2rem;display:grid}.preview-container>.preview-inner.stream-preview .stream-entry-meta,.stream .stream-entry-meta{overflow-wrap:break-word;word-break:break-word;flex-direction:column;gap:.5rem;min-width:0;max-width:100%;display:flex}.preview-container>.preview-inner.stream-preview .stream-entry-date,.stream .stream-entry-date{color:var(--darkgray);align-items:center;gap:.35rem;font-size:.85rem;text-decoration:none;display:inline-flex}.preview-container>.preview-inner.stream-preview .stream-entry-date time,.stream .stream-entry-date time{color:inherit}.preview-container>.preview-inner.stream-preview .stream-entry-date[data-stream-link],.stream .stream-entry-date[data-stream-link]{cursor:var(--cursor-pointer,pointer)}.preview-container>.preview-inner.stream-preview .stream-entry-date[data-stream-link]:hover,.stream .stream-entry-date[data-stream-link]:hover{text-decoration:underline}.preview-container>.preview-inner.stream-preview .stream-entry-date:focus-visible,.stream .stream-entry-date:focus-visible{outline:2px solid var(--secondary);outline-offset:3px}.preview-container>.preview-inner.stream-preview .stream-entry-tags,.stream .stream-entry-tags{gap:.15em;margin-block-start:0;padding-inline-start:0;font-size:.5rem;line-height:1;display:flex}.preview-container>.preview-inner.stream-preview .stream-entry-tag,.stream .stream-entry-tag{color:var(--darkgray);width:fit-content;font-family:var(--codeFont);text-transform:uppercase;border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);background:0 0;border:1px solid;align-items:center;margin-right:5px;padding:2px 4px;font-size:10px;line-height:1.2;display:inline}.preview-container>.preview-inner.stream-preview .stream-entry-socials,.stream .stream-entry-socials{flex-wrap:wrap;gap:.5rem;font-size:.85rem;display:flex}.preview-container>.preview-inner.stream-preview .stream-entry-socials address,.stream .stream-entry-socials address{margin:0;font-style:normal}.preview-container>.preview-inner.stream-preview .stream-entry-socials a,.stream .stream-entry-socials a{color:var(--darkgray);text-decoration:underline}.preview-container>.preview-inner.stream-preview .stream-entry-socials a:hover,.stream .stream-entry-socials a:hover{color:var(--dark)}.preview-container>.preview-inner.stream-preview .stream-entry-share,.stream .stream-entry-share{flex-wrap:wrap;gap:.5rem;font-size:.85rem;display:flex}.preview-container>.preview-inner.stream-preview .stream-entry-share button,.stream .stream-entry-share button{appearance:none;width:fit-content;color:var(--darkgray);font:inherit;cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:0;text-decoration:underline;display:inline}@media (hover:hover) and (pointer:fine){.preview-container>.preview-inner.stream-preview .stream-entry-share button:hover,.stream .stream-entry-share button:hover{color:var(--dark)}}.preview-container>.preview-inner.stream-preview .stream-entry-share button:focus-visible,.stream .stream-entry-share button:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.preview-container>.preview-inner.stream-preview .stream-entry-importance,.stream .stream-entry-importance{color:var(--darkgray);font-size:.85rem}.preview-container>.preview-inner.stream-preview .stream-entry-importance .stream-entry-importance-label,.stream .stream-entry-importance .stream-entry-importance-label,.preview-container>.preview-inner.stream-preview .stream-entry-importance .stream-entry-importance-value,.stream .stream-entry-importance .stream-entry-importance-value{color:var(--darkgray)}.preview-container>.preview-inner.stream-preview .stream-entry-body,.stream .stream-entry-body{overflow-wrap:break-word;word-break:break-word;flex-direction:column;gap:.75rem;min-width:0;max-width:100%;display:flex}.preview-container>.preview-inner.stream-preview .stream-entry-title,.stream .stream-entry-title{margin:0}.preview-container>.preview-inner.stream-preview .protected-content-wrapper.inline.compact,.stream .protected-content-wrapper.inline.compact{width:fit-content;min-height:0;padding:.25rem 0}.preview-container>.preview-inner.stream-preview .stream-protected-lock,.stream .stream-protected-lock{appearance:none;width:1.45rem;height:1.45rem;color:var(--gray);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.preview-container>.preview-inner.stream-preview .stream-protected-lock:hover,.preview-container>.preview-inner.stream-preview .stream-protected-lock:focus-visible,.stream .stream-protected-lock:hover,.stream .stream-protected-lock:focus-visible{color:var(--darkgray);background:0 0}.preview-container>.preview-inner.stream-preview .stream-protected-lock:focus-visible,.stream .stream-protected-lock:focus-visible{outline:1px solid var(--secondary);outline-offset:3px}.preview-container>.preview-inner.stream-preview .stream-protected-lock .stream-unlock-icon,.stream .stream-protected-lock .stream-unlock-icon{width:1rem;height:1rem;display:block}.preview-container>.preview-inner.stream-preview .stream-entry-description,.stream .stream-entry-description{color:var(--darkgray);margin:0;font-style:italic}.preview-container>.preview-inner.stream-preview .stream-entry-wordcount,.stream .stream-entry-wordcount{color:var(--darkgray);font-size:.85rem;font-style:italic}.preview-container>.preview-inner.stream-preview .stream-entry-content,.stream .stream-entry-content{color:var(--darkgray);line-height:1.7}.preview-container>.preview-inner.stream-preview .stream-entry-content>span,.stream .stream-entry-content>span{display:block}.preview-container>.preview-inner.stream-preview .stream-entry-content p,.stream .stream-entry-content p{margin:0 0 1rem}.preview-container>.preview-inner.stream-preview .stream-entry-content code,.stream .stream-entry-content code{font-family:var(--codeFont);background:var(--lightgray);border-radius:var(--radius-none);padding:.1em .3em;font-size:.9em}.preview-container>.preview-inner.stream-preview .stream-entry-content strong,.stream .stream-entry-content strong{color:var(--dark);font-weight:600}.preview-container>.preview-inner.stream-preview .stream-entry-content em,.stream .stream-entry-content em{font-style:italic}.preview-container>.preview-inner.stream-preview .stream-entry-content ul,.preview-container>.preview-inner.stream-preview .stream-entry-content ol:not(.tri-calendar-list),.stream .stream-entry-content ul,.stream .stream-entry-content ol:not(.tri-calendar-list){margin:.5rem 0;padding-left:1.5rem}.preview-container>.preview-inner.stream-preview .stream-entry-content blockquote:not([class~=quotes]),.stream .stream-entry-content blockquote:not([class~=quotes]){border-left:2px solid var(--secondary);color:var(--darkgray);margin:0;padding-left:1rem}.preview-container>.preview-inner.stream-preview .stream-entry-content blockquote.quotes,.stream .stream-entry-content blockquote.quotes{padding-bottom:2rem;padding-left:0}.preview-container>.preview-inner.stream-preview .stream-legend,.stream .stream-legend{flex-direction:column;gap:.75rem;display:flex}.preview-container>.preview-inner.stream-preview .stream-legend-count,.stream .stream-legend-count{color:var(--darkgray);margin:0 0 .25rem;font-size:.75rem}.preview-container>.preview-inner.stream-preview .stream-legend-groups,.stream .stream-legend-groups{flex-direction:column;display:flex}.preview-container>.preview-inner.stream-preview .stream-legend-year+.stream-legend-year,.stream .stream-legend-year+.stream-legend-year{margin-top:1rem}.preview-container>.preview-inner.stream-preview .stream-legend-row,.stream .stream-legend-row{border-bottom:1px solid var(--gray);color:var(--darkgray);grid-template-columns:minmax(0,1fr) 3rem 5.75rem 5.75rem;align-items:baseline;gap:.7rem;padding:.55rem .1rem .35rem;display:grid}.preview-container>.preview-inner.stream-preview .stream-legend-row-title,.stream .stream-legend-row-title{min-width:0;color:var(--dark);font-family:var(--codeFont);text-overflow:ellipsis;white-space:nowrap;background:0 0;font-size:.9rem;font-weight:400;text-decoration:none;overflow:hidden}.preview-container>.preview-inner.stream-preview .stream-legend-month>.stream-legend-row,.stream .stream-legend-month>.stream-legend-row{border-bottom-color:color-mix(in srgb, var(--gray) 35%, transparent)}.preview-container>.preview-inner.stream-preview .stream-legend-month>.stream-legend-row .stream-legend-row-title,.stream .stream-legend-month>.stream-legend-row .stream-legend-row-title{font-size:.74rem}.preview-container>.preview-inner.stream-preview .stream-legend-summary-metric,.preview-container>.preview-inner.stream-preview .stream-legend-meta,.stream .stream-legend-summary-metric,.stream .stream-legend-meta{color:var(--darkgray);font-family:var(--codeFont);white-space:nowrap;font-size:.62rem}.preview-container>.preview-inner.stream-preview .stream-legend-summary-metric,.stream .stream-legend-summary-metric{width:100%;color:var(--darkgray);text-align:left;grid-template-columns:3ch 1fr;justify-self:end;gap:.35rem;display:grid}.preview-container>.preview-inner.stream-preview .stream-legend-summary-metric-restricted,.stream .stream-legend-summary-metric-restricted{grid-template-columns:3ch auto;align-items:center}.preview-container>.preview-inner.stream-preview .stream-legend-summary-metric-empty,.stream .stream-legend-summary-metric-empty{visibility:hidden}.preview-container>.preview-inner.stream-preview .stream-legend-summary-number,.stream .stream-legend-summary-number{color:var(--darkgray);text-align:right}.preview-container>.preview-inner.stream-preview .stream-legend-meta,.stream .stream-legend-meta{text-align:end}.preview-container>.preview-inner.stream-preview .stream-legend-lock,.stream .stream-legend-lock{width:1.25rem;height:1.25rem;color:var(--gray);cursor:var(--cursor-help,help);vertical-align:middle;background:0 0;justify-content:center;align-items:center;display:inline-flex;position:relative}.preview-container>.preview-inner.stream-preview .stream-legend-lock:hover,.preview-container>.preview-inner.stream-preview .stream-legend-lock:focus-visible,.stream .stream-legend-lock:hover,.stream .stream-legend-lock:focus-visible{color:var(--darkgray);background:0 0}.preview-container>.preview-inner.stream-preview .stream-legend-lock:focus-visible,.stream .stream-legend-lock:focus-visible{outline:1px solid var(--secondary);outline-offset:3px}.preview-container>.preview-inner.stream-preview .stream-legend-lock:after,.stream .stream-legend-lock:after{content:attr(data-lock-popover-title) "\a " attr(data-lock-popover-copy);z-index:var(--z-popover);width:min(15rem,100vw - 2rem);color:var(--darkgray);background:var(--light);border:1px solid var(--gray);border-radius:var(--radius-none);font-family:var(--bodyFont);text-align:left;white-space:pre-line;opacity:0;visibility:hidden;pointer-events:none;padding:.65rem .75rem;font-size:.78rem;line-height:1.35;transition-property:opacity,transform,visibility;transition-duration:.12s;transition-timing-function:cubic-bezier(.2,0,0,1);position:absolute;top:calc(100% + .45rem);right:0;transform:translateY(-.15rem)}.preview-container>.preview-inner.stream-preview .stream-legend-lock:hover:after,.preview-container>.preview-inner.stream-preview .stream-legend-lock:focus-visible:after,.stream .stream-legend-lock:hover:after,.stream .stream-legend-lock:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}.preview-container>.preview-inner.stream-preview .stream-lock-icon,.stream .stream-lock-icon{width:.85rem;height:.85rem;display:block}.preview-container>.preview-inner.stream-preview .stream-legend-table,.stream .stream-legend-table{width:100%}.preview-container>.preview-inner.stream-preview .stream-legend-entry,.stream .stream-legend-entry{min-width:0;font-family:var(--codeFont);grid-template-columns:2.4ch minmax(0,1fr) minmax(0,.45fr) 9ch;align-items:center;gap:.6rem;display:grid}.preview-container>.preview-inner.stream-preview .stream-legend-entries,.stream .stream-legend-entries{margin:0;padding:0;list-style:none}.preview-container>.preview-inner.stream-preview .stream-legend-entry,.stream .stream-legend-entry{border-bottom:1px solid color-mix(in srgb, var(--gray) 20%, transparent);color:var(--darkgray);padding:.4rem .1rem;font-size:.72rem}.preview-container>.preview-inner.stream-preview .stream-legend-entry[data-stream-restricted=true],.stream .stream-legend-entry[data-stream-restricted=true]{background:color-mix(in srgb, var(--lightgray) 16%, transparent)}.preview-container>.preview-inner.stream-preview .stream-legend-date,.preview-container>.preview-inner.stream-preview .stream-legend-title,.preview-container>.preview-inner.stream-preview .stream-legend-row-title,.stream .stream-legend-date,.stream .stream-legend-title,.stream .stream-legend-row-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;text-decoration:none;overflow:hidden}.preview-container>.preview-inner.stream-preview .stream-legend-date:hover,.preview-container>.preview-inner.stream-preview .stream-legend-date:focus-visible,.preview-container>.preview-inner.stream-preview .stream-legend-title:hover,.preview-container>.preview-inner.stream-preview .stream-legend-title:focus-visible,.preview-container>.preview-inner.stream-preview .stream-legend-row-title:hover,.preview-container>.preview-inner.stream-preview .stream-legend-row-title:focus-visible,.stream .stream-legend-date:hover,.stream .stream-legend-date:focus-visible,.stream .stream-legend-title:hover,.stream .stream-legend-title:focus-visible,.stream .stream-legend-row-title:hover,.stream .stream-legend-row-title:focus-visible{text-underline-offset:.15em;text-decoration:underline}.preview-container>.preview-inner.stream-preview .stream-legend-date:focus-visible,.preview-container>.preview-inner.stream-preview .stream-legend-title:focus-visible,.preview-container>.preview-inner.stream-preview .stream-legend-row-title:focus-visible,.stream .stream-legend-date:focus-visible,.stream .stream-legend-title:focus-visible,.stream .stream-legend-row-title:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.preview-container>.preview-inner.stream-preview .stream-legend-date,.stream .stream-legend-date{color:var(--darkgray)}.preview-container>.preview-inner.stream-preview .stream-legend-title,.stream .stream-legend-title{color:var(--dark)}.preview-container>.preview-inner.stream-preview .stream-legend-tags,.stream .stream-legend-tags{flex-wrap:wrap;gap:.25rem;min-width:0;display:flex}.preview-container>.preview-inner.stream-preview .stream-backlink,.stream .stream-backlink{margin-top:2rem;font-size:.85rem}.preview-container>.preview-inner.stream-preview .stream-backlink a,.stream .stream-backlink a{color:var(--darkgray);text-decoration:none}.preview-container>.preview-inner.stream-preview .stream-backlink a:hover,.preview-container>.preview-inner.stream-preview .stream-backlink a:focus-visible,.stream .stream-backlink a:hover,.stream .stream-backlink a:focus-visible{text-decoration:underline}.stream-empty{min-height:50vh;color:var(--darkgray);justify-content:center;align-items:center;font-size:1rem;display:flex}@media (max-width:800px){.stream{padding:1rem 0}.stream .stream-feed{gap:2rem}.stream .stream-entry{flex-direction:column;align-items:stretch;gap:.5rem;display:flex}.stream .stream-entry-meta,.stream .stream-entry-body{display:contents}.stream .stream-entry-title{order:1}.stream .stream-entry-date{order:2}.stream .stream-entry-tags{flex-flow:wrap;order:3}.stream .stream-entry-description{order:4}.stream .stream-entry-socials,.stream .stream-entry-share,.stream .stream-entry-importance{order:5}.stream .stream-entry-content,.stream .stream-entry-private,.stream .protected-content-wrapper,.stream .stream-search-loading-label{order:6}.stream .stream-entry-wordcount{order:7}.stream .stream-entry-date:focus-visible{outline-offset:2px}.stream .stream-legend-row{grid-template-columns:minmax(0,1fr) auto;gap:.5rem}.stream .stream-legend-row .stream-legend-summary-metric{display:none}.stream .stream-legend-row .stream-legend-summary-metric-entry{grid-column:2;width:auto;display:grid}.stream .stream-legend-entry{grid-template-columns:2.4ch minmax(0,1fr) 9ch;grid-template-areas:"date entry meta"".tags tags";gap:.2rem .5rem}.stream .stream-legend-entry .stream-legend-date{grid-area:date}.stream .stream-legend-entry .stream-legend-title{grid-area:entry}.stream .stream-legend-entry .stream-legend-tags{grid-area:tags}.stream .stream-legend-entry .stream-legend-meta{grid-area:meta}.stream .stream-backlink{margin-top:1.5rem}}.stream-search-container{width:100%;margin-bottom:2rem}.stream-search-form{width:100%;margin-bottom:.5rem;display:flex}.stream-search-input{border:1px solid var(--lightgray);border-radius:var(--radius-none);background:var(--light);color:var(--dark);flex:1;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;transition:border-color .2s}.stream-search-input:focus{border-color:var(--secondary);outline:none}.stream-search-input::placeholder{color:var(--gray)}.stream-search-status{color:var(--gray);margin-bottom:1rem;padding:.25rem 0;font-size:.85rem}.stream-entry-content .search-highlight{background:color-mix(in srgb, var(--secondary) 25%, transparent);color:var(--dark);border-radius:var(--radius-none);padding:.05em .15em;font-weight:500}.stream-entry[style*="display: none"]{display:none}[data-slug=vibes] section[class~=header]{border-bottom:0;height:0;padding-bottom:0;position:static}[data-slug=vibes] .page-footer{display:none}[data-slug=vibes] .page-content{margin-bottom:0}.masonry-container{--masonry-gap:5px;box-sizing:border-box;width:100%;min-width:0;min-height:50vh;padding:0}.masonry-container.all-col{grid-column:1/-1}.masonry-grid{column-width:clamp(8.5rem, 18vw, 16rem);column-gap:var(--masonry-gap);width:100%}.masonry-grid[data-masonry-mode=chaos]{column-width:auto;column-count:auto;min-height:100vh;position:relative}.masonry-grid[data-masonry-mode=chaos]>.masonry-image{margin:0;display:none;position:absolute}.masonry-grid[data-masonry-mode=chaos]>.masonry-image[data-positioned]{display:block}.masonry-image{width:100%;height:auto;margin:0 0 var(--masonry-gap);break-inside:avoid;object-fit:contain;cursor:var(--cursor-default,default);display:block;overflow:clip}.masonry-mode-toggle{z-index:var(--z-sticky);width:24px;height:24px;color:var(--dark);background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);touch-action:manipulation;place-items:center;padding:2px;display:grid;position:fixed;inset-block-start:var(--space-2);inset-inline-start:var(--space-2)}.masonry-mode-toggle[hidden]{display:none}.masonry-mode-toggle svg{fill:currentColor;width:16px;height:16px}.masonry-mode-toggle .masonry-chaos-dots,.masonry-mode-toggle[aria-pressed=true] .masonry-tidy-dots{display:none}.masonry-mode-toggle[aria-pressed=true] .masonry-chaos-dots{display:initial}.masonry-mode-toggle:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover){.masonry-mode-toggle:hover{border-color:var(--dark)}}@media (pointer:coarse){.masonry-mode-toggle:before{content:"";position:absolute;inset:-10px}}.masonry-caption-modal{background:var(--light);border:1px solid var(--lightgray);border-radius:var(--radius-none);max-width:300px;z-index:var(--z-modal);pointer-events:none;color:var(--dark);padding:.5rem .75rem;font-size:.875rem;line-height:1.4;display:none;position:fixed}.masonry-caption-modal.visible{display:block}[saved-theme=dark] .masonry-caption-modal{background:var(--dark);border-color:var(--darkgray);color:var(--light)}.masonry-empty{min-height:50vh;color:var(--gray);justify-content:center;align-items:center;font-size:1rem;display:flex}@media (max-width:800px){.masonry-caption-modal{max-width:200px;padding:.4rem .6rem;font-size:.8rem}}.all-reduce-steps{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ars-figure/inline-size}.all-reduce-steps :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .all-reduce-steps{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.all-reduce-steps{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.all-reduce-steps{--ars-own:var(--light);--ars-partial:color-mix(in srgb, var(--darkgray) 20%, var(--light));--ars-recv:var(--fig-salmon);--ars-full:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--ars-head:var(--fig-tab-surface);--ars-on:var(--fig-grid-selected)}:root[saved-theme=dark] .all-reduce-steps{--ars-partial:color-mix(in srgb, var(--gray) 55%, var(--light));--ars-recv:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--ars-full:color-mix(in srgb, var(--fig-sage) 30%, var(--lightgray));--ars-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.ars-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.ars-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.ars-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.ars-segments{grid-auto-flow:column;min-width:0}.ars-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:1.8rem;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .5rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.ars-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.ars-segment:hover{color:var(--dark)}}.ars-segment:has(input:checked){background:var(--ars-on);color:var(--dark)}.ars-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.ars-stepper{gap:.4rem;display:flex}.ars-nav{box-sizing:border-box;border:1px solid var(--fig-stroke);border-radius:var(--radius-none);background:var(--light);height:calc(1.424rem + 2px);color:var(--dark);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);padding:0 .6rem;font-size:.72rem;transition:background-color .14s}@media (hover:hover) and (pointer:fine){.ars-nav:hover:not(:disabled){background:var(--ars-on)}}.ars-nav:disabled{color:var(--fig-tab-fg);border-color:var(--fig-stroke-soft);cursor:var(--cursor-default,default)}.ars-nav:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.ars-status{color:var(--fig-note);margin:.75rem 0 0;font-size:.78rem}.ars-status-step{color:var(--dark);font-family:var(--codeFont)}.ars-svg{width:100%;margin:.6rem auto 0;display:block}.ars-svg[hidden]{display:none}.ars-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.ars-svg .ars-ring{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.ars-svg .ars-ring-head{fill:var(--fig-stroke)}.ars-svg .ars-head{fill:var(--ars-head);stroke:var(--fig-stroke);stroke-width:.8px}.ars-svg .ars-head-label{fill:var(--dark);font-size:9px}.ars-svg .ars-row-label{fill:var(--fig-note);font-size:8.5px}.ars-svg .ars-cell rect{fill:var(--ars-own);stroke:var(--fig-stroke);stroke-width:.8px;transition:fill .18s,stroke-width .18s}.ars-svg .ars-cell text{fill:var(--dark);font-size:9px}.ars-svg .ars-cell[data-ars-state=partial] rect{fill:var(--ars-partial)}.ars-svg .ars-cell[data-ars-state=recv] rect{fill:var(--ars-recv);stroke:var(--dark)}.ars-svg .ars-cell[data-ars-state=full] rect{fill:var(--ars-full)}.ars-svg .ars-cell[data-ars-sender=true] rect{stroke:var(--dark);stroke-width:2px}.ars-legend-list{color:var(--fig-note);flex-wrap:wrap;gap:.3rem .9rem;margin:.6rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.ars-legend-list li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.ars-swatch{box-sizing:border-box;border:1px solid var(--fig-stroke);background:var(--ars-own);width:.7rem;height:.7rem}.ars-swatch[data-ars-state=partial]{background:var(--ars-partial)}.ars-swatch[data-ars-state=recv]{background:var(--ars-recv);border-color:var(--dark)}.ars-swatch[data-ars-state=full]{background:var(--ars-full)}.ars-swatch.ars-swatch--sender{border:2px solid var(--dark)}.ars-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.ars-readout>div{display:contents}.ars-readout dt,.ars-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.ars-readout dt{color:var(--fig-note);font-weight:400}.ars-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.ars-readout .katex{color:inherit;font-size:1em}.ars-readout{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);margin-top:.9rem}.ars-readout dd{overflow-wrap:anywhere}.ars-math{color:inherit;display:inline-block}.ars-math .katex{color:inherit;font-size:.95em}.ars-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.ars-svg .ars-cell rect,.ars-segment,.ars-nav{transition:none}}.attention-circuits{content-visibility:auto;contain-intrinsic-size:auto 42rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:acir-figure/inline-size}.attention-circuits :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .attention-circuits{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.attention-circuits{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.attention-circuits{--acir-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--acir-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--acir-box:var(--light);--acir-box-soft:color-mix(in srgb, var(--lightgray) 80%, var(--light));--acir-input:color-mix(in srgb, var(--gray) 18%, var(--light));--acir-output:color-mix(in srgb, var(--tertiary) 30%, var(--light));--acir-softmax:color-mix(in srgb, var(--lightgray) 55%, var(--light));--acir-qk:var(--fig-salmon);--acir-qk-fill:color-mix(in srgb, var(--fig-salmon) 28%, var(--light));--acir-ov:var(--fig-sage);--acir-ov-fill:color-mix(in srgb, var(--fig-sage) 32%, var(--light));--acir-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--acir-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--acir-tab-neutral:color-mix(in srgb, var(--lightgray) 70%, var(--light))}:root[saved-theme=dark] .attention-circuits{--acir-box:var(--lightgray);--acir-box-soft:color-mix(in srgb, var(--lightgray) 80%, var(--light));--acir-input:color-mix(in srgb, var(--gray) 22%, var(--lightgray));--acir-output:color-mix(in srgb, var(--tertiary) 22%, var(--lightgray));--acir-softmax:color-mix(in srgb, var(--lightgray) 65%, var(--light));--acir-qk-fill:color-mix(in srgb, var(--fig-salmon) 22%, var(--lightgray));--acir-ov-fill:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--acir-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--acir-tab-border:var(--acir-stroke);--acir-tab-neutral:color-mix(in srgb, var(--lightgray) 88%, var(--dark))}.acir-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;padding-bottom:.9rem;display:flex}.acir-circuit-toggle{border:none;align-items:center;gap:.45rem;margin:0;padding:0;display:inline-flex}.acir-circuit-toggle legend{float:left;color:var(--acir-note-fg);font-size:var(--text-meta);margin-right:.6rem}.acir-pill-track{isolation:isolate;border:1px solid var(--acir-tab-border);border-radius:var(--radius-none);background:var(--acir-tab-surface);align-items:stretch;height:1.55rem;display:inline-flex;overflow:hidden}.acir-pill{appearance:none;box-sizing:border-box;background:var(--acir-tab-surface);height:100%;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 .78rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}@media (hover:hover) and (pointer:fine){.acir-pill:not(:disabled):hover{background:var(--acir-tab-neutral);color:var(--dark)}.acir-pill.acir-pill--qk:hover{background:var(--acir-qk-fill)}.acir-pill.acir-pill--ov:hover{background:var(--acir-ov-fill)}}.acir-pill:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.acir-pill.acir-pill--qk[aria-pressed=true]{background:var(--acir-qk-fill);color:var(--dark)}.acir-pill.acir-pill--ov[aria-pressed=true]{background:var(--acir-ov-fill);color:var(--dark)}.acir-pill.acir-pill--none[aria-pressed=true]{background:var(--acir-tab-neutral);color:var(--dark)}.acir-toggle{font-family:var(--codeFont);font-size:var(--text-meta);color:var(--acir-note-fg);cursor:var(--cursor-pointer,pointer);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:inline-flex}.acir-toggle input[type=checkbox]{appearance:none;vertical-align:middle;border:1px solid var(--acir-tab-border);border-radius:var(--radius-none);background:var(--acir-tab-surface);width:.95rem;height:.95rem;cursor:var(--cursor-pointer,pointer);flex:none;transition:background-color .12s,border-color .12s;position:relative;transform:none;margin:0!important}.acir-toggle:hover input[type=checkbox]{border-color:var(--acir-stroke)}.acir-toggle input[type=checkbox]:checked{border-color:color-mix(in srgb, var(--acir-ov) 65%, var(--acir-stroke));background:var(--acir-ov-fill)}.acir-toggle input[type=checkbox]:checked:after{content:"";border:solid color-mix(in srgb, var(--acir-ov) 70%, var(--dark));border-width:0 2px 2px 0;width:.2rem;height:.4rem;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.acir-toggle input[type=checkbox]:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.acir-panels{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:1.5rem;display:grid}.acir-panel{background:0 0;border:0;border-radius:0;flex-direction:column;gap:.6rem;min-width:0;padding:.6rem 0;display:flex}.acir-panel-title{color:var(--acir-note-fg);margin:0;font-size:.92rem;font-weight:600}.acir-panel-title .katex{color:inherit;font-size:1em}.acir-panel-sub{color:var(--acir-note-fg);margin:0;font-size:.84rem;line-height:1.45}.acir-panel-sub .katex{font-size:.95em}.acir-graph{aspect-ratio:320/460;--acir-u:.889;width:100%;height:auto;display:block}.acir-graph [hidden]{display:none}.acir-graph .acir-box,.acir-graph .acir-line,.acir-graph .acir-node{vector-effect:non-scaling-stroke}.acir-graph .acir-box{fill:var(--acir-box);stroke:var(--acir-stroke);stroke-width:1px}.acir-graph .acir-box.acir-box--input{fill:var(--acir-input)}.acir-graph .acir-box.acir-box--output{fill:var(--acir-output)}.acir-graph .acir-box.acir-box--softmax{fill:var(--acir-softmax)}.acir-graph .acir-box.acir-box--value{fill:var(--acir-box-soft)}.acir-graph .acir-box.acir-box--qk-pattern{fill:var(--acir-qk-fill);stroke:color-mix(in srgb, var(--acir-qk) 65%, var(--acir-stroke))}.acir-graph .acir-box.acir-box--ov-rank{fill:var(--acir-ov-fill);stroke:color-mix(in srgb, var(--acir-ov) 65%, var(--acir-stroke))}.acir-graph .acir-line{stroke:var(--acir-stroke);stroke-width:1.2px;fill:none}.acir-graph .acir-line.acir-line--qk{stroke:color-mix(in srgb, var(--acir-qk) 35%, var(--acir-stroke))}.acir-graph .acir-line.acir-line--ov{stroke:color-mix(in srgb, var(--acir-ov) 35%, var(--acir-stroke))}.acir-graph .acir-arrowhead{fill:var(--acir-stroke)}.acir-graph .acir-node{fill:var(--light);stroke:var(--acir-stroke);stroke-width:1.2px}.acir-graph .acir-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.acir-graph .acir-fo .katex{color:inherit;font-size:1em}.acir-graph .acir-fo .katex-display{margin:0}.acir-graph .acir-fo{font-size:calc(var(--acir-u) * 13px);justify-content:center;overflow:visible}.acir-graph .acir-fo .katex{line-height:1}.acir-graph .acir-fo--sm,.acir-graph .acir-fo--xs,.acir-graph .acir-fo--label,.acir-graph .acir-fo--axis{font-size:calc(var(--acir-u) * var(--text-meta))}.acir-graph .acir-fo--xs,.acir-graph .acir-fo--label,.acir-graph .acir-fo--axis{color:var(--acir-note-fg)}.acir-graph .acir-fo--qk-label{color:color-mix(in srgb, var(--acir-qk) 60%, var(--dark))}.acir-graph .acir-fo--ov-label{color:color-mix(in srgb, var(--acir-ov) 50%, var(--dark))}.acir-graph .acir-fo--rank{font-style:italic}.acir-graph .acir-fo--display{font-size:calc(var(--acir-u) * 13px)}.acir-graph .acir-attn-cell{fill:color-mix(in srgb, var(--acir-qk) 55%, var(--dark))}.acir-graph .acir-aij-bar{fill:color-mix(in srgb, var(--acir-qk) 70%, var(--dark))}.acir-graph .acir-sum-bg{fill:#0000;stroke:none}.acir-graph .acir-box--weight{transition:fill .16s,stroke .16s}.acir-graph.is-highlight-qk .acir-weight[data-acir-circuit=qk] .acir-box--weight{fill:var(--acir-qk-fill);stroke:var(--acir-qk)}.acir-graph.is-highlight-qk .acir-line--qk{stroke:color-mix(in srgb, var(--acir-qk) 80%, var(--acir-stroke));stroke-width:1.6px}.acir-graph.is-highlight-qk .acir-box--qk-pattern{stroke:var(--acir-qk);stroke-width:1.6px}.acir-graph.is-highlight-ov .acir-weight[data-acir-circuit=ov] .acir-box--weight{fill:var(--acir-ov-fill);stroke:var(--acir-ov)}.acir-graph.is-highlight-ov .acir-line--ov{stroke:color-mix(in srgb, var(--acir-ov) 80%, var(--acir-stroke));stroke-width:1.6px}.acir-graph.is-highlight-ov .acir-box--ov-rank{stroke:var(--acir-ov);stroke-width:1.6px}.acir-math{color:inherit;display:inline-block}.acir-math .katex{color:inherit;font-size:.95em}.acir-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.acir-caption .acir-math{vertical-align:-.03em;margin:0 .22em}@container acir-figure (max-width:760px){.acir-panels{grid-template-columns:1fr;gap:1.25rem}.acir-controls{gap:.8rem}.acir-graph{max-width:360px;margin:0 auto}}@container acir-figure (max-width:460px){.attention-circuits{padding:0}.acir-circuit-toggle{flex-wrap:wrap;gap:.35rem}.acir-circuit-toggle legend{flex-basis:100%;margin:0 0 .25rem}.acir-pill{font-size:var(--text-meta);padding:.28rem .6rem}.acir-panel{padding:.55rem 0}}.attention-cost-calculator{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:acc-figure/inline-size}.attention-cost-calculator :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .attention-cost-calculator{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.attention-cost-calculator{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.attention-cost-calculator{--acc-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--acc-salmon:var(--fig-salmon);--acc-sage:var(--fig-sage);--acc-card-bg:color-mix(in srgb, var(--light) 96%, transparent);--acc-card-bg-salmon:color-mix(in srgb, var(--acc-salmon) 16%, var(--light));--acc-card-bg-sage:color-mix(in srgb, var(--acc-sage) 18%, var(--light));--acc-track-bg:color-mix(in srgb, var(--lightgray) 45%, var(--light))}:root[saved-theme=dark] .attention-cost-calculator{--acc-card-bg:color-mix(in srgb, var(--lightgray) 22%, var(--light));--acc-card-bg-salmon:color-mix(in srgb, var(--acc-salmon) 32%, var(--lightgray));--acc-card-bg-sage:color-mix(in srgb, var(--acc-sage) 28%, var(--lightgray));--acc-track-bg:color-mix(in srgb, var(--lightgray) 28%, var(--dark))}.acc-stage{grid-template-columns:minmax(220px,1fr) minmax(0,1.45fr);align-items:start;gap:1.4rem;display:grid}.acc-controls{background:color-mix(in srgb, var(--light) 80%, transparent);border-radius:var(--radius-none);border:0;flex-direction:column;gap:.7rem;min-width:0;padding:.95rem 1.05rem;display:flex}.acc-control{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem .5rem;display:grid}.acc-control--dropdown{grid-template-rows:auto;grid-template-columns:auto minmax(0,1fr);margin-top:.25rem}.acc-label{color:var(--acc-note);font-size:var(--text-meta);grid-column:1/3;align-items:baseline;gap:.35rem;min-width:0;display:inline-flex}.acc-control--dropdown .acc-label{grid-column:1/2}.acc-label-lbl{color:var(--acc-note)}.acc-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;grid-column:1/2}.acc-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.acc-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.acc-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.acc-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.acc-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.acc-slider:active::-webkit-slider-thumb{transform:scale(.96)}.acc-slider:active::-moz-range-thumb{transform:scale(.96)}.acc-value{border-radius:var(--radius-none);min-width:5ch;font:inherit;text-align:right;color:var(--dark);cursor:var(--cursor-text,text);background:0 0;border:0;grid-column:2/3;justify-self:end;margin:0;padding:0 .1rem}.acc-value[hidden]{display:none}.acc-value:hover{background:var(--fig-grid-selected)}.acc-value:focus-visible{outline:2px solid var(--dark);outline-offset:1px}.acc-value .katex{color:inherit;font-size:1em}.acc-value-edit{width:5.5ch;font-family:var(--codeFont,ui-monospace, monospace);text-align:right;border:1px solid var(--fig-stroke);border-radius:var(--radius-none);background:var(--light);color:var(--dark);grid-column:2/3;justify-self:end;padding:.05rem .25rem;font-size:.85rem}.acc-value-edit[hidden]{display:none}.acc-dtype{grid-column:2/3;min-width:0}.acc-dtype .g-select{width:100%}.acc-warning{font-size:var(--text-meta);color:var(--dark);background:color-mix(in srgb, var(--lightgray) 50%, transparent);border-radius:var(--radius-none);margin:.2rem 0 0;padding:.4rem .55rem;line-height:1.4}.acc-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;min-width:0;display:grid}.acc-card{border-radius:var(--radius-none);background:var(--acc-card-bg);border:0;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:0;padding:.75rem .9rem;transition:background .22s;display:flex}.acc-card--salmon{background:var(--acc-card-bg-salmon)}.acc-card--sage{background:var(--acc-card-bg-sage)}.acc-card-label{font-size:var(--text-meta);color:var(--acc-note);font-weight:600}.acc-card-eq{max-width:100%;font-size:var(--text-meta);color:var(--acc-note);opacity:.8;text-align:left;margin-top:.05rem;display:block;overflow:auto hidden}.acc-card-eq .katex{color:inherit;font-size:.92em}.acc-card-num{font-size:var(--text-ui);color:var(--dark);white-space:nowrap;min-block-size:1.5em;line-height:1.5;display:block}.acc-card-num .katex{color:inherit;font-size:1em}.acc-bar{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 90%, transparent);border:0;flex-direction:column;gap:.45rem;margin-top:1.1rem;padding:.85rem 1rem;display:flex}.acc-bar-row{font-size:var(--text-meta);grid-template-columns:90px minmax(0,1fr) 90px;align-items:center;gap:.55rem;display:grid}.acc-bar-tag{color:var(--acc-note)}.acc-bar-track{border-radius:var(--radius-none);background:var(--acc-track-bg);height:8px;position:relative;overflow:hidden}.acc-bar-track--bytes{background:color-mix(in srgb, var(--lightgray) 30%, var(--acc-track-bg))}.acc-bar-fill{border-radius:var(--radius-none);height:100%;transition:width .22s;position:absolute;inset:0 auto 0 0}.acc-bar-fill--attn{background:color-mix(in srgb, var(--acc-sage) 80%, var(--dark))}.acc-bar-fill--ffn{background:color-mix(in srgb, var(--acc-sage) 35%, var(--lightgray))}.acc-bar-fill--kv{background:color-mix(in srgb, var(--acc-salmon) 78%, var(--dark))}.acc-bar-val{text-align:right;color:var(--dark)}.acc-bar-val .katex{color:inherit;font-size:1em}.acc-summary{background:color-mix(in srgb, var(--lightgray) 40%, transparent);color:var(--dark);font-size:var(--text-meta);margin:.9rem 0 0;padding:.7rem .9rem;line-height:1.5}.acc-summary .katex{color:inherit;font-size:1em}.acc-summary-table{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.acc-summary-table>div{display:contents}.acc-summary-table dt,.acc-summary-table dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.acc-summary-table dt{color:var(--fig-note);font-weight:400}.acc-summary-table dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.acc-summary-table .katex{color:inherit;font-size:1em}.acc-summary-table dd{font-variant-numeric:normal}.acc-summary-hint{color:var(--acc-note);font-size:var(--text-meta);margin:0;display:block}.acc-math{color:inherit;display:inline-block}.acc-math .katex{color:inherit;font-size:.95em}.acc-math--display{display:block}.acc-math--display .katex-display{text-align:left;margin:0;overflow:auto hidden}.acc-math--display .katex-display>.katex{text-align:left}.acc-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.acc-caption .acc-math{vertical-align:-.03em;margin:0 .22em}@container acc-figure (max-width:760px){.acc-stage{grid-template-columns:1fr}}@container acc-figure (max-width:520px){.attention-cost-calculator{padding:0}.acc-cards{grid-template-columns:1fr}.acc-bar-row{font-size:var(--text-meta);grid-template-columns:70px minmax(0,1fr) 70px}}.attribution-graph{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ag-figure/inline-size}.attribution-graph :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .attribution-graph{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.attribution-graph{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.attribution-graph{--ag-lit:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--ag-bar:color-mix(in srgb, var(--fig-sage) 85%, var(--light));--ag-node:color-mix(in srgb, var(--light) 70%, var(--lightgray));--ag-token:var(--light)}:root[saved-theme=dark] .attribution-graph{--ag-lit:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray));--ag-bar:color-mix(in srgb, var(--fig-sage) 40%, var(--lightgray));--ag-node:color-mix(in srgb, var(--dark) 10%, var(--lightgray));--ag-token:var(--lightgray)}.ag-controls{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.15rem .8rem;display:grid}.ag-control{display:contents}.ag-prune-label{color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;grid-column:1/2}.ag-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;grid-column:2/3}.ag-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.ag-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.ag-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.ag-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.ag-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.ag-slider:active::-webkit-slider-thumb{transform:scale(.96)}.ag-slider:active::-moz-range-thumb{transform:scale(.96)}.ag-prune-value,.ag-restore{color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;grid-column:2/3;justify-self:start}.ag-restore{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;border:1px solid var(--fig-frame-border);min-width:0;min-height:1.5rem;cursor:var(--cursor-pointer,pointer);align-items:center;margin:0;padding:.2rem .55rem;display:inline-flex}.ag-restore[hidden]{display:none}.ag-restore:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.ag-restore:hover{background:var(--fig-grid-selected)}}@media (pointer:coarse){.ag-restore{min-height:44px}}.ag-stage{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem 1.5rem;margin-top:1.1rem;display:grid}@container ag-figure (min-width:44rem){.ag-stage{grid-template-columns:minmax(0,1.9fr) minmax(13rem,1fr)}}.ag-scroll{min-width:0;overflow-x:auto}.ag-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.ag-svg{width:100%;min-width:25rem;display:block}.ag-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.ag-svg .ag-axis{fill:var(--fig-note);font-size:10px}.ag-svg .ag-label{fill:var(--dark);pointer-events:none;font-size:11px}.ag-svg .ag-arrowhead{fill:var(--fig-stroke)}.ag-svg .ag-edge{fill:none;stroke:var(--fig-stroke);stroke-linejoin:miter;transition:stroke .14s,stroke-width .18s,opacity .18s}.ag-svg .ag-edge[data-ag-in=true]{stroke:var(--dark)}.ag-svg .ag-edge[data-ag-pruned=true]{stroke:var(--fig-stroke-soft);opacity:.55}.ag-svg .ag-node{cursor:var(--cursor-pointer,pointer);outline:none}.ag-svg .ag-node[aria-disabled=true]{cursor:var(--cursor-default,default)}.ag-svg .ag-box{fill:var(--ag-node);stroke:var(--fig-stroke);stroke-width:1px;transition:fill .14s,stroke .14s}.ag-svg .ag-node--token .ag-box{fill:var(--ag-token)}.ag-svg .ag-node--logit .ag-box{stroke:var(--dark);stroke-width:1.4px}.ag-svg .ag-bar{fill:var(--ag-bar);transition:width .18s}.ag-svg .ag-node[data-ag-selected=true] .ag-box{fill:var(--ag-lit);stroke:var(--dark)}.ag-svg .ag-node[data-ag-ablated=true] .ag-box{fill:var(--fig-surface);stroke:var(--fig-stroke-soft)}.ag-svg .ag-node[data-ag-ablated=true] .ag-label{fill:var(--fig-tab-fg);text-decoration:line-through}.ag-svg .ag-node:focus-visible .ag-box{stroke:var(--dark);stroke-width:2px}.ag-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.ag-readout>div{display:contents}.ag-readout dt,.ag-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.ag-readout dt{color:var(--fig-note);font-weight:400}.ag-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.ag-readout .katex{color:inherit;font-size:1em}.ag-readout{align-self:start;margin:0}.ag-readout .ag-readout-head dt,.ag-readout .ag-readout-head dd{color:var(--fig-note);background:var(--fig-grid-selected)}.ag-readout .ag-readout-rows,.ag-readout .ag-readout-rows>div{display:contents}@media (prefers-reduced-motion:reduce){.ag-svg .ag-edge,.ag-svg .ag-box,.ag-svg .ag-bar{transition:none}}.block-diagram{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:bd-figure/inline-size}.block-diagram :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .block-diagram{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.block-diagram{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.block-diagram{--bd-lit:var(--fig-salmon);--bd-done:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--bd-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .block-diagram{--bd-lit:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--bd-done:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--bd-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.bd-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.bd-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.bd-segments{grid-auto-flow:column;width:fit-content;min-width:0;max-width:100%;margin-bottom:.6rem}.bd-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .55rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.bd-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.bd-segment:has(input:checked){background:var(--bd-segment-on);color:var(--dark)}.bd-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.bd-segment:hover{color:var(--dark)}}.bd-variant[hidden],.bd-step[hidden]{display:none}.bd-scroll{overflow-x:auto}.bd-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.bd-svg{--bd-u:.8;width:100%;margin:.5rem auto 0;display:block;overflow:visible}.bd-svg .bd-wire,.bd-svg .bd-block rect,.bd-svg .bd-sum circle{vector-effect:non-scaling-stroke}.bd-svg .bd-wire{fill:none;stroke:var(--dark);stroke-width:1.3px}.bd-svg .bd-arrowhead,.bd-svg .bd-dot{fill:var(--dark)}.bd-svg .bd-block rect,.bd-svg .bd-sum circle{fill:var(--light);stroke:var(--dark);stroke-width:1.3px;transition:fill .18s}.bd-svg .bd-sampler-ground{fill:#0000;transition:fill .18s}.bd-svg [data-state=lit] rect,.bd-svg [data-state=lit] circle{fill:var(--bd-lit)}.bd-svg [data-state=done] rect,.bd-svg [data-state=done] circle{fill:var(--bd-done)}.bd-svg .bd-sign,.bd-svg .bd-t{fill:var(--dark);font-family:var(--codeFont);font-size:calc(var(--bd-u) * var(--text-meta))}.bd-svg .bd-t{font-family:KaTeX_Math,serif;font-style:italic;font-size:calc(var(--bd-u) * 13px)}.bd-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.bd-fo .katex{color:inherit;font-size:1em}.bd-fo .katex-display{margin:0}.bd-fo{font-size:calc(var(--bd-u,.8) * 13px);white-space:nowrap;justify-content:center}.bd-text{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:.75rem 0 0;line-height:1.45}.bd-eq{color:var(--dark);margin-top:.5rem;font-size:.95rem;overflow:auto hidden}.bd-eq .katex-display{margin:.4rem 0}.bd-eq .katex{font-size:1em}.bd-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.bd-readout>div{display:contents}.bd-readout dt,.bd-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.bd-readout dt{color:var(--fig-note);font-weight:400}.bd-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.bd-readout .katex{color:inherit;font-size:1em}.bd-readout{margin-top:.6rem}.bd-readout dd{overflow-x:auto}.bd-math{color:inherit;display:inline-block}.bd-math .katex{color:inherit;font-size:.95em}.bd-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.bd-svg .bd-block rect,.bd-svg .bd-sum circle,.bd-svg .bd-sampler-ground,.bd-segment{transition:none}}@container bd-figure (max-width:460px){.bd-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.bd-segment{justify-content:flex-start;padding:.28rem .4rem}.bd-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}.bd-segments:not(.bd-segments--steps){grid-template-columns:minmax(0,1fr)}.bd-eq{font-size:.82rem}}.cascade-filter{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cf-figure/inline-size}.cascade-filter :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .cascade-filter{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.cascade-filter{--cf-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--cf-divider:color-mix(in srgb, var(--gray) 30%, transparent);--cf-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--cf-frame-bg:color-mix(in srgb, var(--lightgray) 40%, var(--light));--cf-keep:var(--fig-salmon);--cf-keep-bg:color-mix(in srgb, var(--fig-salmon) 38%, var(--light));--cf-drop:color-mix(in srgb, var(--gray) 38%, var(--light));--cf-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--cf-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--cf-tab-active:color-mix(in srgb, var(--cf-keep) 24%, var(--cf-tab-surface));grid-template-columns:minmax(0,2.5fr) minmax(220px,1fr);grid-template-areas:"header header""stage sidebar""eq eq""caption caption";gap:1.1rem 1.5rem;display:grid}:root[saved-theme=dark] .cascade-filter{--cf-frame-bg:color-mix(in srgb, var(--lightgray) 22%, var(--dark));--cf-keep-bg:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--cf-drop:color-mix(in srgb, var(--lightgray) 60%, var(--dark));--cf-tab-surface:color-mix(in srgb, var(--lightgray) 18%, var(--dark));--cf-tab-border:color-mix(in srgb, var(--lightgray) 30%, transparent);--cf-tab-active:color-mix(in srgb, var(--cf-keep) 28%, var(--cf-tab-surface))}.cf-header{flex-wrap:wrap;grid-area:header;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.cf-tablist{isolation:isolate;border:1px solid var(--cf-tab-border);border-radius:var(--radius-none);background:var(--cf-tab-surface);align-items:stretch;gap:0;height:1.55rem;padding:0;display:inline-flex;overflow:hidden}.cf-tab{box-sizing:border-box;background:var(--cf-tab-surface);min-width:0;height:100%;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 .72rem;font-size:.72rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}.cf-tab:not(:disabled):hover{color:var(--dark)}.cf-tab:focus-visible{outline:2px solid color-mix(in srgb, var(--secondary) 50%, transparent);outline-offset:-2px}.cf-tab[aria-selected=true]{background:var(--cf-tab-active);color:var(--dark)}.cf-slider-wrap{font-family:var(--bodyFont);color:var(--cf-note-fg);align-items:center;gap:.65rem;font-size:.85rem;display:inline-flex}.cf-slider-label{align-items:baseline;gap:.3rem;display:inline-flex}.cf-slider{width:180px;cursor:var(--cursor-pointer,pointer);appearance:none;min-height:1.5rem;color:var(--darkgray);background:0 0}.cf-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:linear-gradient(to right, var(--cf-keep) 0%, var(--cf-keep) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) 100%);height:.2rem}.cf-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.cf-slider::-moz-range-track{border-radius:var(--radius-none);background:linear-gradient(to right, var(--cf-keep) 0%, var(--cf-keep) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) 100%);height:.2rem}.cf-slider::-moz-range-progress{border-radius:var(--radius-none);background:linear-gradient(to right, var(--cf-keep) 0%, var(--cf-keep) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) calc(var(--cf-tau,.5) * 100%), var(--cf-divider) 100%);height:.2rem}.cf-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.cf-slider:active::-webkit-slider-thumb{transform:scale(.96)}.cf-slider:active::-moz-range-thumb{transform:scale(.96)}.cf-slider-value{text-align:right;min-width:2.8em;color:var(--dark);display:inline-block}.cf-slider-value .katex{color:inherit;font-size:.95em}.cf-stage{flex-direction:column;grid-area:stage;gap:.85rem;min-width:0;display:flex}.cf-panel{flex-direction:column;gap:.45rem;min-width:0;display:flex}.cf-panel-title{color:var(--cf-note-fg);margin:0;font-size:.92rem}.cf-panel-title .katex{color:inherit;font-size:1em}.cf-svg{width:100%;height:auto;display:block;overflow:visible}.cf-svg .cf-tile-frame{fill:var(--cf-frame-bg);stroke:var(--cf-stroke-soft);stroke-width:.75px;transition:opacity .22s}.cf-svg .cf-tile-bar{fill:var(--cf-keep);transition:fill .22s,y .22s,height .22s,opacity .22s}.cf-svg .cf-tile-group.is-drop .cf-tile-bar{fill:var(--cf-drop);opacity:.55}.cf-svg .cf-tile-group.is-drop .cf-tile-frame{opacity:.45}.cf-svg .cf-tile-group.is-drop .cf-fo--tile-idx{opacity:.5}.cf-svg .cf-threshold-line{stroke:var(--fig-stroke);stroke-width:1.4px;transition:y1 .24s,y2 .24s}.cf-svg .cf-fine-tile{fill:var(--cf-keep-bg);stroke:var(--cf-keep);stroke-width:1px;transform-origin:50%;transform-box:fill-box;transition:fill .26s,stroke .26s,opacity .26s,transform .26s}.cf-svg .cf-fine-group.is-drop .cf-fine-tile{fill:#0000;stroke:var(--cf-stroke-soft);opacity:.22;transform:scale(.6)}.cf-svg .cf-fine-group.is-drop .cf-fo--fine-label{opacity:.18}.cf-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.cf-fo .katex{color:inherit;font-size:1em}.cf-fo .katex-display{margin:0}.cf-fo{color:var(--cf-note-fg);font-size:12px;overflow:visible}.cf-fo--tau{color:var(--cf-keep);justify-content:flex-end;font-weight:600}.cf-fo--formula{color:var(--dark);justify-content:flex-start;font-size:13px}.cf-fo--tile-idx{color:var(--cf-note-fg);justify-content:center;font-size:10px;transition:opacity .22s}.cf-fo--fine-label{color:var(--dark);justify-content:center;font-size:10px;font-weight:600;transition:opacity .26s}.cf-sidebar{flex-direction:column;grid-area:sidebar;gap:.85rem;min-width:0;display:flex}.cf-card{border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);box-shadow:none;background:color-mix(in srgb, var(--light) 96%, transparent);padding:.75rem .9rem}.cf-card-title{color:var(--cf-note-fg);margin:0 0 .5rem;font-size:.9rem}.cf-card-title .katex{color:inherit;font-size:1em}.cf-stats{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.cf-stats>div{display:contents}.cf-stats dt,.cf-stats dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.cf-stats dt{color:var(--fig-note);font-weight:400}.cf-stats dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.cf-stats .katex{color:inherit;font-size:1em}.cf-stats .cf-stat-of{color:var(--cf-note-fg);font-size:.9em}.cf-card-note{color:var(--cf-note-fg);margin:.45rem 0 0;font-size:.78rem;line-height:1.5}.cf-math{color:inherit;display:inline-block}.cf-math .katex{color:inherit;font-size:.95em}.cf-math .katex-display{text-align:left;margin:.15rem 0}.cf-math .katex-display>.katex{text-align:left}.cf-math--inline{display:inline-block}.cf-math--display{display:block}.cf-decomp{border:1px solid var(--fig-frame-border);border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);grid-area:eq;padding:.8rem 1rem}.cf-decomp-body{flex-wrap:wrap;align-items:baseline;gap:.4rem 1.75rem;display:flex}.cf-decomp-body .cf-math--display{margin:0}.cf-decomp-body .cf-math--display .katex-display{overflow:auto hidden}.cf-decomp-body .cf-card-note{flex:16rem;margin:0}.cf-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;grid-area:caption;margin-top:.9rem;line-height:1.45;display:inline-block}.cf-caption .cf-math{vertical-align:-.03em;margin:0 .22em}@container cf-figure (max-width:720px){.cascade-filter{grid-template-columns:1fr;grid-template-areas:"header""stage""sidebar""eq""caption"}.cf-sidebar{flex-flow:wrap}.cf-card{flex:220px}}@container cf-figure (max-width:460px){.cascade-filter{padding:1.1rem}.cf-header{flex-direction:column;align-items:stretch;gap:.7rem}.cf-slider{width:100%}.cf-tablist{align-self:flex-start}}.zoomable.is-zoomed>.zoomable-content>.cascade-filter{background:color-mix(in srgb, var(--light) 94%, transparent);width:min(100%,1100px);margin:auto;padding:1.5rem 1.75rem;display:grid}.constrained-decoding-fsm{content-visibility:auto;contain-intrinsic-size:auto 46rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cdfsm-figure/inline-size}.constrained-decoding-fsm :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .constrained-decoding-fsm{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.constrained-decoding-fsm{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.constrained-decoding-fsm{--cdfsm-node-bg:var(--light);--cdfsm-visited-bg:color-mix(in srgb, var(--fig-sage) 32%, var(--light));--cdfsm-current-bg:var(--fig-salmon);--cdfsm-new-bg:color-mix(in srgb, var(--fig-salmon) 45%, var(--light));--cdfsm-clause-bg:var(--fig-grid-selected);gap:1rem;display:grid}.structured-decoding-flow{content-visibility:auto;contain-intrinsic-size:auto 16rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:sdflow-figure/inline-size}.structured-decoding-flow :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .structured-decoding-flow{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.structured-decoding-flow{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.structured-decoding-flow{--cdfsm-current-bg:var(--fig-salmon);--cdfsm-visited-bg:color-mix(in srgb, var(--fig-sage) 32%, var(--light))}:root[saved-theme=dark] .constrained-decoding-fsm,:root[saved-theme=dark] .structured-decoding-flow{--cdfsm-node-bg:var(--lightgray);--cdfsm-visited-bg:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--cdfsm-new-bg:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--cdfsm-current-bg:color-mix(in srgb, var(--fig-salmon) 70%, var(--lightgray))}.cdfsm-defs{width:0;height:0;position:absolute;overflow:hidden}.cdfsm-top{gap:1rem;display:grid}@container cdfsm-figure (min-width:64rem){.cdfsm-top{grid-template-columns:minmax(0,30rem) minmax(0,1fr)}}.constrained-decoding-fsm .cdfsm-card{border:1px solid var(--fig-frame-border);border-radius:var(--radius-none);background:var(--fig-surface);min-width:0;padding:.75rem .9rem}.constrained-decoding-fsm .cdfsm-card .cdfsm-code{font-family:var(--codeFont);color:var(--dark);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;margin:0;padding:0;font-size:.78rem;line-height:1.55}.constrained-decoding-fsm .cdfsm-card code{font-family:var(--codeFont);color:var(--dark);background:0 0;padding:0;font-size:.95em}.cdfsm-card-title{color:var(--fig-note);margin:0 0 .5rem;font-size:.78rem;font-weight:600}.cdfsm-card-title .katex{color:inherit;font-size:1.05em}.cdfsm-regex-line{display:block}.cdfsm-regex-line.is-age{outline:1px solid var(--fig-stroke);outline-offset:-1px;background:var(--cdfsm-clause-bg)}.cdfsm-svg{width:100%;max-width:48rem;height:auto;font-family:var(--codeFont);margin:0 auto;font-size:12px;display:block;overflow:visible}.cdfsm-svg--narrow{max-width:26rem;margin:0 auto;font-size:13px;display:none}@container cdfsm-figure (max-width:34rem){.cdfsm-svg--wide{display:none}.cdfsm-svg--narrow{display:block}}.cdfsm-edge path{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1.25px;marker-end:url(#cdfsm-arrow);transition:stroke .18s,stroke-width .18s}.cdfsm-edge text{fill:var(--fig-note);dominant-baseline:auto}.cdfsm-edge.is-seen path{stroke:var(--fig-stroke)}.cdfsm-edge.is-taken path{stroke:var(--dark);stroke-width:2.25px;marker-end:url(#cdfsm-arrow-taken)}.cdfsm-edge.is-taken text{fill:var(--dark);font-weight:700}.cdfsm-arrowhead{fill:var(--fig-stroke)}.cdfsm-arrowhead--taken{fill:var(--dark)}.cdfsm-state circle{fill:var(--cdfsm-node-bg);stroke:var(--fig-stroke);stroke-width:1.25px;transition:fill .18s,stroke-width .18s}.cdfsm-state .cdfsm-accept{fill:none}.cdfsm-state text{fill:var(--dark);text-anchor:middle;dominant-baseline:central}.cdfsm-state.is-visited circle:not(.cdfsm-accept){fill:var(--cdfsm-visited-bg)}.cdfsm-state.is-current circle:not(.cdfsm-accept){fill:var(--cdfsm-current-bg)}.cdfsm-state.is-current circle{stroke:var(--dark);stroke-width:2px}.cdfsm-state.is-current text{font-weight:700}.cdfsm-decode{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:1rem;display:grid}@container cdfsm-figure (max-width:34rem){.cdfsm-decode{grid-template-columns:minmax(0,1fr)}}.cdfsm-tok{transition:background-color .18s}.cdfsm-tok.is-new{background:var(--cdfsm-new-bg);outline:1px solid var(--dark);outline-offset:-1px}.cdfsm-caret{vertical-align:-.2em;background:var(--fig-stroke);width:.55em;height:1.1em;margin-left:1px;display:inline-block}.cdfsm-mask{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,.8fr);gap:1px;margin:0;padding:1px;font-size:.78rem;line-height:1.35;display:grid}.cdfsm-mask .katex{color:inherit;font-size:1em}.cdfsm-mask-row{display:contents}.cdfsm-mask-row>span{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--dark);overflow-wrap:anywhere;border:0;margin:0;padding:.35rem .5rem}.cdfsm-mask-row>span:nth-child(2){font-family:var(--codeFont)}.cdfsm-mask-row>[role=columnheader]{color:var(--fig-note);font-family:var(--bodyFont)}.cdfsm-mask-row.is-masked>span{color:var(--fig-note)}.cdfsm-mask-row.is-masked code{color:var(--fig-note);text-decoration:line-through}.cdfsm-mask-row.is-sampled>span{background:var(--fig-grid-selected);font-weight:600}@container cdfsm-figure (max-width:34rem){.constrained-decoding-fsm .cdfsm-card{padding:.6rem .65rem}.constrained-decoding-fsm .cdfsm-card .cdfsm-code{font-size:.72rem}}@media (max-width:30rem){.constrained-decoding-fsm,.structured-decoding-flow{padding:1rem .75rem}}.cdfsm-mark{width:1.1em;display:inline-block}.cdfsm-sampled,.cdfsm-done{color:var(--darkgray);margin:.6rem 0 0;font-size:.78rem;line-height:1.45}.cdfsm-done{margin:0}.cdfsm-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.cdfsm-btn{border:1px solid var(--darkgray);border-radius:var(--radius-none);background:var(--light);min-height:1.75rem;color:var(--dark);font-family:var(--codeFont);cursor:var(--cursor-pointer,pointer);justify-content:center;align-items:center;padding:0 .75rem;font-size:.78rem;transition:background-color .12s;display:inline-flex}@media (hover:hover) and (pointer:fine){.cdfsm-btn:hover:not([aria-disabled=true]){background:var(--fig-tab-surface)}}.cdfsm-btn:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.cdfsm-btn[aria-disabled=true]{border-color:var(--fig-stroke-soft);color:var(--fig-note);cursor:var(--cursor-default,default)}@media (pointer:coarse){.cdfsm-btn{min-height:44px}}.cdfsm-status{min-width:0;font-family:var(--codeFont);color:var(--darkgray);font-variant-numeric:tabular-nums;flex:14rem;margin:0;font-size:.75rem;line-height:1.4}.cdfsm-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:0;line-height:1.45;display:inline-block}.cdfsm-caption .cdfsm-math{vertical-align:-.03em;margin:0 .22em}.structured-decoding-flow .cdfsm-caption{margin-top:.75rem}.sdflow-svg{width:100%;max-width:44rem;height:auto;font-family:var(--bodyFont);margin:0 auto;font-size:13px;display:block}.sdflow-svg--narrow{max-width:24rem;margin:0 auto;display:none}@container sdflow-figure (max-width:32rem){.sdflow-svg--wide{display:none}.sdflow-svg--narrow{display:block}}.sdflow-group rect{fill:none;stroke:var(--fig-frame-border);stroke-width:1px}.sdflow-group text{fill:var(--fig-note);font-size:11px}.sdflow-edge path{fill:none;stroke:var(--fig-stroke);stroke-width:1.25px;marker-end:url(#sdflow-arrow)}.sdflow-edge text{fill:var(--fig-note);font-size:11px}.sdflow-arrowhead{fill:var(--fig-stroke)}.sdflow-node rect{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1.25px}.sdflow-node text{fill:var(--dark);text-anchor:middle;dominant-baseline:central}.sdflow-node.is-lit rect{fill:var(--cdfsm-current-bg);stroke:var(--dark)}.sdflow-node.is-done rect{fill:var(--cdfsm-visited-bg)}.conv-locality{content-visibility:auto;contain-intrinsic-size:auto 24rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cvl-figure/inline-size}.conv-locality :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .conv-locality{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.conv-locality{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.conv-locality{--cvl-lit:color-mix(in srgb, var(--fig-salmon) 80%, var(--light));--cvl-field:color-mix(in srgb, var(--fig-salmon) 38%, var(--light));--cvl-window:color-mix(in srgb, var(--fig-sage) 62%, var(--light));--cvl-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .conv-locality{--cvl-lit:color-mix(in srgb, var(--fig-salmon) 34%, var(--lightgray));--cvl-field:color-mix(in srgb, var(--fig-salmon) 16%, var(--lightgray));--cvl-window:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--cvl-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.cvl-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.cvl-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.cvl-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.cvl-segments{grid-auto-flow:column;min-width:0}.cvl-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.cvl-segment:hover{color:var(--dark)}.cvl-segment:has(input:checked){background:var(--cvl-segment-on);color:var(--dark)}.cvl-segment input,.cvl-pick input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}:is(.cvl-segment:has(input:focus-visible),.cvl-pick:has(input:focus-visible)){outline:2px solid var(--dark);outline-offset:-2px}.cvl-rule{color:var(--fig-note);text-wrap:pretty;margin:.75rem 0 0;font-size:.78rem;line-height:1.45;display:none}.conv-locality[data-cvl-mode=dense] [data-cvl-rule=dense],.conv-locality[data-cvl-mode=local] [data-cvl-rule=local],.conv-locality[data-cvl-mode=shared] [data-cvl-rule=shared]{display:block}.cvl-stage{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:1rem 2rem;margin-top:1rem;display:flex}.cvl-block{min-width:0}.cvl-heading{font-size:var(--text-meta);color:var(--fig-note);margin:0 0 .5rem;font-weight:600}.cvl-grid{border-radius:var(--radius-none);background:var(--fig-grid-line);grid-template-columns:repeat(var(--cvl-n), var(--cvl-size));grid-auto-rows:var(--cvl-size);border:0;gap:1px;width:max-content;min-width:0;margin:0;padding:1px;display:grid}.cvl-grid[hidden]{display:none}.cvl-grid--pool{--cvl-size:2.6rem}.cvl-grid--conn{--cvl-size:2.05rem}.cvl-cell{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;border:0;justify-content:center;align-items:center;margin:0;transition:background-color .16s;display:flex}.cvl-grid--pool .cvl-cell{font-size:1rem}.cvl-grid--conn .cvl-cell{font-size:.68rem}.conv-locality[data-cvl-view=pooling] .cvl-cell[data-cvl-state=w]{background:var(--cvl-window)}.conv-locality[data-cvl-view=pooling] .cvl-cell[data-cvl-state=m]{background:var(--cvl-lit);font-weight:700}.conv-locality[data-cvl-view=connectivity] .cvl-cell[data-cvl-state=w]{background:var(--cvl-field)}.cvl-pick{cursor:var(--cursor-pointer,pointer);position:relative}.cvl-pick:hover{background:var(--cvl-segment-on)}.cvl-pick:has(input:checked){background:var(--cvl-lit);font-weight:700}.cvl-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cvl-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.cvl-readout>div{display:contents}.cvl-readout dt,.cvl-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.cvl-readout dt{color:var(--fig-note);font-weight:400}.cvl-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.cvl-readout .katex{color:inherit;font-size:1em}.cvl-readout{margin-top:1rem}.cvl-math{color:inherit;display:inline-block}.cvl-math .katex{color:inherit;font-size:.95em}.cvl-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.cvl-cell,.cvl-segment{transition:none}}@container cvl-figure (max-width:400px){.cvl-grid--pool{--cvl-size:2.2rem}.cvl-grid--conn{--cvl-size:1.85rem}.cvl-segments{grid-auto-flow:row}}.cross-layer-features{content-visibility:auto;contain-intrinsic-size:auto 26rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:clf-figure/inline-size}.cross-layer-features :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .cross-layer-features{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.cross-layer-features{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.cross-layer-features{--clf-lit:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--clf-write:color-mix(in srgb, var(--fig-sage) 80%, var(--light));--clf-bar:color-mix(in srgb, var(--darkgray) 22%, var(--light));--clf-node:color-mix(in srgb, var(--fig-sage) 55%, var(--light));--clf-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .cross-layer-features{--clf-lit:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray));--clf-write:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--clf-bar:color-mix(in srgb, var(--dark) 26%, var(--lightgray));--clf-node:color-mix(in srgb, var(--fig-sage) 18%, var(--lightgray));--clf-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.clf-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.clf-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.clf-segments{grid-auto-flow:column;width:max-content;min-width:0;max-width:100%}.clf-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.clf-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.clf-segment:hover{color:var(--dark)}}.clf-segment:has(input:checked){background:var(--clf-segment-on);color:var(--dark)}.clf-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.clf-body{margin-top:.9rem}.clf-scroll{overflow-x:auto}.clf-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.clf-svg{--clf-u:1.2;width:100%;margin:0 auto;display:block}.clf-svg :is(line,path,rect){vector-effect:non-scaling-stroke}.clf-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.clf-svg .clf-row,.clf-svg .clf-axis,.clf-svg .clf-stage{fill:var(--fig-note);font-size:calc(var(--clf-u) * var(--text-meta))}.clf-svg .clf-value{fill:var(--dark);font-size:calc(var(--clf-u) * var(--text-meta))}.clf-svg .clf-stream{stroke:var(--fig-stroke);stroke-width:2px}.clf-svg .clf-station{fill:var(--dark)}.clf-svg .clf-grid{stroke:var(--fig-line);stroke-width:1px}.clf-svg .clf-wire{stroke:var(--fig-stroke-soft);stroke-width:1.2px}.clf-svg .clf-wire--on{stroke:var(--dark)}.clf-svg .clf-arrowhead{fill:var(--dark)}.clf-svg .clf-arrowhead--soft{fill:var(--fig-stroke)}.clf-svg .clf-blockbox{fill:var(--light);stroke:var(--fig-stroke-soft);stroke-width:1px}.clf-svg .clf-blockbox--on{fill:var(--clf-write);stroke:var(--dark)}.clf-svg .clf-bar{fill:var(--clf-bar);stroke:var(--fig-stroke);stroke-width:.8px}.clf-svg .clf-dict{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.clf-svg .clf-latent{fill:var(--light);stroke:var(--fig-stroke-soft);stroke-width:1px}.clf-svg .clf-latent--on{fill:var(--clf-lit);stroke:var(--dark)}.clf-svg .clf-node{fill:var(--clf-node);stroke:var(--fig-stroke);stroke-width:1px}.clf-svg .clf-node--lit{fill:var(--clf-lit);stroke:var(--dark)}.clf-svg .clf-edge{stroke:var(--fig-stroke);stroke-width:1px;fill:none}.clf-svg .clf-edge--form{stroke:var(--dark);stroke-width:1.4px}.clf-svg .clf-coder{transition:opacity .18s,visibility .18s}:is(.cross-layer-features:has([data-clf-input][value=sae]:checked) [data-clf-coder=crosscoder],.cross-layer-features:has([data-clf-input][value=crosscoder]:checked) [data-clf-coder=sae]){opacity:0;visibility:hidden}:is(.cross-layer-features:has([data-clf-input][value=sae]:checked) dd [data-clf-coder=crosscoder],.cross-layer-features:has([data-clf-input][value=crosscoder]:checked) dd [data-clf-coder=sae]){display:none}.clf-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.clf-readout>div{display:contents}.clf-readout dt,.clf-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.clf-readout dt{color:var(--fig-note);font-weight:400}.clf-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.clf-readout .katex{color:inherit;font-size:1em}.clf-readout{margin-top:.9rem}.clf-math{color:inherit;display:inline-block}.clf-math .katex{color:inherit;font-size:.95em}.clf-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.clf-svg .clf-coder,.clf-segment{transition:none}}@container clf-figure (max-width:520px){.clf-svg{min-width:30rem}.cross-layer-features[data-clf-view=circuit] .clf-svg{min-width:26rem}}@container clf-figure (max-width:440px){.clf-segment{padding:.28rem .4rem}.clf-readout{grid-template-columns:minmax(0,1fr)}.clf-readout dd{justify-content:flex-start}}.crosscoder-branches{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cb-figure/inline-size}.crosscoder-branches :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .crosscoder-branches{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.crosscoder-branches{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.crosscoder-branches{--cb-lit:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--cb-lit-cell:color-mix(in srgb, var(--fig-salmon) 30%, var(--light));--cb-shared:color-mix(in srgb, var(--fig-sage) 70%, var(--light));--cb-block:var(--fig-surface)}:root[saved-theme=dark] .crosscoder-branches{--cb-lit:color-mix(in srgb, var(--fig-salmon) 72%, var(--lightgray));--cb-lit-cell:color-mix(in srgb, var(--fig-salmon) 18%, var(--lightgray));--cb-shared:color-mix(in srgb, var(--fig-sage) 32%, var(--lightgray));--cb-block:var(--lightgray)}.cb-steps{counter-reset:cb-step;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:1.25rem 1.5rem;margin:0;padding:0;list-style:none;display:grid}.cb-step{counter-increment:cb-step;min-width:0;margin:0}.cb-step-label{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:.4rem 0 0;line-height:1.4}.cb-step-label:before{content:counter(cb-step) " ";color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums}.cb-pair{grid-template-columns:minmax(0,15rem) max-content;justify-content:center;align-items:center;gap:1.5rem;display:grid}.cb-svg{--cb-u:1;width:100%;max-width:15rem;margin:0 auto;display:block;overflow:visible}.cb-svg :is(line,path,rect,circle){vector-effect:non-scaling-stroke}.cb-svg .cb-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.cb-svg .cb-fo .katex{color:inherit;font-size:1em}.cb-svg .cb-fo .katex-display{margin:0}.cb-svg .cb-fo{font-size:calc(var(--cb-u) * var(--text-meta))}.cb-svg .cb-fo--center{justify-content:center}.cb-svg .cb-fo--right{justify-content:flex-end}.cb-svg .cb-stream{stroke:var(--fig-stroke);stroke-width:2.5px}.cb-svg .cb-wire{fill:none;stroke:var(--fig-stroke);stroke-width:1.5px}.cb-svg .cb-wire--soft{stroke:var(--fig-stroke);stroke-width:1px;stroke-opacity:.55}.cb-svg .cb-tap{fill:var(--fig-stroke)}.cb-svg .cb-read{fill:var(--cb-lit);stroke:var(--dark);stroke-width:1px}.cb-svg .cb-junction circle{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1.2px}.cb-svg .cb-junction path{stroke:var(--dark);stroke-width:1.2px}.cb-svg .cb-block,.cb-svg .cb-cell{fill:var(--cb-block);stroke:var(--fig-stroke);stroke-width:1px}.cb-svg .cb-cell{stroke:var(--fig-stroke-soft)}.cb-svg .cb-neuron{fill:var(--light);stroke:var(--fig-stroke-soft);stroke-width:1px}.cb-svg .cb-neuron--lit{fill:var(--cb-lit);stroke:var(--dark)}.cb-svg .cb-latent{fill:var(--cb-shared);stroke:var(--dark);stroke-width:1px}.cb-svg .cb-edge,.cb-svg .cb-vector{stroke:var(--dark);stroke-width:1.2px}.cb-svg .cb-arrowhead{fill:var(--dark)}.cb-svg .cb-axis{stroke:var(--fig-stroke);stroke-width:1px}.cb-svg .cb-unit{fill:none;stroke:var(--fig-line);stroke-width:1px}.cb-svg .cb-drop{stroke:var(--fig-stroke-soft);stroke-width:1px}.crosscoder-branches .cb-table{border-collapse:collapse;font-size:var(--text-meta);margin:0;line-height:1.35}.crosscoder-branches .cb-table th,.crosscoder-branches .cb-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);min-width:0;color:var(--dark);text-align:right;padding:.4rem .6rem}.crosscoder-branches .cb-table thead th{color:var(--fig-note);font-weight:400}.crosscoder-branches .cb-table thead th:first-child,.crosscoder-branches .cb-table tbody th{text-align:left}.crosscoder-branches .cb-table td{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.crosscoder-branches .cb-table .cb-lit{background:var(--cb-lit-cell)}.cb-math{color:inherit;display:inline-block}.cb-math .katex{color:inherit;font-size:.95em}.cb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@container cb-figure (max-width:420px){.cb-pair{grid-template-columns:minmax(0,1fr);justify-items:center}}.crosscoder-masks{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ccm-figure/inline-size}.crosscoder-masks :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .crosscoder-masks{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.crosscoder-masks{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.crosscoder-masks{--ccm-lit:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--ccm-allowed:color-mix(in srgb, var(--fig-sage) 80%, var(--light));--ccm-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .crosscoder-masks{--ccm-lit:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray));--ccm-allowed:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--ccm-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.ccm-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.ccm-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.ccm-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.ccm-segments{grid-auto-flow:column;min-width:0}.ccm-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.ccm-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.ccm-segment:hover{color:var(--dark)}}.ccm-segment:has(input:checked){background:var(--ccm-segment-on);color:var(--dark)}.ccm-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.ccm-rule{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:.75rem 0 0;line-height:1.45}.ccm-rule[data-on=false]{display:none}.ccm-body{grid-template-columns:minmax(0,168fr) minmax(0,180fr);gap:.5rem;max-width:24rem;margin:.9rem auto 0;display:grid}.ccm-svg{--ccm-u:1.06;width:100%;display:block;overflow:visible}.ccm-svg :is(line,path,rect,circle){vector-effect:non-scaling-stroke}.ccm-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.ccm-svg .ccm-axis{fill:var(--fig-note);font-size:calc(var(--ccm-u) * var(--text-meta))}.ccm-svg .ccm-stream{stroke:var(--fig-stroke);stroke-width:2px}.ccm-svg .ccm-station{fill:var(--dark);stroke:var(--dark);stroke-width:1px;transition:fill .16s}.ccm-svg .ccm-station[data-used="0"]{fill:var(--light);stroke:var(--fig-stroke)}.ccm-svg .ccm-variant[data-on=false]{display:none}.ccm-svg .ccm-box{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1px;transition:fill .16s,stroke .16s}.ccm-svg .ccm-box[data-lit=true]{fill:var(--ccm-lit);stroke:var(--dark)}.ccm-svg .ccm-edges{transition:opacity .16s}.ccm-svg .ccm-edges[data-lit=false]{opacity:0}.ccm-svg .ccm-edge{stroke:var(--dark);stroke-width:1.2px}.ccm-svg .ccm-arrowhead{fill:var(--dark)}.ccm-svg .ccm-cell{fill:var(--light);stroke:var(--fig-stroke-soft);stroke-width:1px;transition:fill .16s,stroke .16s}.ccm-svg .ccm-cell[data-state="1"]{fill:var(--ccm-allowed);stroke:var(--fig-stroke)}.ccm-svg .ccm-cell[data-state="2"]{fill:var(--ccm-lit);stroke:var(--dark)}.ccm-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.ccm-readout>div{display:contents}.ccm-readout dt,.ccm-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.ccm-readout dt{color:var(--fig-note);font-weight:400}.ccm-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.ccm-readout .katex{color:inherit;font-size:1em}.ccm-readout{margin-top:.9rem}.ccm-readout dd{min-width:calc(var(--ccm-value-ch) * 1ch);white-space:nowrap}.ccm-math{color:inherit;display:inline-block}.ccm-math .katex{color:inherit;font-size:.95em}.ccm-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.ccm-svg .ccm-station,.ccm-svg .ccm-box,.ccm-svg .ccm-edges,.ccm-svg .ccm-cell,.ccm-segment{transition:none}}@container ccm-figure (max-width:400px){.ccm-segments{grid-template-columns:minmax(0,1fr);grid-auto-flow:row;width:100%}.ccm-segment{justify-content:flex-start}.ccm-body{grid-template-columns:minmax(0,1fr);max-width:15rem}.ccm-readout{grid-template-columns:minmax(0,1fr)}.ccm-readout dd{justify-content:flex-start}.ccm-segments--read{grid-template-columns:repeat(5,minmax(0,1fr))}.ccm-segment{padding:.28rem .35rem}}.data-chart{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:dch-figure/inline-size}.data-chart :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .data-chart{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.data-chart{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.data-chart{--dch-s0:var(--fig-salmon);--dch-s1:color-mix(in srgb, var(--fig-sage) 70%, var(--dark));--dch-edge:var(--dark);--dch-band:color-mix(in srgb, var(--gray) 16%, transparent)}:root[saved-theme=dark] .data-chart{--dch-s1:color-mix(in srgb, var(--fig-sage) 70%, var(--lightgray));--dch-band:color-mix(in srgb, var(--gray) 22%, transparent)}.dch-title{color:var(--fig-note);margin:0 0 .75rem;font-size:.82rem;font-weight:600}.dch-legend{color:var(--dark);flex-wrap:wrap;gap:.25rem 1rem;margin:0 0 .5rem;padding:0;font-size:.75rem;line-height:1.35;list-style:none;display:flex}.dch-legend li{align-items:center;gap:.4rem;margin:0;display:inline-flex}.dch-swatch{flex:none;width:18px;height:10px;overflow:visible}.dch-svg{aspect-ratio:440/270;--dch-u:.85;width:100%;max-width:640px;margin:0 auto;display:block;overflow:visible}.dch-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.dch-svg .dch-grid line{stroke:var(--fig-div);stroke-width:1px}.dch-svg .dch-rule{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.dch-svg .dch-tick{fill:var(--darkgray);font-size:calc(var(--dch-u) * 12px)}.dch-svg .dch-sup{font-size:calc(var(--dch-u) * 9px)}.dch-svg .dch-axis{fill:var(--darkgray);font-family:var(--bodyFont);font-size:calc(var(--dch-u) * 12px)}.dch-svg .dch-value,.dch-svg .dch-curve-label{fill:var(--dark);font-size:calc(var(--dch-u) * 12px)}.dch-svg .dch-marker,.dch-svg .dch-ref-mark{transform:scale(var(--dch-u));vector-effect:non-scaling-stroke}.dch-svg .dch-probe-dot{r:calc(var(--dch-u) * 4.5px);vector-effect:non-scaling-stroke}.dch-swatch{--dch-u:1}@container dch-figure (max-width:30rem){.dch-svg{--dch-u:1.15}}@container dch-figure (max-width:21rem){.dch-svg{--dch-u:1.5}}.dch-bar,.dch-marker{stroke:var(--dch-edge);stroke-width:1px}.dch-s0{fill:var(--dch-s0)}.dch-s1{fill:var(--dch-s1)}.dch-line{fill:none;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.dch-l0{stroke:var(--dark)}.dch-l1{stroke:var(--fig-stroke)}.dch-lc{stroke:var(--dark);stroke-width:2px}.dch-band rect{fill:#0000;transition:fill .14s}.dch-band line{stroke:#0000;stroke-width:1px;transition:stroke .14s}.dch-band[data-dch-on] rect{fill:var(--dch-band)}.dch-band[data-dch-on] line{stroke:var(--fig-stroke)}.dch-hit{fill:#0000;stroke:none;cursor:var(--cursor-crosshair,crosshair);outline:none}.dch-hit:focus-visible{stroke:var(--dark);stroke-width:2px}.dch-ref path{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px}.dch-ref rect{fill:var(--dch-s1);stroke:var(--dch-edge);stroke-width:1px}.dch-probe-hit{fill:#0000;cursor:var(--cursor-ew-resize,ew-resize);touch-action:pan-y}.dch-probe-drop{fill:none;stroke:var(--fig-stroke);stroke-width:1px;pointer-events:none;transition:d .16s cubic-bezier(.23,1,.32,1)}.dch-probe-dot{fill:var(--fig-salmon);stroke:var(--dark);stroke-width:1px;pointer-events:none;transition:cx .16s cubic-bezier(.23,1,.32,1),cy .16s cubic-bezier(.23,1,.32,1)}.data-chart[data-dch-dragging] .dch-probe-drop,.data-chart[data-dch-dragging] .dch-probe-dot{transition:none}.dch-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.dch-fo .katex{color:inherit;font-size:1em}.dch-fo .katex-display{margin:0}.dch-fo{font-size:calc(var(--dch-u,1) * 12px)}.dch-fo--center{justify-content:center}.dch-fo--end{justify-content:flex-end}.dch-math{color:inherit;display:inline-block}.dch-math .katex{color:inherit;font-size:.95em}.dch-probe-control{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.8rem;margin-top:.75rem;display:grid}.dch-probe-label{color:var(--fig-note);white-space:nowrap;font-size:.82rem}.dch-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.dch-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.dch-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.dch-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.dch-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.dch-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.dch-slider:active::-webkit-slider-thumb{transform:scale(.96)}.dch-slider:active::-moz-range-thumb{transform:scale(.96)}.dch-slider:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.dch-readouts{margin-top:.75rem}.dch-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.dch-readout>div{display:contents}.dch-readout dt,.dch-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.dch-readout dt{color:var(--fig-note);font-weight:400}.dch-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.dch-readout .katex{color:inherit;font-size:1em}.dch-readout{font-size:.75rem}.dch-readout[hidden]{display:none}.dch-readout dt{align-items:center}.dch-details{margin-top:.6rem;font-size:.75rem}.dch-details summary{width:max-content;color:var(--fig-tab-fg);font-family:var(--codeFont);cursor:var(--cursor-pointer,pointer)}.dch-details summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.dch-details summary:hover{color:var(--dark)}}.dch-table-wrap{margin-top:.5rem;overflow-x:auto}.dch-table{border-collapse:collapse;width:100%;margin:0;font-size:.75rem;line-height:1.35}.dch-table th,.dch-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);padding:.3rem .5rem}.dch-table th{color:var(--fig-note);text-align:left;font-weight:400}.dch-table thead th:not(:first-child),.dch-table td{text-align:right}.dch-table td{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums}.dch-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.dch-band rect,.dch-band line,.dch-probe-drop,.dch-probe-dot{transition:none}}@media (max-width:480px){.data-chart{padding:1rem .75rem}}.fsm-decoding{content-visibility:auto;contain-intrinsic-size:auto 40rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:fsm-figure/inline-size}.fsm-decoding :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .fsm-decoding{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.fsm-decoding{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.fsm-decoding{--fsm-lit:var(--fig-salmon);--fsm-band:color-mix(in srgb, var(--fig-salmon) 85%, var(--light));--fsm-allow:color-mix(in srgb, var(--fig-sage) 55%, var(--light));--fsm-segment-on:var(--fig-grid-selected);--fsm-node-ground:var(--light)}:root[saved-theme=dark] .fsm-decoding{--fsm-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--lightgray));--fsm-band:color-mix(in srgb, var(--fig-salmon) 38%, var(--lightgray));--fsm-allow:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--fsm-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.fsm-controls{flex-wrap:wrap;align-items:flex-end;gap:.75rem 2rem;display:flex}.fsm-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + var(--space-1));border:0;gap:1px;padding:1px;display:grid;position:relative}.fsm-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.fsm-segments{grid-auto-flow:column;min-width:0}.fsm-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.fsm-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.fsm-segment:hover{color:var(--dark)}.fsm-segment:has(input:checked){background:var(--fsm-segment-on);color:var(--dark)}.fsm-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.fsm-stepper{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-auto-flow:column;gap:1px;margin:0;padding:1px;display:grid}.fsm-btn{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--dark);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);border:0;margin:0;padding:.28rem .7rem;line-height:1.2;transition:background-color .14s,color .14s}.fsm-btn--primary{background:var(--fsm-segment-on)}.fsm-btn:disabled{color:var(--fig-tab-fg);background:var(--fig-grid-cell);cursor:var(--cursor-default,default)}.fsm-btn:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.fsm-btn:hover:not(:disabled){background:var(--fsm-allow)}}.fsm-regex{color:var(--fig-note);font-size:var(--text-meta);overflow-wrap:anywhere;margin:.85rem 0 0}.fsm-regex code{color:var(--dark);font-size:var(--text-meta);background:0 0;padding:0}.fsm-regex-label{margin-right:.35rem}.fsm-decoding[data-fsm-mode=char] [data-fsm-graph=compressed],.fsm-decoding[data-fsm-mode=compressed] [data-fsm-graph=char],.fsm-decoding[data-fsm-mode=char] [data-fsm-tape-mode=compressed],.fsm-decoding[data-fsm-mode=compressed] [data-fsm-tape-mode=char]{display:none}.fsm-graph{margin-top:.6rem;overflow-x:auto}.fsm-svg{--fsm-u:.77;width:100%;margin:0 auto;display:block}.fsm-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.fsm-svg--narrow{display:none}.fsm-svg .fsm-arrow{fill:var(--fig-stroke)}.fsm-svg .fsm-edge-line{fill:none;stroke:var(--fig-stroke);stroke-width:1px;vector-effect:non-scaling-stroke;transition:stroke .16s,stroke-width .16s}.fsm-svg .fsm-edge-band{fill:none;stroke:var(--fsm-band);stroke-width:5px;stroke-linejoin:miter;opacity:0;transition:opacity .16s}.fsm-svg .fsm-edge-label{fill:var(--dark);font-size:calc(var(--fsm-u) * var(--text-meta))}.fsm-svg .fsm-edge[data-st=s] .fsm-edge-line,.fsm-svg .fsm-edge[data-st=l] .fsm-edge-line{stroke:var(--dark);stroke-width:1.4px}.fsm-svg .fsm-edge[data-st=l] .fsm-edge-band{opacity:1}.fsm-svg .fsm-edge[data-st=s] .fsm-edge-label,.fsm-svg .fsm-edge[data-st=l] .fsm-edge-label{font-weight:700}.fsm-svg .fsm-node-box{fill:var(--fsm-node-ground);stroke:var(--fig-stroke);stroke-width:1px;vector-effect:non-scaling-stroke;transition:fill .16s,stroke .16s}.fsm-svg .fsm-node-accept{fill:none;stroke:var(--fig-stroke);stroke-width:.8px;vector-effect:non-scaling-stroke}.fsm-svg .fsm-node-label{fill:var(--dark);font-size:calc(var(--fsm-u) * var(--text-meta))}.fsm-svg .fsm-node[data-st=s] .fsm-node-box,.fsm-svg .fsm-node[data-st=s] .fsm-node-accept{stroke:var(--dark);stroke-width:1.4px}.fsm-svg .fsm-node[data-st=c] .fsm-node-box{fill:var(--fsm-lit);stroke:var(--dark);stroke-width:1.6px}.fsm-svg .fsm-node[data-st=c] .fsm-node-accept{stroke:var(--dark)}.fsm-actions{min-height:2.6em;margin-top:.75rem}.fsm-action{color:var(--dark);font-size:var(--text-meta);text-wrap:pretty;margin:0;line-height:1.45}.fsm-action code{color:var(--dark);font-size:var(--text-meta)}.fsm-panel{grid-template-columns:minmax(0,1fr);align-items:start;gap:.9rem;margin-top:.75rem;display:grid}.fsm-heading{font-size:var(--text-meta);color:var(--fig-note);margin:0 0 .75rem;font-weight:600}.fsm-heading--tape{margin-top:.85rem}.fsm-panel--static{grid-template-columns:minmax(0,1fr) minmax(15rem,18rem)}.fsm-mask{border-radius:var(--radius-none);background:var(--fig-grid-line);grid-template-columns:repeat(var(--fsm-cols,7), minmax(0, 1fr));border:0;gap:1px;margin:0;padding:1px;display:grid}.fsm-tok{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;flex-direction:column;align-items:center;gap:.1rem;min-width:0;margin:0;padding:.3rem .2rem;transition:background-color .16s;display:flex}.fsm-tok[data-st=a]{background:var(--fsm-allow)}.fsm-tok[data-st=p]{background:var(--fsm-lit)}.fsm-tok[data-st=x] .fsm-tok-text{color:var(--fig-tab-fg);text-decoration:line-through}.fsm-tok-text{color:var(--dark);font-size:var(--text-meta);white-space:pre;background:0 0;padding:0}.fsm-tok-to{min-height:1.2em;color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums}.fsm-tape{border-radius:var(--radius-none);background:var(--fig-grid-line);grid-template-columns:repeat(var(--fsm-tape-cols), minmax(0, 1fr));border:0;gap:1px;margin:0;padding:1px;list-style:none;display:grid}.fsm-cell{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;flex-direction:column;align-items:center;gap:.1rem;min-width:0;margin:0;padding:.28rem .15rem;transition:background-color .16s;display:flex}.fsm-cell code{color:var(--dark);font-size:var(--text-meta);white-space:pre;background:0 0;padding:0}.fsm-cell span{color:var(--fig-note);font-family:var(--codeFont);font-size:var(--text-meta)}.fsm-cell[data-st=h]>*{visibility:hidden}.fsm-cell[data-st=l]{background:var(--fsm-lit)}.fsm-cell[data-st=l] span{color:var(--dark)}.fsm-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.fsm-readout>div{display:contents}.fsm-readout dt,.fsm-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.fsm-readout dt{color:var(--fig-note);font-weight:400}.fsm-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.fsm-readout .katex{color:inherit;font-size:1em}.fsm-readout--pairs{grid-template-columns:repeat(2,minmax(0,1fr) max-content)}.fsm-edge-table{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:max-content minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;display:grid}.fsm-edge-row{display:contents}.fsm-edge-row>*{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;background:var(--fig-grid-cell);white-space:pre;border:0;margin:0;padding:.3rem .55rem}.fsm-edge-row--head>*{color:var(--fig-note);font-family:inherit}.fsm-math{color:inherit;display:inline-block}.fsm-math .katex{color:inherit;font-size:.95em}.fsm-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.fsm-svg .fsm-edge-line,.fsm-svg .fsm-edge-band,.fsm-svg .fsm-node-box,.fsm-tok,.fsm-cell,.fsm-segment,.fsm-btn{transition:none}}@container fsm-figure (max-width:560px){.fsm-panel--static{grid-template-columns:minmax(0,1fr)}.fsm-mask{grid-template-columns:repeat(3,minmax(0,1fr))}.fsm-tape{grid-template-columns:repeat(var(--fsm-tape-narrow), minmax(0, 1fr))}.fsm-readout--pairs{grid-template-columns:minmax(0,1fr) max-content}}@container fsm-figure (max-width:440px){.fsm-segments{grid-auto-flow:row}}@container fsm-figure (max-width:480px){.fsm-svg--wide:has(+.fsm-svg--narrow){display:none}.fsm-svg--narrow{min-width:19rem;display:block}}.flash-attention-tiles{content-visibility:auto;contain-intrinsic-size:auto 32rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:fat-figure/inline-size}.flash-attention-tiles :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .flash-attention-tiles{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.flash-attention-tiles{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.flash-attention-tiles{--fat-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fat-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fat-divider:color-mix(in srgb, var(--gray) 30%, transparent);--fat-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fat-bg-cell:color-mix(in srgb, var(--lightgray) 60%, var(--light));--fat-bg-faded:color-mix(in srgb, var(--lightgray) 35%, var(--light));--fat-active:var(--fig-salmon);--fat-active-bg:color-mix(in srgb, var(--fig-salmon) 35%, var(--light));--fat-done:var(--fig-sage);--fat-done-bg:color-mix(in srgb, var(--fig-sage) 30%, var(--light))}:root[saved-theme=dark] .flash-attention-tiles{--fat-active-bg:color-mix(in srgb, var(--fig-salmon) 20%, var(--lightgray));--fat-done-bg:color-mix(in srgb, var(--fig-sage) 18%, var(--lightgray))}.fat-stage{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:stretch;gap:1.5rem;display:grid}.fat-scroll{min-width:0;overflow-x:auto}.fat-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.fat-graph{aspect-ratio:720/492;--fat-u:1.33;width:100%;min-width:36rem;height:auto;display:block}.fat-graph .fat-cell,.fat-graph .fat-arrow,.fat-graph .fat-sram-panel{vector-effect:non-scaling-stroke}.fat-graph .fat-fo--axis{color:var(--fat-note-fg);font-weight:600}.fat-graph .fat-fo--block-label{color:var(--fat-note-fg);justify-content:flex-end;font-weight:600}.fat-graph .fat-fo--sublabel{color:var(--fat-note-fg);font-style:italic}.fat-graph .fat-fo--sublabel .katex{font-size:1em}.fat-graph .fat-fo--tile{color:var(--dark)}.fat-graph .fat-fo--caption-line{color:var(--fat-note-fg)}.fat-graph .fat-cell{fill:var(--fat-bg-cell);stroke:var(--fat-stroke-soft);stroke-width:.75px;transition:fill .22s,stroke .22s}.fat-graph .fat-cell.is-faded{fill:var(--fat-bg-faded)}.fat-graph .fat-cell.is-done{fill:var(--fat-done-bg);stroke:var(--fat-done)}.fat-graph .fat-cell.is-active{fill:var(--fat-active-bg);stroke:var(--fat-active);stroke-width:1.25px}.fat-graph .fat-arrow{stroke:var(--fat-stroke);stroke-width:1.2px;fill:none;opacity:0;transition:opacity .22s}.fat-graph .fat-arrow.is-active{stroke:var(--fat-active);opacity:.95}.fat-graph .fat-arrowhead{fill:var(--fat-stroke)}.fat-graph .fat-arrowhead.is-active{fill:var(--fat-active)}.fat-graph .fat-sram-panel{fill:none;stroke:var(--fat-divider);stroke-width:1px}.fat-graph .fat-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.fat-graph .fat-fo .katex{color:inherit;font-size:1em}.fat-graph .fat-fo .katex-display{margin:0}.fat-graph .fat-fo{font-size:calc(var(--fat-u) * var(--text-meta));justify-content:center}.fat-controls{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.fat-button{border-radius:var(--radius-none);border:1px solid var(--gray);background:color-mix(in srgb, var(--light) 92%, transparent);color:var(--dark);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.85rem;transition:background .16s;display:inline-flex}.fat-button:hover{background:color-mix(in srgb, var(--fat-active) 18%, var(--light))}.fat-button:disabled{opacity:.45;cursor:var(--cursor-not-allowed,not-allowed)}.fat-button[data-fat-reset]{background:0 0}.fat-step-readout{color:var(--fat-note-fg);font-family:var(--bodyFont);font-size:.85rem}.fat-step-readout .katex{color:var(--dark);font-size:.95em}.fat-sidebar{flex-direction:column;gap:1rem;min-width:0;display:flex}.fat-card{border-radius:var(--radius-none);border:1px solid var(--gray);background:color-mix(in srgb, var(--light) 96%, transparent);padding:.85rem 1rem}.fat-stats{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.fat-stats>div{display:contents}.fat-stats dt,.fat-stats dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.fat-stats dt{color:var(--fig-note);font-weight:400}.fat-stats dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.fat-stats .katex{color:inherit;font-size:1em}.fat-recurrence{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);flex-direction:column;gap:.3rem;margin-top:1rem;padding:.85rem 1.1rem;display:flex}.fat-recurrence .fat-math{display:block}.fat-recurrence .katex-display{text-align:center;margin:.2rem 0;overflow:auto hidden}.fat-math{color:var(--dark)}.fat-math .katex{color:inherit;font-size:.95em}.fat-math .katex-display{text-align:left;margin:.15rem 0}.fat-math .katex-display>.katex{text-align:left}.fat-ratio{min-width:0;font-family:var(--bodyFont);color:var(--fat-note-fg);margin:0;font-size:.85rem;overflow-x:auto}.fat-ratio .katex{color:var(--dark);font-size:.92em}.fat-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.fat-caption .fat-math{vertical-align:-.03em;margin:0 .22em}@container fat-figure (max-width:760px){.fat-stage{grid-template-columns:minmax(0,1fr);gap:1.25rem}}@container fat-figure (max-width:460px){.flash-attention-tiles{padding:0}.fat-recurrence .katex{font-size:.82em}}@charset "UTF-8";.flash-data-flow{content-visibility:auto;contain-intrinsic-size:auto 24rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:fdf-figure/inline-size}.flash-data-flow :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .flash-data-flow{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.flash-data-flow{--fdf-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fdf-cell-fg:var(--fdf-note-fg);--fdf-tiny-fg:var(--gray);--fdf-tab-surface:var(--fig-tab-surface);--fdf-tab-border:var(--fig-tab-border);--fdf-tab-active:color-mix(in srgb, var(--lightgray) 70%, var(--fdf-tab-surface));--fdf-load:var(--fig-sage);--fdf-store:var(--fig-salmon);--fdf-hbm:color-mix(in srgb, var(--fig-sage) 20%, var(--light));--fdf-chip-bg:color-mix(in srgb, var(--lightgray) 40%, var(--light));--fdf-cell:color-mix(in srgb, var(--fig-sage) 42%, var(--light));--fdf-mma:color-mix(in srgb, var(--fig-salmon) 46%, var(--light));--fdf-sm:color-mix(in srgb, var(--fig-sage) 46%, var(--light));--fdf-stat:color-mix(in srgb, var(--lightgray) 60%, var(--light));--fdf-sched:color-mix(in srgb, var(--light) 92%, var(--lightgray));--fdf-ring:color-mix(in srgb, var(--fig-sage) 14%, var(--light));--fdf-tmem:color-mix(in srgb, var(--lightgray) 70%, var(--light));--fdf-poly:color-mix(in srgb, var(--lightgray) 90%, var(--light));--fdf-warn:color-mix(in srgb, var(--fig-salmon) 70%, var(--darkgray));--fdf-ok:color-mix(in srgb, #7a8a3a 70%, var(--darkgray));--fdf-prod:color-mix(in srgb, var(--fig-sage) 60%, var(--darkgray))}:root[saved-theme=dark] .flash-data-flow{--fdf-cell-fg:var(--dark);--fdf-tiny-fg:var(--dark);--fdf-tab-active:color-mix(in srgb, var(--dark) 12%, var(--fdf-tab-surface));--fdf-hbm:color-mix(in srgb, var(--fig-sage) 14%, var(--lightgray));--fdf-chip-bg:color-mix(in srgb, var(--dark) 6%, var(--lightgray));--fdf-cell:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--fdf-mma:color-mix(in srgb, var(--fig-salmon) 20%, var(--lightgray));--fdf-sm:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--fdf-ring:color-mix(in srgb, var(--fig-sage) 10%, var(--lightgray));--fdf-tmem:color-mix(in srgb, var(--dark) 10%, var(--lightgray));--fdf-poly:color-mix(in srgb, var(--dark) 14%, var(--lightgray));--fdf-prod:color-mix(in srgb, var(--fig-sage) 70%, var(--light))}.fdf-head{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.fdf-tablist{isolation:isolate;border:1px solid var(--fdf-tab-border);border-radius:var(--radius-none);background:var(--fdf-tab-surface);align-items:stretch;height:1.55rem;display:inline-flex;overflow:hidden}.fdf-tab{box-sizing:border-box;background:var(--fdf-tab-surface);height:100%;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 .78rem;font-size:.72rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}.fdf-tab:not(:disabled):hover{color:var(--dark)}.fdf-tab:focus-visible{outline:2px solid color-mix(in srgb, var(--secondary) 50%, transparent);outline-offset:-2px}.fdf-tab[aria-selected=true]{background:var(--fdf-tab-active);color:var(--dark)}.fdf-sub{margin:.6rem 0 .1rem;display:none}.flash-data-flow[data-fdf-mode=fa1] .fdf-sub--fa1,.flash-data-flow[data-fdf-mode=fa2] .fdf-sub--fa2,.flash-data-flow[data-fdf-mode=fa3] .fdf-sub--fa3,.flash-data-flow[data-fdf-mode=fa4] .fdf-sub--fa4{display:block}.fdf-sub-list{color:var(--fdf-note-fg);margin:0;padding:0;font-size:.72rem;line-height:1.5;list-style:none}.fdf-sub-list li{text-wrap:pretty;padding-left:.85rem;position:relative}.fdf-sub-list li:before{content:"–";color:var(--gray);position:absolute;left:.1rem}.fdf-sub-list .katex{font-size:.92em}.fdf-svg{aspect-ratio:720/320;width:100%;height:auto;margin-top:.5rem;display:block}.fdf-svg .fdf-scene{display:none}.fdf-svg .fdf-tier{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1px}.fdf-svg .fdf-tier--hbm{fill:var(--fdf-hbm)}.fdf-svg .fdf-tier--chip{fill:var(--fdf-chip-bg);stroke:var(--fig-stroke-soft)}.fdf-svg .fdf-tier--ghost{opacity:.5}.fdf-svg .fdf-tier--ghost-far{opacity:.28}.fdf-svg .fdf-tier--ring{fill:var(--fdf-ring)}.fdf-svg .fdf-tier--tmem{fill:var(--fdf-tmem)}.fdf-svg .fdf-cell{fill:var(--fdf-cell);stroke:var(--fig-stroke-soft);stroke-width:.6px}.fdf-svg .fdf-chip{stroke:var(--fig-stroke-soft);stroke-width:.8px}.fdf-svg .fdf-chip--mma{fill:var(--fdf-mma)}.fdf-svg .fdf-chip--sm{fill:var(--fdf-sm)}.fdf-svg .fdf-chip--stat{fill:var(--fdf-stat)}.fdf-svg .fdf-chip--sched{fill:var(--fdf-sched)}.fdf-svg .fdf-chip--poly{fill:var(--fdf-poly)}.fdf-svg .fdf-slot{fill:color-mix(in srgb, var(--fig-sage) 30%, var(--light));stroke:var(--fig-stroke-soft);stroke-width:.6px}.fdf-svg .fdf-flow-line,.fdf-svg .fdf-roundtrip{stroke:var(--fig-stroke);stroke-width:1.1px;fill:none}.fdf-svg .fdf-flow-line--dispatch,.fdf-svg .fdf-flow-line--fb{stroke:var(--fig-stroke-soft)}.fdf-svg .fdf-roundtrip{stroke:var(--fdf-warn);stroke-width:1.2px}.fdf-svg .fdf-ah{fill:var(--fig-stroke)}.fdf-svg .fdf-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.fdf-svg .fdf-fo .katex{color:inherit;font-size:1em}.fdf-svg .fdf-fo .katex-display{margin:0}.fdf-svg .fdf-fo{white-space:nowrap;font-size:12px;font-family:var(--bodyFont);color:var(--fdf-note-fg);justify-content:center;overflow:visible}.fdf-svg .fdf-fo .katex{white-space:nowrap}.fdf-svg .fdf-fo--start{justify-content:flex-start}.fdf-svg .fdf-fo--big{color:var(--dark);font-size:13px;font-weight:600}.fdf-svg .fdf-fo--label{color:var(--fdf-note-fg);font-size:11px}.fdf-svg .fdf-fo--cell{color:var(--fdf-cell-fg);font-size:12.5px}.fdf-svg .fdf-fo--chip{color:var(--dark);font-size:12px}.fdf-svg .fdf-fo--sm{font-size:10.5px}.fdf-svg .fdf-fo--tiny{color:var(--fdf-tiny-fg);font-size:9px}.fdf-svg .fdf-fo--flow{color:var(--fdf-note-fg);font-size:10.5px}.fdf-svg .fdf-fo--warn{color:var(--dark);font-weight:600}.fdf-svg .fdf-fo--ok{color:var(--fdf-ok);font-weight:600}.fdf-svg .fdf-fo--prod{color:var(--fdf-prod)}.fdf-svg .fdf-fo--cons{color:var(--dark)}.fdf-svg .fdf-fo--ring{font-size:11px}.fdf-svg .fdf-fo--spec{color:var(--fdf-note-fg);font-size:10px}.fdf-svg .fdf-pkt--load{fill:var(--fdf-load)}.fdf-svg .fdf-pkt--store{fill:var(--fdf-store)}.flash-data-flow[data-fdf-mode=fa1] .fdf-scene--fa1,.flash-data-flow[data-fdf-mode=fa2] .fdf-scene--fa2,.flash-data-flow[data-fdf-mode=fa3] .fdf-scene--fa3,.flash-data-flow[data-fdf-mode=fa4] .fdf-scene--fa4{display:block}@keyframes fdf-flow{0%{opacity:0;transform:translate(0)}14%{opacity:1}84%{opacity:1}to{transform:translateX(var(--dx,150px));opacity:0}}@keyframes fdf-once{0%,66%{opacity:0;transform:translate(0)}74%{opacity:1}96%{opacity:1}to{transform:translateX(var(--dx,-150px));opacity:0}}@keyframes fdf-pulse{0%,to{fill-opacity:.5}50%{fill-opacity:1}}@keyframes fdf-pulse-gap{0%,28%{fill-opacity:.5}46%{fill-opacity:1}64%,to{fill-opacity:.5}}@keyframes fdf-slot-cycle{0%,to{fill-opacity:.4}50%{fill-opacity:1}}.fdf-scene--fa1 .fdf-lane--s-load .fdf-pkt{--dx:148px;animation:3s ease-in-out infinite fdf-flow}.fdf-scene--fa1 .fdf-kernel .fdf-chip--mma{animation:3s ease-in-out infinite fdf-pulse-gap}.fdf-scene--fa1 .fdf-lane--s-store .fdf-pkt{--dx:-126px;animation:3s ease-in-out 2s infinite fdf-flow}.fdf-scene--fa2 .fdf-lane--stream .fdf-pkt{--dx:168px;animation:2.2s linear infinite fdf-flow}.fdf-scene--fa2 .fdf-sm-glyph{animation:2.2s ease-in-out infinite fdf-pulse}.fdf-scene--fa2 .fdf-lane--once .fdf-pkt{--dx:-150px;animation:2.2s ease-in-out infinite fdf-once}.fdf-scene--fa2 .fdf-sm--1 .fdf-lane--stream .fdf-pkt{animation-delay:.2s}.fdf-scene--fa2 .fdf-sm--2 .fdf-lane--stream .fdf-pkt{animation-delay:.4s}.fdf-scene--fa3 .fdf-lane--tma .fdf-pkt{--dx:168px;animation:1.3s linear infinite fdf-flow}.fdf-scene--fa3 .fdf-lane--tma2 .fdf-pkt{animation-delay:.65s}.fdf-scene--fa3 .fdf-slot--0{animation:1.3s ease-in-out infinite fdf-slot-cycle}.fdf-scene--fa3 .fdf-slot--1{animation:1.3s ease-in-out .43s infinite fdf-slot-cycle}.fdf-scene--fa3 .fdf-slot--2{animation:1.3s ease-in-out .86s infinite fdf-slot-cycle}.fdf-scene--fa3 .fdf-kernel .fdf-chip--mma{animation:1.3s ease-in-out .5s infinite fdf-pulse}.fdf-scene--fa4 .fdf-lane--sched .fdf-pkt{--dx:132px;animation:1.8s linear infinite fdf-flow}.fdf-scene--fa4 .fdf-pulse--mma{animation:1.8s ease-in-out infinite fdf-pulse}.fdf-scene--fa4 .fdf-pulse--softmax{animation:1.8s ease-in-out .9s infinite fdf-pulse}@media (prefers-reduced-motion:reduce){.flash-data-flow .fdf-pkt,.flash-data-flow .fdf-chip--mma,.flash-data-flow .fdf-sm-glyph,.flash-data-flow .fdf-slot,.flash-data-flow .fdf-pulse--mma,.flash-data-flow .fdf-pulse--softmax{animation:none!important}.flash-data-flow .fdf-pkt{opacity:.9}.flash-data-flow .fdf-chip--mma,.flash-data-flow .fdf-pulse--mma,.flash-data-flow .fdf-pulse--softmax,.flash-data-flow .fdf-sm-glyph,.flash-data-flow .fdf-slot{fill-opacity:.85}}.fdf-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.fdf-caption .fdf-math{vertical-align:-.03em;margin:0 .22em}.flashinfer-page-layout{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:fpl-figure/inline-size}.flashinfer-page-layout :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .flashinfer-page-layout{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.flashinfer-page-layout{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.flashinfer-page-layout{--fpl-salmon:color-mix(in srgb, var(--fig-salmon) 72%, var(--light));--fpl-sage:color-mix(in srgb, var(--fig-sage) 55%, var(--light));--fpl-ink:color-mix(in srgb, var(--darkgray) 28%, var(--light));--fpl-empty:var(--light);--fpl-on:var(--fig-grid-selected)}:root[saved-theme=dark] .flashinfer-page-layout{--fpl-salmon:color-mix(in srgb, var(--fig-salmon) 40%, var(--lightgray));--fpl-sage:color-mix(in srgb, var(--fig-sage) 28%, var(--lightgray));--fpl-ink:color-mix(in srgb, var(--gray) 55%, var(--lightgray));--fpl-empty:var(--lightgray);--fpl-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.fpl-controls{margin-bottom:.85rem}.fpl-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.fpl-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.fpl-segments{grid-auto-flow:column;width:fit-content;min-width:0}.fpl-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:2rem;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .55rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.fpl-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.fpl-segment:hover{color:var(--dark)}}.fpl-segment:has(input:checked){background:var(--fpl-on);color:var(--dark)}.fpl-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:2px}.fpl-body{grid-template-columns:minmax(0,1.1fr) minmax(12rem,.9fr);align-items:start;gap:1.25rem 1.5rem;display:grid}@container fpl-figure (max-width:36rem){.fpl-body{grid-template-columns:1fr}}.fpl-svg{width:100%;max-width:22rem;display:block;overflow:visible}.fpl-title,.fpl-page-label{fill:var(--fig-note);font-family:var(--codeFont);font-size:11px}.fpl-cell{fill:var(--fpl-empty);stroke:var(--fig-stroke-soft);stroke-width:1px;transition:fill .14s,opacity .14s,stroke .14s}.fpl-cell--live{stroke:var(--fig-stroke)}[data-fpl-tone=salmon] .fpl-cell--live{fill:var(--fpl-salmon)}[data-fpl-tone=sage] .fpl-cell--live{fill:var(--fpl-sage)}[data-fpl-tone=ink] .fpl-cell--live{fill:var(--fpl-ink)}[data-fpl-page][data-fpl-dim=true]{opacity:.28}.fpl-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.fpl-table{border-collapse:collapse;width:100%;font-family:var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);font-size:.72rem}.fpl-table th,.fpl-table td{border:1px solid var(--fig-grid-line);text-align:left;padding:.35rem .45rem}.fpl-table th{color:var(--fig-note);background:var(--fig-tab-surface);font-weight:500}.fpl-table tr[data-fpl-on]{background:var(--fpl-on)}.fpl-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.fpl-readout>div{display:contents}.fpl-readout dt,.fpl-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.fpl-readout dt{color:var(--fig-note);font-weight:400}.fpl-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.fpl-readout .katex{color:inherit;font-size:1em}.fpl-readout{margin:0}.fpl-qo{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.fpl-qo-label{color:var(--fig-note);font-family:var(--codeFont);margin-right:.35rem;font-size:.72rem}.fpl-qo-cell{border:1px solid var(--fig-stroke);box-sizing:border-box;width:1.1rem;height:1.1rem;transition:opacity .14s}.fpl-qo-cell[data-fpl-tone=salmon]{background:var(--fpl-salmon)}.fpl-qo-cell[data-fpl-tone=sage]{background:var(--fpl-sage)}.fpl-qo-cell[data-fpl-tone=ink]{background:var(--fpl-ink)}.fpl-qo-cell[data-fpl-dim=true]{opacity:.28}.fpl-math{color:inherit;display:inline-block}.fpl-math .katex{color:inherit;font-size:.95em}.fpl-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.gated-sae{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:gsae-figure/inline-size}.gated-sae :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .gated-sae{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.gated-sae{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.gated-sae{--gsae-on:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--gsae-gate:color-mix(in srgb, var(--fig-sage) 70%, var(--light));--gsae-param:color-mix(in srgb, var(--lightgray) 40%, var(--light))}:root[saved-theme=dark] .gated-sae{--gsae-on:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray));--gsae-gate:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--gsae-param:var(--lightgray)}.gsae-controls{grid-template-columns:max-content minmax(0,1fr) 3rem;align-items:center;gap:.8rem;display:grid}.gsae-label{color:var(--fig-note);white-space:nowrap;font-size:.82rem}.gsae-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.gsae-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gsae-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.gsae-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gsae-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gsae-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.gsae-slider:active::-webkit-slider-thumb{transform:scale(.96)}.gsae-slider:active::-moz-range-thumb{transform:scale(.96)}.gsae-chip{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;font-size:.82rem}.gsae-rule{color:var(--fig-note);text-wrap:pretty;margin:.5rem 0 0;font-size:.78rem;line-height:1.45}.gsae-body{margin-top:.9rem}.gsae-body--jumprelu{grid-template-columns:minmax(0,20rem) minmax(0,18rem);justify-content:center;align-items:center;gap:1.5rem;display:grid}.gsae-scroll{overflow-x:auto}.gsae-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.gsae-svg--gated{min-width:30rem}.gsae-svg--plot{max-width:20rem}.gsae-svg{width:100%;margin:0 auto;display:block;overflow:visible}.gsae-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.gsae-svg .gsae-wire{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.gsae-svg .gsae-cell{fill:var(--light);stroke:var(--fig-stroke);stroke-width:.8px;transition:fill .16s}.gsae-svg .gsae-col--param .gsae-cell{fill:var(--gsae-param);stroke:var(--fig-stroke-soft)}.gsae-svg .gsae-col--gate .gsae-cell[data-gsae-on="1"]{fill:var(--gsae-gate)}.gsae-svg .gsae-col--out .gsae-cell{stroke:var(--dark)}.gsae-svg .gsae-col--out .gsae-cell[data-gsae-on="1"]{fill:var(--gsae-on)}.gsae-svg .gsae-num{fill:var(--dark);font-size:9.5px}.gsae-svg .gsae-index{fill:var(--fig-note);font-size:9px}.gsae-svg .gsae-lane{fill:var(--fig-note);font-family:inherit;font-size:10px}.gsae-svg .gsae-block{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.gsae-svg .gsae-op,.gsae-svg .gsae-prod{fill:var(--light);stroke:var(--dark);stroke-width:1px}.gsae-svg .gsae-prod-dot{fill:var(--dark)}.gsae-svg .gsae-grid line{stroke:var(--fig-div);stroke-width:1px}.gsae-svg .gsae-axis{stroke:var(--fig-stroke);stroke-width:1px}.gsae-svg .gsae-tick{fill:var(--dark);font-size:10px}.gsae-svg .gsae-diag,.gsae-svg .gsae-theta{stroke:var(--fig-stroke-soft);stroke-width:1px}.gsae-svg .gsae-curve{fill:none;stroke:var(--dark);stroke-width:1.8px}.gsae-svg .gsae-end{stroke:var(--dark);stroke-width:1.2px}.gsae-svg .gsae-end--closed{fill:var(--dark)}.gsae-svg .gsae-end--open{fill:var(--light)}.gsae-svg .gsae-point{fill:var(--light);stroke:var(--dark);stroke-width:1px;transition:cy .18s,fill .16s}.gsae-svg .gsae-point[data-gsae-on="1"]{fill:var(--fig-salmon)}.gsae-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.gsae-fo .katex{color:inherit;font-size:1em}.gsae-fo .katex-display{margin:0}.gsae-fo{justify-content:center;height:100%;font-size:.74rem}.gsae-table{border-collapse:collapse;width:100%;margin:0;font-size:.78rem}.gsae-table th,.gsae-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);text-align:right;padding:.32rem .5rem}.gsae-table thead th{color:var(--fig-note);font-weight:400}.gsae-table tbody th{color:var(--fig-note);text-align:center;font-weight:400}.gsae-table td{font-family:var(--codeFont);font-variant-numeric:tabular-nums;transition:background-color .16s}.gsae-table td[data-gsae-on="1"]{background:var(--gsae-on)}.gated-sae .gsae-table :is(th,td){min-width:0}.gsae-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.gsae-readout>div{display:contents}.gsae-readout dt,.gsae-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.gsae-readout dt{color:var(--fig-note);font-weight:400}.gsae-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.gsae-readout .katex{color:inherit;font-size:1em}.gsae-readout{margin-top:.9rem}.gsae-math{color:inherit;display:inline-block}.gsae-math .katex{color:inherit;font-size:.95em}.gsae-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.gsae-svg .gsae-cell,.gsae-svg .gsae-point,.gsae-table td{transition:none}}@container gsae-figure (max-width:520px){.gsae-body--jumprelu{grid-template-columns:minmax(0,1fr)}}@container gsae-figure (max-width:380px){.gsae-controls{grid-template-columns:minmax(0,1fr) 3rem}.gsae-label{grid-column:1/-1}}.grammar-bitmask-batch{content-visibility:auto;contain-intrinsic-size:auto 42rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:gbb-figure/inline-size}.grammar-bitmask-batch :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .grammar-bitmask-batch{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.grammar-bitmask-batch{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.grammar-bitmask-batch{--gbb-bit:color-mix(in srgb, var(--fig-sage) 85%, var(--dark) 15%);--gbb-lit:var(--fig-salmon);--gbb-masked:color-mix(in srgb, var(--fig-sage) 55%, var(--light));--gbb-band:var(--fig-grid-selected);--gbb-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .grammar-bitmask-batch{--gbb-bit:var(--fig-sage);--gbb-masked:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--gbb-band:color-mix(in srgb, var(--fig-sage) 10%, var(--light));--gbb-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.gbb-controls{flex-wrap:wrap;align-items:flex-end;gap:.75rem 2rem;display:flex}.gbb-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + var(--space-1));border:0;gap:1px;padding:1px;display:grid;position:relative}.gbb-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.gbb-segments{grid-auto-flow:column;min-width:0}.gbb-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.gbb-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.gbb-segment:hover{color:var(--dark)}.gbb-segment:has(input:checked){background:var(--gbb-segment-on);color:var(--dark)}.gbb-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.gbb-svg{width:100%;margin:.9rem auto 0;display:block}.gbb-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.gbb-svg [data-gbb-n][data-on=false]{display:none}.gbb-svg .gbb-box{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.gbb-svg .gbb-title{fill:var(--dark);font-size:10px;font-weight:600}.gbb-svg .gbb-head,.gbb-svg .gbb-note,.gbb-svg .gbb-step{fill:var(--fig-note);font-size:8.5px}.gbb-svg .gbb-label,.gbb-svg .gbb-state,.gbb-svg .gbb-value{fill:var(--dark);font-size:9.5px}.gbb-svg .gbb-req-band{fill:#0000;transition:fill .16s}.gbb-svg .gbb-req[data-on=true] .gbb-req-band{fill:var(--gbb-band)}.gbb-svg .gbb-req[data-on=true] .gbb-label{font-weight:600}.gbb-svg .gbb-strip{fill:var(--light);stroke:var(--fig-stroke-soft);stroke-width:.8px}.gbb-svg .gbb-bit{fill:var(--gbb-bit);transition:fill .16s}.gbb-svg .gbb-req[data-on=true] .gbb-bit{fill:var(--gbb-lit);stroke:var(--dark);stroke-width:.5px}.gbb-svg .gbb-wire{stroke:var(--fig-stroke);stroke-width:1px}.gbb-svg .gbb-logit{fill:#0000;stroke:var(--fig-stroke-soft);stroke-width:.8px;transition:fill .16s}.gbb-svg .gbb-logit[data-masked=true]{fill:var(--gbb-masked)}.gbb-svg .gbb-logit[data-on=true]{fill:var(--gbb-lit);stroke:var(--dark)}.gbb-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:.9rem;margin-top:.9rem;display:grid}.gbb-detail[data-on=false]{display:none}.gbb-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.gbb-readout>div{display:contents}.gbb-readout dt,.gbb-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.gbb-readout dt{color:var(--fig-note);font-weight:400}.gbb-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.gbb-readout .katex{color:inherit;font-size:1em}.gbb-readout{margin:0}.gbb-table{border-collapse:collapse;width:100%;margin:0;font-size:.78rem;line-height:1.35}.gbb-table th,.gbb-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;padding:.32rem .55rem;font-weight:400}.gbb-table td{white-space:nowrap}.gbb-table thead th{color:var(--fig-note);font-family:inherit}.gbb-table thead th:first-child,.gbb-table tbody th{text-align:left}.gbb-math{color:inherit;display:inline-block}.gbb-math .katex{color:inherit;font-size:.95em}.gbb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;overflow-wrap:anywhere;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.gbb-segment,.gbb-svg .gbb-req-band,.gbb-svg .gbb-bit,.gbb-svg .gbb-logit{transition:none}}@container gbb-figure (max-width:560px){.gbb-detail{grid-template-columns:minmax(0,1fr)}}.graph-traversal{content-visibility:auto;contain-intrinsic-size:auto 40rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:gtr-figure/inline-size}.graph-traversal :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .graph-traversal{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.graph-traversal{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.graph-traversal{--gtr-current:var(--fig-salmon);--gtr-done:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--gtr-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .graph-traversal{--gtr-current:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--gtr-done:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--gtr-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.gtr-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.gtr-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.gtr-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.gtr-segments{grid-auto-flow:column;min-width:0}.gtr-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .5rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.gtr-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.gtr-segment:has(input:checked){background:var(--gtr-segment-on);color:var(--dark)}.gtr-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.gtr-segment:hover{color:var(--dark)}}.gtr-rule{color:var(--fig-note);text-wrap:pretty;margin:.75rem 0 0;font-size:.78rem;line-height:1.45;display:none}.graph-traversal[data-gtr-mode=dfs] [data-gtr-rule=dfs],.graph-traversal[data-gtr-mode=bfs] [data-gtr-rule=bfs]{display:block}.gtr-svg{width:100%;max-width:32rem;margin:.9rem auto 0;display:block;overflow:visible}.gtr-svg .gtr-edge{stroke:var(--fig-stroke-soft);stroke-width:1.6px;transition:stroke .16s,stroke-width .16s}.gtr-svg .gtr-edge[data-state=s]{stroke:var(--fig-stroke)}.gtr-svg .gtr-edge[data-state=t]{stroke:var(--dark);stroke-width:2.4px}.gtr-svg .gtr-edge[data-state=c]{stroke:var(--fig-salmon);stroke-width:5px}.gtr-svg .gtr-node rect{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1px;transition:fill .16s,stroke .16s}.gtr-svg .gtr-node text{fill:var(--fig-note);font-family:var(--codeFont);font-size:10px}.gtr-svg .gtr-node[data-state=o] rect{stroke:var(--dark);stroke-width:1.8px}.gtr-svg .gtr-node[data-state=f] rect{fill:var(--gtr-done);stroke:var(--fig-stroke)}.gtr-svg .gtr-node[data-state=c] rect{fill:var(--gtr-current);stroke:var(--dark);stroke-width:1.8px}.gtr-svg .gtr-node:not([data-state=u]) text{fill:var(--dark)}.gtr-stepper{align-items:center;gap:.4rem;margin-top:.9rem;display:flex}.gtr-button{border:1px solid var(--darkgray);border-radius:var(--radius-none);background:var(--light);min-height:1.5rem;color:var(--dark);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);flex:none;padding:.2rem .55rem;font-size:.72rem;line-height:1.2;transition:background-color .12s}.gtr-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.gtr-button:hover{background:var(--fig-tab-surface)}}.gtr-range{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.gtr-range::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gtr-range::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.gtr-range::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gtr-range::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.gtr-range::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.gtr-range:active::-webkit-slider-thumb{transform:scale(.96)}.gtr-range:active::-moz-range-thumb{transform:scale(.96)}.gtr-range:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.gtr-say{min-height:2.3em;color:var(--dark);align-items:baseline;gap:.6rem;margin:.6rem 0 0;font-size:.8rem;line-height:1.4;display:flex}.gtr-count{min-width:3.4rem;color:var(--fig-note);font-family:var(--codeFont);font-variant-numeric:tabular-nums;flex:none;font-size:.72rem}.gtr-store{margin-top:.6rem}.gtr-store-label{color:var(--fig-note);margin-bottom:.3rem;font-size:.72rem;display:none}.graph-traversal[data-gtr-mode=dfs] [data-gtr-store-label=dfs],.graph-traversal[data-gtr-mode=bfs] [data-gtr-store-label=bfs]{display:block}.gtr-store-cells{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:repeat(10,minmax(0,1fr));gap:1px;margin:0;padding:1px;list-style:none;display:grid}.gtr-store-cell{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;min-height:1.6rem;color:var(--dark);font-family:var(--codeFont);text-align:center;border:0;margin:0;padding:.25rem 0;font-size:.72rem;line-height:1.6rem;transition:background-color .14s}.gtr-store-cell[data-filled]{background:var(--fig-grid-selected)}.gtr-store-cell[data-filled]:last-child{font-weight:600}.gtr-store-cell[data-filled]:has(+:not([data-filled])){font-weight:600}.gtr-table{border-collapse:collapse;table-layout:fixed;width:100%;font-family:var(--codeFont);font-variant-numeric:tabular-nums;margin-top:.75rem;font-size:.72rem}.gtr-table th,.gtr-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);text-align:center;padding:.3rem 0;font-weight:400}.gtr-table th[scope=col]:first-child,.gtr-table th[scope=row]{width:4.2rem;color:var(--fig-note);text-align:left;padding:.3rem .45rem}.gtr-table thead th{color:var(--fig-note)}.gtr-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.gtr-readout>div{display:contents}.gtr-readout dt,.gtr-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.gtr-readout dt{color:var(--fig-note);font-weight:400}.gtr-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.gtr-readout .katex{color:inherit;font-size:1em}.gtr-readout{margin-top:.75rem}.gtr-math{color:inherit;display:inline-block}.gtr-math .katex{color:inherit;font-size:.95em}.gtr-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.gtr-svg .gtr-edge,.gtr-svg .gtr-node rect,.gtr-segment,.gtr-store-cell,.gtr-button{transition:none}}@container gtr-figure (max-width:480px){.gtr-stepper{flex-wrap:wrap}.gtr-range{flex-basis:100%;order:1}.gtr-segments--start{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row}.gtr-segment{padding:.28rem .3rem}.gtr-table{font-size:.64rem}.gtr-table th[scope=col]:first-child,.gtr-table th[scope=row]{width:3rem;padding:.3rem .25rem}.gtr-store-cell{font-size:.64rem}.gtr-button{padding:.2rem .35rem}}.head-spectrum{content-visibility:auto;contain-intrinsic-size:auto 44rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:hs-figure/inline-size}.head-spectrum :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .head-spectrum{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.head-spectrum{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.head-spectrum{--hs-ink:var(--dark);--hs-ground:var(--light);--hs-kept:color-mix(in srgb, var(--fig-sage) 42%, var(--light));--hs-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .head-spectrum{--hs-kept:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--hs-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.hs-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.hs-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.hs-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.hs-segments{grid-auto-flow:column;min-width:0}.hs-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.hs-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.hs-segment:hover{color:var(--dark)}.hs-segment:has(input:checked){background:var(--hs-segment-on);color:var(--dark)}.hs-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.hs-plot{width:100%;max-width:40rem;margin:1rem auto 0;position:relative}.hs-svg{--hs-u:1.13;width:100%;display:block;overflow:visible}.hs-svg :is(line,path,rect,circle){vector-effect:non-scaling-stroke}.hs-svg[data-hs-layout=narrow]{display:none}.hs-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.hs-svg .hs-grid line{stroke:var(--fig-div);stroke-width:1px}.hs-svg .hs-panel{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px}.hs-svg .hs-tick{fill:var(--darkgray);font-size:calc(var(--hs-u) * var(--text-meta))}.hs-svg .hs-sup,.hs-svg .hs-sub{font-size:.75em}.hs-svg .hs-axis,.hs-svg .hs-note{fill:var(--fig-note);font-size:calc(var(--hs-u) * var(--text-meta))}.hs-svg .hs-kept{fill:var(--hs-kept);stroke:none}.hs-svg .hs-rank{stroke:var(--fig-stroke);stroke-width:1px}.hs-svg .hs-curve{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px;stroke-linejoin:round;transition:stroke .16s,stroke-width .16s}.hs-svg .hs-curve[data-active=true]{stroke:var(--dark);stroke-width:2px}.hs-svg .hs-reff{display:none}.hs-svg .hs-reff line{stroke:var(--fig-stroke);stroke-width:1px}.hs-svg .hs-reff text{fill:var(--dark);font-size:calc(var(--hs-u) * var(--text-meta))}.hs-svg .hs-reff[data-active=true]{display:inline}.hs-svg .hs-marker{stroke:var(--dark);stroke-width:1px}.hs-svg .hs-dot{fill:var(--fig-salmon);stroke:var(--dark);stroke-width:1px}.hs-slider{appearance:none;min-height:1.5rem;color:var(--darkgray);background:0 0}.hs-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hs-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.hs-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hs-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hs-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.hs-slider:active::-webkit-slider-thumb{transform:scale(.96)}.hs-slider:active::-moz-range-thumb{transform:scale(.96)}.hs-slider{left:calc(var(--hs-x0-wide) - .5rem);width:calc(var(--hs-span-wide) + 1rem);box-sizing:border-box;margin:.25rem 0 0;padding:0;display:block;position:relative}.hs-slider::-webkit-slider-thumb{background:var(--fig-salmon);border-color:var(--dark)}.hs-slider::-moz-range-thumb{background:var(--fig-salmon);border-color:var(--dark)}.hs-slider:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.hs-lower{grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:1rem 1.5rem;margin-top:1.1rem;display:grid}.hs-heat{min-width:0}.hs-heading{font-size:var(--text-meta);color:var(--fig-note);max-width:18rem;margin:0 0 .5rem;font-weight:600}.hs-heat-panel{display:none}.head-spectrum[data-hs-prompt=plain] [data-hs-prompt-panel=plain],.head-spectrum[data-hs-prompt=comma] [data-hs-prompt-panel=comma]{display:block}.hs-heat-svg{--hs-u:.95;width:100%;display:block;overflow:visible}.hs-heat-svg :is(rect,path){vector-effect:non-scaling-stroke}.hs-heat-svg .hs-token{fill:var(--dark);font-family:var(--codeFont);font-size:calc(var(--hs-u) * var(--text-meta))}.hs-heat-svg .hs-token[data-hs-on=true]{font-weight:700}.hs-heat-svg .hs-cells:focus{outline:none}.hs-heat-svg .hs-frame{fill:none;stroke:var(--dark);stroke-width:2px;display:none}.hs-heat-svg .hs-cells:focus-visible .hs-frame{display:inline}.hs-heat-svg .hs-cell{fill:color-mix(in srgb, var(--hs-ink) calc(6% + var(--hs-a) * 94%), var(--hs-ground));transition:fill .16s}.hs-heat-svg .hs-cell--masked{fill:none;stroke:var(--fig-div);stroke-width:1px}.hs-heat-svg .hs-active{fill:none;stroke:var(--fig-salmon);stroke-width:2.5px;pointer-events:none}.hs-cell-readout{color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:pre;margin:.4rem 0 0}.hs-ramp{color:var(--fig-note);font-family:var(--codeFont);font-size:var(--text-meta);flex-wrap:wrap;align-items:center;gap:2px;margin-top:.5rem;display:flex}.hs-ramp>span:not(.hs-swatch){padding:0 .25rem}.hs-swatch{background:color-mix(in srgb, var(--hs-ink) calc(6% + var(--hs-a) * 94%), var(--hs-ground));width:.7rem;height:.7rem}.hs-swatch--masked{box-sizing:border-box;border:1px solid var(--fig-div);background:0 0;margin-left:.6rem}.hs-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.hs-readout>div{display:contents}.hs-readout dt,.hs-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.hs-readout dt{color:var(--fig-note);font-weight:400}.hs-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.hs-readout .katex{color:inherit;font-size:1em}.hs-readout{margin-top:1.4rem}.hs-readout .hs-head-rows[data-active=false]{display:none}.hs-math{color:inherit;display:inline-block}.hs-math .katex{color:inherit;font-size:.95em}.hs-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.hs-svg .hs-curve,.hs-heat-svg .hs-cell,.hs-segment{transition:none}}@container hs-figure (max-width:480px){.hs-svg[data-hs-layout=wide]{display:none}.hs-svg[data-hs-layout=narrow]{--hs-u:.95;display:block}.hs-slider{left:calc(var(--hs-x0-narrow) - .5rem);width:calc(var(--hs-span-narrow) + 1rem)}}@container hs-figure (max-width:560px){.hs-lower{grid-template-columns:minmax(0,1fr)}.hs-readout{margin-top:0}}@container hs-figure (max-width:440px){.hs-segments--heads{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.hs-segment{padding:.28rem .35rem}}@media (max-width:480px){.head-spectrum{padding:1rem .75rem}}.heavy-ball-rate{content-visibility:auto;contain-intrinsic-size:auto 32rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:hbr-figure/inline-size}.heavy-ball-rate :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .heavy-ball-rate{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.heavy-ball-rate{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.heavy-ball-rate{--hbr-band:color-mix(in srgb, var(--fig-sage) 34%, var(--light))}:root[saved-theme=dark] .heavy-ball-rate{--hbr-band:color-mix(in srgb, var(--fig-sage) 14%, var(--lightgray))}.hbr-controls{grid-template-columns:max-content minmax(0,1fr) 3.2rem;align-items:center;gap:.4rem .8rem;display:grid}.hbr-label{color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap}.hbr-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.hbr-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hbr-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.hbr-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hbr-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.hbr-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.hbr-slider:active::-webkit-slider-thumb{transform:scale(.96)}.hbr-slider:active::-moz-range-thumb{transform:scale(.96)}.hbr-chip{color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-align:right}.hbr-plots{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.hbr-panel{min-width:0}.hbr-heading{font-size:var(--text-meta);color:var(--fig-note);margin:0 0 .5rem;font-weight:600}.hbr-svg{--hbr-u:.58;width:100%;display:block;overflow:visible}.hbr-svg :is(.hbr-grid line,.hbr-one,.hbr-reference,.hbr-curve,.hbr-guide,.hbr-mark,.hbr-traj){vector-effect:non-scaling-stroke}.hbr-svg .hbr-grid line{stroke:var(--fig-div);stroke-width:1px}.hbr-svg .hbr-one{stroke:var(--fig-stroke);stroke-width:1px}.hbr-svg .hbr-tick{font-family:var(--codeFont);font-size:calc(var(--hbr-u) * var(--text-meta));font-variant-numeric:tabular-nums;fill:var(--dark)}.hbr-svg .hbr-band{fill:var(--hbr-band);transition:width .18s}.hbr-svg .hbr-reference{fill:none;stroke:var(--fig-stroke-soft);stroke-width:2.5px}.hbr-svg .hbr-curve{fill:none;stroke:var(--dark);stroke-width:1.6px;stroke-linejoin:round}.hbr-svg .hbr-guide{stroke:var(--fig-stroke);stroke-width:1px}.hbr-svg .hbr-mark{r:calc(var(--hbr-u) * 4.5px);fill:var(--fig-salmon);stroke:var(--dark);stroke-width:1px}.hbr-svg .hbr-traj{fill:none;stroke:var(--fig-stroke);stroke-width:1px}.hbr-svg .hbr-point{fill:var(--dark)}.hbr-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.hbr-fo .katex{color:inherit;font-size:1em}.hbr-fo .katex-display{margin:0}.hbr-fo{font-size:calc(var(--hbr-u,.58) * var(--text-meta));justify-content:center}.hbr-fo--end{justify-content:flex-end}.hbr-math{color:inherit;display:inline-block}.hbr-math .katex{color:inherit;font-size:.95em}.hbr-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.hbr-readout>div{display:contents}.hbr-readout dt,.hbr-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.hbr-readout dt{color:var(--fig-note);font-weight:400}.hbr-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.hbr-readout .katex{color:inherit;font-size:1em}.hbr-readout{margin-top:.9rem}.hbr-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.hbr-svg .hbr-band{transition:none}}@container hbr-figure (min-width:541px){.hbr-svg{--hbr-u:.5}}@container hbr-figure (max-width:540px){.hbr-plots{grid-template-columns:minmax(0,1fr)}}@container hbr-figure (max-width:380px){.hbr-svg{--hbr-u:1.07}.hbr-controls{grid-template-columns:minmax(0,1fr) 3.2rem}.hbr-label{grid-column:1/-1}}.kv-budget-allocation{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:kvb-figure/inline-size}.kv-budget-allocation :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .kv-budget-allocation{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.kv-budget-allocation{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.kv-budget-allocation{--kvb-kept:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--kvb-window:color-mix(in srgb, var(--fig-salmon) 70%, var(--light));--kvb-mark:var(--dark);--kvb-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .kv-budget-allocation{--kvb-kept:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--kvb-window:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray));--kvb-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.kvb-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.kvb-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.kvb-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.kvb-segments{grid-auto-flow:column;min-width:0}.kvb-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.kvb-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.kvb-segment:hover{color:var(--dark)}.kvb-segment:has(input:checked){background:var(--kvb-segment-on);color:var(--dark)}.kvb-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.kvb-rule{color:var(--fig-note);text-wrap:pretty;margin:.75rem 0 0;font-size:.78rem;line-height:1.45;display:none}.kv-budget-allocation[data-kvb-policy=full] [data-kvb-rule=full],.kv-budget-allocation[data-kvb-policy=streaming] [data-kvb-rule=streaming],.kv-budget-allocation[data-kvb-policy=snapkv] [data-kvb-rule=snapkv],.kv-budget-allocation[data-kvb-policy=pyramidkv] [data-kvb-rule=pyramidkv],.kv-budget-allocation[data-kvb-policy=adakv] [data-kvb-rule=adakv]{display:block}.kvb-svg{width:100%;max-width:34rem;margin:.9rem auto 0;display:block}.kvb-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.kvb-svg .kvb-axis{fill:var(--fig-note);font-size:8.5px}.kvb-svg .kvb-label{fill:var(--fig-note);font-size:9px}.kvb-svg .kvb-label--layer{fill:var(--dark);font-weight:600}.kvb-svg .kvb-value{fill:var(--dark);font-size:9px}.kvb-svg .kvb-cell{fill:#0000;stroke:var(--fig-stroke-soft);stroke-width:.8px;transition:fill .18s,stroke .18s}.kvb-svg .kvb-cell[data-kvb-kept=true]{fill:var(--kvb-kept);stroke:var(--fig-stroke)}.kvb-svg .kvb-cell--window{fill:var(--kvb-window);stroke:var(--dark)}.kvb-svg .kvb-mark{fill:var(--kvb-mark);fill-opacity:.78;pointer-events:none;transition:fill-opacity .18s}.kvb-svg .kvb-cell[data-kvb-kept=false]+.kvb-mark{fill-opacity:.38}.kvb-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.kvb-readout>div{display:contents}.kvb-readout dt,.kvb-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.kvb-readout dt{color:var(--fig-note);font-weight:400}.kvb-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.kvb-readout .katex{color:inherit;font-size:1em}.kvb-readout{margin-top:.9rem}.kvb-math{color:inherit;display:inline-block}.kvb-math .katex{color:inherit;font-size:.95em}.kvb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.kvb-svg .kvb-cell,.kvb-svg .kvb-mark,.kvb-segment{transition:none}}@container kvb-figure (max-width:440px){.kvb-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.kvb-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}.kvb-segment{padding:.28rem .35rem}}.kv-cache-variants{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));background:0 0;margin:1.75rem 0;padding:1.5rem 1.75rem;container:kvc-figure/inline-size}.kv-cache-variants :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .kv-cache-variants{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.kv-cache-variants{--kvc-soft:color-mix(in srgb, var(--gray) 50%, transparent);--kvc-div:color-mix(in srgb, var(--gray) 32%, transparent);--kvc-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--kvc-salmon:var(--fig-salmon);--kvc-sage:var(--fig-sage);--kvc-cached-bg:color-mix(in srgb, var(--kvc-salmon) 26%, var(--light));--kvc-cached-edge:color-mix(in srgb, var(--kvc-salmon) 90%, var(--dark));--kvc-hatch:color-mix(in srgb, var(--kvc-salmon) 92%, var(--dark));--kvc-recompute-bg:color-mix(in srgb, var(--kvc-sage) 42%, var(--light));--kvc-recompute-edge:color-mix(in srgb, var(--kvc-sage) 88%, var(--dark));--kvc-query-bg:color-mix(in srgb, var(--lightgray) 62%, var(--light))}:root[saved-theme=dark] .kv-cache-variants{--kvc-cached-bg:color-mix(in srgb, var(--kvc-salmon) 22%, var(--lightgray));--kvc-recompute-bg:color-mix(in srgb, var(--kvc-sage) 24%, var(--lightgray));--kvc-query-bg:color-mix(in srgb, var(--lightgray) 55%, var(--dark));--kvc-hatch:color-mix(in srgb, var(--kvc-salmon) 78%, var(--light))}.kvc-legend{color:var(--kvc-note);flex-wrap:wrap;justify-content:center;gap:.4rem 1.3rem;margin-bottom:.7rem;font-size:.8rem;display:flex}.kvc-legend-item{align-items:center;gap:.4rem;display:inline-flex}.kvc-swatch{border-radius:var(--radius-none);flex:none;width:.95rem;height:.95rem;display:inline-block}.kvc-swatch--cached{background:repeating-linear-gradient(45deg, var(--kvc-hatch) 0 1px, transparent 1px 4px), var(--kvc-cached-bg)}.kvc-swatch--recompute{background:var(--kvc-recompute-bg)}.kvc-swatch--query{background:var(--kvc-query-bg)}.kvc-stage{width:100%;overflow-x:auto}.kvc-graph{aspect-ratio:980/332;width:100%;min-width:660px;height:auto;display:block}.kvc-graph .kvc-bar{stroke-width:1.1px}.kvc-graph .kvc-bar--query{fill:var(--kvc-query-bg);stroke:var(--kvc-soft)}.kvc-graph .kvc-bar--cached{fill:var(--kvc-cached-bg);stroke:var(--kvc-cached-edge)}.kvc-graph .kvc-bar--recompute{fill:var(--kvc-recompute-bg);stroke:var(--kvc-recompute-edge)}.kvc-graph .kvc-bar--latent{fill:var(--kvc-cached-bg);stroke:var(--kvc-cached-edge);stroke-width:1.4px}.kvc-graph .kvc-hatch-fill{stroke:none;pointer-events:none}.kvc-graph .kvc-hatch-line{stroke:var(--kvc-hatch);stroke-width:1px}.kvc-graph .kvc-link{stroke:var(--kvc-soft);stroke-width:1px;fill:none}.kvc-graph .kvc-divider{stroke:var(--kvc-div);stroke-width:1px}.kvc-graph .kvc-proj{stroke:var(--kvc-cached-edge);stroke-width:2.4px;fill:none}.kvc-graph .kvc-arrowhead{fill:var(--kvc-cached-edge)}.kvc-graph .kvc-wedge{stroke:var(--kvc-cached-edge);stroke-width:1px;fill:none;opacity:.6}.kvc-graph .kvc-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.kvc-graph .kvc-fo .katex{color:inherit;font-size:1em}.kvc-graph .kvc-fo .katex-display{margin:0}.kvc-graph .kvc-fo{pointer-events:none;justify-content:center;overflow:visible}.kvc-graph .kvc-fo--title{flex-direction:column;gap:1px}.kvc-graph .kvc-title-main{letter-spacing:0;font-size:13px;font-weight:600}.kvc-graph .kvc-title-sub{color:var(--kvc-note);letter-spacing:0;font-size:9.5px}.kvc-graph .kvc-fo--row{color:var(--kvc-note);letter-spacing:0;justify-content:flex-end;padding-right:7px;font-size:11px}.kvc-graph .kvc-cost{flex-direction:column;gap:2px}.kvc-graph .kvc-cost-tag{letter-spacing:0;color:var(--kvc-note);font-size:8.5px}.kvc-graph .kvc-cost-math{font-size:12px}.kvc-graph .kvc-fo--proj{color:var(--kvc-cached-edge);font-size:11px;font-style:italic}.kvc-graph .kvc-fo--latent{color:var(--kvc-cached-edge);text-align:center;flex-direction:column;font-size:10px;line-height:1.2}.kvc-math{vertical-align:-.03em;margin:0 .2em}@container kvc-figure (max-width:560px){.kvc-legend{gap:.35rem .9rem;font-size:.74rem}}.kv-compress-blocks{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:kvc-figure/inline-size}.kv-compress-blocks :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .kv-compress-blocks{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.kv-compress-blocks{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.kv-compress-blocks{--kvc-kv:color-mix(in srgb, var(--darkgray) 34%, var(--light));--kvc-other:color-mix(in srgb, var(--lightgray) 55%, var(--light));--kvc-evict:var(--fig-salmon);--kvc-free:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--kvc-lit-cell:color-mix(in srgb, var(--fig-salmon) 55%, var(--light));--kvc-band:var(--fig-tab-surface);--kvc-on:var(--fig-grid-selected)}:root[saved-theme=dark] .kv-compress-blocks{--kvc-kv:color-mix(in srgb, var(--gray) 78%, var(--light));--kvc-other:var(--lightgray);--kvc-evict:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--kvc-free:color-mix(in srgb, var(--fig-sage) 30%, var(--lightgray));--kvc-lit-cell:color-mix(in srgb, var(--fig-salmon) 32%, var(--lightgray));--kvc-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.kvc-tabs{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-auto-flow:column;justify-content:start;gap:1px;margin:0;padding:1px;display:grid}.kvc-tab{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}@media (hover:hover) and (pointer:fine){.kvc-tab:hover{color:var(--dark)}}.kvc-tab{padding:.3rem .65rem}.kvc-tab[aria-selected=true]{background:var(--kvc-on);color:var(--dark)}.kvc-tab:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.kvc-panel{margin-top:.9rem}.kvc-panel[hidden]{display:none}.kvc-stepper{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.kvc-steps{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.kvc-steps>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.kvc-steps{grid-auto-flow:column;min-width:0}.kvc-step{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}@media (hover:hover) and (pointer:fine){.kvc-step:hover{color:var(--dark)}}.kvc-step{min-width:1.6rem;padding:.28rem .3rem}.kvc-step input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.kvc-step:has(input:checked){background:var(--kvc-on);color:var(--dark)}.kvc-step:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.kvc-nav{box-sizing:border-box;border:1px solid var(--fig-stroke);border-radius:var(--radius-none);background:var(--light);height:calc(1.424rem + 2px);color:var(--dark);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);padding:0 .6rem;font-size:.72rem;transition:background-color .14s,color .14s}@media (hover:hover) and (pointer:fine){.kvc-nav:hover:not(:disabled){background:var(--kvc-on)}}.kvc-nav:disabled{color:var(--fig-tab-fg);border-color:var(--fig-stroke-soft);cursor:var(--cursor-default,default)}.kvc-nav:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.kvc-step-texts{min-height:2.3rem;margin-top:.75rem}.kvc-step-text{color:var(--fig-note);text-wrap:pretty;margin:0;font-size:.78rem;line-height:1.45;display:none}.kvc-panel-note{display:block}.kvc-step-num{color:var(--dark);font-family:var(--codeFont)}.kv-compress-blocks[data-kvc-step="1"] [data-kvc-step-text="1"]{display:block}.kv-compress-blocks[data-kvc-step="1"] .kvc-frame[data-kvc-frame="1"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="2"] [data-kvc-step-text="2"]{display:block}.kv-compress-blocks[data-kvc-step="2"] .kvc-frame[data-kvc-frame="2"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="3"] [data-kvc-step-text="3"]{display:block}.kv-compress-blocks[data-kvc-step="3"] .kvc-frame[data-kvc-frame="3"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="4"] [data-kvc-step-text="4"]{display:block}.kv-compress-blocks[data-kvc-step="4"] .kvc-frame[data-kvc-frame="4"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="5"] [data-kvc-step-text="5"]{display:block}.kv-compress-blocks[data-kvc-step="5"] .kvc-frame[data-kvc-frame="5"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="6"] [data-kvc-step-text="6"]{display:block}.kv-compress-blocks[data-kvc-step="6"] .kvc-frame[data-kvc-frame="6"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="7"] [data-kvc-step-text="7"]{display:block}.kv-compress-blocks[data-kvc-step="7"] .kvc-frame[data-kvc-frame="7"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="8"] [data-kvc-step-text="8"]{display:block}.kv-compress-blocks[data-kvc-step="8"] .kvc-frame[data-kvc-frame="8"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="9"] [data-kvc-step-text="9"]{display:block}.kv-compress-blocks[data-kvc-step="9"] .kvc-frame[data-kvc-frame="9"]{opacity:1;visibility:visible;transition:opacity .18s}.kv-compress-blocks[data-kvc-step="10"] [data-kvc-step-text="10"]{display:block}.kv-compress-blocks[data-kvc-step="10"] .kvc-frame[data-kvc-frame="10"]{opacity:1;visibility:visible;transition:opacity .18s}.kvc-svg,.kvc-layout-svg{width:100%;margin:.6rem auto 0;display:block}.kvc-svg text,.kvc-layout-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.kvc-svg{max-width:34rem}.kvc-svg .kvc-frame{opacity:0;visibility:hidden;transition:opacity .18s,visibility 0s linear .18s}.kvc-svg .kvc-cell{fill:var(--kvc-kv);stroke:var(--fig-stroke);stroke-width:.8px}.kvc-svg .kvc-metric{fill:var(--dark);font-size:10.5px}.kvc-svg .kvc-index{fill:var(--fig-note);font-size:7.5px}.kvc-svg [data-kvc-mark=empty] .kvc-cell,.kvc-svg [data-kvc-mark=vacated] .kvc-cell{fill:var(--light);stroke:var(--fig-stroke-soft)}.kvc-svg [data-kvc-mark=evict] .kvc-cell{fill:var(--kvc-evict);stroke:var(--dark)}.kvc-svg [data-kvc-mark=free] .kvc-cell{fill:var(--kvc-free);stroke:var(--fig-stroke)}.kvc-svg [data-kvc-key=true] .kvc-cell,.kvc-svg [data-kvc-mark=moved] .kvc-cell,.kvc-svg [data-kvc-mark=vacated] .kvc-cell{stroke:var(--dark);stroke-width:2px}.kvc-svg [data-kvc-key=true] .kvc-metric,.kvc-svg [data-kvc-mark=moved] .kvc-metric{font-weight:700}.kvc-svg .kvc-other{fill:var(--kvc-other);stroke:var(--fig-stroke-soft);stroke-width:.8px}.kvc-svg .kvc-band{fill:var(--kvc-band);stroke:var(--fig-stroke);stroke-width:.8px}.kvc-svg .kvc-band-label{fill:var(--dark);font-size:8px}.kvc-svg .kvc-phys,.kvc-svg .kvc-range-label{fill:var(--fig-note);font-size:8px}.kvc-svg .kvc-range{fill:var(--dark)}.kvc-svg .kvc-move{fill:none;stroke:var(--dark);stroke-width:1.2px}.kvc-svg .kvc-move-head{fill:var(--dark)}.kvc-layout-svg .kvc-phys,.kvc-layout-svg .kvc-axis{fill:var(--fig-note);font-size:7.5px}.kvc-layout-svg .kvc-lslot{fill:var(--kvc-kv);stroke:var(--fig-stroke);stroke-width:.6px}.kvc-layout-svg [data-kvc-mark=pad]{fill:var(--light);stroke:var(--fig-stroke-soft)}.kvc-layout-svg [data-kvc-mark=other]{fill:var(--kvc-other);stroke:var(--fig-stroke-soft)}.kvc-layout-svg [data-kvc-mark=lit]{fill:var(--kvc-evict);stroke:var(--dark)}.kvc-legend-list{color:var(--fig-note);flex-wrap:wrap;gap:.3rem .9rem;margin:.6rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.kvc-legend-list li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.kvc-swatch{box-sizing:border-box;border:1px solid var(--fig-stroke);background:var(--kvc-kv);width:.7rem;height:.7rem}.kvc-swatch[data-kvc-mark=empty]{background:var(--light);border-color:var(--fig-stroke-soft)}.kvc-swatch[data-kvc-mark=evict]{background:var(--kvc-evict);border-color:var(--dark)}.kvc-swatch[data-kvc-mark=free]{background:var(--kvc-free)}.kvc-swatch[data-kvc-mark=other]{background:var(--kvc-other);border-color:var(--fig-stroke-soft)}.kvc-swatch[data-kvc-mark=lit]{background:var(--kvc-evict);border-color:var(--dark)}.kvc-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.kvc-readout>div{display:contents}.kvc-readout dt,.kvc-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.kvc-readout dt{color:var(--fig-note);font-weight:400}.kvc-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.kvc-readout .katex{color:inherit;font-size:1em}.kvc-readout{margin-top:.9rem}.kvc-table,.kvc-compare{border-collapse:collapse;width:100%;margin:.9rem 0 0;font-size:.74rem;line-height:1.3}.kvc-table th,.kvc-table td,.kvc-compare th,.kvc-compare td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;padding:.3rem .5rem;transition:background-color .18s}.kvc-table th,.kvc-compare th{color:var(--fig-note);font-weight:400}.kvc-table th[scope=row],.kvc-table thead th:first-child,.kvc-compare th[scope=row],.kvc-compare thead th:first-child{text-align:left}.kvc-table td[data-kvc-lit=true],.kvc-compare td[data-kvc-lit=true]{background:var(--kvc-lit-cell)}.kvc-compare th[scope=row]{font-family:inherit}.kvc-table-caption{font-size:var(--text-meta);color:var(--fig-note);caption-side:top;text-align:left;margin:0 0 .5rem;font-weight:600}.kvc-math{color:inherit;display:inline-block}.kvc-math .katex{color:inherit;font-size:.95em}.kvc-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.kvc-svg .kvc-frame,.kv-compress-blocks .kvc-frame[data-kvc-frame],.kvc-step,.kvc-tab,.kvc-nav{transition:none!important}}@container kvc-figure (max-width:460px){.kvc-tabs{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.kvc-tab{white-space:normal;text-align:center;padding:.3rem}.kvc-stepper{grid-template-columns:1fr 1fr;display:grid}.kvc-steps{grid-area:1/1/auto/-1;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row}.kvc-table th,.kvc-table td,.kvc-compare th,.kvc-compare td{padding:.28rem .3rem}}.kv-head-grouping{content-visibility:auto;contain-intrinsic-size:auto 38rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:kvg-figure/inline-size}.kv-head-grouping :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .kv-head-grouping{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.kv-head-grouping{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.kv-head-grouping{--kvg-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--kvg-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--kvg-salmon:var(--fig-salmon);--kvg-sage:var(--fig-sage);--kvg-query-bg:color-mix(in srgb, var(--kvg-salmon) 60%, var(--light));--kvg-query-edge:color-mix(in srgb, var(--kvg-salmon) 90%, var(--dark));--kvg-kv-bg:color-mix(in srgb, var(--kvg-sage) 70%, var(--light));--kvg-kv-edge:color-mix(in srgb, var(--kvg-sage) 90%, var(--dark));--kvg-link:color-mix(in srgb, var(--kvg-stroke) 60%, transparent)}:root[saved-theme=dark] .kv-head-grouping{--kvg-query-bg:color-mix(in srgb, var(--kvg-salmon) 20%, var(--lightgray));--kvg-kv-bg:color-mix(in srgb, var(--kvg-sage) 20%, var(--lightgray));--kvg-link:color-mix(in srgb, var(--kvg-stroke) 70%, transparent)}.kvg-stage{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);align-items:center;gap:1.5rem;display:grid}.kvg-graph{aspect-ratio:520/260;--kvg-u:.96;width:100%;max-width:560px;margin:0 auto;display:block}.kvg-graph .kvg-arrowhead{fill:var(--kvg-stroke)}.kvg-graph .kvg-box{stroke-width:1.2px;vector-effect:non-scaling-stroke;transition:x .26s cubic-bezier(.4,0,.2,1),width .26s cubic-bezier(.4,0,.2,1),opacity .2s}.kvg-graph .kvg-box--query{fill:var(--kvg-query-bg);stroke:var(--kvg-query-edge)}.kvg-graph .kvg-box--kv{fill:var(--kvg-kv-bg);stroke:var(--kvg-kv-edge)}.kvg-graph .kvg-query{transition:opacity .2s}.kvg-graph .kvg-kv{transition:opacity .22s}.kvg-graph .kvg-kv[data-kvg-hidden=true]{opacity:0;pointer-events:none}.kvg-graph .kvg-link{stroke:var(--kvg-link);stroke-width:1.1px;vector-effect:non-scaling-stroke;fill:none;transition:x2 .26s cubic-bezier(.4,0,.2,1),stroke .2s,stroke-width .2s}.kvg-graph .kvg-link[data-kvg-active=true]{stroke:var(--kvg-query-edge);stroke-width:1.5px}.kvg-graph .kvg-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.kvg-graph .kvg-fo .katex{color:inherit;font-size:1em}.kvg-graph .kvg-fo .katex-display{margin:0}.kvg-graph .kvg-fo{font-size:calc(var(--kvg-u) * 13px);pointer-events:none;justify-content:center;overflow:visible}.kvg-graph .kvg-fo--box,.kvg-graph .kvg-fo--kv{font-size:calc(var(--kvg-u) * var(--text-meta))}.kvg-graph .kvg-fo--row-label{color:var(--kvg-note-fg);font-size:calc(var(--kvg-u) * var(--text-meta));justify-content:flex-end}.kvg-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.kvg-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.kvg-readout>div{display:contents}.kvg-readout dt,.kvg-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.kvg-readout dt{color:var(--fig-note);font-weight:400}.kvg-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.kvg-readout .katex{color:inherit;font-size:1em}.kvg-readout-eq{color:var(--kvg-note-fg)}[data-kvg-regime-r][data-kvg-active=false],[data-kvg-nk-r][data-kvg-active=false],[data-kvg-bw-r][data-kvg-active=false],[data-kvg-cache-nk][data-kvg-active=false]{display:none}.kvg-equation{background:color-mix(in srgb, var(--kvg-sage) 8%, transparent);border:1px solid var(--fig-frame-border);border-radius:var(--radius-none);padding:.6rem .75rem;font-size:.85rem;overflow-x:auto}.kvg-equation .katex-display{margin:0}.kvg-math{color:inherit;display:inline-block}.kvg-math .katex{color:inherit;font-size:.95em}.kvg-math--display{display:block}.kvg-controls{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.15rem .8rem;margin-top:1.1rem;display:grid}.kvg-ratio-strip{grid-column:2/3;min-height:1.25rem;position:relative}.kvg-ratio-tick{left:calc(var(--kvg-stop) * 100%);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--kvg-note-fg);transition:color .16s,font-weight .16s;position:absolute;transform:translate(-50%)}.kvg-ratio-tick:first-child{transform:translate(0)}.kvg-ratio-tick:last-child{transform:translate(-100%)}.kvg-ratio-tick[data-kvg-active=true]{color:var(--dark);font-weight:600}.kvg-control{display:contents}.kvg-control--slider{grid-column:1/3}.kvg-label{color:var(--kvg-note-fg);font-size:var(--text-meta);white-space:nowrap;grid-column:1/2}.kvg-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;grid-column:2/3}.kvg-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.kvg-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.kvg-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.kvg-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.kvg-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.kvg-slider:active::-webkit-slider-thumb{transform:scale(.96)}.kvg-slider:active::-moz-range-thumb{transform:scale(.96)}.kvg-intuition{box-shadow:none;color:var(--kvg-note-fg);margin:1.1rem 0 0;padding:.75rem .9rem;font-size:.88rem;line-height:1.5}.kvg-intuition strong{color:var(--dark);font-weight:600}.kvg-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@container kvg-figure (max-width:720px){.kvg-stage{grid-template-columns:1fr;gap:1.25rem}.kvg-graph{max-width:100%}.kvg-ratio-tick{font-size:var(--text-meta)}}@container kvg-figure (max-width:440px){.kv-head-grouping{padding:1.1rem}.kvg-ratio-tick{font-size:var(--text-meta)}}.logits-processor-trace{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:lpt-figure/inline-size}.logits-processor-trace :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .logits-processor-trace{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.logits-processor-trace{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.logits-processor-trace{--lpt-lit:var(--fig-salmon);--lpt-row:color-mix(in srgb, var(--fig-sage) 70%, var(--dark));--lpt-node:var(--light);--lpt-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .logits-processor-trace{--lpt-row:color-mix(in srgb, var(--fig-sage) 70%, var(--lightgray));--lpt-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.lpt-controls{flex-wrap:wrap;align-items:flex-end;gap:.75rem 2rem;display:flex}.lpt-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + var(--space-1));border:0;gap:1px;padding:1px;display:grid;position:relative}.lpt-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.lpt-segments{grid-auto-flow:column;min-width:0}.lpt-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .7rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.lpt-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.lpt-segment:hover{color:var(--dark)}.lpt-segment:has(input:checked){background:var(--lpt-segment-on);color:var(--dark)}.lpt-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.lpt-range{min-width:0;color:var(--fig-note);flex:14rem;align-items:center;gap:.6rem;font-size:.72rem;display:flex}.lpt-range input{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.lpt-range input::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.lpt-range input::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.lpt-range input::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.lpt-range input::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.lpt-range input::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.lpt-range input:active::-webkit-slider-thumb{transform:scale(.96)}.lpt-range input:active::-moz-range-thumb{transform:scale(.96)}.lpt-range input:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.lpt-range output{min-width:3.2rem;color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right}.lpt-svg{width:100%;margin:.9rem auto 0;display:block}.lpt-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.lpt-svg [data-lpt-set][data-on=false]{display:none}.lpt-svg .lpt-lane{fill:var(--dark);font-size:9px}.lpt-svg .lpt-num,.lpt-svg .lpt-tag{fill:var(--fig-note);font-size:8px}.lpt-svg .lpt-track{stroke:var(--fig-line);stroke-width:.8px}.lpt-svg .lpt-wire{stroke:var(--fig-stroke);stroke-width:1px;transition:stroke-width .16s}.lpt-svg .lpt-from,.lpt-svg .lpt-to,.lpt-svg .lpt-self{fill:var(--lpt-node);stroke:var(--fig-stroke);stroke-width:1px;transition:fill .16s}.lpt-svg .lpt-call[data-kind=row] .lpt-wire,.lpt-svg .lpt-call[data-kind=row] .lpt-to,.lpt-svg .lpt-call[data-kind=attach] .lpt-self{stroke:var(--dark)}.lpt-svg .lpt-call[data-kind=row] .lpt-to,.lpt-svg .lpt-call[data-kind=attach] .lpt-self{fill:var(--lpt-row)}.lpt-svg .lpt-call[data-on=true] .lpt-wire{stroke:var(--dark);stroke-width:2px}.lpt-svg .lpt-call[data-on=true] .lpt-from,.lpt-svg .lpt-call[data-on=true] .lpt-to,.lpt-svg .lpt-call[data-on=true] .lpt-self{fill:var(--lpt-lit);stroke:var(--dark)}.lpt-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(6rem,.32fr) minmax(0,1fr);gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.lpt-readout>div{display:contents}.lpt-readout dt,.lpt-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.lpt-readout dt{color:var(--fig-note);font-weight:400}.lpt-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.lpt-readout .katex{color:inherit;font-size:1em}.lpt-readout{margin-top:.9rem}.lpt-readout dd{text-align:left;overflow-wrap:anywhere;justify-content:flex-start}.lpt-readout .lpt-prose{font-family:inherit}.lpt-math{color:inherit;display:inline-block}.lpt-math .katex{color:inherit;font-size:.95em}.lpt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;overflow-wrap:anywhere;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.lpt-segment,.lpt-svg .lpt-wire,.lpt-svg .lpt-from,.lpt-svg .lpt-to,.lpt-svg .lpt-self{transition:none}}@container lpt-figure (max-width:480px){.lpt-readout{grid-template-columns:minmax(0,1fr)}}.mfa-factor-bases{content-visibility:auto;contain-intrinsic-size:auto 38rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mfa-figure/inline-size}.mfa-factor-bases :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mfa-factor-bases{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mfa-factor-bases{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mfa-factor-bases{--mfa-stroke-soft:color-mix(in srgb, var(--gray) 40%, transparent);--mfa-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--mfa-cell-bg:color-mix(in srgb, var(--lightgray) 35%, var(--light));--mfa-neg:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);--mfa-sage:var(--fig-sage)}:root[saved-theme=dark] .mfa-factor-bases{--mfa-cell-bg:color-mix(in srgb, var(--lightgray) 22%, var(--dark));--mfa-neg:color-mix(in srgb, var(--gray) 55%, var(--light))}.mfa-stage{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);align-items:stretch;gap:1.5rem;display:grid}.mfa-graph{aspect-ratio:560/390;width:100%;height:auto;display:block}.mfa-graph .mfa-grid-frame,.mfa-graph .mfa-factor-frame{fill:none;stroke:var(--mfa-stroke-soft);stroke-width:1px;transition:stroke .22s}.mfa-graph .mfa-factor-frame{stroke-width:.7px}.mfa-graph .mfa-cell,.mfa-graph .mfa-factor-cell{fill:var(--mfa-cell-bg);stroke:color-mix(in srgb, var(--lightgray) 60%, transparent);stroke-width:.4px;transition:fill .22s}.mfa-graph .mfa-factor-cell{stroke-width:.3px}.mfa-graph .mfa-factor{transition:opacity .22s}.mfa-graph .mfa-factor[data-mfa-active=false]{opacity:.28}.mfa-graph .mfa-factor[data-mfa-active=false] .mfa-factor-frame{stroke:color-mix(in srgb, var(--mfa-stroke-soft) 40%, transparent)}.mfa-graph .mfa-factor-label-fo{color:var(--mfa-note-fg);gap:.1em;font-size:10px;transition:color .2s}.mfa-graph .mfa-factor-label-fo .mfa-factor-gate{opacity:.7;font-style:normal}.mfa-graph .mfa-factor-label-fo .mfa-factor-gate[data-mfa-active=false]{display:none}.mfa-graph .mfa-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.mfa-graph .mfa-fo .katex{color:inherit;font-size:1em}.mfa-graph .mfa-fo .katex-display{margin:0}.mfa-graph .mfa-fo{pointer-events:none;justify-content:center;font-size:12px;overflow:visible}.mfa-graph .mfa-fo--sm{font-size:11px}.mfa-graph .mfa-fo--title,.mfa-graph .mfa-fo--factor-label{color:var(--mfa-note-fg);font-size:12px}.mfa-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.mfa-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mfa-readout>div{display:contents}.mfa-readout dt,.mfa-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mfa-readout dt{color:var(--fig-note);font-weight:400}.mfa-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mfa-readout .katex{color:inherit;font-size:1em}[data-mfa-readout-state][data-mfa-active=false]{display:none}.mfa-equation{background:color-mix(in srgb, var(--mfa-sage) 8%, transparent);border:1px solid var(--fig-frame-border);border-radius:var(--radius-none);padding:.6rem .75rem;font-size:.85rem;overflow-x:auto}.mfa-equation .katex-display{margin:0}.mfa-math{color:inherit;display:inline-block}.mfa-math .katex{color:inherit;font-size:.95em}.mfa-math--display{display:block}.mfa-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content;align-items:center;gap:.45rem .8rem;margin-top:.9rem;display:grid}.mfa-control{align-items:center;gap:.45rem;min-width:0;min-height:1.65rem;display:flex}.mfa-control--toggle{justify-content:flex-end}.mfa-label{color:var(--mfa-note-fg);white-space:nowrap;font-size:.74rem}.mfa-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.mfa-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mfa-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.mfa-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mfa-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mfa-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.mfa-slider:active::-webkit-slider-thumb{transform:scale(.96)}.mfa-slider:active::-moz-range-thumb{transform:scale(.96)}.mfa-slider{min-height:1.55rem}.mfa-slider::-webkit-slider-runnable-track{height:.28rem}.mfa-slider::-webkit-slider-thumb{width:.78rem;height:.78rem;margin-top:-.25rem}.mfa-slider::-moz-range-track{height:.28rem}.mfa-slider::-moz-range-progress{height:.28rem}.mfa-slider::-moz-range-thumb{width:.78rem;height:.78rem}.mfa-checkbox{min-height:1.4rem;cursor:var(--cursor-pointer,pointer);color:var(--dark);-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;font-size:.74rem;line-height:1;display:inline-flex;position:relative}.mfa-checkbox input[type=checkbox]{opacity:0;clip-path:inset(50%);pointer-events:none;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.mfa-checkbox .mfa-checkbox-box{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 92%, transparent);border:1px solid color-mix(in srgb, var(--dark) 22%, transparent);flex:none;width:.82rem;height:.82rem;transition:transform .12s,background .16s,border-color .16s;position:relative}.mfa-checkbox .mfa-checkbox-box:after{content:"";border:solid var(--light);opacity:0;border-width:0 1.5px 1.5px 0;width:.22rem;height:.42rem;transition:opacity .12s,transform .12s;position:absolute;top:.12rem;left:.26rem;transform:rotate(45deg)scale(.82)}.mfa-checkbox input[type=checkbox]:checked+.mfa-checkbox-box{background:color-mix(in srgb, var(--darkgray) 74%, var(--light));border-color:color-mix(in srgb, var(--dark) 24%, transparent)}.mfa-checkbox input[type=checkbox]:checked+.mfa-checkbox-box:after{opacity:1;transform:rotate(45deg)scale(1)}.mfa-checkbox input[type=checkbox]:focus-visible+.mfa-checkbox-box{outline:2px solid color-mix(in srgb, var(--darkgray) 30%, transparent);outline-offset:2px}.mfa-checkbox input[type=checkbox]:checked:focus-visible+.mfa-checkbox-box{outline:2px solid color-mix(in srgb, var(--darkgray) 34%, transparent);outline-offset:2px}.mfa-checkbox input[type=checkbox]:active+.mfa-checkbox-box{transform:scale(.96)}.mfa-checkbox .mfa-checkbox-text{color:var(--dark)}.mfa-intuition{color:var(--mfa-note-fg);margin:1.1rem 0 0;padding:.75rem .9rem;font-size:.88rem;line-height:1.55}.mfa-intuition strong{color:var(--dark);font-weight:600}.mfa-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mfa-caption .mfa-math{vertical-align:-.03em;margin:0 .22em}@container mfa-figure (max-width:760px){.mfa-stage,.mfa-controls{grid-template-columns:1fr}.mfa-stage{gap:1.25rem}.mfa-control--toggle{justify-content:flex-start}}@container mfa-figure (max-width:460px){.mfa-factor-bases{padding:1.1rem}}.mla-attention-modes{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mam-figure/inline-size}.mla-attention-modes :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mla-attention-modes{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mla-attention-modes{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mla-attention-modes{--mam-cache:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--mam-built:var(--fig-salmon);--mam-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .mla-attention-modes{--mam-cache:color-mix(in srgb, var(--fig-sage) 34%, var(--lightgray));--mam-built:color-mix(in srgb, var(--fig-salmon) 78%, var(--lightgray));--mam-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.mam-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.mam-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.mam-segments{grid-auto-flow:column;width:max-content;min-width:0;max-width:100%}.mam-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.mam-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.mam-segment:hover{color:var(--dark)}.mam-segment:has(input:checked){background:var(--mam-segment-on);color:var(--dark)}.mam-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.mam-rule{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:.75rem 0 0;line-height:1.45;display:none}.mam-panel{margin-top:.9rem;display:none}.mam-group+.mam-group{margin-top:.8rem}.mam-title{border-bottom:1px solid var(--fig-div);color:var(--fig-note);font-family:var(--codeFont);font-size:var(--text-meta);margin:0 0 .35rem;padding-bottom:.2rem;font-weight:600}.mam-row{grid-template-columns:minmax(0,13rem) minmax(0,1fr) 6.5rem;align-items:center;gap:.6rem;min-height:1.35rem;display:grid}.mam-label{min-width:0;color:var(--dark);font-size:var(--text-meta);white-space:nowrap;justify-self:end}.mam-label .katex{color:inherit;font-size:1em}.mam-track{min-width:0;display:flex}.mam-seg{box-sizing:border-box;border:1px solid var(--dark);height:.8rem}.mam-seg+.mam-seg{margin-left:-1px}.mam-seg--cache{background:var(--mam-cache)}.mam-seg--built{background:var(--mam-built)}.mam-seg--plain{border-color:var(--fig-stroke)}.mam-dims,.mam-gap{color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;white-space:nowrap}.mam-dims{text-align:right}.mam-gap{margin:.15rem 0;padding-left:13.6rem}.mla-attention-modes[data-mam-mode=mha] [data-mam-rule=mha],.mla-attention-modes[data-mam-mode=mha] [data-mam-panel=mha]{display:block}.mla-attention-modes[data-mam-mode=mha] .mam-table [data-col=mha]{background:var(--fig-grid-selected);color:var(--dark)}.mla-attention-modes[data-mam-mode=mqa] [data-mam-rule=mqa],.mla-attention-modes[data-mam-mode=mqa] [data-mam-panel=mqa]{display:block}.mla-attention-modes[data-mam-mode=mqa] .mam-table [data-col=mqa]{background:var(--fig-grid-selected);color:var(--dark)}.mam-key{color:var(--fig-note);font-size:var(--text-meta);flex-wrap:wrap;gap:.3rem 1rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.mam-key li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.mam-swatch{border:1px solid var(--dark);width:.8rem;height:.55rem}.mam-swatch--cache{background:var(--mam-cache)}.mam-swatch--built{background:var(--mam-built)}.mam-swatch--plain{border-color:var(--fig-stroke)}.mam-table-wrap{margin-top:.9rem;overflow-x:auto}.mam-table{border-collapse:collapse;width:100%;font-size:var(--text-meta);line-height:1.3}.mam-table th,.mam-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);padding:.32rem .45rem;transition:background-color .14s}.mam-table th{color:var(--fig-note);text-align:left;font-weight:400}.mam-table thead th{color:var(--dark);font-weight:600}.mam-table thead th:not(:first-child){text-align:right;white-space:nowrap}.mam-table td{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.mam-math{color:inherit;display:inline-block}.mam-math .katex{color:inherit;font-size:.95em}.mam-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@container mam-figure (max-width:520px){.mam-row{grid-template-columns:minmax(0,1fr) max-content;gap:.15rem .5rem;margin-bottom:.35rem}.mam-label{grid-column:1/-1;justify-self:start}.mam-gap{padding-left:0}.mam-table td{white-space:normal}}@media (prefers-reduced-motion:reduce){.mam-segment,.mam-table th,.mam-table td{transition:none}}.mla-latent-path{content-visibility:auto;contain-intrinsic-size:auto 42rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mla-figure/inline-size}.mla-latent-path :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mla-latent-path{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.mla-latent-path{--mla-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--mla-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--mla-salmon:var(--fig-salmon);--mla-sage:var(--fig-sage);--mla-cyan:#bfe8f2;--mla-cached-bg:color-mix(in srgb, var(--mla-salmon) 70%, var(--light));--mla-cached-edge:color-mix(in srgb, var(--mla-salmon) 90%, var(--dark));--mla-query-bg:color-mix(in srgb, var(--mla-cyan) 62%, var(--light));--mla-query-edge:color-mix(in srgb, var(--mla-cyan) 78%, var(--dark));--mla-head-bg:color-mix(in srgb, var(--mla-sage) 65%, var(--light));--mla-head-edge:color-mix(in srgb, var(--mla-sage) 90%, var(--dark));--mla-neutral-bg:color-mix(in srgb, var(--lightgray) 55%, var(--light));--mla-concat-bg:color-mix(in srgb, var(--lightgray) 30%, var(--light))}:root[saved-theme=dark] .mla-latent-path{--mla-cached-bg:color-mix(in srgb, var(--mla-salmon) 40%, var(--lightgray));--mla-query-bg:color-mix(in srgb, var(--mla-cyan) 34%, var(--lightgray));--mla-head-bg:color-mix(in srgb, var(--mla-sage) 32%, var(--lightgray));--mla-neutral-bg:color-mix(in srgb, var(--lightgray) 35%, var(--dark));--mla-concat-bg:color-mix(in srgb, var(--lightgray) 22%, var(--dark))}.mla-stage{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);align-items:stretch;gap:1.5rem;display:grid}.mla-graph{aspect-ratio:760/420;width:100%;height:auto;display:block}.mla-graph .mla-arrowhead{fill:var(--mla-stroke)}.mla-graph .mla-cache-box{fill:color-mix(in srgb, var(--lightgray) 40%, transparent);stroke:var(--mla-cached-edge);stroke-width:1.2px}.mla-graph .mla-box{stroke-width:1.2px;transition:fill .2s,stroke .2s}.mla-graph .mla-box--input{fill:var(--mla-neutral-bg);stroke:var(--mla-stroke)}.mla-graph .mla-box--cached{fill:var(--mla-cached-bg);stroke:var(--mla-cached-edge)}.mla-graph .mla-box--query{fill:var(--mla-query-bg);stroke:var(--mla-query-edge)}.mla-graph .mla-box--head{fill:var(--mla-head-bg);stroke:var(--mla-head-edge)}.mla-graph .mla-box--concat{fill:var(--mla-concat-bg);stroke:var(--mla-stroke)}.mla-graph .mla-box--attn{fill:color-mix(in srgb, var(--light) 86%, transparent);stroke:var(--mla-stroke)}.mla-graph .mla-edge{fill:none;stroke:var(--mla-stroke);stroke-width:1.2px;opacity:.85}.mla-graph .mla-edge--concat{stroke-width:1px;opacity:.7}.mla-graph .mla-edge--rope{stroke:var(--mla-cached-edge)}.mla-graph .mla-edge--attention{stroke-width:1.1px}.mla-graph .mla-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.mla-graph .mla-fo .katex{color:inherit;font-size:1em}.mla-graph .mla-fo .katex-display{margin:0}.mla-graph .mla-fo{pointer-events:none;justify-content:center;overflow:visible}.mla-graph .mla-fo--node{font-size:13px}.mla-graph .mla-fo--head{font-size:10.5px}.mla-graph .mla-fo--edge{color:var(--mla-note);font-size:11px;font-style:italic}.mla-graph .mla-fo--cache-label{color:var(--mla-cached-edge);font-size:12px}.mla-graph .mla-fo--dim{color:var(--mla-note);font-variant-numeric:tabular-nums;font-size:12px}.mla-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.mla-card{border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);box-shadow:none;background:color-mix(in srgb, var(--light) 96%, transparent);padding:.85rem .95rem}.mla-card-label{color:var(--mla-note);margin:0 0 .5rem;font-size:.76rem;font-weight:500;line-height:1.25;display:block}.mla-card-label .mla-math .katex{font-size:.96em}.mla-cache-list{flex-direction:column;gap:.3rem;margin:0 0 .55rem;padding:0;list-style:none;display:flex}.mla-cache-list li{color:var(--dark);align-items:center;gap:.45rem;font-size:.86rem;display:inline-flex}.mla-swatch{border-radius:var(--radius-none);border:1px solid var(--mla-cached-edge);width:.85rem;height:.85rem;box-shadow:none;display:inline-block}.mla-swatch--cached{background:var(--mla-cached-bg)}.mla-cache-note{color:var(--mla-note);text-wrap:pretty;margin:0;font-size:.78rem;line-height:1.45}.mla-cache-note .mla-math{vertical-align:-.03em;margin:0 .14em}.mla-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mla-readout>div{display:contents}.mla-readout dt,.mla-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mla-readout dt{color:var(--fig-note);font-weight:400}.mla-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mla-readout .katex{color:inherit;font-size:1em}.mla-readout-eq{color:var(--mla-note);font-variant-numeric:tabular-nums;font-size:.7rem}.mla-readout-val{font-weight:600}.mla-readout-val--accent{color:var(--mla-cached-edge)}.mla-readout-val--big{font-size:1rem}.mla-math{color:inherit;display:inline-block}.mla-math .katex{color:inherit;font-size:.95em}.mla-math--display{display:block}.mla-math--display .katex-display{text-align:left;margin:0;overflow:auto hidden}.mla-math--display .katex-display>.katex{text-align:left}.mla-controls{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem 1rem;margin-top:1.1rem;display:grid}.mla-control{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .5rem;display:grid}.mla-label{color:var(--mla-note);grid-column:1/3;align-items:baseline;gap:.35rem;font-size:.8rem;display:inline-flex}.mla-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;grid-column:1/2}.mla-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mla-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.mla-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mla-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mla-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.mla-slider:active::-webkit-slider-thumb{transform:scale(.96)}.mla-slider:active::-moz-range-thumb{transform:scale(.96)}.mla-slider{min-height:1.55rem}.mla-slider::-webkit-slider-runnable-track{height:.28rem}.mla-slider::-webkit-slider-thumb{width:.78rem;height:.78rem;margin-top:-.25rem}.mla-slider::-moz-range-track{height:.28rem}.mla-slider::-moz-range-progress{height:.28rem}.mla-slider::-moz-range-thumb{width:.78rem;height:.78rem}.mla-value{font-variant-numeric:tabular-nums;text-align:right;min-width:4ch;color:var(--dark);grid-column:2/3;font-weight:600}.mla-value--accent{color:var(--mla-cached-edge)}.mla-eqs{border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);box-shadow:none;background:color-mix(in srgb, var(--light) 96%, transparent);color:var(--dark);flex-direction:column;gap:.5rem;margin-top:1rem;padding:.85rem 1rem;display:flex}.mla-bet{box-shadow:none;background:color-mix(in srgb, var(--lightgray) 40%, transparent);color:var(--mla-note);margin:.2rem 0 0;padding:.55rem .75rem;font-size:.86rem;line-height:1.5}.mla-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mla-caption .mla-math{vertical-align:-.03em;margin:0 .22em}.zoomable.is-zoomed>.zoomable-content>.mla-latent-path{background:color-mix(in srgb, var(--light) 94%, transparent);flex:0 auto;justify-content:flex-start;width:min(100%,1200px);margin:auto;padding:1.5rem 1.75rem}.zoomable.is-zoomed>.zoomable-content>.mla-latent-path .mla-stage{grid-template-columns:minmax(0,1.55fr) minmax(240px,.9fr);align-items:start}.zoomable.is-zoomed>.zoomable-content>.mla-latent-path .mla-graph{max-height:520px}@container mla-figure (max-width:760px){.mla-stage{grid-template-columns:1fr;gap:1.25rem}.mla-controls{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@container mla-figure (max-width:440px){.mla-latent-path{padding:0}.mla-controls{grid-template-columns:1fr}}.mtp-modules{content-visibility:auto;contain-intrinsic-size:auto 44rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mtp-figure/inline-size}.mtp-modules :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mtp-modules{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mtp-modules{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mtp-modules{--mtp-shared:color-mix(in srgb, var(--fig-sage) 45%, var(--light));--mtp-op:color-mix(in srgb, var(--lightgray) 40%, var(--light));--mtp-on:var(--fig-grid-selected);--mtp-link:var(--dark);--mtp-share-stroke:color-mix(in srgb, var(--fig-sage) 55%, var(--dark));--mtp-input:color-mix(in srgb, var(--gray) 26%, var(--light));--mtp-target:color-mix(in srgb, var(--fig-salmon) 48%, var(--light))}:root[saved-theme=dark] .mtp-modules{--mtp-shared:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--mtp-op:var(--lightgray);--mtp-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--mtp-share-stroke:color-mix(in srgb, var(--fig-sage) 45%, var(--light));--mtp-input:color-mix(in srgb, var(--gray) 40%, var(--lightgray));--mtp-target:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray))}.mtp-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1rem;margin-bottom:.9rem;display:flex}.mtp-legend-keys{color:var(--fig-tab-fg);font-family:var(--codeFont);gap:.9rem;margin:0;padding:0;font-size:.68rem;list-style:none;display:flex}.mtp-legend-keys li{align-items:center;gap:.4rem;margin:0;padding:0;display:inline-flex}.mtp-swatch{width:.8rem;min-width:0;height:.6rem;padding:0}.mtp-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.mtp-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.mtp-segments{box-sizing:border-box;width:fit-content;max-width:100%;grid-template-columns:repeat(3,minmax(0,1fr));min-inline-size:0}.mtp-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:24px;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .35em;display:inline-flex}.mtp-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.mtp-segment:has(input:checked){background:var(--mtp-on);color:var(--dark)}.mtp-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:2px}.mtp-stage{position:relative;container-type:inline-size}.mtp-links{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.mtp-link-causal{fill:none;stroke:var(--mtp-link);stroke-width:1px}.mtp-link-share{fill:none;stroke:var(--mtp-share-stroke);stroke-width:1px;opacity:.85}.mtp-link-arrow{fill:none;stroke:var(--mtp-link);stroke-width:1px;stroke-linejoin:miter}.mtp-share-label{fill:var(--mtp-share-stroke);font-family:var(--codeFont);font-size:10px}.mtp-rail{--mtp-n:3;grid-template-columns:repeat(var(--mtp-n), minmax(0, 1fr));z-index:1;gap:clamp(.6rem,3cqw,1.35rem);padding:.35rem .55rem .45rem;display:grid;position:relative}.mtp-modules[data-mtp-depth="1"] .mtp-rail{--mtp-n:2}.mtp-modules[data-mtp-depth="3"] .mtp-rail{--mtp-n:4}@container (max-width:44rem){.mtp-modules[data-mtp-depth="3"] .mtp-rail{--mtp-n:1;row-gap:1.1rem;padding-inline:1.8rem}}@container (max-width:32rem){.mtp-modules[data-mtp-depth="2"] .mtp-rail{--mtp-n:1;row-gap:1.1rem;padding-inline:1.8rem}}@container (max-width:22rem){.mtp-modules[data-mtp-depth="1"] .mtp-rail{--mtp-n:1;row-gap:1.1rem;padding-inline:1.8rem}}.mtp-col{border:1px solid var(--fig-frame-border);background:var(--fig-surface);flex-direction:column;gap:.2rem;min-width:0;padding:clamp(.4rem,1.6cqw,.65rem);display:flex}.mtp-col[data-mtp-off=true]{display:none}.mtp-head{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:.5rem;margin-bottom:.2rem;display:flex}.mtp-title{color:var(--dark);font-family:var(--headerFont);margin:0;font-size:.85rem;font-weight:500}.mtp-sub{color:var(--fig-note);margin:.1rem 0 0;font-size:.75rem}.mtp-block{border:1px solid var(--fig-stroke);background:var(--mtp-op);min-width:0;min-height:1.7rem;color:var(--dark);font-family:var(--codeFont);text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;gap:.35rem;padding:.25rem .4rem;font-size:.75rem;line-height:1.25;display:flex}.mtp-block--shared{background:var(--mtp-shared)}.mtp-block--op{flex-direction:column;gap:.1rem;min-height:2.2rem}.mtp-block--stack{flex:1;min-height:3.2rem}.mtp-block--small{flex:1;min-height:1.5rem}.mtp-loss-tag{color:var(--fig-note);font-size:.75rem}.mtp-row{gap:.35rem;display:flex}.mtp-block--concat{border-color:var(--fig-stroke-soft);min-height:1.2rem;color:var(--fig-note);background:0 0;padding:.1rem .4rem;font-size:.75rem}.mtp-varrow{justify-content:center;align-items:center;height:1.1rem;margin:-.2rem 0;display:flex}.mtp-varrow[data-side=right]{width:calc(50% - .175rem);margin-left:auto}.mtp-varrow-line{background:var(--dark);width:1px;height:100%;display:block;position:relative}.mtp-varrow-line:after{content:"";border-left:1px solid var(--dark);border-top:1px solid var(--dark);background:0 0;width:5px;height:5px;position:absolute;top:1px;left:50%;transform:translate(-50%)rotate(45deg)}.mtp-merge{height:1.1rem;margin:-.2rem 0;position:relative}.mtp-merge-stem{background:var(--dark);width:1px;position:absolute;top:.7rem;bottom:0}.mtp-merge-stem--l{left:calc(25% - .0875rem)}.mtp-merge-stem--r{right:calc(25% - .0875rem)}.mtp-merge-bar{background:var(--dark);height:1px;position:absolute;top:.7rem;left:calc(25% - .0875rem);right:calc(25% - .0875rem)}.mtp-merge-up{height:auto;position:absolute;top:0;bottom:.4rem;left:50%}.mtp-targets,.mtp-inputs{flex-wrap:nowrap;justify-content:center;align-items:center;gap:.2rem;display:flex}.mtp-tok{border:1px solid var(--fig-stroke-soft);background:var(--light);min-width:0;color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;flex:0 auto;justify-content:center;align-items:center;padding:.12rem .3rem;font-size:.75rem;display:inline-flex}.mtp-tok[data-kind=input]{background:var(--mtp-input)}.mtp-tok[data-kind=target]{background:var(--mtp-target)}.mtp-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mtp-readout>div{display:contents}.mtp-readout dt,.mtp-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mtp-readout dt{color:var(--fig-note);font-weight:400}.mtp-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mtp-readout .katex{color:inherit;font-size:1em}.mtp-readout{margin:.9rem 0 0}.mtp-math{color:inherit;display:inline-block}.mtp-math .katex{color:inherit;font-size:.95em}.mtp-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mooncake-flow{content-visibility:auto;contain-intrinsic-size:auto 44rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mck-figure/inline-size}.mooncake-flow :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mooncake-flow{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mooncake-flow{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mooncake-flow{--mck-cell-empty:var(--light);--mck-cell-other:color-mix(in srgb, var(--gray) 30%, var(--light));--mck-cell-hit:color-mix(in srgb, var(--fig-sage) 70%, var(--light));--mck-cell-new:color-mix(in srgb, var(--fig-salmon) 75%, var(--light));--mck-selected:var(--fig-grid-selected);--mck-ease:.18s cubic-bezier(.23, 1, .32, 1)}:root[saved-theme=dark] .mooncake-flow{--mck-cell-empty:var(--light);--mck-cell-other:color-mix(in srgb, var(--gray) 40%, var(--lightgray));--mck-cell-hit:color-mix(in srgb, var(--fig-sage) 38%, var(--lightgray));--mck-cell-new:color-mix(in srgb, var(--fig-salmon) 42%, var(--lightgray))}.mck-controls{flex-wrap:wrap;gap:0 1.25rem;margin-bottom:1rem;display:flex}.mck-seg-group{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.mck-seg-group>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.mck-seg-group{flex-wrap:wrap;min-width:0;max-width:100%;display:flex}.mck-seg{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;flex:auto;justify-content:center;align-items:center;margin:0;padding:.28rem .55rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex;position:relative}.mck-seg input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.mck-seg:has(input:checked){background:var(--fig-grid-selected);color:var(--dark)}.mck-seg:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.mck-seg:hover{color:var(--dark)}}.mck-graph:is(.mck-graph--tall,.mks-graph--tall){max-width:22.5rem;margin-inline:auto;display:none}@container mck-figure (max-width:37.4rem){.mck-graph:is(.mck-graph--wide,.mks-graph--wide){display:none}.mck-graph:is(.mck-graph--tall,.mks-graph--tall){display:block}}.mck-graph{--mck-u:1;width:100%;height:auto;display:block}.mck-graph .mck-label{fill:var(--dark);font-family:var(--codeFont);font-size:calc(var(--mck-u) * var(--text-meta))}.mck-graph .mck-label--head{fill:var(--fig-note)}.mck-graph .mck-node{fill:none;stroke:var(--fig-stroke);stroke-width:1px;vector-effect:non-scaling-stroke;transition:stroke var(--mck-ease), stroke-width var(--mck-ease)}.mck-graph .mck-node[data-active=true]{stroke:var(--dark);stroke-width:2px}.mck-graph .mck-link{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px;vector-effect:non-scaling-stroke;transition:stroke var(--mck-ease), stroke-width var(--mck-ease)}.mck-graph .mck-link[data-active=true]{stroke:var(--dark);stroke-width:2px}.mck-graph .mck-rdma{fill:var(--light);stroke:var(--fig-stroke);vector-effect:non-scaling-stroke;transition:fill var(--mck-ease)}.mck-graph .mck-rdma[data-active=true]{fill:var(--mck-cell-new);stroke:var(--dark)}.mck-graph .mck-cell{fill:var(--mck-cell-empty);stroke:var(--fig-stroke-soft);stroke-width:1px;vector-effect:non-scaling-stroke;transition:fill var(--mck-ease), stroke var(--mck-ease)}.mck-graph .mck-cell[data-state=other]{fill:var(--mck-cell-other)}.mck-graph .mck-cell[data-state=pending]{stroke:var(--dark)}.mck-graph .mck-cell[data-state=hit],.mck-graph .mck-cell[data-state=kept]{fill:var(--mck-cell-hit);stroke:var(--fig-stroke)}.mck-graph .mck-cell[data-state=new]{fill:var(--mck-cell-new);stroke:var(--dark)}.mck-readouts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}@container mck-figure (max-width:34rem){.mck-readouts{grid-template-columns:minmax(0,1fr)}}.mooncake-flow .mck-table{border-collapse:collapse;width:100%;font-size:var(--text-meta);margin:0;line-height:1.35}.mooncake-flow .mck-table th,.mooncake-flow .mck-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);text-align:right;font-variant-numeric:tabular-nums;min-width:0;transition:background-color var(--mck-ease);padding:.35rem .5rem}.mooncake-flow .mck-table thead th{color:var(--fig-note);font-weight:400}.mooncake-flow .mck-table th:first-child{text-align:left}.mooncake-flow .mck-table tbody th{color:var(--dark);font-weight:400}.mooncake-flow .mck-table td{color:var(--dark);font-family:var(--codeFont)}.mooncake-flow .mck-table tr[data-selected=true]>*{background:var(--mck-selected)}.mck-notes{margin-top:.75rem}.mck-note{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:0;line-height:1.45;display:none}.mooncake-flow[data-mck-stage=route] [data-mck-note=route],.mooncake-flow[data-mck-stage=prefill] [data-mck-note=prefill],.mooncake-flow[data-mck-stage=transfer] [data-mck-note=transfer],.mooncake-flow[data-mck-stage=decode] [data-mck-note=decode]{display:block}.mck-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mck-math{vertical-align:-.03em;margin:0 .22em}@media (prefers-reduced-motion:reduce){.mooncake-flow *{transition:none!important}}.mks-graph .mks-lane{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px;vector-effect:non-scaling-stroke}.mks-graph .mks-bar{stroke:var(--fig-stroke);stroke-width:.5px;vector-effect:non-scaling-stroke;transition:x var(--mck-ease), width var(--mck-ease)}.mks-graph .mks-bar[data-kind=load]{fill:var(--mck-cell-hit)}.mks-graph .mks-bar[data-kind=compute]{fill:var(--mck-cell-other)}.mks-graph .mks-bar[data-kind=stream]{fill:var(--mck-cell-new);stroke:var(--dark)}.mks-graph .mks-axis{stroke:var(--fig-stroke);vector-effect:non-scaling-stroke}.mks-graph .mks-marker{fill:none;stroke:var(--dark);stroke-width:2px;vector-effect:non-scaling-stroke}.mx-block-scale{content-visibility:auto;contain-intrinsic-size:auto 40rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mxb-figure/inline-size}.mx-block-scale :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mx-block-scale{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mx-block-scale{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mx-block-scale{--mxb-deq:color-mix(in srgb, var(--fig-sage) 92%, var(--dark));--mxb-max:var(--fig-salmon);--mxb-err:var(--fig-stroke);--mxb-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .mx-block-scale{--mxb-deq:var(--fig-sage);--mxb-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.mxb-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.mxb-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.mxb-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.mxb-segments{grid-auto-flow:column;min-width:0}.mxb-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.mxb-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.mxb-segment:hover{color:var(--dark)}.mxb-segment:has(input:checked){background:var(--mxb-segment-on);color:var(--dark)}.mxb-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.mxb-svg{width:100%;margin:.9rem auto 0;display:block}.mxb-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.mxb-svg .mxb-axis{fill:var(--fig-note);font-size:9px}.mxb-svg .mxb-panel{fill:var(--dark);font-size:9px;font-weight:600}.mxb-svg .mxb-rule,.mxb-svg .mxb-ticks{stroke:var(--fig-stroke);stroke-width:1px;fill:none}.mxb-svg .mxb-zero{stroke:var(--fig-stroke-soft);stroke-width:1px}.mxb-svg .mxb-orig{fill:none;stroke:var(--dark);stroke-width:.9px}.mxb-svg .mxb-deq{fill:var(--mxb-deq)}.mxb-svg [data-mxb-max=true] .mxb-deq{fill:var(--mxb-max)}.mxb-svg .mxb-err{fill:var(--mxb-err)}.mxb-svg .mxb-orig,.mxb-svg .mxb-deq,.mxb-svg .mxb-err{transition:y .2s,height .2s,fill .16s}.mxb-key{color:var(--fig-note);flex-wrap:wrap;gap:.3rem 1rem;margin:.5rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.mxb-key li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.mxb-swatch{box-sizing:border-box;width:.7rem;height:.7rem;display:inline-block}.mxb-swatch--orig{border:1px solid var(--dark)}.mxb-swatch--deq{background:var(--mxb-deq)}.mxb-swatch--max{background:var(--mxb-max)}.mxb-swatch--tick{background:var(--fig-stroke);height:1px}.mxb-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mxb-readout>div{display:contents}.mxb-readout dt,.mxb-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mxb-readout dt{color:var(--fig-note);font-weight:400}.mxb-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mxb-readout .katex{color:inherit;font-size:1em}.mxb-readout{margin-top:.9rem}.mxb-math{color:inherit;display:inline-block}.mxb-math .katex{color:inherit;font-size:.95em}.mxb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.mxb-svg .mxb-orig,.mxb-svg .mxb-deq,.mxb-svg .mxb-err,.mxb-segment{transition:none}}@container mxb-figure (max-width:480px){.mxb-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.mxb-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}.mxb-segment{padding:.28rem .35rem}.mxb-readout{grid-template-columns:minmax(0,1fr)}.mxb-readout dd{overflow-x:auto}}.mx-compute-flow{content-visibility:auto;contain-intrinsic-size:auto 44rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mxf-figure/inline-size}.mx-compute-flow :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .mx-compute-flow{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.mx-compute-flow{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.mx-compute-flow{--mxf-block:color-mix(in srgb, var(--dark) 22%, var(--light));--mxf-lit:var(--fig-salmon);--mxf-out:color-mix(in srgb, var(--dark) 6%, var(--light));--mxf-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .mx-compute-flow{--mxf-block:color-mix(in srgb, var(--dark) 30%, var(--lightgray));--mxf-out:color-mix(in srgb, var(--dark) 8%, var(--lightgray));--mxf-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.mxf-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.mxf-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.mxf-segments{grid-auto-flow:column;width:max-content;min-width:0;max-width:100%}.mxf-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.mxf-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.mxf-segment:hover{color:var(--dark)}.mxf-segment:has(input:checked){background:var(--mxf-segment-on);color:var(--dark)}.mxf-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.mxf-stage{grid-template-columns:minmax(0,1.15fr) minmax(13rem,1fr);align-items:center;gap:1.25rem;margin-top:.9rem;display:grid}.mxf-svg{width:100%;max-width:24rem;display:block}.mxf-svg .mxf-block{fill:var(--mxf-block);transition:fill .16s}.mxf-svg .mxf-block--lit,.mxf-svg .mxf-out-lit{fill:var(--mxf-lit)}.mxf-svg .mxf-out-lit{stroke:var(--dark);stroke-width:.8px}.mxf-svg .mxf-out{fill:var(--mxf-out);stroke:var(--fig-stroke);stroke-width:1px}.mxf-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.mxf-fo .katex{color:inherit;font-size:1em}.mxf-fo .katex-display{margin:0}.mxf-fo{white-space:nowrap;font-size:10px}.mxf-fo--end{justify-content:flex-end}.mxf-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mxf-readout>div{display:contents}.mxf-readout dt,.mxf-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mxf-readout dt{color:var(--fig-note);font-weight:400}.mxf-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mxf-readout .katex{color:inherit;font-size:1em}.mx-compute-flow:not([data-mxf-pass=forward]) [data-mxf-panel=forward],.mx-compute-flow:not([data-mxf-pass=wgrad]) [data-mxf-panel=wgrad],.mx-compute-flow:not([data-mxf-pass=dgrad]) [data-mxf-panel=dgrad]{display:none}.mxf-copies{border-collapse:collapse;width:100%;margin:1rem 0 0;font-size:.74rem;line-height:1.3}.mxf-copies caption{caption-side:top;color:var(--fig-note);text-align:left;margin-bottom:.4rem;font-size:.72rem}.mxf-copies th,.mxf-copies td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);text-align:left;padding:.32rem .5rem;transition:background-color .16s}.mxf-copies thead th{color:var(--fig-note);font-weight:400}.mxf-copies tbody th{font-weight:400}.mxf-copies .mxf-num{white-space:nowrap;font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right}.mxf-copies .katex{color:inherit;font-size:1em}.mx-compute-flow[data-mxf-pass=forward] tr[data-mxf-use=forward]>td:not(.mxf-num),.mx-compute-flow[data-mxf-pass=wgrad] tr[data-mxf-use=wgrad]>td:not(.mxf-num),.mx-compute-flow[data-mxf-pass=dgrad] tr[data-mxf-use=dgrad]>td:not(.mxf-num){background:var(--fig-grid-selected)}.mxf-math{color:inherit;display:inline-block}.mxf-math .katex{color:inherit;font-size:.95em}.mxf-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.mxf-svg .mxf-block,.mxf-segment,.mxf-copies td{transition:none}}@container mxf-figure (max-width:560px){.mxf-stage{grid-template-columns:minmax(0,1fr)}.mxf-svg{margin:0 auto}.mxf-segments{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;width:auto}.mxf-segment{white-space:normal;text-align:center;padding:.28rem .3rem}.mxf-copies{font-size:.68rem}.mxf-copies th,.mxf-copies td{padding:.28rem .32rem}}.meta-ethics-tree{content-visibility:auto;contain-intrinsic-size:auto 38rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mep-figure/inline-size}.meta-ethics-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .meta-ethics-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.meta-ethics-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.meta-ethics-tree{--mep-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--mep-note-fg:color-mix(in srgb, var(--darkgray) 80%, var(--dark) 20%);--mep-q-bg:color-mix(in srgb, var(--light) 98%, transparent);--mep-pos-bg:color-mix(in srgb, var(--fig-sage) 24%, var(--light));--mep-pos-stroke:color-mix(in srgb, var(--fig-sage) 66%, var(--darkgray));--mep-active:var(--fig-salmon);--mep-active-bg:color-mix(in srgb, var(--fig-salmon) 30%, var(--light));--mep-path-bg:color-mix(in srgb, var(--lightgray) 60%, var(--light));--mep-you:color-mix(in srgb, var(--fig-sage) 82%, var(--dark))}:root[saved-theme=dark] .meta-ethics-tree{--mep-q-bg:color-mix(in srgb, var(--lightgray) 26%, var(--dark));--mep-pos-bg:color-mix(in srgb, var(--fig-sage) 20%, var(--lightgray));--mep-active-bg:color-mix(in srgb, var(--fig-salmon) 22%, var(--lightgray));--mep-path-bg:color-mix(in srgb, var(--dark) 8%, var(--lightgray))}.mep-stage{grid-template-columns:minmax(0,2.1fr) minmax(216px,1fr);align-items:stretch;gap:1.4rem;display:grid}.mep-canvas{justify-content:center;align-items:flex-start;min-width:0;display:flex}.mep-svg{aspect-ratio:840/600;width:100%;height:auto;display:block;overflow:visible}.mep-svg .mep-edge{fill:none;stroke:var(--mep-stroke-soft);stroke-width:1.2px;transition:stroke .2s,stroke-width .2s}.mep-svg .mep-edge-group.is-path .mep-edge{stroke:var(--mep-active);stroke-width:1.9px}.mep-svg .mep-edge-label{overflow:visible}.mep-svg .mep-edge-text{width:100%;height:100%;font-family:var(--bodyFont);color:var(--mep-note-fg);justify-content:center;align-items:center;font-size:9.5px;font-style:italic;line-height:1;transition:color .2s;display:flex}.mep-svg .mep-edge-group.is-path .mep-edge-text{color:color-mix(in srgb, var(--mep-active) 78%, var(--dark) 22%);font-style:normal}.mep-svg .mep-node--question,.mep-svg .mep-node--category{--mep-fill:var(--mep-q-bg);--mep-stroke-cur:var(--mep-stroke-soft)}.mep-svg .mep-node--terminal{--mep-fill:var(--mep-pos-bg);--mep-stroke-cur:var(--mep-pos-stroke)}.mep-svg .mep-node.is-path{--mep-fill:var(--mep-path-bg);--mep-stroke-cur:var(--mep-active)}.mep-svg .mep-node.is-active{--mep-fill:var(--mep-active-bg);--mep-stroke-cur:var(--mep-active)}.mep-svg .mep-box{fill:var(--mep-fill);stroke:var(--mep-stroke-cur);stroke-width:1px;transition:fill .2s,stroke .2s,stroke-width .2s}.mep-svg .mep-node.is-path .mep-box{stroke-width:1.6px}.mep-svg .mep-node.is-active .mep-box{stroke-width:2px}.mep-svg .mep-node--selectable{cursor:var(--cursor-pointer,pointer)}.mep-svg .mep-node--selectable:hover .mep-box{stroke:var(--mep-active)}.mep-svg .mep-node--selectable:focus-visible{outline:none}.mep-svg .mep-node--selectable:focus-visible .mep-box{stroke:var(--tertiary);stroke-width:2px}.mep-svg .mep-fo{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;height:100%;padding:2px 7px;line-height:1.16;display:flex;overflow:hidden}.mep-svg .mep-cat-name{font-family:var(--bodyFont);color:var(--dark);font-size:11px;font-weight:400}.mep-svg .mep-q-text{font-family:var(--bodyFont);color:var(--mep-note-fg);font-size:10px;font-weight:400}.mep-svg .mep-pos-name{font-family:var(--bodyFont);color:var(--dark);font-size:11px;font-weight:400}.mep-svg .mep-node.is-active .mep-q-text,.mep-svg .mep-node.is-path .mep-q-text{color:var(--dark)}.mep-svg .mep-you{fill:var(--mep-you);stroke:var(--light);stroke-width:1px}.mep-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.mep-card{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);border:0;padding:.8rem .9rem}.mep-card>h4{color:var(--mep-note-fg);margin:0;font-size:.74rem;font-weight:400}.mep-card--detail{min-height:6.5rem}.mep-detail{display:none}.mep-detail.is-active{display:block}.mep-detail-name{color:var(--dark);flex-wrap:wrap;align-items:center;gap:.45rem;margin:0;font-size:.98rem;font-weight:400;display:flex}.mep-mine-tag{color:color-mix(in srgb, var(--mep-you) 30%, var(--dark));padding:.1rem .36rem;font-size:.62rem;font-weight:400}.mep-sig{color:inherit;display:inline-block}.mep-sig .katex{color:inherit;font-size:1.04em}.mep-sig{color:color-mix(in srgb, var(--mep-active) 70%, var(--dark) 30%);margin:.5rem 0 0;display:block}.mep-gloss{color:var(--mep-note-fg);margin:.45rem 0 0;font-size:.8rem;line-height:1.5}.mep-answers{margin:.55rem 0 0;padding:0;list-style:none;display:none}.mep-answers.is-active{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:.55rem 0 0;padding:1px;display:grid}.mep-answer{display:contents}.mep-answer>span{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;min-width:0;margin:0;padding:.35rem .5rem;font-size:.76rem}.mep-answer-q{color:var(--fig-note)}.mep-answer-a{color:var(--dark);font-family:var(--codeFont);text-align:right}.mep-reset{border-radius:var(--radius-none);color:var(--mep-note-fg);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;align-self:flex-start;padding:.34rem .7rem;font-size:.76rem;transition:background .16s,color .16s}.mep-reset:hover{background:var(--mep-active-bg);color:var(--dark)}.mep-reset:focus-visible{outline:2px solid var(--tertiary);outline-offset:2px}.mep-math{color:inherit;display:inline-block}.mep-math .katex{color:inherit;font-size:.95em}.mep-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mep-caption .mep-math{vertical-align:-.03em;margin:0 .22em}@container mep-figure (max-width:760px){.mep-stage{grid-template-columns:1fr;gap:1.1rem}.mep-side{flex-flow:wrap;align-items:flex-start}.mep-card{flex:14rem}.mep-reset{flex-basis:100%}}@container mep-figure (max-width:520px){.meta-ethics-tree{padding:0}.mep-svg .mep-cat-name,.mep-svg .mep-edge-text{font-size:9px}.mep-svg .mep-q-text,.mep-svg .mep-pos-name{font-size:10px}.mep-side{flex-direction:column}}.methodology-tree{border-radius:var(--radius-none);border:1px solid color-mix(in srgb, var(--gray) 28%, transparent);background:color-mix(in srgb, var(--light) 94%, #fff0);margin:1.75rem 0;padding:1.5rem 1.75rem}.methodology-tree.compact{padding:1.25rem 1.5rem}.methodology-tree .tree-header{width:100%;margin-bottom:1.5rem;padding:0;display:inline-block}.methodology-tree .tree-header>h4{color:color-mix(in srgb, var(--secondary) 80%, var(--gray) 20%);font-weight:600}.methodology-tree .tree-header>p{color:color-mix(in srgb, var(--gray) 78%, var(--dark) 22%);margin:0;line-height:1.6}.methodology-tree .tree-root{flex-direction:column;gap:0;margin:0;padding:0;display:flex;position:relative}.methodology-tree .tree-trailing{border-top:1px solid color-mix(in srgb, var(--gray) 20%, transparent);gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;display:grid}.methodology-step{border:none;margin:0;padding:0;transition:background .2s;position:relative}.methodology-step:not(.is-open) .step-body{display:none}.methodology-step .step-toggle{cursor:var(--cursor-pointer,pointer);border-radius:var(--radius-none);text-align:left;width:100%;color:inherit;font:inherit;appearance:none;background:0 0;border:none;grid-template-columns:1.65rem 1fr auto;align-items:center;gap:.85rem;padding:0;transition:background .2s;display:grid}.methodology-step .step-header{flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0;display:flex}.methodology-step .step-title{color:var(--dark);font-weight:600}.methodology-step .step-badge{border-radius:var(--radius-none);font-size:.55rem;font-family:var(--codeFont);letter-spacing:.08em;text-transform:uppercase;background-color:color-mix(in srgb, var(--gray) 12%, transparent);color:color-mix(in srgb, var(--dark) 65%, var(--gray) 35%);border:1px solid color-mix(in srgb, var(--gray) 32%, transparent);cursor:var(--cursor-default,default);transition:background-color var(--transition-normal), color var(--transition-normal), border-color var(--transition-normal);align-items:center;gap:.3rem;padding:.18rem .5rem;font-weight:600;line-height:1.2;display:inline-flex}.methodology-step .step-badge:hover{background-color:color-mix(in srgb, var(--gray) 20%, transparent);color:color-mix(in srgb, var(--dark) 65%, var(--gray) 35%);border-color:color-mix(in srgb, var(--gray) 32%, transparent)}[saved-theme=dark] .methodology-step .step-badge{background-color:var(--highlight);color:var(--dark)}.methodology-step .step-badge{margin-left:.35rem}.methodology-step .step-chevron{border:solid color-mix(in srgb, var(--gray) 65%, transparent);border-width:0 2px 2px 0;width:.75rem;height:.75rem;margin-left:auto;transition:transform .2s;transform:rotate(45deg)}.methodology-step.is-open .step-chevron{transform:rotate(225deg)}.methodology-step .step-rail{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:0;width:1.65rem;display:flex}.methodology-step .step-line{background:color-mix(in srgb, var(--gray) 22%, transparent);border-radius:var(--radius-none);flex:1;width:1px;min-height:.4rem}.methodology-step .step-node{border-radius:var(--radius-none);background:color-mix(in srgb, var(--foam) 32%, transparent);border:1px solid color-mix(in srgb, var(--iris) 28%, transparent);justify-content:center;align-items:center;width:1.1rem;height:1.1rem;display:flex}.methodology-step .step-sequence{font-size:.68rem;font-family:var(--codeFont);color:color-mix(in srgb, var(--iris) 62%, var(--dark) 35%);font-weight:600}.methodology-step .step-body{grid-template-columns:1.65rem 1fr;column-gap:.85rem;padding:0;display:grid}.methodology-step .step-rail--body{align-items:center;gap:0}.methodology-step .step-rail--body .step-line{min-height:calc(100% - .5rem)}.methodology-step .step-body-content{gap:.55rem;display:grid}.methodology-step .step-summary,.methodology-step .step-highlight{color:color-mix(in srgb, var(--gray) 72%, var(--dark) 28%);margin:0;line-height:1.6}.methodology-step .step-summary{font-size:.9em;font-style:italic}.methodology-step .step-highlight{border-left:3px solid color-mix(in srgb, var(--iris) 60%, transparent);color:color-mix(in srgb, var(--dark) 80%, var(--iris) 20%);padding-left:.75rem;font-style:italic}.methodology-step .step-points{color:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);flex-direction:column;gap:.35rem;margin:0;padding-left:0;list-style:none;display:flex}.methodology-step .step-points>li{padding-left:1rem;position:relative}.methodology-step .step-points>li:before{content:"";border-radius:var(--radius-none);background:color-mix(in srgb, var(--foam) 45%, transparent);width:.5rem;height:.5rem;position:absolute;top:.55em;left:0}.methodology-step .step-inline{gap:.65rem;display:grid}.methodology-step .step-inline>:where(blockquote,.callout){margin:0}.methodology-children{gap:.5rem;margin-top:.45rem;display:grid}@media (max-width:800px){.methodology-tree{margin:1.25rem 0;padding:1.2rem}.methodology-step .step-node{width:1.7rem;height:1.7rem}.methodology-step .step-sequence{font-size:.62rem}}.methodology-step:first-of-type .step-line--before,.methodology-step:last-of-type .step-line--after,.methodology-step:last-of-type .step-rail--body .step-line--body{opacity:0}.multi-head-attention{content-visibility:auto;contain-intrinsic-size:auto 54rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:mha-figure/inline-size}.multi-head-attention :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .multi-head-attention{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.multi-head-attention{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.multi-head-attention{--mha-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--mha-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--mha-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--mha-salmon:var(--fig-salmon);--mha-sage:var(--fig-sage);--mha-input-bg:color-mix(in srgb, var(--lightgray) 50%, var(--light));--mha-input-edge:var(--mha-stroke);--mha-head-bg:color-mix(in srgb, var(--lightgray) 35%, var(--light));--mha-head-edge:color-mix(in srgb, var(--gray) 60%, transparent);--mha-accent-bg:color-mix(in srgb, var(--mha-salmon) 60%, var(--light));--mha-accent-edge:color-mix(in srgb, var(--mha-salmon) 90%, var(--dark));--mha-concat-bg:color-mix(in srgb, var(--mha-sage) 60%, var(--light));--mha-concat-edge:color-mix(in srgb, var(--mha-sage) 90%, var(--dark));--mha-wo-bg:color-mix(in srgb, var(--mha-sage) 30%, var(--light));--mha-link:color-mix(in srgb, var(--mha-stroke) 55%, transparent);--mha-link-concat:color-mix(in srgb, var(--mha-concat-edge) 75%, transparent);--mha-score-cell:color-mix(in srgb, var(--mha-salmon) 70%, var(--dark) 30%)}:root[saved-theme=dark] .multi-head-attention{--mha-input-bg:color-mix(in srgb, var(--lightgray) 35%, var(--dark));--mha-head-bg:color-mix(in srgb, var(--lightgray) 28%, var(--dark));--mha-accent-bg:color-mix(in srgb, var(--mha-salmon) 36%, var(--lightgray));--mha-concat-bg:color-mix(in srgb, var(--mha-sage) 32%, var(--lightgray));--mha-wo-bg:color-mix(in srgb, var(--mha-sage) 18%, var(--dark));--mha-link:color-mix(in srgb, var(--mha-stroke) 75%, transparent);--mha-score-cell:color-mix(in srgb, var(--mha-salmon) 80%, var(--light) 20%)}.mha-stage{grid-template-columns:minmax(0,1.55fr) minmax(240px,1fr);align-items:stretch;gap:1.5rem;display:grid}.mha-scroll{min-width:0;overflow-x:auto}.mha-scroll:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.mha-graph{aspect-ratio:760/560;--mha-u:1.46;width:100%;height:auto;display:block}.mha-graph .mha-residual,.mha-graph .mha-residual-arc,.mha-graph .mha-box,.mha-graph .mha-proj,.mha-graph .mha-link,.mha-graph .mha-fanout,.mha-graph .mha-concat-line,.mha-graph .mha-score-frame{vector-effect:non-scaling-stroke}.mha-graph .mha-arrowhead{fill:var(--mha-stroke)}.mha-graph .mha-arrowhead--residual{fill:var(--mha-concat-edge)}.mha-graph .mha-residual{fill:color-mix(in srgb, var(--mha-sage) 12%, transparent);stroke:var(--mha-concat-edge);stroke-width:.8px;opacity:.85}.mha-graph .mha-residual-label{fill:var(--mha-note);font-family:var(--bodyFont);dominant-baseline:middle;font-size:10px;font-style:italic}.mha-graph .mha-residual-arc{fill:none;stroke:var(--mha-concat-edge);stroke-width:1.2px;opacity:.85}.mha-graph .mha-box{stroke-width:1.1px;transition:fill .2s,stroke .2s,opacity .2s}.mha-graph .mha-box--input{fill:var(--mha-input-bg);stroke:var(--mha-input-edge)}.mha-graph .mha-box--head{fill:var(--mha-head-bg);stroke:var(--mha-head-edge)}.mha-graph .mha-box--accent{fill:var(--mha-accent-bg);stroke:var(--mha-accent-edge)}.mha-graph .mha-box--collapsed{fill:var(--mha-head-bg);stroke:var(--mha-head-edge)}.mha-graph .mha-box--concat{fill:var(--mha-concat-bg);stroke:var(--mha-concat-edge)}.mha-graph .mha-box--wo{fill:var(--mha-wo-bg);stroke:var(--mha-concat-edge)}.mha-graph .mha-head{transition:opacity .22s}.mha-graph .mha-head[data-mha-hidden=true]{opacity:0;pointer-events:none}.mha-graph .mha-head--accent .mha-proj{stroke:var(--mha-accent-edge)}.mha-graph .mha-proj{fill:color-mix(in srgb, var(--lightgray) 60%, var(--light));stroke:var(--mha-stroke-soft);stroke-width:.6px}.mha-graph .mha-proj--q{fill:color-mix(in srgb, var(--mha-salmon) 14%, var(--light))}.mha-graph .mha-proj--k{fill:color-mix(in srgb, var(--lightgray) 75%, var(--light))}.mha-graph .mha-proj--v{fill:color-mix(in srgb, var(--mha-sage) 18%, var(--light))}.mha-graph .mha-link{fill:none;stroke:var(--mha-link);stroke-width:1px;opacity:.85}.mha-graph .mha-link--wo{stroke:var(--mha-concat-edge);stroke-width:1.4px}.mha-graph .mha-fanout,.mha-graph .mha-concat-line{fill:none;stroke:var(--mha-link);stroke-width:.9px;opacity:.7;transition:opacity .22s}.mha-graph .mha-concat-line{stroke:var(--mha-link-concat)}.mha-graph .mha-fanout[data-mha-hidden=true],.mha-graph .mha-concat-line[data-mha-hidden=true]{opacity:0;pointer-events:none}.mha-graph .mha-score-frame{fill:color-mix(in srgb, var(--light) 50%, transparent);stroke:var(--mha-stroke-soft);stroke-width:.6px}.mha-graph .mha-score-cell{fill:var(--mha-score-cell);transition:opacity .2s}.mha-graph .mha-score[data-mha-score-visible=false],.mha-graph .mha-score-collapsed[data-mha-collapsed-visible=false]{opacity:0;pointer-events:none}.mha-graph .mha-score,.mha-graph .mha-score-collapsed{transition:opacity .18s}.mha-graph .mha-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.mha-graph .mha-fo .katex{color:inherit;font-size:1em}.mha-graph .mha-fo .katex-display{margin:0}.mha-graph .mha-fo{pointer-events:none;justify-content:center;overflow:visible}.mha-graph .mha-fo--input,.mha-graph .mha-fo--wo{font-size:calc(var(--mha-u) * 13px)}.mha-graph .mha-fo--proj,.mha-graph .mha-fo--head,.mha-graph .mha-fo--collapsed,.mha-graph .mha-fo--concat,.mha-graph .mha-fo--residual-label,.mha-graph .mha-fo--axis{font-size:calc(var(--mha-u) * var(--text-meta))}.mha-graph .mha-fo--proj,.mha-graph .mha-fo--collapsed,.mha-graph .mha-fo--concat{color:var(--mha-note)}.mha-graph .mha-fo--concat .katex{transform:rotate(-90deg)}.mha-graph .mha-fo--residual-label{color:var(--mha-note);padding-left:calc(var(--mha-u) * 4px);justify-content:start}.mha-graph .mha-fo[data-mha-clipped]{visibility:hidden}.mha-graph .mha-fo--axis{color:var(--mha-note);justify-content:center;font-style:italic}.mha-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.mha-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.mha-readout>div{display:contents}.mha-readout dt,.mha-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.mha-readout dt{color:var(--fig-note);font-weight:400}.mha-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.mha-readout .katex{color:inherit;font-size:1em}.mha-readout-eq{color:var(--mha-note);font-size:var(--text-meta)}.mha-readout-val{font-weight:600}.mha-readout-val .katex{color:inherit;font-size:1em}.mha-readout-val--accent{color:var(--mha-accent-edge)}.mha-invariant{border-radius:var(--radius-none);background:color-mix(in srgb, var(--mha-sage) 10%, transparent);font-size:var(--text-meta);color:var(--mha-note);align-items:flex-start;gap:.5rem;padding:.6rem .75rem;line-height:1.45;display:flex}.mha-invariant strong{color:var(--dark);font-weight:600}.mha-invariant em{color:var(--mha-accent-edge);font-style:italic}.mha-invariant-bullet{background:var(--mha-concat-edge);border-radius:50%;flex:none;width:.5rem;height:.5rem;margin-top:.4rem;display:inline-block}.mha-equation{background:color-mix(in srgb, var(--lightgray) 40%, transparent);flex-direction:column;gap:.35rem;padding:.6rem .75rem;font-size:.85rem;display:flex;overflow-x:auto}.mha-equation .katex-display{text-align:left;margin:0;overflow:auto hidden}.mha-equation .katex-display>.katex{text-align:left}.mha-math{color:inherit;display:inline-block}.mha-math .katex{color:inherit;font-size:.95em}.mha-math--display{display:block}.mha-controls{grid-template-columns:minmax(0,1.55fr) minmax(240px,1fr);align-items:start;gap:.9rem 1.5rem;margin-top:1.1rem;display:grid}.mha-control{flex-direction:column;gap:.35rem;min-width:0;display:flex}.mha-control--toggle{grid-area:1/1/auto/-1}.mha-control-divider{background:color-mix(in srgb, var(--gray) 30%, transparent);grid-area:2/1/auto/-1;height:1px}.mha-control--dm{grid-area:3/2/auto/3}.mha-control--slider{grid-area:3/1/auto/2;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.3rem .55rem;display:grid}.mha-control--slider .mha-label{grid-area:1/1/2/2}.mha-control--slider .mha-slider{grid-area:1/2/2/3}.mha-control--slider .mha-slider-value{grid-area:1/3/2/4}.mha-control--slider .mha-tick-strip{grid-area:2/2/3/3}.mha-label{color:var(--mha-note);font-size:var(--text-meta);white-space:nowrap;align-items:baseline;gap:.35rem;display:inline-flex}.mha-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.mha-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mha-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.mha-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mha-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.mha-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.mha-slider:active::-webkit-slider-thumb{transform:scale(.96)}.mha-slider:active::-moz-range-thumb{transform:scale(.96)}.mha-slider-value{font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-align:right;min-width:3.5ch;color:var(--dark);font-weight:600}.mha-slider-value .katex{color:inherit;font-size:1em}.mha-tick-strip{height:.95rem;font-size:var(--text-meta);color:var(--mha-note);font-variant-numeric:tabular-nums;position:relative}.mha-tick{top:0;left:calc(.5rem + var(--mha-frac,0) * (100% - 1rem));white-space:nowrap;position:absolute;transform:translate(-50%)}.mha-tick .katex{color:inherit;font-size:1em}.mha-tick[data-mha-active=true]{color:var(--dark);font-weight:600}.mha-num-wrap{align-items:center;min-width:0;display:flex}.mha-num-value{font-size:var(--text-meta);font-variant-numeric:tabular-nums;color:var(--dark);cursor:var(--cursor-pointer,pointer);font-weight:600}.mha-num-value[hidden]{display:none}.mha-num-value:hover,.mha-num-value:focus-visible{color:var(--mha-accent-edge);outline:none}.mha-num-value .katex{color:inherit;font-size:1em}.mha-num{font-family:var(--codeFont,ui-monospace, monospace);border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 90%, transparent);color:var(--dark);font-variant-numeric:tabular-nums;border:0;width:100%;min-width:0;padding:.3rem .45rem;font-size:.85rem}.mha-num[hidden]{display:none}.mha-toggle{border-radius:var(--radius-none);border:1px solid var(--lightgray);background:color-mix(in srgb, var(--light) 90%, transparent);min-height:2.5rem;color:var(--mha-note);font-size:var(--text-meta);cursor:var(--cursor-pointer,pointer);align-items:center;gap:.5rem;padding:.4rem .65rem;transition:background .16s,color .16s;display:inline-flex}.mha-toggle:hover{color:var(--dark)}.mha-toggle.is-active{background:color-mix(in srgb, var(--lightgray) 70%, var(--light));color:var(--dark)}.mha-toggle-dot{background:color-mix(in srgb, var(--gray) 50%, transparent);border-radius:50%;width:.55rem;height:.55rem;transition:background .16s}.mha-toggle.is-active .mha-toggle-dot{background:var(--mha-accent-edge)}.mha-intuition{color:var(--mha-note);margin:1.1rem 0 0;padding:.75rem .9rem;font-size:.86rem;line-height:1.5}.mha-intuition strong{color:var(--dark);font-weight:600}.mha-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.mha-caption .mha-math{vertical-align:-.03em;margin:0 .22em}@container mha-figure (min-width:640px){.mha-graph{--mha-u:1.15}}@container mha-figure (min-width:821px){.mha-graph{--mha-u:1.03}}@container mha-figure (max-width:460px){.mha-graph{--mha-u:1.47;min-width:37rem}}@container mha-figure (max-width:820px){.mha-stage{grid-template-columns:minmax(0,1fr);gap:1.25rem}.mha-controls{grid-template-columns:1fr}.mha-control--toggle,.mha-control-divider,.mha-control--slider,.mha-control--dm{grid-area:auto/1/auto/-1}}@container mha-figure (max-width:480px){.multi-head-attention{padding:0}.mha-readout{font-size:var(--text-meta)}}.number-format-bits{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:nfb-figure/inline-size}.number-format-bits :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .number-format-bits{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.number-format-bits{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.number-format-bits{--nfb-sign:color-mix(in srgb, var(--dark) 40%, var(--light));--nfb-exp:color-mix(in srgb, var(--dark) 20%, var(--light));--nfb-frac:color-mix(in srgb, var(--dark) 9%, var(--light));--nfb-on:var(--dark);--nfb-lit:color-mix(in srgb, var(--fig-salmon) 80%, var(--light));--nfb-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .number-format-bits{--nfb-sign:color-mix(in srgb, var(--dark) 46%, var(--lightgray));--nfb-exp:color-mix(in srgb, var(--dark) 24%, var(--lightgray));--nfb-frac:color-mix(in srgb, var(--dark) 6%, var(--lightgray));--nfb-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--nfb-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.nfb-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.nfb-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.nfb-segments{grid-auto-flow:column;width:max-content;min-width:0;max-width:100%}.nfb-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.78rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.nfb-segment .katex{font-size:1em}.nfb-segment:hover{color:var(--dark)}.nfb-segment:has(input:checked){color:var(--dark)}.nfb-segment:has(input:checked){background:var(--nfb-segment-on)}.nfb-segment input,.nfb-row input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}:is(.nfb-segment:has(input:focus-visible),.nfb-row:has(input:focus-visible)){outline:2px solid var(--dark);outline-offset:-2px}.nfb-rows{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + var(--space-3));border:0;gap:1px;padding:1px;display:grid;position:relative}.nfb-rows>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.nfb-rows{min-width:0}.nfb-row{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;cursor:var(--cursor-pointer,pointer);border:0;grid-template-columns:5.4rem minmax(0,1fr) 6.4rem;align-items:center;gap:.6rem;margin:0;padding:.3rem .55rem .3rem 0;transition:background-color .14s;display:grid}.nfb-row:has(input:checked){background:var(--fig-grid-selected)}.nfb-name{color:var(--dark);font-family:var(--codeFont);white-space:nowrap;align-self:stretch;align-items:center;padding:0 .55rem;font-size:.72rem;transition:background-color .14s;display:flex}.nfb-row:has(input:checked) .nfb-name{background:var(--nfb-lit);font-weight:600}.nfb-bits{grid-template-columns:repeat(32,minmax(0,1fr));gap:1px;display:grid}.nfb-bit,.nfb-swatch{aspect-ratio:1;background:var(--nfb-frac);position:relative}.nfb-bit[data-nfb-field=s],.nfb-swatch[data-nfb-field=s]{background:var(--nfb-sign)}.nfb-bit[data-nfb-field=e],.nfb-swatch[data-nfb-field=e]{background:var(--nfb-exp)}.nfb-bit:after,.nfb-swatch:after{content:"";background:var(--nfb-on);opacity:0;transition:opacity .16s;position:absolute;inset:24%}.nfb-bit[data-nfb-on="1"]:after,.nfb-swatch[data-nfb-on="1"]:after{opacity:1}.nfb-dec{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:.72rem}.nfb-key{color:var(--fig-note);flex-wrap:wrap;gap:.3rem 1rem;margin:.6rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.nfb-key li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.nfb-swatch{width:.8rem}.nfb-detail{margin-top:1rem}.nfb-eq{min-width:0;color:var(--dark);font-size:.85rem;overflow-x:auto}.nfb-eq .katex-display{margin:0}.nfb-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr);gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.nfb-readout>div{display:contents}.nfb-readout dt,.nfb-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.nfb-readout dt{color:var(--fig-note);font-weight:400}.nfb-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.nfb-readout .katex{color:inherit;font-size:1em}.nfb-readout{margin-top:.75rem}.nfb-readout dd[data-nfb-out=outcome]{text-align:right;font-family:inherit}.nfb-math{color:inherit;display:inline-block}.nfb-math .katex{color:inherit;font-size:.95em}.nfb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.nfb-segment,.nfb-row,.nfb-name,.nfb-bit:after{transition:none}}@container nfb-figure (max-width:520px){.nfb-segments{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.nfb-row{grid-template-columns:max-content minmax(0,1fr);row-gap:.3rem;padding:0 .45rem .4rem 0}.nfb-name{padding:.2rem .45rem}.nfb-bits{grid-area:2/1/auto/-1;padding-left:.45rem}.nfb-readout{grid-template-columns:max-content minmax(0,1fr)}}.offset-heads-toy{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:oht-figure/inline-size}.offset-heads-toy :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .offset-heads-toy{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.offset-heads-toy{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.offset-heads-toy{--oht-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--oht-head1:var(--fig-salmon);--oht-head2:var(--fig-sage);--oht-surrogate:color-mix(in srgb, var(--gray) 70%, var(--darkgray) 30%);--oht-grid-bg:color-mix(in srgb, var(--lightgray) 18%, var(--light));--oht-grid-stroke:color-mix(in srgb, var(--gray) 32%, transparent);--oht-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--oht-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--oht-tab-active:color-mix(in srgb, var(--lightgray) 70%, var(--light))}:root[saved-theme=dark] .offset-heads-toy{--oht-head1:color-mix(in srgb, var(--fig-salmon) 78%, var(--lightgray));--oht-head2:color-mix(in srgb, var(--fig-sage) 78%, var(--lightgray));--oht-surrogate:var(--darkgray);--oht-grid-bg:color-mix(in srgb, var(--lightgray) 86%, var(--light));--oht-grid-stroke:color-mix(in srgb, var(--gray) 22%, transparent);--oht-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--oht-tab-border:var(--fig-stroke);--oht-tab-active:color-mix(in srgb, var(--lightgray) 88%, var(--dark))}.oht-panels{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1.1rem;display:grid}.oht-panel{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);border:0;flex-direction:column;gap:.55rem;min-width:0;padding:.85rem .9rem .9rem;display:flex}.oht-panel-head{color:var(--oht-note);align-items:center;gap:.45rem;font-size:.8rem;display:inline-flex}.oht-panel-title{color:var(--oht-note);font-size:.9rem;font-weight:600}.oht-panel-title .katex{color:inherit;font-size:1em}.oht-swatch{border-radius:50%;width:.65rem;height:.65rem;display:inline-block}.oht-swatch.oht-swatch--head1{background:var(--oht-head1)}.oht-swatch.oht-swatch--head2{background:var(--oht-head2)}.oht-swatch.oht-swatch--surrogate{background:var(--oht-surrogate)}.oht-grid{aspect-ratio:1;border-radius:var(--radius-none);background:var(--oht-grid-bg);--oht-u:.0187;width:100%;display:block}.oht-grid .oht-cell{stroke:var(--oht-grid-stroke);stroke-width:1px;vector-effect:non-scaling-stroke;transition:fill-opacity .14s ease-out}.oht-grid .oht-cell--head1{fill:var(--oht-head1)}.oht-grid .oht-cell--head2{fill:var(--oht-head2)}.oht-grid .oht-cell--surrogate{fill:var(--oht-surrogate)}.oht-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.oht-fo .katex{color:inherit;font-size:1em}.oht-fo .katex-display{margin:0}.oht-fo{color:var(--oht-note);font-size:calc(var(--oht-u,.0187) * var(--text-meta));line-height:1.2}.oht-fo.oht-fo--center{justify-content:center}.oht-fo.oht-fo--start{justify-content:flex-start}.oht-fo.oht-fo--end{justify-content:flex-end}.oht-fo.oht-fo--vert>*{white-space:nowrap;flex:none;transform:rotate(-90deg)}.oht-panel-formula{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 35%, transparent);font-size:var(--text-meta);color:var(--dark);justify-content:center;align-items:center;padding:.35rem .4rem;display:flex;overflow-x:auto}.oht-readout{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);border:0;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:1rem 1.5rem;margin-top:1.25rem;padding:1rem 1.1rem;display:grid}.oht-formula{grid-column:1/-1;overflow-x:auto}.oht-formula .katex-display{margin:0}.oht-stats{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.oht-stats>div{display:contents}.oht-stats dt,.oht-stats dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.oht-stats dt{color:var(--fig-note);font-weight:400}.oht-stats dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.oht-stats .katex{color:inherit;font-size:1em}.oht-stat-val{font-weight:600}.oht-stat-val .katex{color:inherit;font-size:1em}.oht-stat-val.oht-stat-val--big{font-size:var(--text-ui);color:var(--dark)}.oht-stat-val.oht-stat-val--mono{font-family:var(--codeFont);font-weight:500}.oht-note{color:var(--oht-note);font-size:var(--text-meta);margin:0;line-height:1.55}.oht-note .oht-math{color:var(--dark)}.oht-controls{grid-template-columns:minmax(0,1.4fr) minmax(0,1.4fr) minmax(0,auto);align-items:center;gap:1rem 1.5rem;margin-top:1.25rem;padding-top:1rem;display:grid}.oht-control{align-items:center;gap:.6rem;min-width:0;display:flex}.oht-control--slider .oht-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.oht-control--slider .oht-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.oht-control--slider .oht-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.oht-control--slider .oht-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.oht-control--slider .oht-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.oht-control--slider .oht-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.oht-control--slider .oht-slider:active::-webkit-slider-thumb{transform:scale(.96)}.oht-control--slider .oht-slider:active::-moz-range-thumb{transform:scale(.96)}.oht-control--actions{justify-content:flex-end}.oht-label{color:var(--oht-note);font-size:var(--text-meta);white-space:nowrap;align-items:center;gap:.3rem;display:inline-flex}.oht-slider-value{font-size:var(--text-meta);font-variant-numeric:tabular-nums;color:var(--dark);text-align:right;min-width:2rem;font-weight:600}.oht-slider-value .katex{color:inherit;font-size:1em}.oht-toggle{isolation:isolate;border:1px solid var(--oht-tab-border);border-radius:var(--radius-none);background:var(--oht-tab-surface);align-items:stretch;height:1.55rem;display:inline-flex;overflow:hidden}.oht-toggle-btn{appearance:none;box-sizing:border-box;background:var(--oht-tab-surface);height:100%;color:var(--darkgray);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;gap:.3rem;padding:0 .78rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}@media (hover:hover) and (pointer:fine){.oht-toggle-btn:not(:disabled):hover{background:var(--oht-tab-active);color:var(--dark)}}.oht-toggle-btn:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.oht-toggle-btn.is-active{background:var(--oht-tab-active);color:var(--dark)}.oht-toggle-btn .katex{color:inherit;font-size:.95em}.oht-btn{appearance:none;background:color-mix(in srgb, var(--light) 90%, var(--lightgray));color:var(--dark);font:inherit;font-size:var(--text-meta);border-radius:var(--radius-none);min-height:2.5rem;cursor:var(--cursor-pointer,pointer);border:0;padding:.35rem .95rem;font-weight:600;transition:background .12s ease-out,transform .12s ease-out}.oht-btn:hover{background:var(--light)}.oht-btn:active{transform:scale(.96)}.oht-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.oht-caption .oht-math{vertical-align:-.03em;margin:0 .22em}.oht-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.oht-math .katex{color:inherit;font-size:1em}@container oht-figure (min-width:761px){.oht-grid{--oht-u:.025}}@container oht-figure (min-width:640px) and (max-width:760px){.oht-grid{--oht-u:.015}}@container oht-figure (max-width:760px){.oht-panels,.oht-readout,.oht-controls{grid-template-columns:1fr}.oht-control--actions{justify-content:flex-start}}@container oht-figure (max-width:460px){.offset-heads-toy{padding:0}.oht-panel{padding:.7rem .7rem .75rem}.oht-grid{--oht-u:.035}}.packet-sniffer{content-visibility:auto;contain-intrinsic-size:auto 28rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:psn-figure/inline-size}.packet-sniffer :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .packet-sniffer{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.packet-sniffer{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.packet-sniffer{--psn-lit:color-mix(in srgb, var(--fig-salmon) 55%, var(--light));--psn-sniff:color-mix(in srgb, var(--lightgray) 35%, var(--light))}:root[saved-theme=dark] .packet-sniffer{--psn-lit:color-mix(in srgb, var(--fig-salmon) 32%, var(--lightgray));--psn-sniff:color-mix(in srgb, var(--gray) 40%, var(--lightgray))}.psn-svg{width:100%;max-width:40rem;margin:0 auto;display:block;overflow:visible}.psn-frame{fill:var(--fig-surface);stroke:var(--fig-frame-border);stroke-width:1px}.psn-div{stroke:var(--fig-stroke-soft);stroke-width:1px}.psn-sniff{fill:var(--psn-sniff);stroke:var(--fig-stroke);stroke-width:1px}.psn-box{fill:var(--light);stroke:var(--dark);stroke-width:1px}.psn-box--lit{fill:var(--psn-lit)}.psn-edge{fill:none;stroke:var(--fig-stroke);stroke-width:1.2px}.psn-edge--strong{stroke:var(--dark);stroke-width:1.5px}.psn-edge--tap{stroke:var(--dark);stroke-width:1.4px}.psn-arrowhead{fill:var(--dark)}.psn-tier{fill:var(--fig-note);font-family:var(--bodyFont);font-size:12px}.psn-label{fill:var(--dark);font-family:var(--codeFont);font-size:11px}.psn-sub,.psn-tap{fill:var(--fig-note);font-family:var(--codeFont);font-size:10px}.psn-math{color:inherit;display:inline-block}.psn-math .katex{color:inherit;font-size:.95em}.psn-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.paged-kv-table{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:pkt-figure/inline-size}.paged-kv-table :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .paged-kv-table{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.paged-kv-table{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.paged-kv-table{--pkt-stroke-soft:color-mix(in srgb, var(--gray) 35%, transparent);--pkt-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--pkt-card-bg:color-mix(in srgb, var(--light) 96%, transparent);--pkt-salmon:var(--fig-salmon);--pkt-free-bg:color-mix(in srgb, var(--lightgray) 45%, var(--light))}:root[saved-theme=dark] .paged-kv-table{--pkt-card-bg:color-mix(in srgb, var(--lightgray) 55%, var(--light))}.paged-kv-table .katex{color:inherit;font-size:1em}.pkt-stage{grid-template-columns:minmax(0,1.05fr) minmax(min-content,.85fr) minmax(min-content,1.1fr);align-items:start;gap:1.25rem;max-width:76rem;margin-inline:auto;display:grid}.pkt-col{flex-direction:column;gap:.75rem;min-width:0;display:flex}.pkt-col-head{color:var(--pkt-note-fg);font-size:.9rem;font-weight:600}.pkt-col-head .katex{color:inherit;font-size:1em}.pkt-seqs{flex-direction:column;gap:.85rem;display:flex}.pkt-seq{border-radius:var(--radius-none);border:1px solid var(--lightgray);background:var(--pkt-card-bg);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.65rem .75rem;display:grid}.pkt-seq-title{color:var(--pkt-note-fg);font-size:.82rem;font-weight:500}.pkt-seq-blocks{flex-direction:column;grid-column:1/-1;align-items:flex-start;gap:.4rem;display:flex}.pkt-lblock{border-radius:var(--radius-none);background:var(--pkt-card-bg);color:var(--dark);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);text-align:left;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;padding:.4rem .55rem;font-size:.82rem;transition:background .16s,transform .16s;display:grid}.pkt-lblock:hover{transform:translate(1px)}.pkt-lblock[data-pkt-mapped=false]{opacity:.55;background:var(--pkt-free-bg)}.pkt-lblock.is-active{background:color-mix(in srgb, var(--pkt-salmon) 24%, var(--pkt-card-bg));transform:translate(2px)}.pkt-lblock-tag{font-variant-numeric:tabular-nums;font-size:.84rem;font-weight:600}.pkt-lblock-cells{gap:2px;display:inline-flex}.pkt-tok{border-radius:var(--radius-none);background:color-mix(in srgb, var(--pkt-stroke-soft) 65%, transparent);width:8px;height:14px;transition:background .16s;display:inline-block}.pkt-tok.is-filled{background:var(--dark)}.pkt-lblock-meta{color:var(--pkt-note-fg);font-variant-numeric:tabular-nums;font-size:.72rem;font-family:var(--codeFont,monospace)}.pkt-append{border-radius:var(--radius-none);color:var(--pkt-note-fg);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;grid-area:1/2;justify-self:end;padding:.25rem .65rem;font-size:.75rem;transition:background .16s,color .16s}.pkt-append:hover{background:color-mix(in srgb, var(--lightgray) 60%, var(--light));color:var(--dark)}.pkt-append:disabled{opacity:.35;cursor:var(--cursor-not-allowed,not-allowed)}.pkt-pt{border-collapse:collapse;width:100%;font-family:var(--bodyFont);background:var(--fig-grid-cell);border:1px solid var(--fig-grid-line);border-radius:var(--radius-none);margin:0;font-size:.8rem}.pkt-pt th,.pkt-pt td{border:1px solid var(--fig-grid-line);text-align:left;padding:.4rem .6rem}.pkt-pt thead th{font-family:var(--codeFont);color:var(--fig-note);background:var(--fig-grid-cell);font-size:.72rem;font-weight:400}.pkt-pt-row{transition:background .16s}.pkt-pt-row.is-active{background:color-mix(in srgb, var(--lightgray) 50%, transparent)}.pkt-pt-key,.pkt-pt-val{font-variant-numeric:tabular-nums;font-family:var(--codeFont,monospace)}.pkt-pt-id{font-weight:600}.pkt-pt-arrow{color:var(--pkt-note-fg);text-align:center;width:1.4rem}.pkt-pblocks{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:1px;list-style:none;display:grid}.pkt-pblock{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;font-family:var(--bodyFont);border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;margin:0;padding:.4rem .55rem;font-size:.78rem;transition:background-color .22s;display:grid}.pkt-pblock--free{background:var(--pkt-free-bg);color:var(--pkt-note-fg)}.pkt-pblock.is-landing{animation:.22s cubic-bezier(.23,1,.32,1) pkt-land}.pkt-pblock-idx{font-variant-numeric:tabular-nums;color:var(--pkt-note-fg);width:1.1rem;font-weight:700}.pkt-pblock-label{font-variant-numeric:tabular-nums;font-family:var(--codeFont,monospace);color:var(--dark)}.pkt-evict{border-radius:var(--radius-none);font-family:var(--bodyFont);color:var(--pkt-note-fg);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:.15rem .5rem;font-size:.7rem;transition:background .16s,color .16s}.pkt-evict:hover:not(:disabled){background:color-mix(in srgb, var(--lightgray) 60%, var(--light));color:var(--dark)}.pkt-evict:disabled{opacity:.25;cursor:var(--cursor-not-allowed,not-allowed)}.pkt-side{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:.85rem;max-width:76rem;margin:1.25rem auto 0;display:grid}.pkt-card{border-radius:var(--radius-none);background:var(--pkt-card-bg);border:0;flex-direction:column;gap:.5rem;padding:.75rem .95rem;display:flex}.pkt-card h4{color:var(--pkt-note-fg);margin:0;font-size:.9rem;font-weight:600}.pkt-card h4 .katex{color:inherit;font-size:1em}.pkt-card--reset{justify-content:center;align-items:center;padding:.5rem}.pkt-card-note{color:var(--pkt-note-fg);margin:0;font-size:.78rem;line-height:1.45}.pkt-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.pkt-readout>div{display:contents}.pkt-readout dt,.pkt-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.pkt-readout dt{color:var(--fig-note);font-weight:400}.pkt-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.pkt-readout .katex{color:inherit;font-size:1em}.pkt-sep{color:var(--pkt-note-fg)}.pkt-muted{color:var(--pkt-note-fg);font-weight:500}.pkt-val{font-variant-numeric:tabular-nums;font-weight:600}.pkt-val--big{font-size:.95rem}.pkt-val--muted{color:var(--pkt-note-fg);font-weight:500}.pkt-reset{border-radius:var(--radius-none);color:var(--pkt-note-fg);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);background:0 0;border:0;padding:.4rem .85rem;font-size:.78rem;transition:background .16s,color .16s}.pkt-reset:hover{background:color-mix(in srgb, var(--lightgray) 60%, var(--light));color:var(--dark)}.pkt-math{color:inherit;display:inline-block}.pkt-math .katex{color:inherit;font-size:.92em}.pkt-math--display{margin:0;display:block}.pkt-math--display .katex-display{text-align:left;margin:0}.pkt-math--display .katex-display>.katex{text-align:left}.pkt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;max-width:76rem;margin-inline:auto;line-height:1.45;display:block}.pkt-caption .pkt-math{vertical-align:-.03em;margin:0 .22em}@keyframes pkt-land{0%{opacity:.4;transform:translateY(-4px)}to{opacity:1;transform:none}}@container pkt-figure (max-width:820px){.pkt-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pkt-col:nth-child(3){grid-column:1/-1}.pkt-pblocks{grid-template-columns:repeat(4,minmax(0,1fr))}.pkt-side{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@container pkt-figure (max-width:540px){.paged-kv-table{padding:0}.pkt-stage{grid-template-columns:1fr}.pkt-pblocks{grid-template-columns:repeat(2,minmax(0,1fr))}.pkt-side{grid-template-columns:1fr}.pkt-seq-blocks{align-items:stretch}.pkt-lblock{grid-template-columns:auto 1fr}.pkt-lblock-meta{text-align:right;grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.pkt-pblock.is-landing{animation:none}}.param-decomposition{content-visibility:auto;contain-intrinsic-size:auto 32rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:apd-figure/inline-size}.param-decomposition :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .param-decomposition{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.param-decomposition{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.param-decomposition{--apd-fill:var(--fig-salmon);--apd-on:var(--fig-grid-selected)}:root[saved-theme=dark] .param-decomposition{--apd-fill:color-mix(in srgb, var(--fig-salmon) 55%, var(--lightgray));--apd-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.apd-controls{margin-bottom:.85rem}.apd-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.apd-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.apd-segments{grid-auto-flow:column;width:fit-content}.apd-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:2rem;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .55rem;font-size:.72rem;display:inline-flex}.apd-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.apd-segment:has(input:checked){background:var(--apd-on);color:var(--dark)}.apd-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:2px}.apd-flow{flex-wrap:wrap;align-items:flex-start;gap:.75rem 1rem;display:flex}.apd-stage{flex-direction:column;gap:.45rem;min-width:0;display:flex}.apd-stage--grow{flex:12rem}.apd-arrow{color:var(--fig-note);font-family:var(--codeFont);white-space:nowrap;align-self:center;font-size:.72rem}.apd-mats{gap:.45rem;display:flex}.apd-mat{grid-template-columns:repeat(3,.7rem);gap:2px;display:grid}.apd-vec{grid-template-columns:.55rem;gap:2px;display:grid}.apd-cols{overflow-x:auto}.apd-colset{align-items:flex-start;gap:.35rem;display:flex}.apd-colset[data-apd-off=true]{display:none}.apd-col{grid-template-columns:.45rem;gap:1px;display:grid}.apd-cell{border:1px solid var(--fig-stroke-soft);background:color-mix(in srgb, var(--apd-fill) calc(var(--apd-a) * 100%), var(--light));box-sizing:border-box;width:.7rem;height:.7rem}.apd-cell--tall{width:.45rem;height:.45rem}.apd-cell--zero{background:var(--light)}.apd-label{color:var(--fig-note);margin:0;font-size:.72rem}.apd-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.apd-readout>div{display:contents}.apd-readout dt,.apd-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.apd-readout dt{color:var(--fig-note);font-weight:400}.apd-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.apd-readout .katex{color:inherit;font-size:1em}.apd-readout{margin:.9rem 0 0}.apd-math{color:inherit;display:inline-block}.apd-math .katex{color:inherit;font-size:.95em}.apd-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.patricia-trie{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ptr-figure/inline-size}.patricia-trie :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .patricia-trie{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.patricia-trie{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.patricia-trie{--ptr-lit:var(--fig-salmon);--ptr-path:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--ptr-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .patricia-trie{--ptr-lit:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--ptr-path:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--ptr-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.ptr-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.ptr-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.ptr-segments{grid-template-columns:repeat(4,minmax(0,1fr));min-width:0}.ptr-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;text-overflow:ellipsis;border:0;align-items:center;margin:0;padding:.28rem .5rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:flex;overflow:hidden}.ptr-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.ptr-segment:has(input:checked){background:var(--ptr-segment-on);color:var(--dark)}.ptr-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.ptr-segment:hover{color:var(--dark)}}.ptr-state[hidden]{display:none}.ptr-svg{width:100%;max-width:34rem;margin:.9rem auto 0;display:block;overflow:visible}.ptr-svg text{font-family:var(--codeFont);font-size:10.5px}.ptr-svg .ptr-edge{stroke:var(--fig-stroke);stroke-width:1.2px}.ptr-svg .ptr-edge[data-state=path],.ptr-svg .ptr-edge[data-state=lit]{stroke:var(--dark);stroke-width:2px}.ptr-svg .ptr-node{fill:var(--dark)}.ptr-svg .ptr-node--root{fill:var(--light);stroke:var(--dark);stroke-width:1.4px}.ptr-svg .ptr-root-label{fill:var(--fig-note);font-size:9.5px}.ptr-svg .ptr-key rect,.ptr-svg .ptr-label rect{fill:var(--light);stroke:var(--dark);stroke-width:1.1px}.ptr-svg .ptr-key text,.ptr-svg .ptr-label text{fill:var(--dark)}.ptr-svg .ptr-label[data-state=path] rect{fill:var(--ptr-path)}.ptr-svg .ptr-label[data-state=lit] rect,.ptr-svg .ptr-key[data-state=lit] rect{fill:var(--ptr-lit)}.ptr-say{min-height:2.3em;color:var(--dark);margin:.6rem 0 0;font-size:.8rem;line-height:1.4}.ptr-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.ptr-readout>div{display:contents}.ptr-readout dt,.ptr-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.ptr-readout dt{color:var(--fig-note);font-weight:400}.ptr-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.ptr-readout .katex{color:inherit;font-size:1em}.ptr-readout{margin-top:.5rem}.ptr-math{color:inherit;display:inline-block}.ptr-math .katex{color:inherit;font-size:.95em}.ptr-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.ptr-segment{transition:none}}@container ptr-figure (max-width:460px){.ptr-segments{grid-template-columns:repeat(2,minmax(0,1fr))}}.pole-response{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:prs-figure/inline-size}.pole-response :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .pole-response{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.pole-response{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.pole-response{--prs-lit:var(--fig-salmon);--prs-ref:var(--fig-sage);--prs-stable:color-mix(in srgb, var(--fig-sage) 16%, var(--light));--prs-unstable:color-mix(in srgb, var(--lightgray) 70%, var(--light));--prs-rise:color-mix(in srgb, var(--gray) 16%, transparent);--prs-band:color-mix(in srgb, var(--gray) 26%, transparent);--prs-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .pole-response{--prs-stable:color-mix(in srgb, var(--fig-sage) 14%, var(--light));--prs-unstable:color-mix(in srgb, var(--lightgray) 80%, var(--light));--prs-rise:color-mix(in srgb, var(--gray) 22%, transparent);--prs-band:color-mix(in srgb, var(--gray) 40%, transparent);--prs-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--prs-lit:color-mix(in srgb, var(--fig-salmon) 50%, var(--lightgray));--prs-ref:color-mix(in srgb, var(--fig-sage) 45%, var(--lightgray))}.prs-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;margin-bottom:.9rem;display:flex}.prs-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.prs-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.prs-segments{grid-auto-flow:column;min-width:0}.prs-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.prs-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.prs-segment:has(input:checked){background:var(--prs-segment-on);color:var(--dark)}.prs-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}@media (hover:hover) and (pointer:fine){.prs-segment:hover{color:var(--dark)}}.prs-gain{flex:20rem;grid-template-columns:max-content minmax(8rem,1fr) max-content;align-items:center;gap:.5rem .75rem;min-width:0;display:grid}.prs-gain-label{color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap}.prs-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.prs-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.prs-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.prs-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.prs-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.prs-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.prs-slider:active::-webkit-slider-thumb{transform:scale(.96)}.prs-slider:active::-moz-range-thumb{transform:scale(.96)}.prs-button{border:1px solid var(--darkgray);border-radius:var(--radius-none);background:var(--light);min-height:1.75rem;color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);cursor:var(--cursor-pointer,pointer);padding:.2rem .6rem;transition:background-color .14s}.prs-button:focus-visible{outline:2px solid var(--dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.prs-button:hover{background:var(--fig-grid-selected)}}.prs-loop{color:var(--fig-note);font-size:var(--text-meta);margin:0 0 .6rem;display:none}.pole-response[data-prs-comp=none] [data-prs-loop=none],.pole-response[data-prs-comp=integrator] [data-prs-loop=integrator],.pole-response[data-prs-comp=pi] [data-prs-loop=pi]{display:block}.prs-panels{grid-template-columns:minmax(0,250fr) minmax(0,342fr);align-items:start;gap:.75rem;display:grid}.pole-response[data-prs-mode=locus] .prs-panels{grid-template-columns:minmax(0,304fr) minmax(0,342fr)}.prs-plane,.prs-plot{--prs-u:.8;width:100%;height:auto;display:block;overflow:visible}.prs-plane :is(line,path,circle,rect,polyline,polygon),.prs-plot :is(line,path,circle,rect,polyline,polygon){vector-effect:non-scaling-stroke}.prs-plane text,.prs-plot text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.prs-plane .prs-tick text,.prs-plot .prs-tick text{fill:var(--darkgray);font-size:calc(var(--prs-u) * var(--text-meta))}.prs-plane .prs-grid line,.prs-plot .prs-grid line{stroke:var(--fig-line);stroke-width:1px}.prs-plane .prs-frame,.prs-plot .prs-frame{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1px}.prs-plane{touch-action:pan-y;cursor:var(--cursor-crosshair,crosshair)}.prs-plane .prs-region--stable{fill:var(--prs-stable)}.prs-plane .prs-region--unstable{fill:var(--prs-unstable)}.prs-plane .prs-region-label text{fill:var(--fig-note);font-size:calc(var(--prs-u) * var(--text-meta))}.prs-plane .prs-axis{stroke:var(--fig-stroke);stroke-width:1px}.prs-plane .prs-axis--region{stroke:var(--dark);stroke-width:2px}.prs-plane .prs-guide{stroke:var(--fig-stroke);stroke-width:1px}.prs-plane .prs-geo{stroke:var(--dark);stroke-width:1px}.prs-plane .prs-proj,.prs-plane .prs-angle{stroke:var(--fig-stroke-soft);stroke-width:1px}.prs-plane .prs-arc{fill:none;stroke:var(--dark);stroke-width:1px}.prs-plane .prs-mark .prs-pole{fill:var(--prs-lit);stroke:var(--dark);stroke-width:1px}.prs-plane .prs-mark--ref .prs-pole{fill:var(--prs-ref)}.prs-plane .prs-x{fill:none;stroke:var(--dark);stroke-width:1.25px;pointer-events:none}.prs-plane .prs-handle{touch-action:none;cursor:var(--cursor-grab,grab);outline:none}.prs-plane .prs-handle .prs-hit{fill:#0000}.prs-plane .prs-handle .prs-ring{fill:none;stroke:none}.prs-plane .prs-handle .prs-pole{fill:var(--prs-lit);stroke:var(--dark);stroke-width:1px}.prs-plane .prs-handle:focus-visible .prs-ring{stroke:var(--dark);stroke-width:2px}.prs-plane .prs-branch{fill:none;stroke:var(--dark);stroke-width:1.5px;stroke-linejoin:round}.prs-plane .prs-open{fill:none;stroke:var(--dark);stroke-width:1.5px}.prs-plane .prs-zero,.prs-plane .prs-point{fill:var(--light);stroke:var(--dark);stroke-width:1.25px}.prs-plane .prs-closed{fill:var(--prs-lit);stroke:var(--dark);stroke-width:1px;pointer-events:none}.prs-plane .prs-locus{display:none}.pole-response[data-prs-comp=none] [data-prs-locus=none],.pole-response[data-prs-comp=integrator] [data-prs-locus=integrator],.pole-response[data-prs-comp=pi] [data-prs-locus=pi]{display:inline}.prs-plot .prs-band{fill:var(--prs-band)}.prs-plot .prs-rise{fill:var(--prs-rise)}.prs-plot .prs-final{stroke:var(--fig-stroke);stroke-width:1px}.prs-plot .prs-curve,.prs-plot .prs-ref-curve,.prs-plot .prs-env{fill:none;stroke-linejoin:round}.prs-plot .prs-curve{stroke:var(--dark);stroke-width:1.75px}.prs-plot .prs-ref-curve{stroke:var(--gray);stroke-width:1.5px}.prs-plot .prs-env{stroke:var(--fig-stroke-soft);stroke-width:1px}.prs-plot .prs-drop{stroke:var(--fig-stroke);stroke-width:1px}.prs-plot .prs-dot{fill:var(--light);stroke:var(--dark);stroke-width:1.25px}.prs-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.prs-fo .katex{color:inherit;font-size:1em}.prs-fo .katex-display{margin:0}.prs-fo{font-size:calc(var(--prs-u,.8) * var(--text-meta));justify-content:center}.prs-fo--end{justify-content:flex-end}.prs-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:repeat(2,minmax(0,1fr) max-content);gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.prs-readout>div{display:contents}.prs-readout dt,.prs-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.prs-readout dt{color:var(--fig-note);font-weight:400}.prs-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.prs-readout .katex{color:inherit;font-size:1em}.prs-readout{margin-top:.9rem}.prs-math{color:inherit;display:inline-block}.prs-math .katex{color:inherit;font-size:.95em}.prs-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.prs-segment,.prs-button{transition:none}}@container prs-figure (max-width:560px){.prs-panels,.pole-response[data-prs-mode=locus] .prs-panels{grid-template-columns:minmax(0,1fr)}.prs-plane{max-width:24rem;margin:0 auto}.prs-plane,.prs-plot{--prs-u:1}.prs-readout{grid-template-columns:repeat(2,minmax(0,1fr))}.prs-readout dd{overflow-wrap:anywhere}.prs-gain{grid-template-columns:max-content minmax(0,1fr)}.prs-button{grid-column:1/-1;justify-self:start}.prs-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.prs-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}}@media (max-width:480px){.pole-response{padding:1rem .75rem}}.positional-encoding-comparison{content-visibility:auto;contain-intrinsic-size:auto 38rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:pec-figure/inline-size}.positional-encoding-comparison :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .positional-encoding-comparison{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.positional-encoding-comparison{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.positional-encoding-comparison{--pec-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--pec-div:color-mix(in srgb, var(--gray) 28%, transparent);--pec-pos:var(--fig-salmon);--pec-neg:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);--pec-neutral:var(--fig-sage);--pec-grid:color-mix(in srgb, var(--gray) 24%, transparent);--pec-panel-bg:color-mix(in srgb, var(--light) 96%, transparent);--pec-tab-surface:var(--fig-tab-surface);--pec-tab-border:var(--fig-tab-border);--pec-tab-active:color-mix(in srgb, var(--pec-pos) 24%, var(--pec-tab-surface))}:root[saved-theme=dark] .positional-encoding-comparison{--pec-pos:color-mix(in srgb, var(--fig-salmon) 65%, var(--lightgray));--pec-neutral:color-mix(in srgb, var(--fig-sage) 55%, var(--lightgray));--pec-grid:color-mix(in srgb, var(--gray) 18%, transparent);--pec-panel-bg:color-mix(in srgb, var(--lightgray) 55%, var(--light));--pec-tab-active:color-mix(in srgb, var(--pec-pos) 18%, var(--pec-tab-surface))}.pec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.pec-panel{border-radius:var(--radius-none);background:var(--pec-panel-bg);border:0;flex-direction:column;gap:.55rem;min-width:0;padding:.85rem .9rem .95rem;display:flex}.pec-panel-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.pec-panel-title{font-family:var(--codeFont);color:var(--dark);letter-spacing:0;font-size:.82rem;font-weight:600}.pec-panel-tag{font-family:var(--codeFont);color:var(--pec-note);border-radius:var(--radius-none);white-space:nowrap;padding:.1rem .45rem;font-size:.72rem}.pec-panel-vis{box-sizing:border-box;aspect-ratio:1;border-radius:var(--radius-none);background:var(--light);border:0;width:100%;padding:.3rem;position:relative;overflow:hidden}.pec-panel-vis svg{width:100%;height:100%;display:block}.pec-cell{stroke:var(--pec-grid);stroke-width:.02px}.pec-clock{fill:none;stroke:var(--pec-div);stroke-width:.04px}.pec-clock-hand{stroke:var(--pec-pos);stroke-width:.085px;stroke-linecap:round}.pec-clock-bg{fill:color-mix(in srgb, var(--pec-neutral) 22%, transparent)}.pec-axis-label{color:var(--pec-note);font-size:.72rem;font-family:var(--codeFont);justify-content:space-between;display:flex}.pec-axis-label span{line-height:1}.pec-panel-math{color:var(--pec-note);padding-top:.45rem;font-size:.78rem;line-height:1.5}.pec-panel-math .katex-display{margin:.15rem 0}.pec-panel-math .katex{color:var(--dark);font-size:.95em}.pec-panel-caption{color:var(--pec-note);font-size:.78rem;line-height:1.45}.pec-logit-mode{background:color-mix(in srgb, var(--light) 92%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;color:var(--dark);justify-content:center;align-items:center;padding:.65rem;font-size:.78rem;line-height:1.5;display:none;position:absolute;inset:0}.pec-logit-mode .katex{font-size:.95em}.positional-encoding-comparison[data-pec-logit=true] .pec-logit-mode{display:flex}.pec-controls{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem 1.5rem;margin-top:1.25rem;padding-top:1rem;display:grid}.pec-control{align-items:center;gap:.6rem;min-width:0;display:flex}.pec-label{color:var(--pec-note);white-space:nowrap;align-items:center;gap:.3rem;font-size:.85rem;display:inline-flex}.pec-tablist{isolation:isolate;border:1px solid var(--pec-tab-border);border-radius:var(--radius-none);background:var(--pec-tab-surface);align-items:stretch;height:1.7rem;display:inline-flex;overflow:hidden}.pec-tab{box-sizing:border-box;background:var(--pec-tab-surface);min-width:2.4rem;height:100%;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-variant-numeric:tabular-nums;white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 .85rem;font-size:.72rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}.pec-tab:not(:disabled):hover{color:var(--dark)}.pec-tab:focus-visible{outline:2px solid color-mix(in srgb, var(--secondary) 50%, transparent);outline-offset:-2px}.pec-tab[aria-selected=true],.pec-tab.is-active{background:var(--pec-tab-active);color:var(--dark)}.pec-switch{cursor:var(--cursor-pointer,pointer);color:var(--pec-note);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.85rem;display:inline-flex}.pec-switch input{opacity:0;pointer-events:none;position:absolute}.pec-switch-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 60%, transparent);width:2.2rem;height:1.15rem;transition:background .14s ease-out;position:relative}.pec-switch-thumb{border-radius:var(--radius-none);background:var(--light);width:.85rem;height:.85rem;transition:left .14s ease-out;position:absolute;top:50%;left:.15rem;transform:translateY(-50%)}.pec-switch input:checked+.pec-switch-track{background:color-mix(in srgb, var(--pec-pos) 55%, var(--light))}.pec-switch input:checked+.pec-switch-track .pec-switch-thumb{left:1.2rem}.pec-extrap{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);color:var(--pec-note);border:0;margin-top:1rem;padding:.85rem 1rem;font-size:.82rem;line-height:1.55}.pec-extrap dl{grid-template-columns:minmax(6rem,auto) minmax(0,1fr);gap:.25rem .75rem;margin:.5rem 0 0;display:grid}.pec-extrap dt{color:var(--dark);font-variant-numeric:tabular-nums;font-weight:600}.pec-extrap dd{margin:0}.pec-extrap-title{color:var(--dark);font-size:.88rem;font-weight:600}.pec-caption{color:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);text-align:center;margin-top:.9rem;font-size:.85rem}@container pec-figure (max-width:720px){.pec-controls{grid-template-columns:1fr}.pec-extrap dl{grid-template-columns:1fr;gap:.15rem 0}}@container pec-figure (max-width:520px){.pec-grid{grid-template-columns:minmax(0,1fr)}.positional-encoding-comparison{padding:0}}.zoomable.is-zoomed>.zoomable-content>.positional-encoding-comparison{justify-content:flex-start;max-width:62rem;margin-inline:auto}.zoomable.is-zoomed>.zoomable-content>.positional-encoding-comparison .pec-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,72vh);margin-inline:auto}.priority-protocol-timeline{content-visibility:auto;contain-intrinsic-size:auto 42rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ppt-figure/inline-size}.priority-protocol-timeline :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .priority-protocol-timeline{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.priority-protocol-timeline{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.priority-protocol-timeline{--ppt-run:color-mix(in srgb, var(--lightgray) 70%, var(--light));--ppt-held:color-mix(in srgb, var(--fig-sage) 80%, var(--light));--ppt-inherit:color-mix(in srgb, var(--fig-salmon) 85%, var(--light));--ppt-segment-on:var(--fig-grid-selected)}.priority-protocol-timeline [hidden]{display:none}:root[saved-theme=dark] .priority-protocol-timeline{--ppt-run:color-mix(in srgb, var(--gray) 30%, var(--lightgray));--ppt-held:color-mix(in srgb, var(--fig-sage) 34%, var(--lightgray));--ppt-inherit:color-mix(in srgb, var(--fig-salmon) 38%, var(--lightgray));--ppt-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.ppt-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.ppt-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.ppt-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.ppt-segments{grid-auto-flow:column;min-width:0}.ppt-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex;position:relative}.ppt-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.ppt-segment:hover{color:var(--dark)}}.ppt-segment:has(input:checked){background:var(--ppt-segment-on);color:var(--dark)}.ppt-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.ppt-note,.ppt-rule{color:var(--fig-note);text-wrap:pretty;margin:.75rem 0 0;font-size:.78rem;line-height:1.45}.ppt-rule{color:var(--dark);margin-top:.4rem}.ppt-scroll{margin:.5rem 0 0;overflow:auto hidden}.ppt-svg{width:100%;min-width:30rem;display:block}.ppt-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.ppt-svg .ppt-task{fill:var(--dark);font-size:11px;font-weight:600}.ppt-svg .ppt-task-sub{font-size:8px}.ppt-svg .ppt-baseline,.ppt-svg .ppt-axis{stroke:var(--fig-stroke-soft);stroke-width:1px}.ppt-svg .ppt-axis{stroke:var(--fig-stroke)}.ppt-svg .ppt-tick{stroke:var(--fig-stroke);stroke-width:1px}.ppt-svg .ppt-axis-label{fill:var(--fig-note);font-size:8.5px}.ppt-svg .ppt-release{fill:var(--dark)}.ppt-svg .ppt-seg{stroke:var(--fig-stroke);stroke-width:.8px}.ppt-svg .ppt-seg--run{fill:var(--ppt-run)}.ppt-svg .ppt-seg--held{fill:var(--ppt-held)}.ppt-svg .ppt-seg--inherit{fill:var(--ppt-inherit);stroke:var(--dark)}.ppt-svg .ppt-prio{fill:var(--dark);pointer-events:none;font-size:9px}.ppt-svg .ppt-wait{fill:none;stroke:var(--dark);stroke-width:.8px}.ppt-svg .ppt-mark line{stroke:var(--dark);stroke-width:1.2px}.ppt-svg .ppt-mark text{fill:var(--dark);font-size:8px}.ppt-svg .ppt-mark--wait text{fill:var(--fig-note)}.ppt-svg .ppt-deadlock line{stroke:var(--dark);stroke-width:1.4px}.ppt-svg .ppt-deadlock text{fill:var(--dark);font-size:9px;font-weight:600}.ppt-key{color:var(--fig-note);flex-wrap:wrap;gap:.3rem 1rem;margin:.5rem 0 0;padding:0;font-size:.72rem;list-style:none;display:flex}.ppt-key li{align-items:center;gap:.35rem;margin:0;display:inline-flex}.ppt-swatch{box-sizing:border-box;border:1px solid var(--fig-stroke);width:.9rem;height:.6rem;display:inline-block}.ppt-swatch--run{background:var(--ppt-run)}.ppt-swatch--held{background:var(--ppt-held)}.ppt-swatch--inherit{background:var(--ppt-inherit);border-color:var(--dark)}.ppt-swatch--wait{border-color:var(--dark);height:.3rem}.ppt-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:.9rem 0 0;font-size:.74rem}.ppt-table th,.ppt-table td{border:1px solid var(--fig-grid-line);text-align:left;vertical-align:baseline;padding:.28rem .45rem;line-height:1.35}.ppt-table thead th{color:var(--fig-note);font-weight:400}.ppt-table tbody td{color:var(--dark);font-family:var(--codeFont)}.ppt-table .ppt-by,.ppt-table .ppt-outcome{font-family:inherit}.ppt-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.ppt-readout>div{display:contents}.ppt-readout dt,.ppt-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.ppt-readout dt{color:var(--fig-note);font-weight:400}.ppt-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.ppt-readout .katex{color:inherit;font-size:1em}.ppt-readout{margin-top:.9rem}.ppt-math{color:inherit;display:inline-block}.ppt-math .katex{color:inherit;font-size:.95em}.ppt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.ppt-segment{transition:none}}@container ppt-figure (max-width:480px){.ppt-segments{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.ppt-segment{white-space:normal;text-align:center;padding:.28rem .3rem}.ppt-table{font-size:.68rem}.ppt-table th,.ppt-table td{padding:.24rem .3rem}}.radix-prefix-tree{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rpt-figure/inline-size}.radix-prefix-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .radix-prefix-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.radix-prefix-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.radix-prefix-tree{--rpt-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--rpt-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--rpt-node-bg:color-mix(in srgb, var(--lightgray) 55%, var(--light));--rpt-match:var(--fig-salmon);--rpt-match-bg:color-mix(in srgb, var(--fig-salmon) 30%, var(--light));--rpt-new:var(--fig-sage);--rpt-new-bg:color-mix(in srgb, var(--fig-sage) 32%, var(--light));--rpt-evict-fg:color-mix(in srgb, var(--gray) 78%, transparent)}:root[saved-theme=dark] .radix-prefix-tree{--rpt-match-bg:color-mix(in srgb, var(--fig-salmon) 18%, var(--lightgray));--rpt-new-bg:color-mix(in srgb, var(--fig-sage) 20%, var(--lightgray));--rpt-evict-fg:color-mix(in srgb, var(--gray) 50%, transparent)}.rpt-stage{grid-template-columns:minmax(180px,.85fr) minmax(0,2fr) minmax(190px,1fr);align-items:stretch;gap:1.25rem;display:grid}.rpt-prompts{flex-direction:column;gap:.75rem;min-width:0;padding:.75rem .9rem;display:flex}.rpt-card-title{color:var(--rpt-note-fg);margin:0;font-size:.9rem;font-weight:600}.rpt-card-title .katex,.rpt-card>h4 .katex{color:inherit;font-size:1em}.rpt-prompt-list{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;gap:1px;margin:0;padding:1px;list-style:none;display:grid}.rpt-prompt-list>li{min-width:0;margin:0;display:flex}.rpt-prompt{border-radius:var(--radius-none);background:var(--fig-grid-cell);width:100%;min-width:0;color:var(--dark);font-family:var(--bodyFont);text-align:left;cursor:var(--cursor-pointer,pointer);border:0;flex-direction:column;align-items:flex-start;gap:.18rem;margin:0;padding:.55rem .7rem;font-size:.82rem;transition:background-color .14s;display:flex}@media (hover:hover) and (pointer:fine){.rpt-prompt:hover{background:var(--fig-grid-selected)}}.rpt-prompt:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.rpt-prompt.is-active{background:var(--rpt-match-bg)}.rpt-reset{border-radius:var(--radius-none);border:1px solid var(--gray);color:var(--rpt-note-fg);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);background:0 0;align-self:flex-start;padding:.32rem .7rem;font-size:.78rem;transition:background .16s,color .16s}.rpt-reset:hover{background:color-mix(in srgb, var(--rpt-new) 16%, var(--light));color:var(--dark)}.rpt-canvas{justify-content:center;align-items:center;min-width:0;display:flex}.rpt-svg{aspect-ratio:680/490;width:100%;height:auto;display:block}.rpt-svg .rpt-edge{stroke:var(--rpt-stroke-soft);stroke-width:1.2px;fill:none;transition:stroke .22s,stroke-width .22s,opacity .22s;transition-delay:var(--rpt-delay,0s)}.rpt-svg .rpt-edge.is-match{stroke:var(--rpt-match);stroke-width:1.8px}.rpt-svg .rpt-edge.is-evicted{stroke:var(--rpt-evict-fg);opacity:.5}.rpt-svg .rpt-edge--new{stroke:var(--rpt-new);stroke-width:1.6px;opacity:0;transition:opacity .2s;transition-delay:var(--rpt-delay,0s)}.rpt-svg .rpt-edge--new.is-visible{opacity:1}.rpt-svg .rpt-edge-label{transition:opacity .22s;transition-delay:var(--rpt-delay,0s);overflow:visible}.rpt-svg .rpt-edge-label--new{opacity:0}.rpt-svg .rpt-edge-label--new.is-visible{opacity:1}.rpt-svg .rpt-node{transition:opacity .22s,filter .22s}.rpt-svg .rpt-node-shape{fill:var(--rpt-node-bg);stroke:var(--rpt-stroke-soft);stroke-width:1px;transition:fill .22s,stroke .22s,stroke-width .22s,filter .22s;transition-delay:var(--rpt-delay,0s)}.rpt-svg .rpt-node-label{overflow:visible}.rpt-svg .rpt-node.is-match .rpt-node-shape{fill:var(--rpt-match-bg);stroke:var(--rpt-match);stroke-width:1.5px}.rpt-svg .rpt-node.is-pinned .rpt-node-shape{stroke:var(--rpt-match);stroke-width:1.5px}.rpt-svg .rpt-node.is-evicted{opacity:.35}.rpt-svg .rpt-node.is-evicted .rpt-node-shape{fill:#0000;stroke:var(--rpt-evict-fg)}.rpt-svg .rpt-node.is-evicted .rpt-node-label .rpt-fo{color:var(--rpt-evict-fg)}.rpt-svg .rpt-node--new{opacity:0;transition-delay:var(--rpt-delay,0s)}.rpt-svg .rpt-node--new.is-visible{opacity:1}.rpt-svg .rpt-node--new .rpt-node-shape{fill:var(--rpt-new-bg);stroke:var(--rpt-new);stroke-width:1.5px}.rpt-svg .rpt-node--new .rpt-node-label .rpt-fo{color:var(--dark)}.rpt-svg .rpt-node-pop{transform-box:fill-box;transform-origin:50%}.rpt-svg .rpt-node--new.is-visible .rpt-node-pop{animation:.36s ease-out both rpt-pop;animation-delay:var(--rpt-delay,0s)}.rpt-svg .rpt-arrowhead{fill:var(--rpt-new)}.rpt-svg .rpt-legend-label{overflow:visible}.rpt-svg .rpt-legend-chip{stroke-width:1px}.rpt-svg .rpt-legend-chip.rpt-legend-chip--match{fill:var(--rpt-match-bg);stroke:var(--rpt-match)}.rpt-svg .rpt-legend-chip.rpt-legend-chip--new{fill:var(--rpt-new-bg);stroke:var(--rpt-new)}.rpt-svg .rpt-legend-chip.rpt-legend-chip--evict{fill:#0000;stroke:var(--rpt-evict-fg)}.rpt-svg .rpt-fo{width:100%;height:100%;color:var(--rpt-note-fg);justify-content:center;align-items:center;font-size:11px;line-height:1;display:flex}.rpt-svg .rpt-fo .katex{color:inherit;font-size:1em}.rpt-svg .rpt-fo--axis{justify-content:flex-end}.rpt-svg .rpt-node-label .rpt-fo{color:var(--dark);font-size:11px}.rpt-svg .rpt-edge-label .rpt-fo,.rpt-svg .rpt-legend-label .rpt-fo{font-size:9.5px}.rpt-svg .rpt-edge-label--new .rpt-fo{color:color-mix(in srgb, var(--rpt-new) 80%, var(--dark) 20%)}@keyframes rpt-pop{0%{transform:scale(.6)}60%{transform:scale(1.06)}to{transform:scale(1)}}.rpt-side{flex-direction:column;gap:.85rem;min-width:0;display:flex}.rpt-card{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);border:0;padding:.75rem .9rem}.rpt-card p{color:var(--rpt-note-fg);margin:.45rem 0 0;font-size:.78rem;line-height:1.45}.rpt-stats{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.rpt-stats>div{display:contents}.rpt-stats dt,.rpt-stats dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.rpt-stats dt{color:var(--fig-note);font-weight:400}.rpt-stats dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.rpt-stats .katex{color:inherit;font-size:1em}.rpt-stats{margin-top:.55rem}.rpt-math{color:inherit;display:inline-block}.rpt-math .katex{color:inherit;font-size:.9em}.rpt-math--display{margin:.4rem 0 0;display:block}.rpt-math--display .katex-display{text-align:left;margin:.15rem 0}.rpt-math--display .katex-display>.katex{text-align:left}.rpt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.rpt-caption .rpt-math{vertical-align:-.03em;margin:0 .22em}@container rpt-figure (max-width:900px){.rpt-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"prompts side""canvas canvas";gap:1rem}.rpt-prompts{grid-area:prompts}.rpt-side{grid-area:side}.rpt-canvas{grid-area:canvas}}@container rpt-figure (max-width:560px){.radix-prefix-tree{padding:0}.rpt-stage{grid-template-columns:1fr;grid-template-areas:"prompts""canvas""side"}.rpt-svg .rpt-node-label .rpt-fo{font-size:10px}.rpt-svg .rpt-edge-label,.rpt-svg .rpt-edge-label--new,.rpt-svg .rpt-legend-label{font-size:9px}}.razor-compression{content-visibility:auto;contain-intrinsic-size:auto 32rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rzc-figure/inline-size}.razor-compression :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .razor-compression{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.razor-compression{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.razor-compression{--rzc-keep-bg:color-mix(in srgb, var(--fig-sage) 52%, var(--light));--rzc-keep-edge:color-mix(in srgb, var(--fig-sage) 90%, var(--dark));--rzc-drop-bg:color-mix(in srgb, var(--fig-salmon) 40%, var(--light));--rzc-drop-edge:color-mix(in srgb, var(--fig-salmon) 90%, var(--dark));--rzc-sink-bg:color-mix(in srgb, var(--gray) 36%, var(--light));--rzc-sink-edge:color-mix(in srgb, var(--gray) 70%, var(--dark));--rzc-comp-edge:color-mix(in srgb, var(--fig-salmon) 88%, var(--dark))}:root[saved-theme=dark] .razor-compression{--rzc-keep-bg:color-mix(in srgb, var(--fig-sage) 30%, var(--lightgray));--rzc-drop-bg:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--rzc-sink-bg:color-mix(in srgb, var(--gray) 40%, var(--lightgray))}.rzc-stage{min-width:0;display:block}.rzc-graph{width:100%;height:auto;display:block;overflow:visible}.rzc-graph foreignObject{overflow:visible}.rzc-graph .rzc-seg{stroke-width:1.1px;transition:x .24s cubic-bezier(.4,0,.2,1),width .24s cubic-bezier(.4,0,.2,1)}.rzc-graph .rzc-seg--keep{fill:var(--rzc-keep-bg);stroke:var(--rzc-keep-edge)}.rzc-graph .rzc-seg--drop{fill:var(--rzc-drop-bg);stroke:var(--rzc-drop-edge)}.rzc-graph .rzc-seg--sink{fill:var(--rzc-sink-bg);stroke:var(--rzc-sink-edge)}.rzc-graph .rzc-seg-hatch{stroke:none;transition:width .24s cubic-bezier(.4,0,.2,1)}.rzc-graph .rzc-hatch-line{stroke:var(--rzc-drop-edge);stroke-width:.7px;opacity:.5}.rzc-graph .rzc-comp-arrow{fill:none;stroke:var(--rzc-comp-edge);stroke-width:1.3px;stroke-dasharray:4 3;transition:d .24s cubic-bezier(.4,0,.2,1)}.rzc-graph .rzc-arrowhead{fill:var(--rzc-comp-edge)}.rzc-graph .rzc-comp-box{fill:color-mix(in srgb, var(--lightgray) 50%, var(--light));stroke:var(--rzc-comp-edge);stroke-width:1.2px}:root[saved-theme=dark] .razor-compression .rzc-comp-box{fill:color-mix(in srgb, var(--dark) 8%, var(--lightgray))}.rzc-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.rzc-fo .katex{color:inherit;font-size:1em}.rzc-fo .katex-display{margin:0}.rzc-fo{pointer-events:none;justify-content:center;overflow:visible}.rzc-fo--row{color:var(--fig-note);text-align:right;justify-content:flex-end}.rzc-fo--row .katex{font-size:.8em}.rzc-fo--inseg{color:color-mix(in srgb, var(--dark) 82%, var(--fig-sage))}.rzc-fo--inseg .katex{font-size:.78em}.rzc-fo--drop{color:var(--dark)}.rzc-fo--drop .katex{font-size:.76em}.rzc-fo--comp .katex{font-size:.82em}.rzc-fo--compnote{color:var(--fig-note);justify-content:flex-start}.rzc-fo--compnote .katex{font-size:.74em}.rzc-controls{grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);align-items:start;gap:1.4rem;margin-top:1.2rem;display:grid}.rzc-slider-wrap{flex-direction:column;gap:.55rem;min-width:0;display:flex}.rzc-slider-label{color:var(--fig-note);font-size:.82rem}.rzc-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.rzc-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rzc-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.rzc-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rzc-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rzc-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.rzc-slider:active::-webkit-slider-thumb{transform:scale(.96)}.rzc-slider:active::-moz-range-thumb{transform:scale(.96)}.rzc-ticks{font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.rzc-tick{color:var(--fig-note);font-size:.74rem;transition:color .16s,font-weight .16s}.rzc-tick .katex{color:inherit;font-size:1em}.rzc-tick[data-rzc-active=true]{color:var(--dark);font-weight:600}.rzc-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.rzc-readout>div{display:contents}.rzc-readout dt,.rzc-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.rzc-readout dt{color:var(--fig-note);font-weight:400}.rzc-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.rzc-readout .katex{color:inherit;font-size:1em}.rzc-readout-row--hero>dd .katex{font-size:1.18em}.rzc-legend{color:var(--fig-note);flex-wrap:wrap;gap:.45rem 1.2rem;margin:1rem 0 0;padding:0;font-size:.8rem;list-style:none;display:flex}.rzc-legend li{align-items:center;gap:.45rem;display:inline-flex}.rzc-legend .katex{color:inherit;font-size:.92em}.rzc-swatch{border-radius:var(--radius-none);flex:none;width:16px;height:10px}.rzc-swatch.rzc-swatch--keep{background:var(--rzc-keep-bg);border:1px solid var(--rzc-keep-edge)}.rzc-swatch.rzc-swatch--drop{background:var(--rzc-drop-bg);border:1px solid var(--rzc-drop-edge)}.rzc-math{color:inherit;display:inline-block}.rzc-math .katex{color:inherit;font-size:.95em}.rzc-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.rzc-caption .rzc-math{vertical-align:-.03em;margin:0 .22em}@container rzc-figure (max-width:560px){.rzc-controls{grid-template-columns:1fr;gap:1rem}}@container rzc-figure (max-width:440px){.razor-compression{padding:1.1rem 1rem}}.razor-head-taxonomy{content-visibility:auto;contain-intrinsic-size:auto 24rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rht-figure/inline-size}.razor-head-taxonomy :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .razor-head-taxonomy{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.razor-head-taxonomy{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.razor-head-taxonomy{--rht-cell-bg:var(--fig-surface);--rht-cell-edge:var(--fig-stroke-soft);--rht-query-bg:color-mix(in srgb, var(--fig-sage) 16%, var(--light));--rht-query-edge:color-mix(in srgb, var(--fig-sage) 92%, var(--dark));--rht-echo-bg:color-mix(in srgb, var(--fig-salmon) 26%, var(--light));--rht-echo-edge:color-mix(in srgb, var(--fig-salmon) 92%, var(--dark));--rht-induction-bg:color-mix(in srgb, var(--fig-sage) 30%, var(--light));--rht-induction-edge:color-mix(in srgb, var(--fig-sage) 92%, var(--dark))}:root[saved-theme=dark] .razor-head-taxonomy{--rht-query-bg:color-mix(in srgb, var(--fig-sage) 18%, var(--lightgray));--rht-echo-bg:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray));--rht-induction-bg:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray))}.rht-stage{min-width:0;display:block;position:relative;overflow-x:auto}.rht-graph{--rht-u:1.25;width:100%;height:auto;display:block;overflow:visible}.rht-graph .rht-cell-box,.rht-graph .rht-arc{vector-effect:non-scaling-stroke}.rht-graph foreignObject{overflow:visible}.rht-cell-box{fill:var(--rht-cell-bg);stroke:var(--rht-cell-edge);stroke-width:.9px}.rht-cell--echo .rht-cell-box{fill:var(--rht-echo-bg);stroke:var(--rht-echo-edge);stroke-width:1.3px}.rht-cell--induction .rht-cell-box{fill:var(--rht-induction-bg);stroke:var(--rht-induction-edge);stroke-width:1.3px}.rht-cell--query .rht-cell-box{fill:var(--rht-query-bg);stroke:var(--rht-query-edge);stroke-width:1.6px}.rht-cell--predict .rht-cell-box{fill:none;stroke:var(--rht-induction-edge);stroke-width:1.2px}.rht-arc{fill:none;stroke-width:1.6px}.rht-arc--echo{stroke:var(--rht-echo-edge)}.rht-arc--induction{stroke:var(--rht-induction-edge)}.rht-arc--copy{stroke:color-mix(in srgb, var(--fig-sage) 80%, var(--dark));stroke-width:1.3px}.rht-arrowhead--echo{fill:var(--rht-echo-edge)}.rht-arrowhead--induction{fill:var(--rht-induction-edge)}.rht-arrowhead--copy{fill:color-mix(in srgb, var(--fig-sage) 80%, var(--dark))}.rht-arc-group{cursor:var(--cursor-help,help)}.rht-arc-group:focus-visible{outline:none}.rht-arc-group:focus-visible .rht-arc{stroke-width:2.6px}.rht-arc-hit{fill:none;stroke:#0000;stroke-width:14px;stroke-linecap:round;pointer-events:stroke}.rht-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.rht-fo .katex{color:inherit;font-size:1em}.rht-fo .katex-display{margin:0}.rht-fo{font-size:calc(var(--rht-u) * 13px);pointer-events:none;justify-content:center;overflow:visible}.rht-fo--token{font-family:var(--codeFont)}.rht-fo--token .katex{font-size:1.05em;font-weight:600}.rht-fo--axis{color:var(--fig-note);font-size:calc(var(--rht-u) * var(--text-meta));justify-content:flex-start;font-style:italic;transition:opacity .14s}.rht-fo--axis .katex{font-size:.82em}:is(.razor-head-taxonomy:has(.rht-arc-group:hover) .rht-fo--axis,.razor-head-taxonomy:has(.rht-legend-item:hover) .rht-fo--axis){opacity:0}.rht-fo--ellipsis{color:var(--fig-note)}.rht-fo--sub{color:var(--fig-note);font-size:calc(var(--rht-u) * var(--text-meta))}.rht-fo--sub .katex{font-size:.72em}.rht-fo--sub-end{justify-content:flex-end}.rht-fo--sub-start{justify-content:flex-start}.rht-legend{font-size:var(--text-meta);color:var(--fig-note);flex-wrap:wrap;gap:.5rem 1.6rem;margin:1rem 0 0;display:flex}.rht-legend-item{color:var(--dark);cursor:var(--cursor-help,help);white-space:nowrap;align-items:center;gap:.5rem;display:inline-flex}.rht-legend-item .rht-legend-name .katex{color:inherit;font-size:.92em}.rht-tip{border:1px solid var(--fig-frame-border);border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 97%, transparent);max-width:min(92%,26rem);color:var(--fig-note);font-size:var(--text-meta);text-align:center;text-wrap:pretty;opacity:0;pointer-events:none;z-index:2;margin:0;padding:.4rem .7rem;line-height:1.4;transition:opacity .14s,transform .14s;position:absolute;top:0;left:50%;transform:translate(-50%,-.2rem)}:is(.razor-head-taxonomy:has(.rht-arc-group--echo:hover) .rht-tip--echo,.razor-head-taxonomy:has(.rht-arc-group--echo:focus-visible) .rht-tip--echo,.razor-head-taxonomy:has(.rht-legend-item--echo:hover) .rht-tip--echo,.razor-head-taxonomy:has(.rht-arc-group--induction:hover) .rht-tip--induction,.razor-head-taxonomy:has(.rht-arc-group--induction:focus-visible) .rht-tip--induction,.razor-head-taxonomy:has(.rht-legend-item--induction:hover) .rht-tip--induction){opacity:1;transform:translate(-50%)}.rht-swatch{border-radius:var(--radius-none);flex:none;width:18px;height:4px}.rht-swatch.rht-swatch--echo{background:var(--rht-echo-edge)}.rht-swatch.rht-swatch--induction{background:var(--rht-induction-edge)}.rht-math{color:inherit;display:inline-block}.rht-math .katex{color:inherit;font-size:.95em}.rht-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.rht-caption .rht-math{vertical-align:-.03em;margin:0 .22em}@container rht-figure (max-width:520px){.rht-graph{--rht-u:1.29;min-width:30rem}}@container rht-figure (max-width:440px){.razor-head-taxonomy{padding:1.1rem 1rem}.rht-legend{flex-direction:column;gap:.35rem}}.rel-alg-tree{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rat-figure/inline-size}.rel-alg-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .rel-alg-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.rel-alg-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.rel-alg-tree{--rat-lit:var(--fig-salmon);--rat-done:color-mix(in srgb, var(--fig-sage) 50%, var(--light));--rat-kept:color-mix(in srgb, var(--fig-sage) 40%, var(--light))}:root[saved-theme=dark] .rel-alg-tree{--rat-lit:color-mix(in srgb, var(--fig-salmon) 46%, var(--lightgray));--rat-done:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--rat-kept:color-mix(in srgb, var(--fig-sage) 20%, var(--lightgray))}.rat-tree{border:0;min-width:0;margin:0;padding:0}.rat-legend{color:var(--fig-note);margin-bottom:.5rem;padding:0;font-size:.72rem}.rat-svg{width:100%;margin:0 auto;display:block;overflow:visible}.rat-svg .rat-edge{fill:none;stroke:var(--fig-stroke-soft);stroke-width:1.2px;transition:stroke .16s}.rat-svg .rat-edge[data-state=on]{stroke:var(--dark)}.rat-svg .rat-node rect{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1.2px;transition:fill .16s,stroke .16s}.rat-svg .rat-node[data-state=done] rect{fill:var(--rat-done);stroke:var(--dark)}.rat-svg .rat-node[data-state=lit] rect{fill:var(--rat-lit);stroke:var(--dark);stroke-width:1.6px}.rat-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.rat-fo .katex{color:inherit;font-size:1em}.rat-fo .katex-display{margin:0}.rat-fo{box-sizing:border-box;cursor:var(--cursor-pointer,pointer);white-space:nowrap;justify-content:center;font-size:14px;position:relative}.rat-fo input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.rat-fo:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-3px}.rat-panel[hidden]{display:none}.rat-expr{color:var(--dark);margin-top:.9rem;font-size:.9rem;overflow:auto hidden}.rat-expr .katex-display{margin:.3rem 0}.rat-expr .katex{font-size:1em}.rat-text{color:var(--fig-note);text-wrap:pretty;margin:.5rem 0 0;font-size:.78rem;line-height:1.45}.rat-tables{flex-wrap:wrap;align-items:flex-start;gap:.9rem 1.2rem;margin-top:.8rem;display:flex}.rat-card{min-width:0;max-width:100%}.rat-card-title{font-size:var(--text-meta);color:var(--fig-note);margin:0 0 .5rem;font-weight:600}.rat-scroll{max-width:100%;overflow-x:auto}.rat-table{border-collapse:collapse;margin:0;font-size:.74rem;line-height:1.3}.rat-table th,.rat-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);text-align:left;white-space:nowrap;padding:.3rem .5rem;transition:background-color .16s}.rat-table th{color:var(--fig-note);font-weight:600}.rat-table td{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.rat-table .rat-test .katex{font-size:1em}.rat-table tr[data-kept=true] td{background:var(--rat-kept)}.rat-empty{color:var(--fig-note);margin:.3rem 0 0;font-size:.74rem}.rat-math{color:inherit;display:inline-block}.rat-math .katex{color:inherit;font-size:.95em}.rat-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.rat-svg .rat-edge,.rat-svg .rat-node rect,.rat-table th,.rat-table td{transition:none}}.rat-svg--narrow{display:none}@container rat-figure (max-width:460px){.rat-svg--wide{display:none}.rat-svg--narrow{margin:0;display:block}.rat-expr{font-size:.78rem}.rat-tables{gap:.7rem}}.residual-block{content-visibility:auto;contain-intrinsic-size:auto 26rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rb-figure/inline-size}.residual-block :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .residual-block{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.residual-block{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.residual-block{--rb-act:color-mix(in srgb, var(--lightgray) 45%, var(--light))}:root[saved-theme=dark] .residual-block{--rb-act:var(--lightgray)}:root[saved-theme=dark] .residual-block .rb-glyph{stroke:var(--light)}.rb-svg{width:100%;max-width:19rem;margin:0 auto;display:block;overflow:visible}.rb-svg .rb-edge{stroke:var(--fig-stroke);stroke-width:1.2px}.rb-svg .rb-skip{fill:none;stroke:var(--dark);stroke-width:1.6px}.rb-svg .rb-arrowhead{fill:var(--dark)}.rb-svg .rb-node{fill:var(--light);stroke:var(--dark);stroke-width:1px}.rb-svg .rb-node--act{fill:var(--rb-act);stroke:var(--fig-stroke)}.rb-svg .rb-node--io{stroke:var(--fig-stroke)}.rb-svg .rb-sum{fill:var(--fig-salmon);stroke:var(--dark);stroke-width:1px}.rb-svg .rb-glyph{stroke:var(--dark);stroke-width:1.4px}.rb-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.rb-fo .katex{color:inherit;font-size:1em}.rb-fo .katex-display{margin:0}.rb-fo{height:100%;font-size:.82rem}.rb-fo--center{justify-content:center}.rb-fo--start{justify-content:flex-start}.rb-fo--end{justify-content:flex-end}.rb-math{color:inherit;display:inline-block}.rb-math .katex{color:inherit;font-size:.95em}.rb-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.residual-stream{content-visibility:auto;contain-intrinsic-size:auto 46rem;color:var(--dark);--rs-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--rs-divider:color-mix(in srgb, var(--gray) 35%, transparent);--rs-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--rs-box-accent:color-mix(in srgb, var(--tertiary) 80%, var(--light));--rs-box-neutral:var(--lightgray);background:0 0;border:0;border-radius:0;margin:1.75rem 0;padding:0;container:rs-figure/inline-size}:root[saved-theme=dark] .residual-stream{--rs-box-accent:color-mix(in srgb, var(--tertiary) 28%, var(--lightgray))}.rs-frame{grid-template-rows:170fr 180fr 200fr 150fr;grid-template-columns:minmax(190px,1fr) 1px minmax(0,1.3fr) auto;align-items:stretch;gap:0 1.4rem;display:grid}.rs-graph{--rs-u:1.06;grid-area:1/1/-1;width:100%;height:100%;max-height:660px;display:block}.rs-graph .rs-box,.rs-graph .rs-line,.rs-graph .rs-node,.rs-graph .rs-node-glyph{vector-effect:non-scaling-stroke}.rs-graph .rs-box{stroke:var(--rs-stroke);stroke-width:1px}.rs-graph .rs-box.rs-box-neutral{fill:var(--rs-box-neutral)}.rs-graph .rs-box.rs-box-accent{fill:var(--rs-box-accent)}.rs-graph .rs-fo{width:100%;height:100%;color:var(--dark);font-size:calc(var(--rs-u) * 13px);align-items:center;line-height:1;display:flex;overflow:visible}.rs-graph .rs-fo .katex{color:inherit;font-size:1em;line-height:1}.rs-graph .rs-fo .katex-display{margin:0}.rs-graph .rs-fo--center{justify-content:center}.rs-graph .rs-fo--start{justify-content:flex-start}.rs-graph .rs-fo--sm{font-size:calc(var(--rs-u) * var(--text-meta))}.rs-graph .rs-fo--axis{color:var(--rs-note-fg);font-size:calc(var(--rs-u) * var(--text-meta))}.rs-graph .rs-line{stroke:var(--rs-stroke);stroke-width:1.2px;fill:none}.rs-graph .rs-arrowhead{fill:var(--rs-stroke)}.rs-graph .rs-node{fill:var(--light);stroke:var(--rs-stroke);stroke-width:1.2px}.rs-graph .rs-node-glyph{stroke:var(--rs-stroke);stroke-width:1px}.rs-divider{background:var(--rs-divider);grid-area:1/2/-1;width:1px}.rs-note{flex-direction:column;grid-column:3;justify-content:center;gap:.5rem;min-height:0;padding:.6rem 0;display:flex}.rs-note--unembed{grid-row:1}.rs-note--mlp{grid-row:2}.rs-note--attn{grid-row:3}.rs-note--embed{grid-row:4}.rs-bracket{color:var(--rs-note-fg);grid-area:2/4/4;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.rs-bracket-line{border:1px solid var(--rs-stroke);border-inline-start:0;align-self:stretch;width:8px}.rs-bracket-label{line-height:1.25}.rs-math,.rs-math .katex{color:inherit}.rs-math .katex-display{text-align:left;margin:.15rem 0}.rs-math .katex-display>.katex{text-align:left}.rs-math--inline{display:inline-block}.rs-math--display{display:block}.rs-caption{color:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);text-align:center;margin-top:.9rem;font-size:.85rem}@container rs-figure (max-width:660px){.rs-frame{grid-template-columns:minmax(170px,1fr) 1px minmax(0,1.4fr);gap:0 1rem}.rs-graph{--rs-u:1.25;max-height:560px}.rs-note{padding:.4rem 0}.rs-bracket{display:none}}@container rs-figure (max-width:460px){.residual-stream{padding:0}.rs-frame{grid-template-rows:auto;grid-template-columns:1fr;gap:1.25rem 0}.rs-graph{--rs-u:1;grid-area:1/1;max-width:240px;max-height:none;margin:0 auto}.rs-divider{display:none}.rs-note{grid-column:1;padding:.5rem 0}.rs-note--unembed{grid-row:2}.rs-note--mlp{grid-row:3}.rs-note--attn{grid-row:4}.rs-note--embed{grid-row:5}}.ring-rotation{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rr-figure/inline-size}.ring-rotation :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .ring-rotation{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.ring-rotation{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.ring-rotation{--rr-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--rr-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--rr-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--rr-salmon:var(--fig-salmon);--rr-sage:var(--fig-sage);--rr-cell-fill:color-mix(in srgb, var(--rr-sage) 80%, transparent);--rr-cell-pulse:color-mix(in srgb, var(--rr-salmon) 85%, transparent);--rr-token-fill:var(--rr-salmon);--rr-chip-bg:color-mix(in srgb, var(--rr-sage) 35%, var(--light));--rr-chip-bg-active:color-mix(in srgb, var(--rr-salmon) 70%, var(--light))}:root[saved-theme=dark] .ring-rotation{--rr-cell-fill:color-mix(in srgb, var(--rr-sage) 55%, var(--lightgray));--rr-chip-bg:color-mix(in srgb, var(--rr-sage) 22%, var(--lightgray));--rr-chip-bg-active:color-mix(in srgb, var(--rr-salmon) 45%, var(--lightgray))}.rr-stage{grid-template-columns:minmax(280px,1fr) minmax(0,1.05fr);align-items:center;gap:1.5rem;display:grid}.rr-graph{aspect-ratio:1;width:100%;max-width:416px;margin:0 auto;display:block}.rr-graph .rr-ring-track{fill:none;stroke:var(--rr-stroke-soft);stroke-width:1.2px}.rr-graph .rr-ring-flow{fill:none;stroke:var(--rr-stroke);stroke-width:1.4px;opacity:.55}.rr-graph .rr-arrowhead{fill:var(--rr-stroke)}.rr-graph .rr-node-disc{fill:var(--light);stroke:var(--rr-stroke);stroke-width:1.2px;transition:stroke .16s}.rr-graph .rr-node[data-rr-active=true] .rr-node-disc{stroke:var(--rr-salmon);stroke-width:1.8px}.rr-graph .rr-slice-chip{fill:var(--rr-chip-bg);stroke:var(--rr-stroke-soft);stroke-width:1px;transition:fill .16s,stroke .16s}.rr-graph .rr-slice-chip[data-rr-chip-traveling=true]{fill:var(--rr-chip-bg-active);stroke:var(--rr-salmon)}.rr-graph .rr-token{fill:var(--rr-token-fill);stroke:color-mix(in srgb, var(--rr-salmon) 70%, var(--dark));stroke-width:1.2px;opacity:0;transition:opacity .14s}.rr-graph .rr-token[data-rr-token-visible=true]{opacity:1}.rr-graph [data-rr-token-text]{opacity:0;pointer-events:none;transition:opacity .14s}.rr-graph [data-rr-token-text][data-rr-token-visible=true]{opacity:1}.rr-graph .rr-fo{width:100%;height:100%;color:var(--dark);justify-content:center;align-items:center;font-size:12px;line-height:1;display:flex;overflow:visible}.rr-graph .rr-fo .katex{color:inherit;font-size:1em}.rr-graph .rr-fo .katex-display{margin:0}.rr-graph .rr-fo--chip{font-size:11px}.rr-graph .rr-fo--node{font-size:13px}.rr-graph .rr-fo--token{font-size:10px}.rr-graph .rr-dyn-math{font-family:KaTeX_Math,Times New Roman,serif;font-style:italic;line-height:1}.rr-graph sub{font-size:.68em;line-height:0}.rr-side{flex-direction:column;gap:1rem;min-width:0;display:flex}.rr-matrix{flex-direction:column;gap:.5rem;display:flex}.rr-matrix-header{color:var(--rr-note-fg);justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.82rem;display:flex}.rr-matrix-title{color:var(--dark);font-weight:600}.rr-matrix-sub{font-size:.75rem;font-style:italic}.rr-matrix-grid{border-radius:var(--radius-none);background:var(--fig-grid-line);grid-template-columns:repeat(var(--rr-p,4), minmax(0, 1fr));border:0;gap:1px;width:100%;max-width:220px;margin:0;padding:1px;display:grid}.rr-cell{border-radius:var(--radius-none);background:var(--fig-grid-cell);aspect-ratio:1;border:0;min-width:0;margin:0;transition:background-color .22s;display:block}.rr-cell[data-rr-state=filled]{background:var(--rr-cell-fill)}.rr-cell[data-rr-state=pulse]{background:var(--rr-cell-pulse)}.rr-cell[data-rr-state=diag]{background:var(--rr-cell-fill);outline:1px solid var(--fig-stroke);outline-offset:-1px}.rr-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.rr-readout>div{display:contents}.rr-readout dt,.rr-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.rr-readout dt{color:var(--fig-note);font-weight:400}.rr-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.rr-readout .katex{color:inherit;font-size:1em}.rr-readout-eq{color:var(--rr-note-fg)}.rr-readout-val{font-weight:600}.rr-readout-val .katex{color:inherit;font-size:1em}.rr-readout-val--big{font-size:1rem}.rr-math{color:inherit;display:inline-block}.rr-math .katex{color:inherit;font-size:.95em}.rr-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.1rem;display:flex}.rr-control{align-items:center;gap:.6rem;display:flex}.rr-control--slider{flex:220px}.rr-label{color:var(--rr-note-fg);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.82rem}.rr-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.rr-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rr-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.rr-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rr-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rr-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.rr-slider:active::-webkit-slider-thumb{transform:scale(.96)}.rr-slider:active::-moz-range-thumb{transform:scale(.96)}.rr-slider-value{font-variant-numeric:tabular-nums;text-align:right;min-width:1.4ch;font-weight:600}.rr-control--buttons{flex-wrap:wrap;gap:.4rem}.rr-btn{appearance:none;background:color-mix(in srgb, var(--light) 96%, transparent);color:var(--dark);font-family:var(--bodyFont);border-radius:var(--radius-none);cursor:var(--cursor-pointer,pointer);border:0;padding:.32rem .75rem;font-size:.82rem;transition:background .14s,color .14s}.rr-btn:hover:not(:disabled){background:color-mix(in srgb, var(--lightgray) 60%, var(--light))}.rr-btn:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.rr-btn:disabled{opacity:.45;cursor:var(--cursor-not-allowed,not-allowed)}.rr-btn--primary{background:color-mix(in srgb, var(--lightgray) 80%, var(--light))}.rr-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.rr-caption .rr-math{vertical-align:-.03em;margin:0 .22em}@container rr-figure (max-width:720px){.rr-stage{grid-template-columns:1fr;gap:1.25rem}.rr-graph{max-width:360px}.rr-matrix-grid{max-width:260px;margin:0 auto}.rr-readout{font-size:.8rem}}@container rr-figure (max-width:440px){.ring-rotation{padding:0}.rr-controls{flex-direction:column;align-items:stretch;gap:.75rem}.rr-control--slider,.rr-control--buttons{width:100%}.rr-control--buttons{justify-content:space-between}.rr-btn{flex:auto}}.roofline{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rfl-figure/inline-size}.roofline :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .roofline{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.roofline{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.rfl-graph{aspect-ratio:560/262;width:100%;max-width:640px;margin:0 auto;display:block;overflow:visible}.rfl-graph .rfl-grid line{stroke:var(--fig-div);stroke-width:1px}.rfl-graph .rfl-tick,.rfl-graph .rfl-axis,.rfl-graph .rfl-mark{font-family:var(--codeFont);fill:var(--darkgray);font-variant-numeric:tabular-nums}.rfl-graph .rfl-tick{font-size:10px}.rfl-graph .rfl-axis{font-size:10.5px}.rfl-graph .rfl-mark{fill:var(--dark);font-size:10.5px}.rfl-graph .rfl-roof{fill:none;stroke:var(--dark);stroke-width:1.5px}.rfl-graph .rfl-ridge{stroke:var(--fig-stroke-soft);stroke-width:1px}.rfl-graph .rfl-trail circle{fill:var(--light);stroke:var(--darkgray);stroke-width:1px}.rfl-graph .rfl-prefill{fill:var(--fig-sage);stroke:var(--dark);stroke-width:1px}.rfl-graph .rfl-decode{fill:var(--fig-salmon);stroke:var(--dark);stroke-width:1px;transition:cx .22s cubic-bezier(.23,1,.32,1),cy .22s cubic-bezier(.23,1,.32,1)}@media (prefers-reduced-motion:reduce){.rfl-graph .rfl-decode{transition:none}}.rfl-fo{width:100%;height:100%;color:var(--dark);align-items:center;line-height:1;display:flex}.rfl-fo .katex{color:inherit;font-size:1em}.rfl-fo .katex-display{margin:0}.rfl-fo{font-size:.82rem}.rfl-fo--end{justify-content:flex-end}.rfl-math{color:inherit;display:inline-block}.rfl-math .katex{color:inherit;font-size:.95em}.rfl-controls{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.6rem .8rem;margin-top:1rem;display:grid}.rfl-label{color:var(--fig-note);white-space:nowrap;font-size:.82rem}.rfl-slider{appearance:none;width:100%;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0}.rfl-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rfl-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.rfl-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rfl-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.rfl-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.rfl-slider:active::-webkit-slider-thumb{transform:scale(.96)}.rfl-slider:active::-moz-range-thumb{transform:scale(.96)}.rfl-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0;padding:1px;display:grid}.rfl-readout>div{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;min-width:0;margin:0;padding:.45rem .6rem}.rfl-readout dt{color:var(--fig-note);white-space:nowrap;font-size:.72rem}.rfl-readout dd{font-family:var(--codeFont);font-variant-numeric:tabular-nums;color:var(--dark);margin:.15rem 0 0;font-size:.86rem;font-weight:600}.roofline[data-rfl-regime=compute] [data-rfl-state]{background:color-mix(in srgb, var(--fig-sage) 55%, transparent)}.roofline[data-rfl-regime=memory] [data-rfl-state]{background:color-mix(in srgb, var(--fig-salmon) 45%, transparent)}:root[saved-theme=dark] .roofline[data-rfl-regime=compute] [data-rfl-state]{background:color-mix(in srgb, var(--fig-sage) 28%, transparent)}:root[saved-theme=dark] .roofline[data-rfl-regime=memory] [data-rfl-state]{background:color-mix(in srgb, var(--fig-salmon) 28%, transparent)}[data-rfl-state]{margin-inline-start:-.3rem;padding:0 .3rem;display:inline-block}.rfl-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@container rfl-figure (max-width:520px){.rfl-readout{grid-template-columns:repeat(3,minmax(0,1fr))}.rfl-readout>div:last-child{grid-column:span 2}}@container rfl-figure (max-width:440px){.rfl-controls{grid-template-columns:minmax(0,1fr)}}@media (max-width:480px){.roofline{padding:1rem .75rem}}.safety-levels{content-visibility:auto;contain-intrinsic-size:auto 18rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:sl-figure/inline-size}.safety-levels :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .safety-levels{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.safety-levels{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.safety-levels{--sl-1:var(--light);--sl-2:color-mix(in srgb, var(--lightgray) 55%, var(--light));--sl-3:color-mix(in srgb, var(--fig-salmon) 42%, var(--light));--sl-4:color-mix(in srgb, var(--fig-salmon) 78%, var(--darkgray) 8%, var(--light))}:root[saved-theme=dark] .safety-levels{--sl-1:var(--lightgray);--sl-2:color-mix(in srgb, var(--gray) 40%, var(--lightgray));--sl-3:color-mix(in srgb, var(--fig-salmon) 28%, var(--lightgray));--sl-4:color-mix(in srgb, var(--fig-salmon) 48%, var(--lightgray))}.sl-title{color:var(--dark);font-family:var(--headerFont);margin:0 0 .75rem;font-size:.95rem;font-weight:500}.sl-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid}@container sl-figure (max-width:28rem){.sl-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.sl-card{border:1px solid var(--fig-stroke);min-height:5.5rem;color:var(--dark);flex-direction:column;gap:.45rem;padding:.7rem .75rem;display:flex}.sl-card[data-sl-tone="1"]{background:var(--sl-1)}.sl-card[data-sl-tone="2"]{background:var(--sl-2)}.sl-card[data-sl-tone="3"]{background:var(--sl-3)}.sl-card[data-sl-tone="4"]{background:var(--sl-4)}.sl-id{font-family:var(--codeFont);font-variant-numeric:tabular-nums;font-size:.85rem}.sl-text{font-family:var(--bodyFont);font-size:.78rem;line-height:1.35}.sl-axis{flex-direction:column;gap:.35rem;margin-top:.85rem;display:flex}.sl-axis-line{background:var(--dark);height:1px;display:block;position:relative}.sl-axis-line:after{content:"";border:4px solid #0000;border-left-color:var(--dark);border-right-width:0;position:absolute;top:-3px;right:0}.sl-axis-label{color:var(--fig-note);font-family:var(--codeFont);font-size:.7rem;line-height:1.35}.sl-math{color:inherit;display:inline-block}.sl-math .katex{color:inherit;font-size:.95em}.sl-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.schedule-classifier{content-visibility:auto;contain-intrinsic-size:auto 40rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:scl-figure/inline-size}.schedule-classifier :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .schedule-classifier{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.schedule-classifier{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.schedule-classifier{--scl-lit:color-mix(in srgb, var(--fig-salmon) 72%, var(--light));--scl-witness:color-mix(in srgb, var(--fig-sage) 55%, var(--light));--scl-segment-on:var(--fig-grid-selected)}.schedule-classifier [hidden]{display:none}:root[saved-theme=dark] .schedule-classifier{--scl-lit:color-mix(in srgb, var(--fig-salmon) 30%, var(--lightgray));--scl-witness:color-mix(in srgb, var(--fig-sage) 26%, var(--lightgray));--scl-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.scl-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.scl-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.scl-segments{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.scl-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);text-align:center;border:0;justify-content:center;align-items:center;margin:0;padding:.3rem .4rem;font-size:.7rem;line-height:1.2;transition:background-color .14s,color .14s;display:flex;position:relative}.scl-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}@media (hover:hover) and (pointer:fine){.scl-segment:hover{color:var(--dark)}}.scl-segment:has(input:checked){background:var(--scl-segment-on);color:var(--dark)}.scl-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.scl-source{color:var(--fig-note);text-wrap:pretty;margin:.8rem 0 0;font-size:.78rem;line-height:1.45}.scl-schedule{color:var(--dark);margin-bottom:.25rem;display:block}.scl-body{grid-template-columns:minmax(9rem,.85fr) minmax(0,1.15fr);align-items:start;gap:1rem 1.25rem;margin-top:.9rem;display:grid}.scl-left,.scl-right{min-width:0}.scl-timeline{border-collapse:collapse;width:100%;font-family:var(--codeFont);font-variant-numeric:tabular-nums;margin:0;font-size:.74rem}.scl-timeline th,.scl-timeline td{border:1px solid var(--fig-grid-line);text-align:left;padding:.22rem .45rem;line-height:1.3}.scl-timeline th{color:var(--fig-note);font-family:inherit;font-weight:400}.scl-timeline .scl-step{width:2.2rem;color:var(--fig-note);text-align:right}.scl-timeline .scl-op{color:var(--dark);transition:background-color .16s}.scl-timeline .scl-op--C,.scl-timeline .scl-op--A{font-weight:600}.scl-timeline .scl-op[data-scl-witness=true]{background:var(--scl-witness)}.scl-venn{width:100%;max-width:22rem;margin:0 auto;display:block}.scl-venn .scl-cell{fill:#0000;shape-rendering:crispedges;transition:fill .18s}.scl-venn .scl-class{fill:none;stroke:var(--dark);stroke-width:1px}.scl-venn .scl-class--all{stroke:var(--fig-stroke)}.scl-venn .scl-venn-label{fill:var(--dark);font-family:var(--codeFont);font-size:9px}.schedule-classifier[data-scl-region=serial] .scl-cell[data-region=serial],.schedule-classifier[data-scl-region=strict-csr] .scl-cell[data-region=strict-csr],.schedule-classifier[data-scl-region=strict-ncsr] .scl-cell[data-region=strict-ncsr],.schedule-classifier[data-scl-region=aca-csr] .scl-cell[data-region=aca-csr],.schedule-classifier[data-scl-region=aca-ncsr] .scl-cell[data-region=aca-ncsr],.schedule-classifier[data-scl-region=rec-csr] .scl-cell[data-region=rec-csr],.schedule-classifier[data-scl-region=rec-ncsr] .scl-cell[data-region=rec-ncsr],.schedule-classifier[data-scl-region=all-csr] .scl-cell[data-region=all-csr],.schedule-classifier[data-scl-region=all-ncsr] .scl-cell[data-region=all-ncsr]{fill:var(--scl-lit)}.scl-heading{font-size:var(--text-meta);color:var(--fig-note);margin:.8rem 0 .3rem;font-weight:600}.scl-graph{width:100%;max-width:16rem;display:block}.scl-graph text{font-family:var(--codeFont);fill:var(--dark);font-size:8.5px}.scl-graph .scl-node rect{fill:var(--light);stroke:var(--dark);stroke-width:1px}.scl-graph .scl-node text{font-size:11px}.scl-graph .scl-edge line{stroke:var(--fig-stroke);stroke-width:1px}.scl-graph .scl-edge polygon{fill:var(--fig-stroke)}.scl-graph .scl-edge--cycle line{stroke:var(--dark);stroke-width:1.6px}.scl-graph .scl-edge--cycle polygon{fill:var(--dark)}.scl-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.scl-readout>div{display:contents}.scl-readout dt,.scl-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.scl-readout dt{color:var(--fig-note);font-weight:400}.scl-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.scl-readout .katex{color:inherit;font-size:1em}.scl-readout dd{flex-wrap:wrap}.scl-readout{margin-top:.9rem}.scl-reason{color:var(--dark);text-wrap:pretty;margin:.6rem 0 0;font-size:.78rem;line-height:1.45}@media (prefers-reduced-motion:reduce){.scl-segment,.scl-timeline .scl-op,.scl-venn .scl-cell{transition:none}}@container scl-figure (max-width:520px){.scl-readout{grid-template-columns:minmax(0,1fr)}.scl-readout dd{text-align:left;justify-content:flex-start}.scl-body{grid-template-columns:minmax(0,1fr)}.scl-segments{grid-template-columns:repeat(2,minmax(0,1fr))}.scl-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}}.sliding-window-mask{content-visibility:auto;contain-intrinsic-size:auto 38rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:swm-figure/inline-size}.sliding-window-mask :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .sliding-window-mask{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.sliding-window-mask{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.sliding-window-mask{--swm-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--swm-window:var(--fig-salmon);--swm-window-bg:color-mix(in srgb, var(--fig-salmon) 78%, var(--light));--swm-global-bg:color-mix(in srgb, var(--fig-sage) 78%, var(--light));--swm-masked-bg:color-mix(in srgb, var(--lightgray) 65%, var(--light));--swm-grid:color-mix(in srgb, var(--gray) 24%, transparent);--swm-tab-surface:var(--fig-tab-surface);--swm-tab-border:var(--fig-tab-border);--swm-tab-active:color-mix(in srgb, var(--swm-window) 24%, var(--swm-tab-surface))}:root[saved-theme=dark] .sliding-window-mask{--swm-window-bg:color-mix(in srgb, var(--fig-salmon) 45%, var(--lightgray));--swm-global-bg:color-mix(in srgb, var(--fig-sage) 45%, var(--lightgray));--swm-grid:color-mix(in srgb, var(--gray) 18%, transparent);--swm-tab-active:color-mix(in srgb, var(--swm-window) 18%, var(--swm-tab-surface))}.sliding-window-mask .katex{color:inherit;font-size:1em}.swm-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.swm-grid-wrap{grid-template:minmax(0,1fr) auto/auto minmax(0,1fr);gap:.5rem;min-width:0;display:grid}.swm-graph{aspect-ratio:1;border-radius:var(--radius-none);background:var(--light);border:0;grid-area:1/2;width:100%;display:block}.swm-graph .swm-cell{stroke:var(--swm-grid);stroke-width:.04px;transition:fill .12s ease-out}.swm-graph .swm-cell--window{fill:var(--swm-window-bg)}.swm-graph .swm-cell--global{fill:var(--swm-global-bg)}.swm-graph .swm-cell--masked{fill:var(--swm-masked-bg)}.swm-axis{color:var(--swm-note);justify-content:center;align-items:center;font-size:.78rem;display:flex}.swm-axis .katex{font-size:1em}.swm-axis--x{grid-area:2/2}.swm-axis--y{writing-mode:vertical-rl;grid-area:1/1;transform:rotate(180deg)}.swm-side{flex-direction:column;gap:1rem;min-width:0;display:flex}.swm-legend{color:var(--swm-note);flex-direction:column;gap:.4rem;font-size:.85rem;display:flex}.swm-legend-item{align-items:center;gap:.5rem;display:inline-flex}.swm-swatch{border-radius:var(--radius-none);border:0;width:.9rem;height:.9rem;display:inline-block}.swm-swatch.swm-swatch--window{background:var(--swm-window-bg)}.swm-swatch.swm-swatch--global{background:var(--swm-global-bg)}.swm-swatch.swm-swatch--masked{background:var(--swm-masked-bg)}.swm-formula,.swm-intuition{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);color:var(--dark);border:0;padding:.85rem 1rem}.swm-formula .katex-display,.swm-intuition .katex-display{margin:0}.swm-formula{overflow-x:auto}.swm-intuition{color:var(--swm-note);margin:1rem 0 0;font-size:.88rem;line-height:1.55}.swm-intuition .swm-math{color:var(--dark)}.swm-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.swm-readout>div{display:contents}.swm-readout dt,.swm-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.swm-readout dt{color:var(--fig-note);font-weight:400}.swm-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.swm-readout .katex{color:inherit;font-size:1em}.swm-readout-val{font-weight:600}.swm-readout-val.swm-readout-val--big{font-size:1.1rem}.swm-readout-val.swm-readout-val--muted{color:var(--swm-note);font-weight:500}.swm-readout-val.swm-readout-val--mono{font-family:var(--codeFont);font-size:.85rem}.swm-readout-eq{color:var(--swm-note);font-weight:400}.swm-controls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:1rem 1.5rem;margin-top:1.25rem;padding-top:1rem;display:grid}.swm-control{align-items:center;gap:.6rem;min-width:0;display:flex}.swm-control .swm-slider{appearance:none;min-width:0;min-height:1.5rem;color:var(--darkgray);background:0 0;flex:auto}.swm-control .swm-slider::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.swm-control .swm-slider::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.swm-control .swm-slider::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.swm-control .swm-slider::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.swm-control .swm-slider::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.swm-control .swm-slider:active::-webkit-slider-thumb{transform:scale(.96)}.swm-control .swm-slider:active::-moz-range-thumb{transform:scale(.96)}.swm-label{color:var(--swm-note);white-space:nowrap;align-items:center;gap:.3rem;font-size:.85rem;display:inline-flex}.swm-slider-value{font-variant-numeric:tabular-nums;color:var(--dark);text-align:right;min-width:1.5rem;font-weight:600}.swm-tablist{isolation:isolate;border:1px solid var(--swm-tab-border);border-radius:var(--radius-none);background:var(--swm-tab-surface);align-items:stretch;height:1.7rem;display:inline-flex;overflow:hidden}.swm-tab{box-sizing:border-box;background:var(--swm-tab-surface);min-width:2rem;height:100%;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;border:0;border-radius:0;justify-content:center;align-items:center;padding:0 .85rem;font-size:.72rem;line-height:1;transition:background-color .14s,color .14s;display:inline-flex}.swm-tab:not(:disabled):hover{color:var(--dark)}.swm-tab:focus-visible{outline:2px solid color-mix(in srgb, var(--secondary) 50%, transparent);outline-offset:-2px}.swm-tab[aria-selected=true],.swm-tab.is-active{background:var(--swm-tab-active);color:var(--dark)}.swm-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.swm-caption .swm-math{vertical-align:-.03em;margin:0 .22em}.swm-math{color:inherit;display:inline-block}.swm-math .katex{color:inherit;font-size:1em}.swm-math--display{display:block}@container swm-figure (max-width:680px){.swm-stage{grid-template-columns:minmax(0,1fr)}.swm-controls{grid-template-columns:1fr}}@container swm-figure (max-width:440px){.sliding-window-mask{padding:0}}.sparse-attention-mask{content-visibility:auto;contain-intrinsic-size:auto 62rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:sam-figure/inline-size}.sparse-attention-mask :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .sparse-attention-mask{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.sparse-attention-mask{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.sparse-attention-mask{--sam-ground:color-mix(in srgb, var(--lightgray) 60%, var(--light));--sam-kept:color-mix(in srgb, var(--fig-sage) 90%, var(--light));--sam-lit:var(--fig-salmon);--sam-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .sparse-attention-mask{--sam-ground:color-mix(in srgb, var(--lightgray) 70%, var(--light));--sam-kept:color-mix(in srgb, var(--fig-sage) 34%, var(--lightgray));--sam-lit:color-mix(in srgb, var(--fig-salmon) 78%, var(--lightgray));--sam-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.sam-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.sam-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.sam-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.sam-segments{grid-auto-flow:column;min-width:0}.sam-legend{color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap}.sam-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);font-size:var(--text-meta);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.sam-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.sam-segment:hover{color:var(--dark)}.sam-segment:has(input:checked){background:var(--sam-segment-on);color:var(--dark)}.sam-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.sam-slider{flex:12rem;align-items:center;gap:.5rem;min-width:0;display:flex}.sam-slider input{appearance:none;min-height:1.5rem;color:var(--darkgray);background:0 0}.sam-slider input::-webkit-slider-runnable-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.sam-slider input::-webkit-slider-thumb{appearance:none;border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;margin-top:-.4rem;transition:transform .12s}.sam-slider input::-moz-range-track{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.sam-slider input::-moz-range-progress{border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 64%, var(--light));height:.2rem}.sam-slider input::-moz-range-thumb{border:1px solid var(--gray);border-radius:var(--radius-none);background:color-mix(in srgb, var(--lightgray) 82%, var(--light));width:1rem;height:1rem;transition:transform .12s}.sam-slider input:active::-webkit-slider-thumb{transform:scale(.96)}.sam-slider input:active::-moz-range-thumb{transform:scale(.96)}.sam-slider input{flex:auto;min-width:0}.sam-slider input:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.sam-slider-value{min-width:2ch;color:var(--dark);font-family:var(--codeFont);font-size:var(--text-meta);font-variant-numeric:tabular-nums;text-align:right}.sam-rule{color:var(--fig-note);font-size:var(--text-meta);text-wrap:pretty;margin:.75rem 0 0;line-height:1.45;display:none}.sparse-attention-mask[data-sam-mode=cmp] [data-sam-rule=cmp]{display:block}.sparse-attention-mask[data-sam-mode=cmp] [data-sam-strip=cmp]{display:inline}.sparse-attention-mask[data-sam-mode=slc] [data-sam-rule=slc]{display:block}.sparse-attention-mask[data-sam-mode=slc] [data-sam-strip=slc]{display:inline}.sparse-attention-mask[data-sam-mode=win] [data-sam-rule=win]{display:block}.sparse-attention-mask[data-sam-mode=win] [data-sam-strip=win]{display:inline}.sparse-attention-mask[data-sam-mode=nsa] [data-sam-rule=nsa]{display:block}.sparse-attention-mask[data-sam-mode=nsa] [data-sam-strip=nsa]{display:inline}.sparse-attention-mask[data-sam-mode=dsa] [data-sam-rule=dsa]{display:block}.sparse-attention-mask[data-sam-mode=dsa] [data-sam-strip=dsa]{display:inline}.sam-stage{gap:.9rem;margin-top:.9rem;display:grid}.sam-svg{--sam-u:.9;width:100%;max-width:34rem;margin:0 auto;display:block;overflow:visible}.sam-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.sam-svg .sam-axis{fill:var(--fig-note);font-size:calc(var(--sam-u) * var(--text-meta))}.sam-svg .sam-axis--title{fill:var(--dark)}.sam-svg .sam-lane,.sam-svg .sam-tag{fill:var(--dark);font-size:calc(var(--sam-u) * var(--text-meta))}.sam-svg .sam-strip{display:none}.sam-svg .sam-span{fill:#0000;stroke:var(--fig-stroke-soft);stroke-width:.6px;transition:fill .16s}.sam-svg .sam-span[data-on=true]{fill:var(--sam-lit);stroke:var(--dark)}.sam-svg .sam-block{fill:#0000;stroke:var(--fig-stroke-soft);stroke-width:.6px}.sam-svg .sam-score,.sam-svg .sam-bar{fill:var(--fig-stroke-soft);transition:fill .16s,y .16s,height .16s}.sam-svg [data-sam-block][data-on=true] .sam-block{stroke:var(--dark);stroke-width:.9px}.sam-svg [data-sam-block][data-on=true] .sam-score{fill:var(--sam-lit)}.sam-svg [data-shown=false]{display:none}.sam-svg .sam-bar[data-on=true]{fill:var(--sam-lit)}.sam-svg .sam-zero{stroke:var(--fig-stroke);stroke-width:.6px}.sam-svg .sam-cell{fill:var(--sam-ground);transition:fill .16s}.sam-svg .sam-cmp{fill:var(--sam-kept);display:none}.sam-svg [data-lit=true] .sam-cmp{fill:var(--sam-lit)}.sam-svg .sam-row-frame{fill:none;stroke:var(--dark);stroke-width:.8px;transition:y .16s}.sparse-attention-mask[data-sam-mode=cmp] .sam-svg .sam-cmp{display:inline}.sparse-attention-mask[data-sam-mode=slc] .sam-svg .sam-cell.slc{fill:var(--sam-kept)}.sparse-attention-mask[data-sam-mode=slc] .sam-svg [data-lit=true] .sam-cell.slc{fill:var(--sam-lit)}.sparse-attention-mask[data-sam-mode=win] .sam-svg .sam-cell.win{fill:var(--sam-kept)}.sparse-attention-mask[data-sam-mode=win] .sam-svg [data-lit=true] .sam-cell.win{fill:var(--sam-lit)}.sparse-attention-mask[data-sam-mode=nsa] .sam-svg .sam-cell.nsa{fill:var(--sam-kept)}.sparse-attention-mask[data-sam-mode=nsa] .sam-svg [data-lit=true] .sam-cell.nsa{fill:var(--sam-lit)}.sparse-attention-mask[data-sam-mode=dsa] .sam-svg .sam-cell.dsa{fill:var(--sam-kept)}.sparse-attention-mask[data-sam-mode=dsa] .sam-svg [data-lit=true] .sam-cell.dsa{fill:var(--sam-lit)}.sam-side{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:.9rem;min-width:0;display:grid}.sam-table{border-collapse:collapse;width:100%;font-size:var(--text-meta);line-height:1.3}.sam-table th,.sam-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);padding:.32rem .45rem;transition:background-color .14s}.sam-table th{color:var(--fig-note);text-align:left;font-weight:400}.sam-table thead th{color:var(--dark);white-space:nowrap;font-weight:600}.sam-table td{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.sam-table thead th:not(:first-child){text-align:right}.sam-table .katex{color:inherit;font-size:1em}.sparse-attention-mask[data-sam-mode=cmp] tr[data-modes~=cmp]>*,.sparse-attention-mask[data-sam-mode=slc] tr[data-modes~=slc]>*,.sparse-attention-mask[data-sam-mode=win] tr[data-modes~=win]>*,.sparse-attention-mask[data-sam-mode=nsa] tr[data-modes~=nsa]>*,.sparse-attention-mask[data-sam-mode=dsa] tr[data-modes~=dsa]>*{background:var(--fig-grid-selected)}.sam-math{color:inherit;display:inline-block}.sam-math .katex{color:inherit;font-size:.95em}.sam-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.sam-segment,.sam-table th,.sam-table td,.sam-svg .sam-span,.sam-svg .sam-score,.sam-svg .sam-bar,.sam-svg .sam-cell,.sam-svg .sam-row-frame{transition:none}}@container sam-figure (max-width:560px){.sam-side{grid-template-columns:minmax(0,1fr)}.sam-side>.sam-table{display:block;overflow-x:auto}.sam-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.sam-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}.sam-segment{padding:.28rem .35rem}.sam-svg .sam-axis--query{display:none}.sam-svg .sam-axis--qtick{transform:translateY(4px)}}.speculative-draft-tree{content-visibility:auto;contain-intrinsic-size:auto 44rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:sdt-figure/inline-size}.speculative-draft-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .speculative-draft-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.speculative-draft-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.speculative-draft-tree{--sdt-lit:color-mix(in srgb, var(--fig-salmon) 85%, var(--light));--sdt-target:color-mix(in srgb, var(--fig-sage) 85%, var(--light));--sdt-on:color-mix(in srgb, var(--darkgray) 30%, var(--light));--sdt-feature:color-mix(in srgb, var(--darkgray) 14%, var(--light));--sdt-node:var(--fig-grid-cell);--sdt-segment-on:var(--fig-grid-selected)}.speculative-draft-tree [hidden]{display:none!important}:root[saved-theme=dark] .speculative-draft-tree{--sdt-lit:color-mix(in srgb, var(--fig-salmon) 34%, var(--lightgray));--sdt-target:color-mix(in srgb, var(--fig-sage) 30%, var(--lightgray));--sdt-on:color-mix(in srgb, var(--dark) 34%, var(--lightgray));--sdt-feature:color-mix(in srgb, var(--dark) 12%, var(--lightgray));--sdt-node:var(--lightgray);--sdt-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.sdt-controls{flex-wrap:wrap;align-items:flex-end;gap:.6rem 1.25rem;display:flex}.sdt-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.sdt-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.sdt-segments{grid-auto-flow:column;min-width:0}.sdt-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .6rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.sdt-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.sdt-segment:hover{color:var(--dark)}.sdt-segment:has(input:checked){background:var(--sdt-segment-on);color:var(--dark)}.sdt-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.sdt-step{margin-top:.75rem}.sdt-rule{min-height:2.3rem;color:var(--fig-note);text-wrap:pretty;margin:0;font-size:.78rem;line-height:1.45}.sdt-strip-row{font-family:var(--codeFont);flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-top:.6rem;font-size:.72rem;display:flex}.sdt-strip-label,.sdt-strip-out{color:var(--fig-note);white-space:nowrap}.sdt-strip-out{color:var(--dark)}.sdt-strip-cols{flex-wrap:wrap;min-width:0;padding:1px 0 0 1px;display:flex}.sdt-col{border:1px solid var(--fig-grid-line);background:var(--fig-grid-line);gap:1px;min-width:0;margin:-1px 0 0 -1px;display:grid}.sdt-col-token,.sdt-col-feature{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:2.1rem;color:var(--dark);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.2rem .35rem;line-height:1.2;transition:background-color .16s;display:flex}.sdt-col-token[data-kind=lit]{background:var(--sdt-lit)}.sdt-col-token[data-kind=target]{background:var(--sdt-target)}.sdt-col-token[data-kind=cached],.sdt-col-feature[data-own=false]{background:var(--sdt-feature)}.sdt-col-feature .katex{color:inherit;font-size:.95em}.sdt-stage{margin-top:.9rem}.sdt-panels{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.sdt-tree,.sdt-mask{width:100%;height:auto;display:block;overflow:visible}.sdt-tree text,.sdt-mask text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.sdt-tree .sdt-axis,.sdt-mask .sdt-axis{fill:var(--fig-note);font-size:7.5px}.sdt-tree{max-width:24rem}.sdt-tree .sdt-node{transition:opacity .18s}.sdt-tree .sdt-node rect{fill:var(--sdt-node);stroke:var(--fig-stroke);stroke-width:1px;transition:fill .18s,stroke .18s}.sdt-tree .sdt-node-token{fill:var(--dark);font-size:11px}.sdt-tree .sdt-node-q{fill:var(--fig-note);font-size:8px}.sdt-tree .sdt-node[data-state=root] rect{fill:var(--sdt-target);stroke:var(--dark)}.sdt-tree .sdt-node[data-state=new] rect,.sdt-tree .sdt-node[data-state=accepted] rect{fill:var(--sdt-lit);stroke:var(--dark)}.sdt-tree .sdt-node[data-state=accepted] rect{stroke-width:1.6px}.sdt-tree .sdt-node[data-state=rejected]{opacity:.6}.sdt-tree .sdt-node[data-state=rejected] .sdt-node-token{text-decoration:line-through}.sdt-tree .sdt-node[data-state=untested]{opacity:.45}.sdt-tree .sdt-edge{fill:none;stroke:var(--fig-stroke);stroke-width:1px;transition:opacity .18s,stroke .18s}.sdt-tree .sdt-edge[data-state=accepted]{stroke:var(--dark);stroke-width:1.6px}.sdt-tree .sdt-edge[data-state=rejected],.sdt-tree .sdt-edge[data-state=untested]{opacity:.38}.sdt-tree .sdt-node[data-state=hidden],.sdt-tree .sdt-edge[data-state=hidden]{opacity:0}.sdt-mask{justify-self:end;max-width:20rem}.sdt-mask .sdt-mask-row{fill:var(--dark);font-size:8px}.sdt-mask .sdt-mask-row,.sdt-mask .sdt-mask-col{transition:opacity .18s}.sdt-mask .sdt-mask-row[data-state=hidden],.sdt-mask .sdt-mask-col[data-state=hidden]{opacity:.3}.sdt-mask .sdt-cell{fill:#0000;stroke:var(--fig-div);stroke-width:.6px;transition:fill .18s}.sdt-mask .sdt-cell[data-state="1"]{fill:var(--sdt-on)}.sdt-mask .sdt-cell[data-state="2"]{fill:var(--sdt-lit);stroke:var(--fig-stroke)}.sdt-read{grid-template-columns:minmax(0,1fr);gap:.75rem;margin-top:.9rem;display:grid}.sdt-log-wrap{min-width:0;overflow-x:auto}.sdt-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.sdt-readout>div{display:contents}.sdt-readout dt,.sdt-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.sdt-readout dt{color:var(--fig-note);font-weight:400}.sdt-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.sdt-readout .katex{color:inherit;font-size:1em}.sdt-log{border-collapse:collapse;width:100%;font-size:.74rem;line-height:1.3}.sdt-log th,.sdt-log td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);color:var(--dark);text-align:right;font-family:var(--codeFont);font-variant-numeric:tabular-nums;padding:.32rem .5rem}.sdt-log th{color:var(--fig-note);font-weight:400}.sdt-log th:first-child,.sdt-log td:first-child{text-align:left}.sdt-log tr[data-ok=true] td{background:var(--fig-grid-selected)}.sdt-math{color:inherit;display:inline-block}.sdt-math .katex{color:inherit;font-size:.95em}.sdt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.sdt-segment,.sdt-col-token,.sdt-col-feature,.sdt-tree .sdt-node,.sdt-tree .sdt-node rect,.sdt-tree .sdt-edge,.sdt-mask .sdt-cell,.sdt-mask .sdt-mask-row,.sdt-mask .sdt-mask-col{transition:none}}@container sdt-figure (max-width:560px){.sdt-panels{grid-template-columns:minmax(0,1fr)}.sdt-mask{justify-self:start}}@container sdt-figure (max-width:440px){.sdt-segments{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.sdt-segment:last-of-type:nth-of-type(odd){grid-column:1/-1}.sdt-segment{padding:.28rem .35rem}.sdt-readout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sdt-readout dd{text-align:right;overflow-wrap:anywhere}.sdt-log{font-size:.66rem}.sdt-log th,.sdt-log td{padding:.26rem .22rem}}.token-boundary-shift{content-visibility:auto;contain-intrinsic-size:auto 40rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:tbs-figure/inline-size}.token-boundary-shift :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .token-boundary-shift{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.token-boundary-shift{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.token-boundary-shift{--tbs-natural:color-mix(in srgb, var(--fig-sage) 70%, var(--dark));--tbs-split:var(--fig-salmon);--tbs-natural-cell:color-mix(in srgb, var(--fig-sage) 45%, var(--light));--tbs-split-cell:color-mix(in srgb, var(--fig-salmon) 55%, var(--light));--tbs-segment-on:var(--fig-grid-selected)}:root[saved-theme=dark] .token-boundary-shift{--tbs-natural:color-mix(in srgb, var(--fig-sage) 70%, var(--lightgray));--tbs-natural-cell:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--tbs-split-cell:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--tbs-segment-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.tbs-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + var(--space-1));border:0;gap:1px;padding:1px;display:grid;position:relative}.tbs-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.tbs-segments{grid-auto-flow:column;width:fit-content;min-width:0;max-width:100%}.tbs-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .5rem;font-size:.72rem;line-height:1.2;transition:background-color .14s,color .14s;display:inline-flex}.tbs-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.tbs-segment:hover{color:var(--dark)}.tbs-segment:has(input:checked){background:var(--tbs-segment-on);color:var(--dark)}.tbs-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:-2px}.tbs-svg{width:100%;max-width:40rem;margin:.5rem auto 0;display:block}.tbs-svg text{font-family:var(--codeFont);font-variant-numeric:tabular-nums}.tbs-svg [data-tbs-boundary][data-on=false]{display:none}.tbs-svg .tbs-row,.tbs-svg .tbs-axis,.tbs-svg .tbs-count,.tbs-svg .tbs-note{fill:var(--fig-note);font-size:9px}.tbs-svg .tbs-piece,.tbs-svg .tbs-node-label,.tbs-svg .tbs-tick{fill:var(--dark);font-size:10px}.tbs-svg .tbs-value{fill:var(--dark);font-size:9px}.tbs-svg .tbs-tick{font-size:10.5px}.tbs-svg .tbs-branch{fill:var(--fig-note);font-size:9.5px}.tbs-svg .tbs-cell{stroke:var(--fig-stroke);stroke-width:.8px}.tbs-svg .tbs-cell--natural{fill:var(--tbs-natural-cell)}.tbs-svg .tbs-cell--split{fill:var(--tbs-split-cell);stroke:var(--dark)}.tbs-svg .tbs-link{stroke:var(--fig-stroke);stroke-width:1px}.tbs-svg .tbs-node{fill:var(--light);stroke:var(--dark);stroke-width:1.2px}.tbs-svg .tbs-grid{stroke:var(--fig-line);stroke-width:.8px}.tbs-svg .tbs-axis-line{stroke:var(--fig-stroke);stroke-width:1px}.tbs-svg .tbs-bar--natural{fill:var(--tbs-natural)}.tbs-svg .tbs-bar--split{fill:var(--tbs-split);stroke:var(--dark);stroke-width:.6px}.tbs-key{color:var(--dark);flex-wrap:wrap;gap:.25rem 1rem;margin:.8rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.tbs-key li{align-items:center;gap:.4rem;margin:0;display:inline-flex}.tbs-swatch{width:14px;height:10px;display:inline-block}.tbs-swatch--natural{background:var(--tbs-natural)}.tbs-swatch--split{background:var(--tbs-split);outline:.6px solid var(--dark)}.tbs-tables{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:.9rem;margin-top:.9rem;display:grid}.tbs-table{border-collapse:collapse;width:100%;margin:0;font-size:.78rem;line-height:1.35}.tbs-table th,.tbs-table td{border:1px solid var(--fig-grid-line);background:var(--fig-grid-cell);font-variant-numeric:tabular-nums;padding:.32rem .55rem}.tbs-table thead th{color:var(--fig-note);text-align:right;font-weight:400}.tbs-table thead th:first-child,.tbs-table tbody th{text-align:left}.tbs-table tbody th{color:var(--dark);font-family:var(--codeFont);font-weight:400}.tbs-table td{color:var(--dark);font-family:var(--codeFont);text-align:right}.tbs-readout{border-radius:var(--radius-none);background:var(--fig-grid-line);font-size:var(--text-meta);border:0;grid-template-columns:minmax(0,1fr) max-content;gap:1px;margin:0;padding:1px;line-height:1.35;display:grid}.tbs-readout>div{display:contents}.tbs-readout dt,.tbs-readout dd{border-radius:var(--radius-none);background:var(--fig-grid-cell);border:0;align-items:baseline;gap:.35rem;min-width:0;margin:0;padding:.4rem .55rem;display:flex}.tbs-readout dt{color:var(--fig-note);font-weight:400}.tbs-readout dd{color:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;text-align:right;justify-content:flex-end}.tbs-readout .katex{color:inherit;font-size:1em}.tbs-readout{margin:0}.tbs-readout .katex{white-space:nowrap}.tbs-math{color:inherit;display:inline-block}.tbs-math .katex{color:inherit;font-size:.95em}.tbs-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;overflow-wrap:anywhere;margin-top:.9rem;line-height:1.45;display:inline-block}@media (prefers-reduced-motion:reduce){.tbs-segment{transition:none}}@container tbs-figure (max-width:560px){.tbs-segments{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.tbs-tables{grid-template-columns:minmax(0,1fr)}}.tree-reduction{content-visibility:auto;contain-intrinsic-size:auto 34rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:tr-figure/inline-size}.tree-reduction :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .tree-reduction{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.tree-reduction{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.tree-reduction{--tr-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--tr-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--tr-fill-idle:color-mix(in srgb, var(--lightgray) 80%, transparent);--tr-fill-active-soft:color-mix(in srgb, var(--fig-sage) 28%, var(--light));--tr-fill-pulse:var(--fig-salmon);--tr-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%)}:root[saved-theme=dark] .tree-reduction{--tr-fill-active-soft:color-mix(in srgb, var(--fig-sage) 18%, var(--lightgray));--tr-fill-pulse:color-mix(in srgb, var(--fig-salmon) 20%, var(--lightgray))}.tr-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-bottom:1.1rem;display:flex}.tr-stage{font-family:var(--bodyFont);color:var(--tr-note-fg);font-variant-numeric:tabular-nums;font-size:.85rem}.tr-actions{gap:.4rem;display:inline-flex}.tr-btn{background:color-mix(in srgb, var(--light) 98%, transparent);color:var(--dark);border-radius:var(--radius-none);font-family:var(--bodyFont);cursor:var(--cursor-pointer,pointer);border:0;padding:.32rem .7rem;font-size:.8rem;transition:background .15s,opacity .15s}.tr-btn:hover:not(:disabled){background:var(--tr-fill-active-soft)}.tr-btn:focus-visible{outline:2px solid var(--tertiary);outline-offset:2px}.tr-btn:disabled{opacity:.45;cursor:var(--cursor-not-allowed,not-allowed)}.tr-btn.tr-btn--primary{background:var(--tr-fill-active-soft)}.tr-stage-area{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:stretch;gap:1.4rem;display:grid}.tr-svg{width:100%;height:auto;display:block}.tr-svg .tr-edge{stroke:var(--tr-stroke-soft);stroke-width:1.2px;fill:none;opacity:.55;transition:stroke .25s,stroke-width .25s,opacity .25s}.tr-svg .tr-edge.tr-active{stroke:var(--tr-stroke);stroke-width:1.5px;opacity:1}.tr-svg .tr-node-shape{fill:var(--tr-fill-idle);stroke:var(--tr-stroke);stroke-width:1px;transition:fill .25s,stroke .25s}.tr-svg .tr-node.tr-active .tr-node-shape,.tr-svg .tr-node.tr-settled .tr-node-shape{fill:var(--tr-fill-active-soft)}.tr-svg .tr-node.tr-settled .tr-node-shape{stroke:color-mix(in srgb, var(--fig-sage) 80%, var(--darkgray) 20%)}.tr-svg .tr-node.tr-pulse .tr-node-shape{fill:var(--tr-fill-pulse);stroke:color-mix(in srgb, var(--fig-salmon) 70%, var(--darkgray) 30%)}.tr-svg .tr-fo{width:100%;height:100%;color:var(--dark);justify-content:center;align-items:center;font-size:11px;line-height:1;display:flex;overflow:visible}.tr-svg .tr-fo .katex{color:inherit;font-size:1em;line-height:1}.tr-svg .tr-fo--root{font-size:12px}.tr-svg .tr-fo--stage{color:var(--tr-note-fg);justify-content:flex-end;font-size:11px}.tr-aside{flex-direction:column;gap:.9rem;min-width:0;display:flex}.tr-card{border-radius:var(--radius-none);background:color-mix(in srgb, var(--light) 96%, transparent);border:0;padding:.85rem .95rem}.tr-card>h5{color:var(--tr-note-fg);margin:0 0 .35rem;font-size:.82rem;font-weight:600}.tr-card>p{color:var(--tr-note-fg);margin:0;font-size:.86rem;line-height:1.5}.tr-complexity{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.tr-complexity>div{border-radius:var(--radius-none);border:0;flex-direction:column;gap:.15rem;padding:.55rem .6rem;display:flex}.tr-complexity>div>span:first-child{text-transform:uppercase;color:var(--tr-note-fg);font-size:.72rem}.tr-complexity>div>span:last-child{color:var(--dark);font-size:.95rem}.tr-complexity>.tr-complexity-tree{background:var(--tr-fill-active-soft)}.tr-math{color:inherit;display:inline-block}.tr-math .katex{color:inherit;font-size:.95em}.tr-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.tr-caption .tr-math{vertical-align:-.03em;margin:0 .22em}@container tr-figure (max-width:720px){.tr-stage-area{grid-template-columns:1fr;gap:1rem}}@container tr-figure (max-width:460px){.tree-reduction{padding:0}.tr-svg .tr-fo{font-size:10px}.tr-complexity{grid-template-columns:1fr}}.virtual-weights{content-visibility:auto;contain-intrinsic-size:auto 46rem;box-shadow:none;color:var(--dark);--vw-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--vw-note-fg:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--vw-box-weight:var(--light);--vw-box-dots:color-mix(in srgb, var(--tertiary) 40%, var(--light));--vw-box-dots-highlight:color-mix(in srgb, var(--tertiary) 80%, var(--light));--vw-curve:var(--dark);--vw-frame-faded-opacity:.32;background:0 0;border:0;border-radius:0;margin:1.75rem 0;padding:0;container:vw-figure/inline-size}:root[saved-theme=dark] .virtual-weights{--vw-box-dots:color-mix(in srgb, var(--tertiary) 18%, var(--lightgray));--vw-box-dots-highlight:color-mix(in srgb, var(--tertiary) 35%, var(--lightgray))}.vw-panels{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:1.5rem;display:grid}.vw-panel{flex-direction:column;gap:1rem;min-width:0;display:flex}.vw-panel-title{color:var(--vw-note-fg);margin:0;font-size:.95rem;line-height:1.45}.vw-stage{align-items:stretch;gap:1.25rem;min-width:0;display:flex}.vw-graph{aspect-ratio:320/580;flex:none;width:clamp(170px,40%,240px);height:auto;display:block}.vw-graph .vw-rs-line,.vw-graph .vw-line{stroke:var(--vw-stroke);stroke-width:1.2px;fill:none}.vw-graph .vw-box{stroke:var(--vw-stroke);stroke-width:1px}.vw-graph .vw-box.vw-box-weight{fill:var(--vw-box-weight)}.vw-graph .vw-box.vw-box-dots{fill:var(--vw-box-dots)}.vw-graph .vw-box.vw-box-dots.vw-box-dots--highlight{fill:var(--vw-box-dots-highlight)}.vw-graph .vw-frame--faded{opacity:var(--vw-frame-faded-opacity)}.vw-graph .vw-node{fill:var(--light);stroke:var(--vw-stroke);stroke-width:1.2px}.vw-graph .vw-arrowhead{fill:var(--vw-stroke)}.vw-graph .vw-curve{stroke:var(--vw-curve);stroke-width:1.3px;fill:none}.vw-graph .vw-curve-arrowhead{fill:var(--vw-curve)}.vw-graph .vw-vw-bg{fill:var(--light);stroke:var(--vw-stroke);stroke-width:1px}.vw-graph .vw-fo{width:100%;height:100%;color:var(--dark);justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex;overflow:visible}.vw-graph .vw-fo .katex{color:inherit;font-size:1em;line-height:1}.vw-graph .vw-fo .katex-display{margin:0}.vw-graph .vw-fo--compound{font-size:13px}.vw-graph .vw-fo--node{color:var(--vw-stroke);font-size:12px}.vw-graph .vw-fo--dots{font-size:12px}.vw-callouts{flex-direction:column;flex:1 1 0;min-width:0;display:flex}.vw-callouts--reading{justify-content:center;gap:.9rem}.vw-callouts--virtual{justify-content:space-between;gap:1.5rem;padding:6% 0}.vw-callout{color:var(--vw-note-fg);margin:0;font-size:.9rem;line-height:1.45}.vw-callout strong{color:var(--dark);font-weight:600}.vw-caption{color:color-mix(in srgb, var(--gray) 70%, var(--dark) 30%);text-align:center;margin-top:.9rem;font-size:.85rem}@container vw-figure (max-width:760px){.vw-panels{grid-template-columns:1fr;gap:1.25rem}.vw-panel{gap:.75rem}.vw-panel-title{font-size:.9rem}.vw-stage{gap:1rem}.vw-graph{width:clamp(180px,38%,220px)}.vw-callouts--virtual{gap:1rem;padding:4% 0}.vw-callout{font-size:.85rem}}@container vw-figure (max-width:440px){.virtual-weights{padding:0}.vw-panels{gap:1.5rem}.vw-stage{flex-direction:column;gap:.85rem}.vw-graph{align-self:center;width:100%;max-width:240px}.vw-callouts{width:100%}.vw-callouts--reading,.vw-callouts--virtual{justify-content:flex-start;gap:.5rem;padding:0}}.vllm-engine-layout{content-visibility:auto;contain-intrinsic-size:auto 30rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:vel-figure/inline-size}.vllm-engine-layout :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .vllm-engine-layout{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.vllm-engine-layout{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.vllm-engine-layout{--vel-exec:color-mix(in srgb, var(--fig-sage) 40%, var(--light));--vel-sched:color-mix(in srgb, var(--darkgray) 16%, var(--light));--vel-lit:color-mix(in srgb, var(--fig-salmon) 55%, var(--light));--vel-band:color-mix(in srgb, var(--lightgray) 28%, var(--light))}:root[saved-theme=dark] .vllm-engine-layout{--vel-exec:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--vel-sched:color-mix(in srgb, var(--gray) 45%, var(--lightgray));--vel-lit:color-mix(in srgb, var(--fig-salmon) 34%, var(--lightgray));--vel-band:color-mix(in srgb, var(--gray) 35%, var(--lightgray))}.vel-client,.vel-band{border:1px solid var(--fig-frame-border);background:var(--fig-surface);padding:.75rem}.vel-client+.vel-band,.vel-band+.vel-band{margin-top:.65rem}.vel-band--cpu,.vel-band--gpu{background:var(--vel-band)}.vel-title{color:var(--dark);font-family:var(--headerFont);margin:0;font-size:.85rem;font-weight:500}.vel-band-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.55rem;display:flex}.vel-where{color:var(--fig-note);font-family:var(--codeFont);font-size:.7rem}.vel-flow{flex-wrap:wrap;align-items:stretch;gap:.45rem;margin-top:.65rem;display:flex}.vel-chip,.vel-box,.vel-mini,.vel-block,.vel-phys{border:1px solid var(--fig-stroke);color:var(--dark);font-family:var(--codeFont);text-align:center;justify-content:center;align-items:center;padding:.35rem .55rem;font-size:.68rem;display:inline-flex}.vel-chip{background:var(--light);color:var(--fig-note)}.vel-box{background:var(--light)}.vel-box--exec{background:var(--vel-exec)}.vel-box--sched{background:var(--vel-sched)}.vel-core{border:1px solid var(--dark);background:var(--light);flex-direction:column;gap:.4rem;min-width:11rem;padding:.45rem;display:flex}.vel-sched{flex-direction:column;gap:.35rem;display:flex}.vel-queues{grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;display:grid}.vel-mini{background:var(--light);min-height:2rem}.vel-mini--lit{background:var(--vel-lit)}.vel-index{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.vel-queue,.vel-pool{flex-wrap:wrap;gap:.3rem;display:flex}.vel-block{background:color-mix(in srgb, var(--fig-salmon) 28%, var(--light));min-width:3.2rem}.vel-phys{background:var(--light);min-width:3.2rem}.vel-note{color:var(--fig-note);font-family:var(--codeFont);margin:0 0 .45rem;font-size:.7rem}.vel-math{color:inherit;display:inline-block}.vel-math .katex{color:inherit;font-size:.95em}.vel-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.attr-grammar{content-visibility:auto;contain-intrinsic-size:auto 16rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ag-figure/inline-size}.attr-grammar :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .attr-grammar{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.attr-grammar{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.attr-grammar{--ag-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light))}:root[saved-theme=dark] .attr-grammar{--ag-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray))}article.notebook-page .attr-grammar--float-end{float:right;width:min(22rem,48%);max-width:100%;margin:0 0 1rem 1rem}.ag-root{justify-content:center;display:flex;overflow-x:auto}.ag-branch{justify-items:center;gap:.3rem;display:grid}.ag-kids{justify-content:center;gap:.55rem;display:flex}.ag-node{border:1px solid var(--dark);background:var(--light);color:var(--dark);font-family:var(--codeFont);text-align:center;white-space:nowrap;padding:.22rem .4rem;font-size:.68rem}.ag-node--lit{background:var(--ag-lit)}.ag-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ag-math{color:inherit;display:inline-block}.ag-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .attr-grammar--float-end{float:none;width:100%;margin:0 0 1rem}.ag-node{white-space:normal}}.b-plus-tree{content-visibility:auto;contain-intrinsic-size:auto 28rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:bpt-figure/inline-size}.b-plus-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .b-plus-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.b-plus-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.b-plus-tree{--bpt-node:color-mix(in srgb, var(--lightgray) 50%, var(--light));--bpt-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light))}:root[saved-theme=dark] .b-plus-tree{--bpt-node:color-mix(in srgb, var(--gray) 30%, var(--lightgray));--bpt-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray))}.bpt-svg{width:100%;max-width:42rem;margin:0 auto;display:block;overflow:visible}.bpt-node{fill:var(--bpt-node);stroke:var(--dark);stroke-width:1px}.bpt-node--lit{fill:var(--bpt-lit)}.bpt-cell{fill:var(--light);stroke:var(--fig-stroke);stroke-width:1px}.bpt-ptr{fill:var(--dark)}.bpt-key{fill:var(--dark);font-family:var(--codeFont);font-variant-numeric:tabular-nums;font-size:11px}.bpt-level,.bpt-anno{fill:var(--fig-note);font-family:var(--bodyFont);font-size:11px}.bpt-edge{fill:none;stroke:var(--fig-stroke);stroke-width:1.1px}.bpt-arrowhead{fill:var(--dark)}.bpt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.bpt-math{color:inherit;display:inline-block}.bpt-math .katex{color:inherit;font-size:.95em}.cfg-diagram{content-visibility:auto;contain-intrinsic-size:auto 18rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cfg-figure/inline-size}.cfg-diagram :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .cfg-diagram{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.cfg-diagram{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.cfg-diagram{--cfg-lit:color-mix(in srgb, var(--fig-salmon) 40%, var(--light));--cfg-block:color-mix(in srgb, var(--lightgray) 45%, var(--light))}:root[saved-theme=dark] .cfg-diagram{--cfg-lit:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray));--cfg-block:color-mix(in srgb, var(--gray) 28%, var(--lightgray))}.cfg-row{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cfg-col{gap:var(--space-3);justify-items:center;display:grid}.cfg-code{border:1px solid var(--dark);background:var(--light);width:100%;max-width:14rem;padding:var(--space-2) var(--space-3);gap:.15rem;margin:0;display:grid}.cfg-code code{color:var(--dark);font-family:var(--codeFont);white-space:pre;font-size:.72rem}.cfg-svg{width:100%;max-width:12rem;display:block;overflow:visible}.cfg-edge{fill:none;stroke:var(--dark);stroke-width:1.2px}.cfg-end{fill:var(--light);stroke:var(--dark);stroke-width:1.2px}.cfg-diamond,.cfg-block{fill:var(--cfg-block);stroke:var(--dark);stroke-width:1.2px}.cfg-diamond--lit,.cfg-block--lit{fill:var(--cfg-lit)}.cfg-label{fill:var(--dark);font-family:var(--codeFont);font-size:11px}.cfg-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.cfg-math{color:inherit;display:inline-block}.cfg-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){.cfg-row{grid-template-columns:1fr}}.compiler-pipeline{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cp-figure/inline-size}.compiler-pipeline :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .compiler-pipeline{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.compiler-pipeline{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.compiler-pipeline{--cp-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light));--cp-analysis:color-mix(in srgb, var(--fig-sage) 36%, var(--light));--cp-synthesis:color-mix(in srgb, var(--lightgray) 45%, var(--light))}:root[saved-theme=dark] .compiler-pipeline{--cp-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--cp-analysis:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--cp-synthesis:color-mix(in srgb, var(--gray) 28%, var(--lightgray))}article.notebook-page .compiler-pipeline--float-end{float:right;width:min(22rem,46%);max-width:100%;margin:0 0 1rem 1rem}.cp-task{grid-template-columns:auto auto 1fr auto;justify-content:center;align-items:center;gap:.55rem;display:grid}.cp-task-outs{gap:.35rem;display:grid}.cp-box{border:1px solid var(--dark);background:var(--light);color:var(--dark);font-family:var(--codeFont);text-align:center;padding:.4rem .55rem;font-size:.72rem}.cp-box--lit{background:var(--cp-lit)}.cp-box--mid{background:var(--cp-analysis);align-self:center}.cp-arrow{color:var(--fig-note);font-size:1.1rem}.cp-phases,.cp-passes{margin:0;gap:.35rem;max-width:28rem;margin-inline:auto;padding:0;list-style:none;display:grid}.cp-io{text-align:center;color:var(--fig-note);font-family:var(--codeFont);font-size:.72rem}.cp-phase,.cp-pass{border:1px solid var(--dark);background:var(--cp-synthesis);gap:.15rem;padding:.45rem .55rem;display:grid}.cp-phase[data-cp-band=analysis],.cp-pass[data-cp-band=analysis]{background:var(--cp-analysis)}.cp-phase-name,.cp-pass{color:var(--dark);font-family:var(--bodyFont);font-size:.78rem}.cp-phase-out{color:var(--fig-note);font-family:var(--codeFont);font-size:.68rem}.cp-example{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.cp-ex-label{color:var(--fig-note);margin:0 0 .3rem;font-size:.7rem}.cp-ex-code,.cp-ex-toks,.cp-ex-note{font-family:var(--codeFont);color:var(--dark);margin:0;font-size:.72rem}.cp-ex-code{border:1px solid var(--fig-frame-border);background:var(--light);white-space:pre-wrap;padding:.4rem}.cp-tree-node{border:1px solid var(--dark);background:var(--light);color:var(--dark);font-family:var(--codeFont);text-align:center;width:fit-content;margin-inline:auto;padding:.2rem .4rem;font-size:.7rem}.cp-tree-node--lit{background:var(--cp-lit)}.cp-tree-row{justify-content:center;gap:.55rem;margin-top:.35rem;display:flex}.cp-tree-branch{gap:.25rem;display:grid}.cp-fb{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;display:grid}.cp-fb-col{gap:.35rem;display:grid}.cp-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.cp-math{color:inherit;display:inline-block}.cp-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .compiler-pipeline--float-end{float:none;width:100%;margin:0 0 1rem}.cp-example,.cp-fb,.cp-task{grid-template-columns:1fr}}.cpm-activity{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:cpm-figure/inline-size}.cpm-activity :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .cpm-activity{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.cpm-activity{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.cpm-activity{--cpm-id:color-mix(in srgb, var(--fig-salmon) 42%, var(--light))}:root[saved-theme=dark] .cpm-activity{--cpm-id:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray))}.cpm-node{border:1px solid var(--dark);background:var(--fig-surface);max-width:28rem;min-height:14rem;margin:0 auto;padding:2.4rem 5.5rem 3.2rem;position:relative}.cpm-corner{border:1px solid var(--dark);background:var(--light);width:5rem;color:var(--dark);font-family:var(--codeFont);text-align:center;padding:.35rem .25rem;font-size:.62rem;line-height:1.25;position:absolute}.cpm-corner--tl{top:.55rem;left:.55rem}.cpm-corner--tr{top:.55rem;right:.55rem}.cpm-corner--bl{bottom:.55rem;left:.55rem}.cpm-corner--br{bottom:.55rem;right:.55rem}.cpm-id{border:1px solid var(--dark);text-align:center;background:var(--cpm-id);width:5.5rem;height:5.5rem;color:var(--dark);font-family:var(--codeFont);border-radius:50%;place-items:center;margin:0 auto .6rem;padding:.4rem;font-size:.68rem;display:grid}.cpm-name{text-align:center;color:var(--dark);font-family:var(--bodyFont);margin-bottom:.85rem;font-size:1rem;font-weight:600}.cpm-split{border-top:1px solid var(--dark);grid-template-columns:1fr 1fr;display:grid}.cpm-split span{text-align:center;color:var(--dark);font-family:var(--codeFont);padding:.7rem .4rem;font-size:.78rem}.cpm-split span:first-child{border-right:1px solid var(--dark)}.cpm-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.cpm-math{color:inherit;display:inline-block}.cpm-math .katex{color:inherit;font-size:.95em}.deadline-usefulness{content-visibility:auto;contain-intrinsic-size:auto 14rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:du-figure/inline-size}.deadline-usefulness :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .deadline-usefulness{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.deadline-usefulness{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.deadline-usefulness{--du-curve:color-mix(in srgb, var(--gray) 55%, var(--dark));--du-lit:color-mix(in srgb, var(--fig-salmon) 55%, var(--dark))}:root[saved-theme=dark] .deadline-usefulness{--du-curve:color-mix(in srgb, var(--lightgray) 45%, var(--dark));--du-lit:color-mix(in srgb, var(--fig-salmon) 40%, var(--light))}.du-row{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.du-title{margin:0 0 var(--space-2);color:var(--fig-note);font-family:var(--bodyFont);text-align:center;font-size:.78rem}.du-svg{width:100%;max-width:12rem;margin:0 auto;display:block;overflow:visible}.du-axis{stroke:var(--dark);stroke-width:1.2px;fill:none}.du-arrow{fill:var(--dark)}.du-label,.du-deadline-label{fill:var(--fig-note);font-family:var(--bodyFont);font-size:10px}.du-deadline{stroke:var(--dark);stroke-width:1.2px}.du-curve{fill:none;stroke:var(--du-curve);stroke-width:3.5px;stroke-linecap:square;stroke-linejoin:miter}.du-curve--lit{stroke:var(--du-lit)}.du-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.du-math{color:inherit;display:inline-block}.du-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){.du-row{grid-template-columns:1fr}}.expr-parse-tree{content-visibility:auto;contain-intrinsic-size:auto 16rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ept-figure/inline-size}.expr-parse-tree :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .expr-parse-tree{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.expr-parse-tree{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.expr-parse-tree{--ept-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light))}:root[saved-theme=dark] .expr-parse-tree{--ept-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray))}article.notebook-page .expr-parse-tree--float-end{float:right;width:min(18rem,46%);margin:0 0 1rem 1rem}.ept-root{justify-content:center;display:flex}.ept-branch{justify-items:center;gap:.35rem;display:grid}.ept-kids{justify-content:center;gap:.7rem;display:flex}.ept-node{border:1px solid var(--dark);background:var(--light);color:var(--dark);font-family:var(--codeFont);text-align:center;min-width:1.6rem;padding:.22rem .45rem;font-size:.72rem}.ept-node--lit{background:var(--ept-lit)}.ept-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ept-math{color:inherit;display:inline-block}.ept-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .expr-parse-tree--float-end{float:none;width:100%;margin:0 0 1rem}}.grammar-diagram{content-visibility:auto;contain-intrinsic-size:auto 10rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:gd-figure/inline-size}.grammar-diagram :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .grammar-diagram{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.grammar-diagram{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.grammar-diagram{--gd-term:color-mix(in srgb, var(--fig-salmon) 40%, var(--light));--gd-nonterm:color-mix(in srgb, var(--fig-sage) 38%, var(--light))}:root[saved-theme=dark] .grammar-diagram{--gd-term:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray));--gd-nonterm:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}article.notebook-page .grammar-diagram--float-end{float:right;width:min(16rem,46%);max-width:100%;margin:0 0 1rem 1rem}.gd-canvas{place-items:center;min-height:4.5rem;padding:.35rem 0;display:grid}.gd-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;display:flex}.gd-term,.gd-nonterm,.gd-paren{border:1px solid var(--dark);color:var(--dark);font-family:var(--codeFont);text-align:center;padding:.28rem .55rem;font-size:.74rem}.gd-term{background:var(--gd-term);border-radius:999px}.gd-nonterm{background:var(--gd-nonterm)}.gd-paren{background:var(--light);border:none;padding:.28rem .2rem;font-size:1rem}.gd-rail{background:var(--dark);width:1.1rem;height:1px;display:block}.gd-arrow{color:var(--fig-note);font-family:var(--codeFont);font-size:.9rem}.gd-choice{border-left:1px solid var(--dark);border-right:1px solid var(--dark);justify-items:center;gap:.35rem;padding:.35rem .7rem;display:grid}.gd-option{justify-items:center;gap:.25rem;display:grid}.gd-bypass{background:var(--fig-note);width:3.2rem;height:1px;display:block}.gd-rep{align-items:center;gap:.45rem;display:flex}.gd-loop{color:var(--fig-note);font-size:1rem}.gd-railroad{flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;display:flex}.gd-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.gd-math{color:inherit;display:inline-block}.gd-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .grammar-diagram--float-end{float:none;width:100%;margin:0 0 1rem}}.hyperperiod-flow{content-visibility:auto;contain-intrinsic-size:auto 24rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:hpf-figure/inline-size}.hyperperiod-flow :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .hyperperiod-flow{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.hyperperiod-flow{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.hyperperiod-flow{--hpf-end:color-mix(in srgb, var(--fig-salmon) 40%, var(--light))}:root[saved-theme=dark] .hyperperiod-flow{--hpf-end:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray))}.hpf-svg{width:100%;max-width:38rem;margin:0 auto;display:block;overflow:visible}.hpf-node{fill:var(--light);stroke:var(--dark);stroke-width:1.2px}.hpf-node--end{fill:var(--hpf-end)}.hpf-edge{stroke:var(--fig-stroke);stroke-width:1.2px}.hpf-arrowhead{fill:var(--dark)}.hpf-col,.hpf-node-label,.hpf-edge-label{fill:var(--dark);font-family:var(--bodyFont);font-size:12px}.hpf-edge-label{font-family:var(--codeFont);font-size:11px}.hpf-col{fill:var(--fig-note);font-size:11px}.hpf-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.hpf-math{color:inherit;display:inline-block}.hpf-math .katex{color:inherit;font-size:.95em}.job-deadline{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:jd-figure/inline-size}.job-deadline :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .job-deadline{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.job-deadline{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.job-deadline{--jd-job:color-mix(in srgb, var(--fig-salmon) 48%, var(--light));--jd-release:color-mix(in srgb, var(--fig-sage) 42%, var(--light))}:root[saved-theme=dark] .job-deadline{--jd-job:color-mix(in srgb, var(--fig-salmon) 28%, var(--lightgray));--jd-release:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray))}.jd-svg{width:100%;max-width:42rem;margin:0 auto;display:block;overflow:visible}.jd-axis{stroke:var(--dark);stroke-width:1.2px}.jd-arrowhead{fill:var(--dark)}.jd-axis-label,.jd-mark,.jd-span-label,.jd-anno,.jd-job-label{fill:var(--dark);font-family:var(--bodyFont);font-size:11px}.jd-job-label{font-family:var(--codeFont);font-size:12px}.jd-release{fill:var(--jd-release);stroke:var(--dark);stroke-width:1px}.jd-job{fill:var(--jd-job);stroke:var(--dark);stroke-width:1px}.jd-tick{stroke:var(--fig-stroke);stroke-width:1px}.jd-tick--hard{stroke:var(--dark);stroke-width:1.4px}.jd-span{stroke:var(--dark);stroke-width:1.1px}.jd-span--rel{stroke:var(--fig-stroke)}.jd-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.jd-math{color:inherit;display:inline-block}.jd-math .katex{color:inherit;font-size:.95em}.memory-alloc{content-visibility:auto;contain-intrinsic-size:auto 14rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ma-figure/inline-size}.memory-alloc :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .memory-alloc{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.memory-alloc{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.memory-alloc{--ma-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light));--ma-soft:color-mix(in srgb, var(--lightgray) 50%, var(--light))}:root[saved-theme=dark] .memory-alloc{--ma-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--ma-soft:color-mix(in srgb, var(--gray) 30%, var(--lightgray))}article.notebook-page .memory-alloc--float-end{float:right;width:min(22rem,48%);max-width:100%;margin:0 0 1rem 1rem}.ma-block,.ma-align,.ma-risc{gap:.45rem;display:grid}.ma-label,.ma-align-title,.ma-note,.ma-band-note{color:var(--fig-note);font-family:var(--codeFont);margin:0;font-size:.7rem}.ma-strip{background:var(--fig-grid-line);border:1px solid var(--dark);flex-wrap:wrap;gap:1px;width:fit-content;max-width:100%;display:flex}.ma-cell{background:var(--light);min-width:2.4rem;color:var(--dark);font-family:var(--codeFont);text-align:center;padding:.45rem .4rem;font-size:.7rem}.ma-cell--lit{background:var(--ma-lit)}.ma-cell--soft{background:var(--ma-soft);color:var(--fig-note)}.ma-marks{color:var(--fig-note);font-family:var(--codeFont);gap:.55rem;font-size:.65rem;display:flex}.ma-risc{max-width:18rem;margin-inline:auto}.ma-band{border:1px solid var(--dark);background:var(--light);justify-content:space-between;gap:.75rem;padding:.45rem .55rem;display:flex}.ma-band--lit{background:var(--ma-lit)}.ma-band--soft{background:var(--ma-soft)}.ma-band-name{color:var(--dark);font-family:var(--bodyFont);font-size:.78rem}.ma-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ma-math{color:inherit;display:inline-block}.ma-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .memory-alloc--float-end{float:none;width:100%;margin:0 0 1rem}}.preempt-schedule{content-visibility:auto;contain-intrinsic-size:auto 16rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ps-figure/inline-size}.preempt-schedule :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .preempt-schedule{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.preempt-schedule{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.preempt-schedule{--ps-bar:color-mix(in srgb, var(--lightgray) 50%, var(--light));--ps-lit:color-mix(in srgb, var(--fig-salmon) 40%, var(--light))}:root[saved-theme=dark] .preempt-schedule{--ps-bar:color-mix(in srgb, var(--gray) 30%, var(--lightgray));--ps-lit:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray))}.ps-svg{width:100%;max-width:36rem;margin:0 auto;display:block;overflow:visible}.ps-axis{stroke:var(--dark);stroke-width:1.2px;fill:none}.ps-arrow{fill:var(--dark)}.ps-axis-label,.ps-tick,.ps-bar-label,.ps-note{fill:var(--dark);font-family:var(--bodyFont);font-size:11px}.ps-tick,.ps-note{fill:var(--fig-note);font-size:10px}.ps-bar{fill:var(--ps-bar);stroke:var(--dark);stroke-width:1.1px}.ps-bar--lit{fill:var(--ps-lit)}.ps-xfer{stroke:var(--dark);stroke-width:1px;fill:none;opacity:.55}.ps-done{stroke:var(--dark);stroke-width:3px}.ps-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ps-math{color:inherit;display:inline-block}.ps-math .katex{color:inherit;font-size:.95em}.process-threads{content-visibility:auto;contain-intrinsic-size:auto 26rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:pt-figure/inline-size}.process-threads :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .process-threads{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.process-threads{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.process-threads{--pt-shared:color-mix(in srgb, var(--fig-sage) 38%, var(--light));--pt-state:color-mix(in srgb, var(--lightgray) 50%, var(--light));--pt-wave:var(--fig-salmon)}:root[saved-theme=dark] .process-threads{--pt-shared:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--pt-state:color-mix(in srgb, var(--gray) 30%, var(--lightgray))}.pt-grid{grid-template-columns:1fr 1.4fr;gap:1rem;display:grid}.pt-card{border:1px solid var(--fig-frame-border);background:var(--fig-surface);padding:.75rem}.pt-title{font-size:var(--text-meta);color:var(--fig-note);margin:0 0 .65rem;font-weight:600}.pt-shared{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 .65rem;padding:1px;display:grid}.pt-shared-cell{border-radius:var(--radius-none);background:var(--fig-grid-cell);background:var(--pt-shared);min-width:0;color:var(--dark);font-family:var(--codeFont);text-align:center;border:0;margin:0;padding:.35rem .2rem;font-size:.72rem}.pt-threads{grid-template-columns:repeat(3,1fr);gap:.45rem;display:grid}.pt-thread{flex-direction:column;align-items:center;gap:.35rem;display:flex}.pt-state{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-template-columns:1fr;gap:1px;width:100%;margin:0;padding:1px;display:grid}.pt-state span{border-radius:var(--radius-none);background:var(--fig-grid-cell);background:var(--pt-state);min-width:0;color:var(--dark);font-family:var(--codeFont);text-align:center;border:0;margin:0;padding:.3rem .2rem;font-size:.68rem}.pt-wave{width:1.25rem;height:3rem}.pt-wave-svg{width:100%;height:100%;display:block}.pt-wave-path{fill:none;stroke:var(--pt-wave);stroke-width:2px}.pt-thread-label{color:var(--fig-note);font-family:var(--codeFont);font-size:.68rem}.pt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.pt-math{color:inherit;display:inline-block}.pt-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){.pt-grid{grid-template-columns:1fr}}.regex-automaton{content-visibility:auto;contain-intrinsic-size:auto 14rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ra-figure/inline-size}.regex-automaton :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .regex-automaton{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.regex-automaton{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.regex-automaton{--ra-lit:color-mix(in srgb, var(--fig-salmon) 42%, var(--light));--ra-fill:color-mix(in srgb, var(--lightgray) 40%, var(--light))}:root[saved-theme=dark] .regex-automaton{--ra-lit:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--ra-fill:color-mix(in srgb, var(--gray) 28%, var(--lightgray))}article.notebook-page .regex-automaton--float-end{float:right;width:min(20rem,48%);max-width:100%;margin:0 0 1rem 1rem}.ra-svg{width:100%;max-width:28rem;margin:0 auto;display:block;overflow:visible}.ra-state{fill:var(--ra-fill);stroke:var(--dark);stroke-width:1.2px}.ra-state--lit{fill:var(--ra-lit)}.ra-accept{fill:none;stroke:var(--dark);stroke-width:1.1px}.ra-state-label,.ra-edge-label{fill:var(--dark);font-family:var(--codeFont);font-size:11px}.ra-edge,.ra-start{fill:none;stroke:var(--dark);stroke-width:1.1px}.ra-arrowhead{fill:var(--dark)}.ra-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ra-math{color:inherit;display:inline-block}.ra-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .regex-automaton--float-end{float:none;width:100%;margin:0 0 1rem}}.register-as-stack{content-visibility:auto;contain-intrinsic-size:auto 22rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:ras-figure/inline-size}.register-as-stack :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .register-as-stack{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.register-as-stack{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.register-as-stack{--ras-filled:color-mix(in srgb, var(--fig-salmon) 36%, var(--light));--ras-empty:color-mix(in srgb, var(--lightgray) 55%, var(--light))}:root[saved-theme=dark] .register-as-stack{--ras-filled:color-mix(in srgb, var(--fig-salmon) 22%, var(--lightgray));--ras-empty:color-mix(in srgb, var(--gray) 28%, var(--lightgray))}article.notebook-page .register-as-stack--float-end{float:right;width:min(22rem,48%);max-width:100%;margin:0 0 1rem 1rem}.ras-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;display:grid}.ras-stack,.ras-ops{margin:0;margin-top:calc(1.125rem + var(--space-3));padding:var(--space-3);border:1px solid var(--fig-frame-border);background:var(--light);position:relative}.ras-stack>legend,.ras-ops>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);white-space:nowrap;margin:0;font-size:.75rem;line-height:1.5;position:absolute;left:0}.ras-steps{gap:var(--space-2);display:grid}.ras-row{position:relative}.ras-slots{gap:var(--space-1);grid-template-columns:repeat(4,minmax(2.4rem,1fr));display:grid}.ras-sp{color:var(--fig-note);font-family:var(--codeFont);white-space:nowrap;grid-row:1;justify-self:start;margin-bottom:.1rem;font-size:.62rem;line-height:1.2}.ras-slot{border:1px solid color-mix(in srgb, var(--dark) 35%, var(--lightgray));background:var(--ras-empty);min-height:1.85rem;color:var(--dark);font-family:var(--codeFont);text-align:center;grid-row:2;place-items:center;padding:.15rem .2rem;font-size:.68rem;display:grid}.ras-slot--filled{border-color:var(--dark);background:var(--ras-filled)}.ras-op-list{gap:var(--space-3);padding:0;padding-top:var(--space-2);margin:0;list-style:none;display:grid}.ras-op code{color:var(--dark);font-family:var(--codeFont);font-size:.74rem}.ras-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.ras-math{color:inherit;display:inline-block}.ras-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){article.notebook-page .register-as-stack--float-end{float:none;width:100%;margin:0 0 1rem}.ras-grid{grid-template-columns:1fr}}.fr-rewriter{content-visibility:auto;contain-intrinsic-size:auto 14rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:fr-rewriter/inline-size}.fr-rewriter :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .fr-rewriter{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.fr-rewriter{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.fr-rewriter{--frw-btn-on:color-mix(in srgb, var(--fig-sage) 38%, var(--light));flex-direction:column;gap:.75rem;display:flex}.fr-rewriter .fr-rw-group{border-radius:var(--radius-none);background:var(--fig-grid-line);border:0;grid-auto-flow:column;justify-content:start;gap:1px;width:max-content;min-width:0;max-width:100%;margin:0;padding:1px;display:grid}.fr-rewriter .fr-rw-btn{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:0;min-height:1.75rem;color:var(--fig-tab-fg);font:400 .75rem/1.2 var(--codeFont);text-transform:lowercase;white-space:nowrap;cursor:var(--cursor-pointer,pointer);border:0;margin:0;padding:.28rem .65rem;transition:background-color .14s,color .14s}@media (pointer:coarse){.fr-rewriter .fr-rw-btn{min-height:44px}}@media (hover:hover) and (pointer:fine){.fr-rewriter .fr-rw-btn:hover{color:var(--dark)}}.fr-rewriter .fr-rw-btn[aria-selected=true]{background:var(--frw-btn-on);color:var(--dark)}.fr-rewriter .fr-rw-btn:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}.fr-rewriter .fr-rw-row{align-items:flex-start;gap:.5rem;display:flex}.fr-rewriter .fr-rw-out{min-height:2.4em;color:var(--dark);overflow-wrap:anywhere;flex:1;margin:0;font-size:1.05rem;line-height:1.4}.fr-rewriter .fr-rw-speak{border-radius:var(--radius-none);background:var(--fig-grid-cell);width:1.75rem;height:1.75rem;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);border:0;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .14s,color .14s;display:inline-flex}@media (pointer:coarse){.fr-rewriter .fr-rw-speak{width:44px;height:44px}}.fr-rewriter .fr-rw-speak[hidden]{display:none}@media (hover:hover) and (pointer:fine){.fr-rewriter .fr-rw-speak:hover{background:var(--frw-btn-on);color:var(--dark)}}.fr-rewriter .fr-rw-speak:focus-visible{outline:2px solid var(--dark);outline-offset:2px}.fr-rewriter .fr-rw-speak svg{fill:none;stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.fr-rewriter .fr-rw-why{min-height:1.4em;color:var(--fig-caption-fg);text-wrap:pretty;margin:0;font-size:.8rem;line-height:1.45}.fr-rewriter .fr-rw-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:0;line-height:1.45;display:inline-block}.response-time{content-visibility:auto;contain-intrinsic-size:auto 20rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:rt-figure/inline-size}.response-time :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .response-time{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.response-time{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.response-time{--rt-job:color-mix(in srgb, var(--fig-salmon) 50%, var(--light))}:root[saved-theme=dark] .response-time{--rt-job:color-mix(in srgb, var(--fig-salmon) 28%, var(--lightgray))}.rt-svg{width:100%;max-width:36rem;margin:0 auto;display:block;overflow:visible}.rt-axis,.rt-marker,.rt-bracket{stroke:var(--dark);stroke-width:1.2px;fill:none}.rt-bracket--wide{stroke-width:1.4px}.rt-arrowhead{fill:var(--dark)}.rt-job{fill:var(--rt-job);stroke:var(--dark);stroke-width:1px}.rt-axis-label,.rt-marker-label,.rt-bracket-label,.rt-job-label{fill:var(--dark);font-family:var(--bodyFont);font-size:11px}.rt-job-label{font-family:var(--codeFont)}.rt-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.rt-math{color:inherit;display:inline-block}.rt-math .katex{color:inherit;font-size:.95em}.schema-layers{content-visibility:auto;contain-intrinsic-size:auto 26rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:scl-figure/inline-size}.schema-layers :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .schema-layers{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.schema-layers{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.schema-layers{--scl-view:color-mix(in srgb, var(--lightgray) 45%, var(--light));--scl-concept:color-mix(in srgb, var(--fig-salmon) 40%, var(--light));--scl-phys:color-mix(in srgb, var(--fig-sage) 38%, var(--light))}:root[saved-theme=dark] .schema-layers{--scl-view:color-mix(in srgb, var(--gray) 28%, var(--lightgray));--scl-concept:color-mix(in srgb, var(--fig-salmon) 24%, var(--lightgray));--scl-phys:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.scl-svg{width:100%;max-width:36rem;margin:0 auto;display:block;overflow:visible}.scl-box{stroke:var(--dark);stroke-width:1px}.scl-box--view{fill:var(--scl-view)}.scl-box--concept{fill:var(--scl-concept)}.scl-box--phys{fill:var(--scl-phys)}.scl-disk,.scl-disk-body{fill:var(--light);stroke:var(--dark);stroke-width:1px}.scl-edge{fill:none;stroke:var(--fig-stroke);stroke-width:1.2px}.scl-arrowhead{fill:var(--dark)}.scl-label{fill:var(--dark);font-family:var(--bodyFont);font-size:12px}.scl-sub{fill:var(--fig-note);font-family:var(--codeFont);font-size:11px}.scl-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.scl-math{color:inherit;display:inline-block}.scl-math .katex{color:inherit;font-size:.95em}.sql-join{content-visibility:auto;contain-intrinsic-size:auto 36rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:sj-figure/inline-size}.sql-join :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .sql-join{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.sql-join{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.sql-join{--sj-course:color-mix(in srgb, var(--fig-salmon) 45%, var(--light));--sj-prereq:color-mix(in srgb, var(--fig-sage) 40%, var(--light));--sj-head:color-mix(in srgb, var(--lightgray) 55%, var(--light));--sj-on:var(--fig-grid-selected)}:root[saved-theme=dark] .sql-join{--sj-course:color-mix(in srgb, var(--fig-salmon) 28%, var(--lightgray));--sj-prereq:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--sj-head:color-mix(in srgb, var(--gray) 35%, var(--lightgray));--sj-on:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray))}.sj-segments{border-radius:var(--radius-none);background:var(--fig-grid-line);margin:0;margin-top:calc(var(--text-meta) * 1.5 + var(--space-3) + var(--space-1) + 0rem);border:0;gap:1px;padding:1px;display:grid;position:relative}.sj-segments>legend{bottom:calc(100% + var(--space-3));padding:0 0 var(--space-1);color:var(--fig-note);font-size:var(--text-meta);white-space:nowrap;margin:0;line-height:1.5;position:absolute;left:0}.sj-segments{border:0;grid-auto-flow:column;width:fit-content;margin-bottom:1.1rem;padding:0}.sj-segment{border-radius:var(--radius-none);background:var(--fig-grid-cell);min-width:2.4rem;color:var(--fig-tab-fg);cursor:var(--cursor-pointer,pointer);font-family:var(--codeFont);border:0;justify-content:center;align-items:center;margin:0;padding:.28rem .55rem;font-size:.72rem;display:inline-flex}.sj-segment input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.sj-segment:has(input:checked){background:var(--sj-on);color:var(--dark)}.sj-segment:has(input:focus-visible){outline:2px solid var(--dark);outline-offset:2px}.sj-sources{grid-template-columns:1.4fr 1fr;gap:1rem;margin-bottom:.85rem;display:grid}.sj-table{min-width:0}.sj-name{color:var(--fig-note);font-family:var(--codeFont);align-items:center;gap:.4rem;margin-bottom:.35rem;font-size:.72rem;display:flex}.sj-swatch{flex:none;width:.55rem;height:.55rem}.sj-swatch--course{background:var(--sj-course)}.sj-swatch--prereq{background:var(--sj-prereq)}.sj-swatch--result{background:var(--sj-on)}.sj-table table{border-collapse:collapse;width:100%;font-family:var(--codeFont);font-variant-numeric:tabular-nums;font-size:.7rem}.sj-table th,.sj-table td{border:1px solid var(--fig-grid-line);text-align:left;color:var(--dark);background:var(--light);padding:.28rem .4rem}.sj-table th{background:var(--sj-head);font-style:italic;font-weight:500}.sj-null{color:var(--fig-note);font-style:italic}.sj-op{color:var(--dark);font-family:var(--codeFont);margin:0 0 .45rem;font-size:.78rem}.sj-op strong{color:var(--dark);font-weight:600}.sj-result{display:none}:is(.sql-join:has([data-sql-mode-input][value=inner]:checked) [data-sql-panel=inner],.sql-join:has([data-sql-mode-input][value=left]:checked) [data-sql-panel=left],.sql-join:has([data-sql-mode-input][value=right]:checked) [data-sql-panel=right],.sql-join:has([data-sql-mode-input][value=full]:checked) [data-sql-panel=full]){display:block}.sj-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.sj-math{color:inherit;display:inline-block}.sj-math .katex{color:inherit;font-size:.95em}@media (max-width:640px){.sj-sources{grid-template-columns:1fr}.sj-segments{grid-auto-flow:row;width:100%}}.thread-address-space{content-visibility:auto;contain-intrinsic-size:auto 28rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:tas-figure/inline-size}.thread-address-space :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .thread-address-space{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.thread-address-space{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.thread-address-space{--tas-shared:color-mix(in srgb, var(--fig-sage) 40%, var(--light));--tas-private:color-mix(in srgb, var(--fig-salmon) 42%, var(--light));--tas-view:color-mix(in srgb, var(--lightgray) 35%, var(--light))}:root[saved-theme=dark] .thread-address-space{--tas-shared:color-mix(in srgb, var(--fig-sage) 24%, var(--lightgray));--tas-private:color-mix(in srgb, var(--fig-salmon) 26%, var(--lightgray));--tas-view:color-mix(in srgb, var(--gray) 28%, var(--lightgray))}.tas-svg{width:100%;max-width:42rem;margin:0 auto;display:block;overflow:visible}.tas-frame{fill:var(--fig-surface);stroke:var(--fig-frame-border);stroke-width:1px}.tas-frame--thread{fill:#0000}.tas-cell{stroke:var(--dark);stroke-width:1px}.tas-cell--shared{fill:var(--tas-shared)}.tas-cell--private{fill:var(--tas-private)}.tas-cell--view{fill:var(--tas-view);stroke:var(--fig-stroke-soft)}.tas-edge{fill:none;stroke:var(--fig-stroke);stroke-width:1.1px}.tas-edge--private{stroke:var(--dark);stroke-width:1.35px}.tas-arrowhead{fill:var(--dark)}.tas-title{fill:var(--fig-note);font-family:var(--bodyFont);font-size:11px}.tas-label{fill:var(--dark);font-family:var(--codeFont);font-size:10px}.tas-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.tas-math{color:inherit;display:inline-block}.tas-math .katex{color:inherit;font-size:.95em}.weak-entity{content-visibility:auto;contain-intrinsic-size:auto 24rem;box-sizing:border-box;border-radius:var(--radius-none);border:1px solid var(--fig-frame-border);background:color-mix(in srgb, var(--light) 94%, transparent);color:var(--dark);--fig-salmon:#fdb2a2;--fig-sage:var(--secondary);--fig-frame-border:color-mix(in srgb, var(--gray) 34%, transparent);--fig-stroke:color-mix(in srgb, var(--darkgray) 70%, transparent);--fig-stroke-soft:color-mix(in srgb, var(--gray) 45%, transparent);--fig-div:color-mix(in srgb, var(--gray) 28%, transparent);--fig-note:color-mix(in srgb, var(--darkgray) 78%, var(--dark) 22%);--fig-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-caption-fg:var(--darkgray);--fig-surface:color-mix(in srgb, var(--light) 96%, transparent);--fig-tab-surface:color-mix(in srgb, var(--light) 86%, var(--lightgray));--fig-tab-border:color-mix(in srgb, var(--lightgray) 78%, transparent);--fig-tab-fg:var(--darkgray);--fig-grid-line:color-mix(in srgb, var(--gray) 24%, transparent);--fig-grid-cell:var(--light);--fig-grid-selected:color-mix(in srgb, var(--fig-sage) 13%, var(--light));margin:1.75rem 0;padding:1.5rem 1.75rem;container:we-figure/inline-size}.weak-entity :is(input[type=text],input[type=number],textarea,select):focus-visible{outline:2px solid var(--control-focus,var(--dark));outline-offset:-2px}:root[saved-theme=dark] .weak-entity{--fig-frame-border:color-mix(in srgb, var(--gray) 46%, transparent);--fig-tab-fg:var(--fig-note)}.zoomable.is-zoomed>.zoomable-content>.weak-entity{background:color-mix(in srgb, var(--light) 94%, transparent);padding:1.5rem 1.75rem}.weak-entity{--we-entity:color-mix(in srgb, var(--fig-salmon) 36%, var(--light));--we-rel:color-mix(in srgb, var(--fig-sage) 40%, var(--light));--we-attr:color-mix(in srgb, var(--lightgray) 55%, var(--light))}:root[saved-theme=dark] .weak-entity{--we-entity:color-mix(in srgb, var(--fig-salmon) 22%, var(--lightgray));--we-rel:color-mix(in srgb, var(--fig-sage) 22%, var(--lightgray));--we-attr:color-mix(in srgb, var(--gray) 30%, var(--lightgray))}.we-svg{width:100%;max-width:42rem;margin:0 auto;display:block;overflow:visible}.we-entity{fill:var(--we-entity);stroke:var(--dark);stroke-width:1.2px}.we-entity--weak-outer{fill:none;stroke:var(--dark);stroke-width:1.2px}.we-entity--weak{fill:var(--we-entity)}.we-rel{fill:var(--we-rel);stroke:var(--dark);stroke-width:1.1px}.we-rel--outer{fill:none;stroke:var(--dark);stroke-width:1.1px}.we-attr{fill:var(--we-attr);stroke:var(--dark);stroke-width:1px}.we-attr--key{stroke-width:1.4px}.we-edge{stroke:var(--fig-stroke);stroke-width:1.2px;fill:none}.we-edge--soft{stroke:var(--fig-stroke-soft)}.we-arrowhead{fill:var(--dark)}.we-label{fill:var(--dark);font-family:var(--bodyFont);font-size:12px}.we-label--key{text-decoration:underline}.we-note{fill:var(--fig-note);font-family:var(--bodyFont);font-size:11px}.we-caption{color:var(--fig-caption-fg);font-size:var(--text-meta);text-align:left;text-wrap:pretty;margin-top:.9rem;line-height:1.45;display:inline-block}.we-math{color:inherit;display:inline-block}.we-math .katex{color:inherit;font-size:.95em}.zoomable{margin-top:1rem;position:relative}.zoomable-placeholder{width:100%;display:block}.zoomable>.zoomable-content{display:block}.zoomable>.zoomable-content>figure,.zoomable>.zoomable-content>*{margin-top:0;margin-bottom:0}.zoomable-trigger{z-index:2;background:color-mix(in srgb, var(--light) 88%, transparent);border:1px solid color-mix(in srgb, var(--gray) 32%, transparent);border-radius:var(--radius-none);width:26px;height:26px;cursor:var(--cursor-zoom-in,zoom-in);color:var(--darkgray);opacity:0;appearance:none;font:inherit;justify-content:center;align-items:center;margin:0;padding:0;transition:opacity .18s,transform .18s,color .18s,background .18s,border-color .18s;display:inline-flex;position:absolute;top:.6rem;right:.6rem;transform:translateY(-2px)}.zoomable-trigger:before{content:"";position:absolute;inset:-7px}.zoomable-trigger>svg{width:14px;height:14px;display:block}.zoomable-trigger .zoomable-trigger-icon{justify-content:center;align-items:center;display:inline-flex}.zoomable-trigger .zoomable-trigger-icon>svg{width:14px;height:14px;display:block}.zoomable-trigger .zoomable-trigger-icon--collapse{display:none}.zoomable-trigger:hover,.zoomable-trigger:focus-visible{color:var(--dark);background:var(--light);border-color:color-mix(in srgb, var(--gray) 52%, transparent);outline:none}.zoomable-trigger:focus-visible{outline:2px solid color-mix(in srgb, var(--secondary) 55%, transparent);outline-offset:2px}.zoomable-trigger:active{transform:translateY(0)scale(.96)}.zoomable>.zoomable-trigger:hover,.zoomable>.zoomable-trigger:focus-visible,.zoomable.is-zoomed>.zoomable-trigger{opacity:1;transform:translateY(0)}.zoomable.is-zoomed{z-index:1000;background:var(--light);border-radius:var(--radius-none);flex-direction:column;margin:0;padding:1.5rem 1.5rem 1rem;display:flex;position:fixed;inset:4vh 4vw;overflow:auto}.zoomable.is-zoomed>.zoomable-content{flex-direction:column;flex:auto;justify-content:center;align-items:stretch;min-height:0;display:flex}.zoomable.is-zoomed>.zoomable-content>figure{background:var(--light);border:0;flex-direction:column;flex:auto;justify-content:center;margin:0;padding:0;display:flex}.zoomable.is-zoomed>.zoomable-trigger{cursor:var(--cursor-zoom-out,zoom-out);background:color-mix(in srgb, var(--lightgray) 70%, transparent)}.zoomable.is-zoomed>.zoomable-trigger:hover,.zoomable.is-zoomed>.zoomable-trigger:focus-visible{background:var(--lightgray)}.zoomable.is-zoomed>.zoomable-trigger .zoomable-trigger-icon--expand{display:none}.zoomable.is-zoomed>.zoomable-trigger .zoomable-trigger-icon--collapse{display:inline-flex}.zoomable-backdrop{z-index:999;background:color-mix(in srgb, var(--dark) 55%, transparent);cursor:var(--cursor-zoom-out,zoom-out);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;animation:.55s cubic-bezier(.32,.72,0,1) forwards zoomable-backdrop-in;position:fixed;inset:0}@keyframes zoomable-backdrop-in{to{opacity:1}}::view-transition-group(zoomable-active){animation-duration:.55s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-image-pair(zoomable-active){isolation:auto}::view-transition-old(zoomable-active){opacity:0;mix-blend-mode:normal;animation:none}::view-transition-new(zoomable-active){opacity:1;mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){.zoomable-backdrop{opacity:1;animation:none}::view-transition-group(zoomable-active){animation-duration:10ms}::view-transition-old(zoomable-active){animation-duration:10ms}::view-transition-new(zoomable-active){animation-duration:10ms}}@media (max-width:800px){.zoomable.is-zoomed{padding:1rem;inset:2vh 2vw}}}