*{box-sizing:border-box}html{background:var(--sw-surface-0);min-height:100%;scroll-padding-top:calc(var(--sw-header-height) + 1.5rem)}body{min-height:100vh;color:var(--sw-fg);background:var(--sw-surface-0);font-family:var(--sw-font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:.9375rem;line-height:1.65}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:color-mix(in srgb, var(--sw-accent) 30%, transparent)}@media (forced-colors:none){:root{--sw-scrollbar-thumb:color-mix(in srgb, var(--sw-fg-dim) 55%, transparent);--sw-scrollbar-track:transparent;scrollbar-width:thin}*{scrollbar-color:var(--sw-scrollbar-thumb) var(--sw-scrollbar-track)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--sw-scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--sw-scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--sw-fg-dim) 78%, transparent)}::-webkit-scrollbar-corner{background:0 0}}:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--sw-accent) 45%, transparent);outline:none}.sheetwrite:focus-visible{box-shadow:none}.expressive-code pre:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sw-accent) 40%, transparent)}.sw-prose a:focus-visible,.sw-document__footer a:focus-visible{border-radius:.25rem}.sw-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sw-brand{width:max-content;color:var(--sw-fg-strong);font:650 1.05rem / 1 var(--sw-font-display);letter-spacing:-.025em;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.sw-brand svg{width:1.65rem;height:1.65rem;fill:color-mix(in srgb, var(--sw-accent) 12%, var(--sw-surface-1));stroke:var(--sw-accent-strong);stroke-width:1.5px}.sw-skip-link{z-index:2000;color:#052016;background:var(--sw-accent);border-radius:.45rem;padding:.6rem .9rem;font-weight:700;position:fixed;top:.65rem;left:.65rem;transform:translateY(-300%)}.sw-skip-link:focus-visible{transform:none}.sw-icon-button{width:2.35rem;height:2.35rem;color:var(--sw-fg-muted);cursor:pointer;background:0 0;border:0;border-radius:.45rem;place-items:center;display:inline-grid}.sw-icon-button:hover{color:var(--sw-fg-strong);background:var(--sw-surface-2)}.sw-icon-button svg,.sw-search-button svg,.sw-search-dialog svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:1rem;height:1rem}.sw-search-button{border:1px solid var(--sw-border);width:100%;height:2.35rem;color:var(--sw-fg-muted);background:var(--sw-surface-0);text-align:left;cursor:pointer;border-radius:.55rem;align-items:center;gap:.65rem;padding-inline:.75rem;display:flex}.sw-search-button:hover{border-color:var(--sw-border-strong);background:var(--sw-surface-2)}.sw-search-button:focus-visible{border-color:color-mix(in srgb, var(--sw-accent) 55%, var(--sw-border));box-shadow:0 0 0 3px color-mix(in srgb, var(--sw-accent) 15%, transparent)}.sw-search-button span{flex:1}.sw-search-button kbd{border:1px solid var(--sw-border);color:var(--sw-fg-dim);background:var(--sw-surface-1);font:600 .7rem / 1.55 var(--sw-font-mono);border-radius:.3rem;padding:0 .4rem}.sw-search-dialog{border:1px solid var(--sw-border-strong);width:min(43rem,100vw - 2rem);max-height:min(42rem,100vh - 4rem);color:var(--sw-fg);background:var(--sw-surface-1);box-shadow:var(--sw-shadow);border-radius:.85rem;margin:clamp(2rem,12vh,7rem) auto auto;padding:0}.sw-search-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#040810b8}.sw-search-dialog input:focus-visible{box-shadow:none}.sw-search-dialog form{border-bottom:1px solid var(--sw-border);align-items:center;gap:.75rem;padding:.75rem;display:flex}.sw-search-dialog label{flex:1;align-items:center;gap:.7rem;min-width:0;display:flex}.sw-search-dialog input{min-width:0;color:var(--sw-fg-strong);background:0 0;border:0;outline:0;flex:1;font-size:1rem}.sw-search-dialog form>button{border:1px solid var(--sw-border);color:var(--sw-fg-dim);background:var(--sw-surface-2);font:600 .7rem var(--sw-font-mono);border-radius:.35rem;padding:.25rem .45rem}.sw-search-results{gap:.3rem;max-height:32rem;padding:.65rem;display:grid;overflow:auto}.sw-search-results>p{color:var(--sw-fg-muted);margin:1rem}.sw-search-results a{color:var(--sw-fg);border-radius:.55rem;gap:.25rem;padding:.75rem;text-decoration:none;display:grid}.sw-search-results a:hover{background:var(--sw-surface-2)}.sw-search-results a span{color:var(--sw-fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.sw-search-results a strong{align-items:baseline;gap:.5rem;min-width:0;font-weight:600;display:flex}.sw-search-results a strong code{border:1px solid var(--sw-border);color:var(--sw-fg-muted);background:var(--sw-surface-2);font:500 .68rem / 1.5 var(--sw-font-mono);text-overflow:ellipsis;white-space:nowrap;border-radius:.3rem;flex:0 auto;padding:.05rem .4rem;overflow:hidden}.sw-search-results a span mark{color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 14%, transparent);border-radius:.2rem}.sw-prose{color:var(--sw-fg)}.sw-prose>:first-child{margin-top:0}.sw-prose h1{display:none}.sw-prose h2,.sw-prose h3,.sw-prose h4{color:var(--sw-fg-strong);font-family:var(--sw-font-display);letter-spacing:-.025em;scroll-margin-top:calc(var(--sw-header-height) + 1.5rem);font-weight:650}.sw-prose h2{margin:3.5rem 0 1rem;padding-top:.6rem;font-size:1.65rem;line-height:1.2}.sw-prose h3{margin:2.4rem 0 .8rem;font-size:1.2rem}.sw-prose p,.sw-prose li{max-width:47rem}.sw-prose p{margin:1rem 0}.sw-prose ol,.sw-prose ul{margin:1rem 0;padding-inline-start:1.5rem}.sw-prose ol{list-style:decimal}.sw-prose ul{list-style:outside}.sw-prose li{margin-block:.35rem}.sw-prose li::marker{color:var(--sw-fg-dim)}.sw-prose a{color:var(--sw-accent-strong);text-underline-offset:.18em;text-decoration-thickness:1px}.sw-prose strong{color:var(--sw-fg-strong);font-weight:680}.sw-prose :not(pre)>code{border:1px solid var(--sw-border);color:var(--sw-fg-strong);background:var(--sw-surface-2);font:.82em var(--sw-font-mono);border-radius:.28rem;padding:.1rem .32rem}.sw-prose a>code{border-color:color-mix(in srgb, var(--sw-accent) 45%, var(--sw-border));color:var(--sw-accent-strong)}.sw-prose a:hover>code{background:color-mix(in srgb, var(--sw-accent) 10%, var(--sw-surface-2))}.sw-prose table{border-spacing:0;border-collapse:separate;border:1px solid var(--sw-border);border-radius:.65rem;width:100%;margin:1.5rem 0 2rem;font-size:.82rem;display:table}.sw-prose th,.sw-prose td{border-bottom:1px solid var(--sw-border);text-align:left;vertical-align:top;padding:.65rem .75rem}.sw-prose th{color:var(--sw-fg-strong);background:var(--sw-surface-2);font-weight:680}.sw-prose tr:last-child td{border-bottom:0}.sw-prose blockquote{border-left:3px solid var(--sw-accent);color:var(--sw-fg-muted);background:color-mix(in srgb, var(--sw-accent) 6%, transparent);margin:1.5rem 0;padding:.15rem 1rem}.sw-prose .expressive-code .frame{box-shadow:none}.sw-tabs{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.75rem;margin:1.5rem 0 2.5rem}.sw-tabs__list{border-bottom:1px solid var(--sw-border);gap:.25rem;padding:.45rem;display:flex;overflow-x:auto}.sw-tabs__list button{color:var(--sw-fg-muted);cursor:pointer;background:0 0;border:0;border-radius:.42rem;padding:.45rem .7rem;font-size:.78rem;font-weight:650}.sw-tabs__list button[aria-selected=true]{color:var(--sw-fg-strong);background:var(--sw-surface-3)}.sw-tabs__panel{padding:.35rem 1rem .5rem}.sw-architecture{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.8rem;margin:1.5rem 0 2.5rem;padding:1rem}.sw-architecture__flow{gap:.35rem;display:grid}.sw-architecture__step>div{border:1px solid var(--sw-border);background:var(--sw-surface-2);border-radius:.55rem;grid-template-columns:2rem 10rem minmax(0,1fr);align-items:baseline;gap:.75rem;padding:.8rem;display:grid}.sw-architecture__step>span{color:var(--sw-fg-dim);text-align:center;display:block}.sw-architecture__step div>span{color:var(--sw-accent-strong);font:600 .68rem var(--sw-font-mono)}.sw-architecture__step strong{font-family:var(--sw-font-display)}.sw-architecture__step p{color:var(--sw-fg-muted);margin:0;font-size:.82rem}.sw-architecture figcaption{color:var(--sw-fg-dim);margin:.8rem .25rem 0;font-size:.74rem}body .sw-code-popover__tag-link{color:var(--sw-accent-strong);overflow-wrap:anywhere;font-weight:650;text-decoration:none}body .sw-code-popover__tag-link:hover{text-decoration:underline}.sw-document__footer{border-top:1px solid var(--sw-border);color:var(--sw-fg-dim);gap:1.5rem;margin-top:5rem;padding-top:1.5rem;font-size:.75rem;display:grid}.sw-document__colophon{flex-wrap:wrap;justify-content:space-between;gap:.6rem 1rem;display:flex}.sw-document__footer a{color:var(--sw-fg-muted)}.sw-proof-shell{width:min(52rem,100% - 2rem);margin-inline:auto;padding-block:clamp(4rem,12vw,9rem)}.sw-button{color:#052016;background:var(--sw-accent);border-radius:.5rem;margin-top:1rem;padding:.7rem 1rem;font-weight:700;text-decoration:none;display:inline-flex}.sw-prose .expressive-code{margin-block:1.4rem 2rem}.sw-prose .expressive-code figure.frame{border:1px solid var(--sw-border);box-shadow:none;border-radius:.75rem;overflow:hidden}.sw-prose .expressive-code figure.frame.has-title>figcaption.header{border-bottom:1px solid var(--sw-border);background:var(--sw-surface-2);justify-content:flex-start;align-items:center;min-height:2.5rem;padding-inline:1rem}.sw-prose .expressive-code figure.frame.has-title>figcaption.header:before,.sw-prose .expressive-code figure.frame.has-title>figcaption.header:after,.sw-prose .expressive-code figure.frame.has-title>figcaption.header>span.title:after{content:none}.sw-prose .expressive-code figure.frame.has-title>figcaption.header>span.title{height:auto;color:var(--sw-fg-muted);font:650 .72rem / 1.2 var(--sw-font-body);letter-spacing:.01em;background:0 0;border:0;border-radius:0;padding:0;display:inline-flex;position:static}.sw-prose .expressive-code pre{max-width:100%;font-size:.82rem;line-height:1.68}.api-pagehead,.api-metadata,.api-member-list,.api-member,.api-declaration,.api-symbol-grid,.api-symbol-card,.api-variant-list,.api-variant{box-sizing:border-box;min-width:0;max-width:100%}.api-status,.api-count{border:1px solid var(--sw-border);color:var(--sw-fg-muted);background:var(--sw-surface-2);font:600 .67rem / 1.3 var(--sw-font-mono);letter-spacing:.02em;border-radius:999px;align-items:center;padding:.16rem .55rem;display:inline-flex}.sw-prose h2 .api-count,.sw-prose h3 .api-count{vertical-align:middle;margin-left:.5rem}.api-symbol-badge[data-kind=class],.api-symbol-badge[data-kind=enum],.api-status[data-kind=class],.api-status[data-kind=enum],.api-status[data-status=test-only]{--api-kind-color:var(--sw-type-number)}.api-symbol-badge[data-kind=function],.api-status[data-kind=function],.api-status[data-status=supported]{--api-kind-color:var(--sw-accent)}.api-symbol-badge[data-kind=interface],.api-symbol-badge[data-kind=variable],.api-status[data-kind=interface],.api-status[data-kind=variable]{--api-kind-color:var(--sw-type-name)}.api-symbol-badge[data-kind=type],.api-status[data-kind=type]{--api-kind-color:var(--sw-type-keyword)}.api-status[data-kind],.api-status[data-status=supported],.api-status[data-status=test-only]{border-color:color-mix(in srgb, var(--api-kind-color) 32%, var(--sw-border));color:color-mix(in srgb, var(--api-kind-color) 72%, var(--sw-fg));background:color-mix(in srgb, var(--api-kind-color) 8%, var(--sw-surface-2))}.api-pagehead{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.sw-prose .api-backlink{color:var(--sw-fg-muted);align-items:center;gap:.4rem;font-size:.8rem;font-weight:550;text-decoration:none;display:inline-flex}.sw-prose .api-backlink:before{content:"←";color:var(--sw-fg-dim)}.sw-prose .api-backlink:hover,.sw-prose .api-backlink:hover:before{color:var(--sw-accent-strong)}.api-metadata{gap:.5rem;margin:1.5rem 0 2rem;display:grid}.api-metadata div{grid-template-columns:8.5rem minmax(0,1fr);align-items:baseline;gap:.8rem;display:grid}.api-metadata dt{color:var(--sw-fg-dim);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:600}.api-metadata dd{min-width:0;margin:0}.api-metadata dd code{overflow-wrap:anywhere}.api-member-index{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.6rem;flex-wrap:wrap;align-items:baseline;gap:.25rem .85rem;margin:1.25rem 0 2rem;padding:.7rem .9rem;font-size:.78rem;display:flex}.sw-prose .api-member-index a{color:var(--sw-fg-muted);text-decoration:none}.sw-prose .api-member-index a code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.sw-prose .api-member-index a:hover,.sw-prose .api-member-index a:hover code{color:var(--sw-accent-strong)}.sw-prose .api-entry-table{border:0;border-radius:0;margin:1.25rem 0 2.5rem}.sw-prose .api-entry-table th,.sw-prose .api-entry-table td{vertical-align:middle;padding:.55rem .75rem}.sw-prose .api-entry-table th{border-bottom-color:var(--sw-border-strong);color:var(--sw-fg-dim);letter-spacing:.06em;text-transform:uppercase;background:0 0;font-size:.68rem;font-weight:650}.sw-prose .api-entry-table tr:last-child td{border-bottom:1px solid var(--sw-border)}.sw-prose .api-entry-table th:first-child,.sw-prose .api-entry-table td:first-child{width:52%;padding-inline-start:.2rem}.sw-prose .api-entry-table th:last-child,.sw-prose .api-entry-table td:last-child{text-align:right;padding-inline-end:.2rem}.sw-prose .api-entry-table td:last-child{color:var(--sw-fg-muted);font:500 .8rem var(--sw-font-mono);font-variant-numeric:tabular-nums}.sw-prose .api-entry-table tbody tr:hover td{background:color-mix(in srgb, var(--sw-surface-2) 70%, transparent)}.sw-prose .api-entry-table a{text-decoration:none}.sw-prose .api-entry-table a>code{color:var(--sw-accent-strong);background:0 0;border:0;padding:0;font-size:.8rem;font-weight:600}.sw-prose .api-entry-table a:hover>code{text-underline-offset:.2em;background:0 0;text-decoration:underline;text-decoration-thickness:1px}.api-symbol-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:.8rem;margin:1.1rem 0 2.75rem;display:grid}.api-symbol-card{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.6rem;flex-direction:column;gap:.45rem;padding:.85rem .95rem;text-decoration:none;transition:border-color .12s,background-color .12s;display:flex}.api-symbol-card:hover{border-color:color-mix(in srgb, var(--sw-accent) 45%, var(--sw-border));background:var(--sw-surface-2)}.api-symbol-card__head{align-items:center;gap:.55rem;min-width:0;display:flex}.api-symbol-badge{width:1.3rem;height:1.3rem;color:var(--api-kind-color,var(--sw-fg-muted));background:color-mix(in srgb, var(--api-kind-color,var(--sw-fg-muted)) 13%, transparent);font:650 .7rem / 1 var(--sw-font-mono);border-radius:.3rem;flex:none;justify-content:center;align-items:center;display:inline-flex}.sw-prose .api-symbol-card code{min-width:0;color:var(--sw-fg-strong);font:600 .86rem / 1.45 var(--sw-font-mono);overflow-wrap:anywhere;background:0 0;border:0;padding:0;transition:color .12s}.api-symbol-card:hover code{color:var(--sw-accent-strong)}.api-symbol-card__desc{-webkit-line-clamp:2;color:var(--sw-fg-muted);-webkit-box-orient:vertical;font-size:.79rem;line-height:1.55;display:-webkit-box;overflow:hidden}.api-member-list{border-bottom:1px solid var(--sw-border);margin:1rem 0 2.25rem}.api-member{border-top:1px solid var(--sw-border);background:var(--sw-surface-0)}.api-member[open]{border-top-color:var(--sw-border-strong)}.api-declaration{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.6rem;margin:1.1rem 0 2.2rem;transition:border-color .12s}.api-declaration[open]{border-color:var(--sw-border-strong)}.api-member summary,.api-declaration summary{color:var(--sw-fg-strong);cursor:pointer;border-radius:.35rem;align-items:baseline;gap:.5rem;padding:.42rem .35rem;list-style:none;transition:background-color .12s;display:flex}.api-declaration summary{border-radius:calc(.6rem - 1px);padding:.7rem .95rem}.api-member[open]>summary{background:color-mix(in srgb, var(--sw-surface-2) 80%, transparent)}.api-member summary::-webkit-details-marker{display:none}.api-declaration summary::-webkit-details-marker{display:none}.api-member summary:before,.api-declaration summary:before{content:"";width:.42rem;height:.42rem;color:var(--sw-fg-dim);border-bottom:1.5px solid;border-right:1.5px solid;flex:none;transition:transform .14s,color .14s;transform:rotate(-45deg)}.api-member[open]>summary:before,.api-declaration[open]>summary:before{color:var(--sw-accent);transform:translateY(-.1rem)rotate(45deg)}.api-member summary:hover,.api-declaration summary:hover{background:color-mix(in srgb, var(--sw-surface-2) 75%, transparent)}.api-member summary:focus-visible,.api-declaration summary:focus-visible{box-shadow:none}.api-member:has(>summary:focus-visible){box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sw-accent) 30%, transparent)}.api-declaration:has(>summary:focus-visible){border-color:color-mix(in srgb, var(--sw-accent) 45%, var(--sw-border));box-shadow:0 0 0 2px color-mix(in srgb, var(--sw-accent) 30%, transparent)}.api-declaration[open]>summary{border-bottom:1px solid var(--sw-border);background:var(--sw-surface-2);border-radius:calc(.6rem - 1px) calc(.6rem - 1px) 0 0}.sw-prose .api-member summary code{max-width:100%;color:var(--sw-fg-strong);font:600 .84rem / 1.5 var(--sw-font-mono);overflow-wrap:anywhere;background:0 0;border:0;flex:none;padding:0}.api-member[open]>summary code{color:var(--sw-accent-strong)}.api-member-summary{color:var(--sw-fg-muted);font-family:var(--sw-font-body);font-size:.78rem;line-height:1.45}.sw-prose .api-member-summary code{color:var(--sw-fg);background:0 0;border:0;padding:0;font-size:.72rem}.sw-prose .api-member-alias{flex:none}.sw-prose .api-member-alias a{text-decoration:none}.sw-prose .api-member-alias code{border:1px solid color-mix(in srgb, var(--sw-type-name) 30%, var(--sw-border));background:color-mix(in srgb, var(--sw-type-name) 8%, var(--sw-surface-2));color:color-mix(in srgb, var(--sw-type-name) 74%, var(--sw-fg));font:550 .72rem / 1.5 var(--sw-font-mono);border-radius:.3rem;padding:.04rem .3rem}.sw-prose .api-member-alias a:hover code{border-color:color-mix(in srgb, var(--sw-accent) 45%, var(--sw-border));color:var(--sw-accent-strong)}.api-consumers-label{color:var(--sw-fg-dim);letter-spacing:.06em;text-transform:uppercase;margin:1.4rem 0 .55rem;font-size:.7rem;font-weight:600}.api-consumer-list{flex-wrap:wrap;gap:.35rem .5rem;margin:0;padding:0;list-style:none;display:flex}.sw-prose .api-consumer-list li{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:999px;align-items:baseline;gap:.4rem;margin:0;padding:.2rem .6rem;font-size:.76rem;display:inline-flex}.sw-prose .api-consumer-list a{color:var(--sw-fg-strong);text-decoration:none}.sw-prose .api-consumer-list a:hover{color:var(--sw-accent-strong)}.sw-prose .api-consumer-list code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.api-consumer-kind{color:var(--sw-fg-dim);font:600 .63rem / 1.4 var(--sw-font-mono);letter-spacing:.02em}.sw-prose .api-consumer-list .api-consumer-more{color:var(--sw-fg-dim);background:0 0;border-color:#0000;font-style:italic}.api-declaration>summary{color:var(--sw-fg-muted);font-size:.84rem;font-weight:550}.api-declaration>summary:hover,.api-declaration[open]>summary{color:var(--sw-fg-strong)}.sw-prose .api-declaration .expressive-code{margin-block:0}.sw-prose .api-declaration .expressive-code figure.frame{border:0;border-radius:0 0 calc(.6rem - 1px) calc(.6rem - 1px)}.sw-prose .api-member .expressive-code{margin:.15rem 0 .7rem 1.25rem}.sw-prose .api-member .expressive-code figure.frame{border:1px solid var(--sw-border);border-radius:.5rem}.sw-prose .api-member .expressive-code pre,.sw-prose .api-declaration .expressive-code pre{font-size:.78rem}.api-member .expressive-code pre>code,.api-declaration .expressive-code pre>code{padding-block:.5rem}.api-member .api-member-doc{max-width:47rem;color:var(--sw-fg-muted);margin:-.3rem 0 .8rem;padding:0 .3rem 0 1.25rem;font-size:.82rem}.api-variant-list{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.6rem;margin:1.1rem 0 2.75rem;overflow:hidden}.api-variant+.api-variant{border-top:1px solid var(--sw-border)}.sw-prose .api-variant .expressive-code{margin:0}.sw-prose .api-variant .expressive-code figure.frame{background:0 0;border:0;border-radius:0}.sw-prose .api-variant .expressive-code pre{background:0 0;border:0;border-radius:0;font-size:.78rem}.api-variant .expressive-code pre>code{padding-block:.55rem}@media (width<=30rem){.api-pagehead{flex-wrap:wrap}.api-metadata div{grid-template-columns:1fr;gap:.1rem}.api-member summary{flex-wrap:wrap}.api-member-summary{flex:1 0 100%;padding-left:.95rem}.sw-prose .api-member .expressive-code{margin-left:0}.api-member .api-member-doc{padding-left:.3rem}}.sw-prose .sw-code-popover__trigger{-webkit-text-decoration:underline dotted color-mix(in srgb, var(--sw-fg-dim) 65%, transparent);text-decoration:underline dotted color-mix(in srgb, var(--sw-fg-dim) 65%, transparent);text-underline-offset:.2em;cursor:help;border-radius:.2rem;outline:none;text-decoration-thickness:1px;transition:background-color .12s,box-shadow .12s,text-decoration-color .12s}.sw-prose .sw-code-popover__trigger[data-hover-kind=documented],.sw-prose .sw-code-popover__trigger[data-hover-kind=reference]{-webkit-text-decoration:underline wavy color-mix(in srgb, var(--sw-accent) 72%, transparent);text-decoration:underline wavy color-mix(in srgb, var(--sw-accent) 72%, transparent);text-decoration-thickness:1px}.sw-prose .sw-code-popover__trigger:hover,.sw-prose .sw-code-popover__trigger[data-popover-open=true]{-webkit-text-decoration-color:var(--sw-accent);text-decoration-color:var(--sw-accent);background:color-mix(in srgb, var(--sw-accent) 11%, transparent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sw-accent) 10%, transparent)}.sw-prose .sw-code-popover__trigger:focus-visible{-webkit-text-decoration-color:var(--sw-accent);text-decoration-color:var(--sw-accent);background:color-mix(in srgb, var(--sw-accent) 12%, transparent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sw-accent) 45%, transparent);outline:none}body .sw-code-popover__panel{z-index:1000;box-sizing:border-box;border:1px solid var(--sw-border-strong);background:var(--sw-surface-1);width:max-content;max-width:min(34rem,100vw - 1.5rem);color:var(--sw-fg);overscroll-behavior:contain;scrollbar-color:var(--sw-border-strong) transparent;border-radius:.65rem;display:block;overflow:auto;box-shadow:0 1.25rem 3rem #0f172a38,0 2px 6px #0f172a1a}body .sw-code-popover__panel[hidden]{display:none}:root[data-theme=dark] body .sw-code-popover__panel{box-shadow:0 1.5rem 3.5rem #0000008f,0 2px 8px #0006}body .sw-code-popover__signature{box-sizing:border-box;border-block-start:2px solid color-mix(in srgb, var(--sw-accent) 55%, var(--sw-border));background:var(--sw-surface-2);width:100%;color:var(--sw-fg-strong);font:500 .72rem / 1.54 var(--sw-font-mono);tab-size:2;text-align:start;white-space:pre;margin:0;padding:.85rem 1rem .9rem 1.15rem;display:block;overflow:auto hidden}body .sw-code-popover__signature--narrow{display:none}body .sw-code-popover__signature span[style]{color:var(--1)}:root[data-theme=dark] body .sw-code-popover__signature span[style]{color:var(--0)}body .sw-code-popover__docs,body .sw-code-popover__tags{box-sizing:border-box;border-top:1px solid var(--sw-border);background:var(--sw-surface-1);width:100%;color:var(--sw-fg);font:450 .72rem / 1.52 var(--sw-font-body);text-align:start;white-space:normal;padding:.75rem 1rem .82rem 1.15rem;display:block}body .sw-code-popover__tags{color:var(--sw-fg-muted);gap:.35rem;padding-block-start:.65rem;display:grid}body .sw-code-popover__tag,body .sw-code-popover__tag-name{display:inline}body .sw-code-popover__tag-name{color:var(--sw-accent-strong);font:600 .68rem / 1.4 var(--sw-font-mono)}body .sw-code-popover__link{border-top:1px solid var(--sw-border);color:var(--sw-accent-strong);background:var(--sw-surface-1);font:650 .7rem / 1.4 var(--sw-font-body);padding:.55rem 1rem .6rem 1.15rem;text-decoration:none;display:block}body .sw-code-popover__link:hover{background:color-mix(in srgb, var(--sw-accent) 8%, var(--sw-surface-1))}body .sw-code-popover__accessible-signature{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=40rem){body .sw-code-popover__signature--wide{display:none}body .sw-code-popover__signature--narrow{display:block}}@media (prefers-reduced-motion:reduce){.sw-prose .sw-code-popover__trigger{transition:none}}.sw-test-fixture{background:var(--sw-surface-0);min-height:100vh;padding:1rem}.sw-test-fixture [data-framework-lifecycle]{gap:.5rem;display:grid}.sw-test-fixture output{min-width:2ch}@media (width<=48rem){.sw-prose table{display:block;overflow-x:auto}.sw-architecture__step>div{grid-template-columns:2rem 1fr}.sw-architecture__step p{grid-column:2}body .sw-code-popover__signature--wide{display:none}body .sw-code-popover__signature--narrow{display:block}}.sw-prose .api-search-anchor{height:0;scroll-margin-top:calc(var(--sw-header-height) + 1.5rem);margin:0;font-size:0;display:block;overflow:hidden}.sw-prose .api-member[id]{scroll-margin-top:calc(var(--sw-header-height) + 1.5rem)}.sw-prose .expressive-code a.sw-code-ref{color:inherit;-webkit-text-decoration:underline dotted color-mix(in srgb, var(--sw-fg-dim) 65%, transparent);text-decoration:underline dotted color-mix(in srgb, var(--sw-fg-dim) 65%, transparent);text-underline-offset:.22em;text-decoration-thickness:1px}.sw-prose .expressive-code a.sw-code-ref:hover{color:var(--sw-accent-strong);-webkit-text-decoration-color:var(--sw-accent-strong);text-decoration-color:var(--sw-accent-strong)}.sw-prose a.sw-code-popover__trigger{color:inherit;cursor:pointer}.sw-prose .api-member:target,.sw-prose .api-member[data-revealed]{border-color:color-mix(in srgb, var(--sw-accent) 40%, var(--sw-border));background:color-mix(in srgb, var(--sw-accent) 4%, var(--sw-surface-1))}.evidence-available,.evidence-unavailable,.evidence-mixed{border:1px solid color-mix(in srgb, var(--sw-accent) 30%, var(--sw-border));background:color-mix(in srgb, var(--sw-accent) 7%, var(--sw-surface-1));border-radius:.55rem;margin:0 0 1.2rem;padding:.7rem .9rem;font-size:.88rem}.evidence-unavailable{border-color:var(--sw-border);background:var(--sw-surface-1);color:var(--sw-fg-muted)}.evidence-mixed{border-color:color-mix(in srgb, var(--sw-state-pending) 45%, var(--sw-border));background:color-mix(in srgb, var(--sw-state-pending) 6%, var(--sw-surface-1))}.error-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1.25rem 0 2rem;display:grid}.sw-prose .error-catalog>a{border:1px solid var(--sw-border);background:var(--sw-surface-1);min-width:0;color:inherit;border-radius:.65rem;flex-direction:column;gap:.45rem;padding:.9rem 1rem;text-decoration:none;display:flex}.sw-prose .error-catalog>a:hover{border-color:color-mix(in srgb, var(--sw-accent) 40%, var(--sw-border));background:color-mix(in srgb, var(--sw-accent) 3%, var(--sw-surface-1))}.sw-prose .error-catalog>a>code{width:fit-content;max-width:100%;color:var(--sw-accent-strong);overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:650}.error-catalog>a>span{color:var(--sw-fg-muted);font-size:.78rem;line-height:1.5}@media (width<=42rem){.error-catalog{grid-template-columns:minmax(0,1fr)}}.compat-results{gap:.65rem;margin:1.5rem 0 2.5rem;display:grid}.compat-result{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.65rem;margin:0;overflow:hidden}.compat-result__summary{cursor:pointer;align-items:center;gap:1rem;padding:.9rem 1rem;list-style:none;display:flex;position:relative}.compat-result__summary::-webkit-details-marker{display:none}.compat-result__summary:hover{background:color-mix(in srgb, var(--sw-accent) 3%, transparent)}.compat-result__summary:focus-visible{outline:2px solid var(--sw-accent);outline-offset:-2px}.compat-result__title{min-width:0;color:var(--sw-fg-strong);font:650 .92rem / 1.4 var(--sw-font-body);flex:22rem}.compat-result__meta{flex:none;align-items:center;gap:.4rem;display:flex}.sw-prose .compat-result__meta code,.compat-result__meta [data-status]{border:1px solid var(--sw-border);background:var(--sw-surface-2);color:var(--sw-fg-muted);font:600 .62rem / 1 var(--sw-font-mono);border-radius:999px;padding:.25rem .45rem}.compat-result__meta [data-status=supported]{border-color:color-mix(in srgb, var(--sw-state-resolved) 35%, var(--sw-border));color:var(--sw-state-resolved)}.compat-result__meta [data-status=warning],.compat-result__meta [data-status=partial]{border-color:color-mix(in srgb, var(--sw-state-pending) 35%, var(--sw-border));color:var(--sw-state-pending)}.compat-result__fold{width:1rem;height:1rem;color:var(--sw-fg-dim);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;transition:transform var(--sw-demo-transition);flex:none}.compat-result[open] .compat-result__fold{transform:rotate(180deg)}.compat-result__body{border-top:1px solid var(--sw-border);padding:1rem}.compat-result__body dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin:0 0 1rem;display:grid}.compat-result__body dl>div:nth-child(4){grid-column:1/-1}.compat-result__body dt{color:var(--sw-fg-dim);font:650 .58rem / 1.4 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem}.compat-result__body dd{color:var(--sw-fg-muted);margin:0;font-size:.82rem;line-height:1.55}.compat-result__body>a{font-size:.78rem;font-weight:650}@media (width<=42rem){.compat-result__summary{flex-wrap:wrap;gap:.65rem}.compat-result__title{flex-basis:calc(100% - 2rem)}.compat-result__meta{flex-wrap:wrap}.compat-result__fold{position:absolute;right:1rem}.compat-result__body dl{grid-template-columns:minmax(0,1fr)}.compat-result__body dl>div:nth-child(4){grid-column:auto}}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child){background:0 0;border:0;display:block;overflow:visible}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.8rem;display:grid}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.65rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td{min-width:0;color:var(--sw-fg-muted);overflow-wrap:anywhere;vertical-align:top;background:0 0;border:0;padding:.7rem .85rem;font-size:.8rem;line-height:1.5;display:block}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:before{color:var(--sw-fg-dim);font:650 .56rem / 1.4 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem;display:block}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:first-child{border-bottom:1px solid var(--sw-border);background:color-mix(in srgb, var(--sw-accent) 2.5%, var(--sw-surface-1));color:var(--sw-fg-strong);grid-column:1/-1;padding:.75rem .85rem}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:first-child code{color:var(--sw-accent-strong);font-size:.72rem;font-weight:650}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:first-child:before{content:"Resource"}:is(.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(2),.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(3)){border-bottom:1px solid var(--sw-border)}:is(.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(2),.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(4)){border-right:1px solid var(--sw-border)}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(2):before{content:"Default"}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(3):before{content:"Why"}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(4):before{content:"At the boundary"}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(5){grid-column:auto}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(5):before{content:"Override"}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child) code{white-space:normal;overflow-wrap:anywhere}@media (width<=52rem){.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody{grid-template-columns:minmax(0,1fr)}}@media (width<=42rem){.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr{grid-template-columns:minmax(0,1fr)}:is(.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:first-child,.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(5)){grid-column:auto}:is(.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(2),.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(4)){border-right:0}.sw-prose--resource-limits table:has(>thead>tr>th:nth-child(5):last-child)>tbody>tr>td:nth-child(4){border-bottom:1px solid var(--sw-border)}}.compat-evidence-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0 .35rem;display:grid}.compat-evidence-file{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.65rem;min-width:0;overflow:hidden}.compat-evidence-file>header{border-bottom:1px solid var(--sw-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;padding:.75rem .85rem;display:flex}.compat-evidence-file>header>code{overflow-wrap:anywhere;min-width:0;color:var(--sw-accent-strong);font-size:.68rem}.compat-evidence-file>header>span{border:1px solid var(--sw-border-strong);color:var(--sw-fg-muted);font:600 .55rem / 1.4 var(--sw-font-mono);text-transform:uppercase;border-radius:999px;padding:.12rem .45rem}.sw-prose .compat-evidence-file>p{max-width:none;color:var(--sw-fg-strong);margin:0;padding:.7rem .85rem 0;font-size:.72rem}.compat-evidence-file dl{gap:.75rem;margin:0;padding:.75rem .85rem .9rem;display:grid}.compat-evidence-file dt{color:var(--sw-fg-dim);font:650 .52rem / 1.4 var(--sw-font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.18rem}.compat-evidence-file dd{color:var(--sw-fg-muted);margin:0;font-size:.68rem;line-height:1.5}.compat-evidence-file dd code{overflow-wrap:anywhere;word-break:break-word}@media (width<=52rem){.compat-evidence-files{grid-template-columns:minmax(0,1fr)}}.size-history{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.8rem;margin:1.25rem 0 2.5rem;overflow:hidden}.sw-prose .size-history__intro{border-bottom:1px solid var(--sw-border);max-width:none;color:var(--sw-fg-muted);margin:0;padding:1rem 1.25rem;font-size:.84rem}.size-history__release{margin:0;padding:1rem 1.25rem 1.15rem}.size-history__release+.size-history__release{border-top:1px solid var(--sw-border)}.size-history__release[data-current=true]{background:color-mix(in srgb, var(--sw-accent) 2.5%, transparent)}.size-history__release-head{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:1rem;margin:0;list-style:none;display:flex}.size-history__release[open] .size-history__release-head{margin-bottom:.7rem}.size-history__release-head::-webkit-details-marker{display:none}.size-history__release-head:hover .size-history__version-step strong{color:var(--sw-accent-strong)}.size-history__release-head:focus-visible{outline:2px solid var(--sw-accent);outline-offset:.25rem;border-radius:.25rem}.size-history__version-step{color:var(--sw-fg-dim);font:600 .9rem / 1 var(--sw-font-mono);align-items:center;gap:.45rem;display:flex}.size-history__version-step strong{color:var(--sw-fg-strong);font:700 1.2rem / 1 var(--sw-font-mono)}.size-history__release[data-current=true] .size-history__version-step strong{color:var(--sw-accent-strong)}.size-history__arrow{width:1.1rem;height:1.1rem;color:var(--sw-fg-dim);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px}.size-history__fold{width:1rem;height:1rem;color:var(--sw-fg-dim);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;transition:transform var(--sw-demo-transition)}.size-history__release[open] .size-history__fold{transform:rotate(180deg)}.size-history__release-head time{color:var(--sw-fg-dim);font:550 .75rem / 1 var(--sw-font-mono);margin-left:auto}.size-history__table-wrap{overflow-x:auto}.sw-prose .size-history__table{border-collapse:collapse;table-layout:fixed;width:100%;font:550 .7rem / 1.35 var(--sw-font-mono);border:0;margin:0}.sw-prose .size-history__table th,.sw-prose .size-history__table td{border:0;border-top:1px solid var(--sw-border);text-align:left;vertical-align:middle;background:0 0;padding:.52rem .35rem}.sw-prose .size-history__table thead th{color:var(--sw-fg-dim);font:650 .56rem / 1.4 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase;border-top:0;padding-top:0}.sw-prose .size-history__table th:first-child{width:42%}.sw-prose .size-history__table th:not(:first-child){width:29%}.sw-prose .size-history__table tbody th{color:var(--sw-fg-strong);font-weight:550}.sw-prose .size-history__table tbody th code{color:inherit;font:inherit;background:0 0;border:0;padding:0}.size-history__table td{color:var(--sw-fg-muted);white-space:nowrap}.size-history__table td small{color:var(--sw-state-pending);font:650 .59rem / 1 var(--sw-font-mono);gap:.25rem;margin-left:.45rem;display:inline-flex}.size-history__table td small span+span:before{color:var(--sw-fg-dim);content:"·";margin-right:.25rem}.size-history__table td small[data-direction=decrease]{color:var(--sw-state-resolved)}.size-history__table td small[data-direction=flat]{color:var(--sw-fg-dim)}.size-history__footer{border-top:1px solid var(--sw-border);color:var(--sw-fg-dim);font:600 .6rem / 1.4 var(--sw-font-mono);align-items:center;gap:1rem;padding:.65rem 1.25rem;display:flex}.size-history__footer span:before{background:var(--sw-state-pending);content:"";border-radius:50%;width:.38rem;height:.38rem;margin-right:.35rem;display:inline-block}.size-history__footer span:nth-child(2):before{background:var(--sw-state-resolved)}.sw-prose .size-history__footer code{color:var(--sw-fg-dim);background:0 0;border:0;margin-left:auto;padding:0}@media (width<=40rem){.size-history__intro,.size-history__release{padding-inline:.85rem}.sw-prose .size-history__table{font-size:.64rem}.sw-prose .size-history__table th:first-child{width:38%}.sw-prose .size-history__table th:not(:first-child){width:31%}.size-history__table td small{gap:.18rem;margin:.2rem 0 0;font-size:.54rem;display:flex}.size-history__footer code{display:none}}.bench-viz{--bench-label:7.25rem;--bench-value:9.75rem;--bench-gap:.9rem;margin:1.6rem 0 2.4rem}.bench-viz__scale,.bench-bar{align-items:center;column-gap:var(--bench-gap);grid-template-columns:var(--bench-label) minmax(0, 1fr) var(--bench-value);display:grid}.bench-viz__scale{border-bottom:1px solid var(--sw-border-strong);color:var(--sw-fg-muted);font:600 .78rem / 1.4 var(--sw-font-mono);letter-spacing:.09em;text-transform:uppercase;grid-template-areas:"lead axis cols";padding-bottom:.55rem}.bench-viz__lead{grid-area:lead}.bench-viz__cols,.bench-viz__legend{text-align:right;grid-area:cols}.bench-viz__axis-note{color:var(--sw-fg-muted);letter-spacing:.05em;text-align:center;grid-area:axis}.bench-meta{gap:.35rem;margin:0 0 1.6rem;display:grid}.bench-meta div{grid-template-columns:8rem minmax(0,1fr);align-items:baseline;gap:.8rem;display:grid}.bench-meta dt{color:var(--sw-fg-dim);font:650 .62rem / 1.8 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase}.bench-meta dd{color:var(--sw-fg-muted);margin:0;font-size:.85rem}.bench-viz__row{padding-block:.85rem}.bench-viz__row+.bench-viz__row{border-top:1px solid var(--sw-border)}.bench-viz__head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.55rem;display:flex}.sw-prose .bench-viz__head code{color:var(--sw-fg-strong);font:600 .8rem var(--sw-font-mono);background:0 0;border:0;padding:0}.bench-viz__ratio{border:1px solid color-mix(in srgb, var(--sw-accent) 32%, var(--sw-border));color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 8%, var(--sw-surface-2));font:500 .72rem / 1.5 var(--sw-font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;flex:none;padding:.12rem .6rem}.sw-prose .bench-viz__ratio strong{color:inherit;font-weight:680}.bench-viz__row[data-outcome=slower] .bench-viz__ratio{border-color:color-mix(in srgb, var(--sw-type-number) 38%, var(--sw-border));color:color-mix(in srgb, var(--sw-type-number) 80%, var(--sw-fg));background:color-mix(in srgb, var(--sw-type-number) 9%, var(--sw-surface-2))}.bench-bar{grid-template-areas:"engine track value"}.bench-bar+.bench-bar{margin-top:.4rem}.bench-bar__engine{color:var(--sw-fg-muted);font:600 .68rem / 1.4 var(--sw-font-mono);grid-area:engine}.bench-bar[data-engine=sheetwrite] .bench-bar__engine{color:var(--sw-accent-strong)}.bench-bar__track{background:var(--sw-surface-2);height:.62rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--sw-border) 55%, transparent);border-radius:.25rem;grid-area:track;display:block;position:relative;overflow:hidden}.bench-bar__track i{position:absolute;top:0;bottom:0}.bench-bar__fill{background:color-mix(in srgb, var(--sw-fg-muted) 60%, var(--sw-surface-3));border-radius:.16rem;left:0}.bench-bar[data-engine=sheetwrite] .bench-bar__fill{background:var(--sw-accent)}.bench-bar__spread{background:color-mix(in srgb, var(--sw-fg-muted) 20%, transparent);border-radius:.16rem;left:0}.bench-bar[data-engine=sheetwrite] .bench-bar__spread{background:color-mix(in srgb, var(--sw-accent) 28%, transparent)}.bench-bar__value{font:500 .76rem / 1.4 var(--sw-font-mono);font-variant-numeric:tabular-nums;text-align:right;grid-area:value;justify-content:flex-end;gap:.7rem;display:flex}.bench-num{font-style:normal;font-weight:600}.bench-num[data-stat=median]{color:var(--sw-fg-strong)}.bench-num[data-stat=p95]{color:color-mix(in srgb, var(--sw-fg-dim) 80%, transparent);font-weight:500}.bench-viz__legend{color:var(--sw-fg-dim);font:650 .62rem / 1 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase;justify-self:end;align-items:center;gap:.35rem;display:inline-flex}.bench-legend-swatch{background:var(--sw-accent);border-radius:.12rem;width:.85rem;height:.4rem}.bench-legend-swatch[data-kind=p95]{background:color-mix(in srgb, var(--sw-accent) 28%, transparent);margin-left:.6rem}.bench-viz figcaption{color:var(--sw-fg-dim);margin:.9rem .1rem 0;font-size:.74rem;line-height:1.6}@media (width<=40rem){.bench-viz__scale{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"lead cols""axis axis";row-gap:.45rem}.bench-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"engine value""track track";row-gap:.3rem}.bench-bar--ruler{grid-template-areas:"track track";row-gap:0}.bench-bar--ruler .bench-bar__engine,.bench-bar--ruler .bench-bar__value{display:none}}.bench-widget>input[type=radio]{opacity:0;width:1px;height:1px;margin:0;position:absolute}.bench-widget__tabs{flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-bottom:1rem;display:flex}.bench-tabs{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.55rem;display:inline-flex;overflow:hidden}.bench-tabs label{color:var(--sw-fg-muted);font:600 .72rem / 1.4 var(--sw-font-mono);cursor:pointer;-webkit-user-select:none;user-select:none;padding:.42rem .85rem}.bench-tabs label+label{border-left:1px solid var(--sw-border)}.bench-tabs label:hover{color:var(--sw-fg-strong);background:var(--sw-surface-2)}.bench-panel{display:none}#bench-size-1000:checked~.bench-widget__tabs label[for=bench-size-1000],#bench-size-10000:checked~.bench-widget__tabs label[for=bench-size-10000],#bench-size-100000:checked~.bench-widget__tabs label[for=bench-size-100000],#bench-size-1000000:checked~.bench-widget__tabs label[for=bench-size-1000000],#bench-metric-speed:checked~.bench-widget__tabs label[for=bench-metric-speed],#bench-metric-memory:checked~.bench-widget__tabs label[for=bench-metric-memory]{color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 12%, var(--sw-surface-2))}#bench-size-1000:checked~#bench-metric-speed:checked~.bench-panel[data-size="1000"][data-metric=speed],#bench-size-1000:checked~#bench-metric-memory:checked~.bench-panel[data-size="1000"][data-metric=memory],#bench-size-10000:checked~#bench-metric-speed:checked~.bench-panel[data-size="10000"][data-metric=speed],#bench-size-10000:checked~#bench-metric-memory:checked~.bench-panel[data-size="10000"][data-metric=memory],#bench-size-100000:checked~#bench-metric-speed:checked~.bench-panel[data-size="100000"][data-metric=speed],#bench-size-100000:checked~#bench-metric-memory:checked~.bench-panel[data-size="100000"][data-metric=memory],#bench-size-1000000:checked~#bench-metric-speed:checked~.bench-panel[data-size="1000000"][data-metric=speed],#bench-size-1000000:checked~#bench-metric-memory:checked~.bench-panel[data-size="1000000"][data-metric=memory]{display:block}#bench-size-1000:focus-visible~.bench-widget__tabs label[for=bench-size-1000],#bench-size-10000:focus-visible~.bench-widget__tabs label[for=bench-size-10000],#bench-size-100000:focus-visible~.bench-widget__tabs label[for=bench-size-100000],#bench-size-1000000:focus-visible~.bench-widget__tabs label[for=bench-size-1000000],#bench-metric-speed:focus-visible~.bench-widget__tabs label[for=bench-metric-speed],#bench-metric-memory:focus-visible~.bench-widget__tabs label[for=bench-metric-memory]{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--sw-accent) 45%, transparent)}.bench-bar[data-crashed]{grid-template-columns:var(--bench-label) minmax(0, 1fr)}.bench-crash{border:1px dashed color-mix(in srgb, var(--sw-type-number) 55%, var(--sw-border));color:var(--sw-type-number);font:600 .68rem / 1.6 var(--sw-font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:.35rem;justify-self:start;padding:.1rem .6rem}.bench-viz__ratio[data-kind=crashed],.bench-viz__ratio[data-kind=solo]{color:var(--sw-type-number)}:is(.bench-widget:not(:has(input[name=bench-size]:checked)) label[for=bench-size-100000],.bench-widget:not(:has(input[name=bench-metric]:checked)) label[for=bench-metric-speed]){color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 12%, var(--sw-surface-2))}.bench-widget:not(:has(input[name=bench-size]:checked)):not(:has(input[name=bench-metric]:checked)) .bench-panel[data-size="100000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-metric]:checked)) #bench-size-1000:checked~.bench-panel[data-size="1000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-metric]:checked)) #bench-size-10000:checked~.bench-panel[data-size="10000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-metric]:checked)) #bench-size-100000:checked~.bench-panel[data-size="100000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-metric]:checked)) #bench-size-1000000:checked~.bench-panel[data-size="1000000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-size]:checked)) #bench-metric-speed:checked~.bench-panel[data-size="100000"][data-metric=speed]{display:block}.bench-widget:not(:has(input[name=bench-size]:checked)) #bench-metric-memory:checked~.bench-panel[data-size="100000"][data-metric=memory]{display:block}#bench-data-1000:checked~.bench-widget__tabs label[for=bench-data-1000],#bench-data-10000:checked~.bench-widget__tabs label[for=bench-data-10000]{color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 12%, var(--sw-surface-2))}.bench-widget--data:not(:has(input[name=bench-data-size]:checked)) label[for=bench-data-10000]{color:var(--sw-accent-strong);background:color-mix(in srgb, var(--sw-accent) 12%, var(--sw-surface-2))}#bench-data-1000:checked~.bench-panel[data-size="1000"],#bench-data-10000:checked~.bench-panel[data-size="10000"]{display:block}.bench-widget--data:not(:has(input[name=bench-data-size]:checked)) .bench-panel[data-size="10000"]{display:block}.bench-bar--ruler{margin-top:.2rem}.bench-bar--ruler .bench-bar__track{background:0 0;height:.9rem;position:relative}.bench-ruler__tick{color:var(--sw-fg-muted);font:500 .72rem / 1 var(--sw-font-mono);letter-spacing:.02em;white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.bench-bar--ruler .bench-bar__track{overflow:visible}.bench-ruled .bench-bar:not(.bench-bar--ruler) .bench-bar__track{background-image:linear-gradient(to right, color-mix(in srgb, var(--sw-border) 70%, transparent) 1px, transparent 1px);background-size:calc(100% / var(--bench-segs,4)) 100%}.bench-viz__legend{flex-wrap:wrap;justify-content:flex-end}.bench-viz__legend-note{white-space:nowrap}.bench-method{border:1px solid var(--sw-border);background:var(--sw-surface-1);border-radius:.5rem;margin:.9rem 0 0}.bench-method>summary{color:var(--sw-fg-muted);font:600 .72rem / 1.4 var(--sw-font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:.55rem .9rem}.bench-method>summary:hover{color:var(--sw-fg-strong)}.bench-method__body{padding:0 .9rem .85rem}.bench-method__body p{color:var(--sw-fg-muted);margin:.4rem 0;font-size:.85rem}.bench-method__body dl{grid-template-columns:max-content minmax(0,1fr);gap:.35rem .9rem;margin:.65rem 0 0;display:grid}.bench-method__body dl>div{display:contents}.bench-method__body dt code{font:600 .72rem / 1.6 var(--sw-font-mono);color:var(--sw-accent-strong);background:0 0;padding:0}.bench-method__body dd{color:var(--sw-fg-muted);margin:0;font-size:.8rem}@media (width<=40rem){.bench-method__body dl{grid-template-columns:minmax(0,1fr)}}
