:root{--type-title-size:clamp(3rem, 5.5vw, 5.25rem);--type-title-weight:650;--type-title-tracking:-.065em;--type-title-leading:1.01;--type-section-size:clamp(2.3125rem, 4.3vw, 3.875rem);--type-section-weight:600;--type-section-tracking:-.055em;--type-section-leading:1.08;--type-lead-size:1rem;--type-lead-leading:1.65}@media (width<=1000px){:root{--type-title-size:3.4375rem}}@media (width<=700px){:root{--type-title-size:clamp(2.875rem, 11vw, 4rem);--type-lead-size:.875rem}}@font-face{font-family:Inter;src:url(/inter.woff2)format("woff2");font-display:swap}@font-face{font-family:Mono;src:url(/mono.woff2)format("woff2");font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1217;--surface:#111e25;--ink:#edf5f3;--muted:#9baeb2;--dim:#6e878a;--mint:#a5f2db;--line:#273c43;--gold:#e4b877}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0;font-family:Inter,system-ui,sans-serif}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.skip{z-index:100;background:var(--mint);color:#051513;padding:1rem;position:fixed;top:-4rem;left:1rem}.skip:focus{top:1rem}:focus-visible{outline-offset:4px;outline:3px solid #a5f2db}.shell{max-width:1800px;margin:auto;padding:0 5.6%}.header{border-bottom:1px solid var(--line);align-items:center;gap:5vw;height:96px;display:flex}.brand{align-items:center;gap:11px;min-width:190px;display:flex}.brand-mark{letter-spacing:-.12em;color:var(--mint);padding-right:4px;font-size:33px;font-weight:800;line-height:1}.brand-mark span{font-size:24px}.brand strong{letter-spacing:-.06em;font-size:19px;line-height:1;display:block}.brand small{letter-spacing:.13em;color:#92a7ab;margin-top:5px;font:8px Mono,monospace;display:block}.navigation{color:#b4c5c5;gap:2.7vw;font-size:12px;display:flex}.navigation a:hover{color:var(--mint)}.header-meta{letter-spacing:.11em;color:#91aaa7;white-space:nowrap;margin-left:auto;font:9px Mono,monospace}.status-dot,.view-top i{background:var(--mint);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block;box-shadow:0 0 12px #67e3bc}.version{color:#536a6c;margin-left:13px}.hero{grid-template-columns:41% 59%;min-height:760px;display:grid;position:relative}.hero:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#294a4c50 0%,#0000 70%);width:70%;height:70%;position:absolute;top:0;right:0}.hero-copy{flex-direction:column;align-items:flex-start;padding:100px 0 52px;display:flex}.eyebrow{letter-spacing:.15em;color:var(--mint);align-items:center;gap:12px;margin:0 0 30px;font:10px Mono,monospace;display:flex}.line{background:var(--mint);width:25px;height:1px;display:inline-block}h1,h2,h3,p{margin-top:0}h1{font-size:var(--type-title-size);line-height:var(--type-title-leading);letter-spacing:var(--type-title-tracking);font-weight:var(--type-title-weight);margin:0 0 30px}h1 em,h2 em{color:var(--mint);letter-spacing:-.055em;font-family:Georgia,serif;font-style:italic;font-weight:400}.lede{max-width:435px;font-size:var(--type-lead-size);line-height:var(--type-lead-leading);color:#b4c8ca;margin-bottom:34px}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.button{border-radius:3px;justify-content:space-between;align-items:center;gap:22px;padding:15px 19px;font-size:12px;font-weight:650;display:inline-flex}.button-primary{background:var(--mint);color:#071715}.button-primary:hover{background:#cdfbe9}.button-ghost{color:#dce9e7;border:1px solid #526a6c}.button-ghost:hover{border-color:var(--mint)}.button span{font-size:16px}.intro-foot{color:#789195;gap:22px;margin-top:auto;padding-top:75px;font-size:11px;line-height:1.55;display:flex}.index-label,.label{letter-spacing:.14em;color:#7e999b;font:9px Mono,monospace}.intro-foot .index-label{white-space:nowrap;padding-top:2px}.viewport-wrap{min-width:0;padding-top:51px;position:relative}.view-top{letter-spacing:.13em;color:#a3b8b5;justify-content:space-between;padding:0 4px;font:9px Mono,monospace;display:flex}.view-top i{width:5px;height:5px}.viewport{touch-action:pan-y;background:radial-gradient(at 51% 60%,#27514e45,#0000 62%);height:495px;position:relative;overflow:hidden}.view-grid{opacity:.15;pointer-events:none;background-image:linear-gradient(#6c99931c 1px,#0000 1px),linear-gradient(90deg,#6c99931c 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 4%,#0000 68%);mask-image:radial-gradient(#000 4%,#0000 68%)}canvas{touch-action:none;width:100%;height:100%;display:block}.fallback{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:10% 12%}.fallback[hidden],.loading[hidden]{display:none}.fallback img{filter:drop-shadow(0 0 24px #6be2c333);max-width:90%;height:75%}.fallback p{color:var(--muted);font-size:11px}.loading{color:var(--muted);pointer-events:none;justify-content:center;align-items:center;gap:12px;font:11px Mono,monospace;display:flex;position:absolute;inset:0}.loader{border:1px solid #557a77;border-top-color:var(--mint);border-radius:50%;width:18px;height:18px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.view-callout{letter-spacing:.1em;color:var(--ink);pointer-events:none;align-items:flex-start;gap:8px;font:9px Mono,monospace;display:flex;position:absolute}.view-callout small{color:#91aaa9;letter-spacing:0;margin-top:5px;display:block}.callout-line{background:var(--mint);width:33px;height:1px;margin-top:5px}.callout-top{top:23%;right:6%}.callout-bottom{bottom:26%;left:9%}.interaction-hint{letter-spacing:.11em;color:#799593;white-space:nowrap;pointer-events:none;font:9px Mono,monospace;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.mouse-icon{color:var(--mint);margin-right:8px;font-size:17px}.view-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.icon-button,.text-button,.engine-button,.benchmark-button{color:#c7d9d7;background:0 0;border:1px solid #3b5558}.icon-button{width:36px;height:31px;font-size:16px}.icon-button:hover,.text-button:hover{color:var(--mint);border-color:var(--mint)}.reset-button{width:auto;padding:0 10px;font-size:10px}.text-button{border:0;padding:8px;font-size:11px}.text-button span{color:var(--mint);margin-left:8px}.visual-note{color:#789091;text-align:right;margin:10px 0;font-size:10px;line-height:1.4}.hero-bottom{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-column:1/-1;grid-template-columns:26% 74%;align-items:stretch;min-height:112px;display:grid}.selector-label{flex-direction:column;justify-content:center;gap:9px;display:flex}.selector-label span{letter-spacing:.13em;color:#c1d4d2;font:9px Mono,monospace}.selector-label small{color:#789092;font-size:11px}.config-options{grid-template-columns:repeat(3,1fr);display:grid}.config{border:0;border-left:1px solid var(--line);color:#d8e6e3;text-align:left;background:0 0;align-items:center;gap:14px;padding:16px 18px;display:flex}.config:hover,.config[aria-pressed=true]{background:#18332f8c}.config[aria-pressed=true]{box-shadow:inset 0 -2px var(--mint)}.config strong{color:#688583;align-self:flex-start;margin-top:9px;font:10px Mono,monospace}.config span{flex-direction:column;gap:6px;display:flex}.config b{font-size:12px}.config small{color:#8ca5a3;font-size:10px}.config i{color:#7eaaa1;margin-left:auto;font-style:normal}.data-section,.method-section,.lab-section{border-bottom:1px solid var(--line);padding:126px 0 120px}.section-head,.lab-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:46px;display:flex}.section-head>p,.lab-head>p{max-width:350px;color:var(--muted);margin:0;font-size:13px;line-height:1.7}h2{font-size:var(--type-section-size);line-height:var(--type-section-leading);letter-spacing:var(--type-section-tracking);font-weight:var(--type-section-weight);margin:0}.measurement-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:.88fr 1.4fr .85fr;display:grid}.measurement-grid>article,.measurement-grid>.measure-boundary{padding:30px 30px 32px}.measurement-grid>article:first-child{padding-left:0}.measurement-grid>.measure-boundary{border-left:1px solid var(--line);padding-right:0}.measure-results{border-left:1px solid var(--line)}.measure-icon{width:30px;height:30px;color:var(--mint);border:1px solid #5d8980;place-items:center;margin-bottom:28px;display:grid}.measure-intro h3,.measure-boundary h3{letter-spacing:-.035em;margin:16px 0;font-size:21px;line-height:1.2}.measure-intro p:not(.label),.measure-boundary p{color:var(--muted);font-size:12px;line-height:1.65}.measure-tag{color:#b6d9ce;border:1px solid #365c54;margin-top:8px;padding:7px 9px;font:9px Mono,monospace;display:inline-block}.measure-title{letter-spacing:.1em;color:#8ea9a7;justify-content:space-between;margin-bottom:32px;font:9px Mono,monospace;display:flex}.bar-row{grid-template-columns:92px 1fr 75px;align-items:center;gap:10px;margin:18px 0;font-size:11px;display:grid}.bar-row strong{text-align:right;color:#d6eee9;font:12px Mono,monospace}.bar-track{background:#203139;height:7px}.bar-track i{background:var(--mint);width:0;height:7px;display:block}.bar-row:nth-of-type(3) .bar-track i{background:#82bfba}.measure-note{color:#829b9a;margin:28px 0 16px;font-size:10px;line-height:1.65}.source-links{flex-wrap:wrap;gap:17px;display:flex}.source-links a,.measure-boundary a,.method-copy a{color:var(--mint);border-bottom:1px solid #39655b;padding-bottom:3px;font-size:10px}.method-section{grid-template-columns:1fr 1fr;gap:15%;display:grid}.method-copy{max-width:550px}.method-copy p{color:#a5b9b8;font-size:14px;line-height:1.8}.method-copy .prototype-note{border-left:2px solid var(--gold);color:#b4aaa0;padding-left:15px;font-size:11px}.lab-section{padding-bottom:85px}.engine-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:25px;padding:18px 0;display:flex}.engine-bar>div{gap:5px;display:flex}.engine-button{padding:10px 13px;font-size:11px}.engine-button.active{background:var(--mint);border-color:var(--mint);color:#071715}.benchmark-button{color:var(--mint);border-color:#608d83;margin-left:auto;padding:11px 15px;font-size:11px}.benchmark-button:disabled{opacity:.5;cursor:wait}.performance-results{color:#b6cbca;flex-wrap:wrap;gap:25px;min-height:59px;padding:20px 0;font:11px Mono,monospace;display:flex}.lab-note{color:#819997;font-size:10px;line-height:1.6}.metric{gap:8px;display:flex}.metric b{color:var(--mint)}footer{color:#78928f;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:25px;min-height:110px;font:9px Mono,monospace;display:flex}footer strong{color:#e9f2ef;letter-spacing:-.06em;font:700 18px Inter,sans-serif}.footer-dot{color:var(--mint);padding:0 5px}footer a{color:#c2d7d2}.error{color:#f5bd8b}@media (width<=1000px){.shell{padding:0 4.5%}.navigation{gap:18px}.header{gap:25px}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-top:80px}.viewport{height:430px}.selector-label{padding:15px 0}.hero-bottom{grid-template-columns:1fr}.config-options{border-top:1px solid var(--line)}.config:first-child{border-left:0}.measurement-grid{grid-template-columns:1fr 1.1fr}.measure-boundary{border-top:1px solid var(--line);grid-column:1/-1;border-left:0!important;padding-left:0!important}.section-head,.lab-head{align-items:start}}@media (width<=700px){.header{height:73px}.navigation{display:none}.header-meta{font-size:8px}.hero{flex-direction:column;min-height:0;display:flex}.hero-copy{padding:65px 0 15px}.intro-foot{display:none}.viewport-wrap{padding-top:35px}.viewport{height:330px}.view-callout{font-size:8px}.callout-top{right:0}.callout-bottom{left:0}.hero-bottom{margin-top:25px;display:block}.config-options{grid-template-columns:1fr}.config{border-left:0;border-bottom:1px solid var(--line);padding:14px 4px}.config:last-child{border-bottom:0}.config[aria-pressed=true]{box-shadow:inset 2px 0 var(--mint);padding-left:12px}.data-section,.method-section,.lab-section{padding:80px 0}.section-head,.lab-head{display:block}.section-head>p,.lab-head>p{margin-top:20px}.measurement-grid{grid-template-columns:1fr}.measurement-grid>article,.measurement-grid>.measure-boundary{padding:25px 0}.measure-results{border-left:0;border-top:1px solid var(--line)}.measure-boundary{grid-column:auto}.method-section{display:block}.method-copy{margin-top:30px}.engine-bar{align-items:start}.engine-bar .label{width:100%}.benchmark-button{margin-left:0}.performance-results{display:block}.metric{margin:10px 0}footer{flex-direction:column;justify-content:center;align-items:start}.bar-row{grid-template-columns:80px 1fr 70px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}[hidden]{display:none!important}.icon-button:disabled{opacity:.35;cursor:not-allowed}@media (width<=700px){.brand{min-width:0}.header{gap:12px}.header-meta{letter-spacing:.06em;font-size:8px}}.visual-note a{color:#a5f2db;text-underline-offset:3px;text-decoration:underline}.component-info{color:#d2e9e3;text-align:right;margin:10px 0 0;font-size:12px;line-height:1.5}.prototype-links{flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;display:flex}.prototype-links span{letter-spacing:.1em;color:#819997;margin-right:8px;font:9px Mono,monospace}.prototype-links a{color:#bdd1cc;border:1px solid #395450;padding:8px 10px;font-size:10px}.prototype-links a[aria-current=page]{color:#adf4dc;background:#18362f;border-color:#689b8c}.view-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}@media (width<=700px){.view-bottom{align-items:flex-start;gap:8px}.view-actions{gap:0}.view-actions .text-button{font-size:10px}}.version{color:#91a8a7}.component-buttons{justify-content:flex-end;gap:16px;margin-top:9px;display:flex}.component-buttons button{color:#a5f2db;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:11px;text-decoration:underline}.component-buttons button[hidden]{display:none}.theme-toggle{border:1px solid var(--line);color:var(--ink);white-space:nowrap;background:0 0;border-radius:3px;padding:9px 12px;font:11px Inter,sans-serif}.theme-toggle:hover{border-color:var(--mint)}html[data-site-theme=light] body[data-surface=neutral]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f5f0;--surface:#e4ece6;--ink:#112520;--muted:#405950;--dim:#4b6259;--mint:#17654f;--line:#b7cac0;--gold:#80622c}html[data-site-theme=light] body[data-surface=neutral] .brand small,html[data-site-theme=light] body[data-surface=neutral] .navigation,html[data-site-theme=light] body[data-surface=neutral] .header-meta,html[data-site-theme=light] body[data-surface=neutral] .version,html[data-site-theme=light] body[data-surface=neutral] .view-top,html[data-site-theme=light] body[data-surface=neutral] .view-callout small,html[data-site-theme=light] body[data-surface=neutral] .interaction-hint,html[data-site-theme=light] body[data-surface=neutral] .intro-foot,html[data-site-theme=light] body[data-surface=neutral] .index-label,html[data-site-theme=light] body[data-surface=neutral] .label,html[data-site-theme=light] body[data-surface=neutral] .selector-label span,html[data-site-theme=light] body[data-surface=neutral] .selector-label small,html[data-site-theme=light] body[data-surface=neutral] .config small,html[data-site-theme=light] body[data-surface=neutral] .config strong,html[data-site-theme=light] body[data-surface=neutral] .measure-title,html[data-site-theme=light] body[data-surface=neutral] .measure-note,html[data-site-theme=light] body[data-surface=neutral] .lab-note,html[data-site-theme=light] body[data-surface=neutral] footer{color:#405950}html[data-site-theme=light] body[data-surface=neutral] .lede,html[data-site-theme=light] body[data-surface=neutral] .method-copy p,html[data-site-theme=light] body[data-surface=neutral] .method-copy .prototype-note,html[data-site-theme=light] body[data-surface=neutral] .component-info{color:#344f45}html[data-site-theme=light] body[data-surface=neutral] .button-primary,html[data-site-theme=light] body[data-surface=neutral] .engine-button.active{color:#fff;background:#17654f}html[data-site-theme=light] body[data-surface=neutral] .button-primary:hover{background:#0e4939}html[data-site-theme=light] body[data-surface=neutral] .button-ghost,html[data-site-theme=light] body[data-surface=neutral] .icon-button,html[data-site-theme=light] body[data-surface=neutral] .text-button,html[data-site-theme=light] body[data-surface=neutral] .engine-button,html[data-site-theme=light] body[data-surface=neutral] .benchmark-button{color:#244b3c;border-color:#8ba99a}html[data-site-theme=light] body[data-surface=neutral] .engine-button.active{color:#fff}html[data-site-theme=light] body[data-surface=neutral] .config{color:#193a2d}html[data-site-theme=light] body[data-surface=neutral] .config:hover,html[data-site-theme=light] body[data-surface=neutral] .config[aria-pressed=true]{background:#dcece2}html[data-site-theme=light] body[data-surface=neutral] .config i,html[data-site-theme=light] body[data-surface=neutral] .bar-row strong,html[data-site-theme=light] body[data-surface=neutral] .measure-tag,html[data-site-theme=light] body[data-surface=neutral] .performance-results,html[data-site-theme=light] body[data-surface=neutral] footer a,html[data-site-theme=light] body[data-surface=neutral] footer strong{color:#234b3d}html[data-site-theme=light] body[data-surface=neutral] .bar-track{background:#c6d8ce}html[data-site-theme=light] body[data-surface=neutral] .visual-note,html[data-site-theme=light] body[data-surface=neutral] .prototype-links span{color:#405950}html[data-site-theme=light] body[data-surface=neutral] .visual-note a,html[data-site-theme=light] body[data-surface=neutral] .component-buttons button,html[data-site-theme=light] body[data-surface=neutral] .prototype-links a{color:#17573f}html[data-site-theme=light] body[data-surface=neutral] .prototype-links a{border-color:#a2b9ac}html[data-site-theme=light] body[data-surface=neutral] .prototype-links a[aria-current=page]{color:#194b39;background:#d8eade;border-color:#719e87}html[data-site-theme=light] body[data-surface=neutral] .viewport{background:radial-gradient(at 51% 60%,#b4d2c750,#0000 62%)}html[data-site-theme=light] body[data-surface=neutral] :focus-visible{outline-color:#135c44}@media (width<=700px){body[data-surface=neutral] .header-meta{display:none}body[data-surface=neutral] .theme-toggle{margin-left:auto}}.frame-info{text-align:right;color:#b4c8c4;margin:9px 0 0;font-size:10px;line-height:1.5}.frame-info[hidden]{display:none}html[data-site-theme=light] body[data-surface=neutral] .frame-info{color:#405950}.config:disabled,.engine-button:disabled,.text-button:disabled{opacity:.55;cursor:wait}.rotation-cue{z-index:8;color:#d5fff3;pointer-events:none;background:#113f3adb;border-radius:50%;width:64px;height:64px;padding:10px;animation:1s both rotation-cue-in;position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #60e9c788}.rotation-cue svg{width:100%;height:100%}@keyframes rotation-cue-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}15%,70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0}}@media (prefers-reduced-motion:reduce){.rotation-cue{animation:none}}.bridge-flash{z-index:12;pointer-events:none;filter:drop-shadow(0 0 6px #2ce3fd)drop-shadow(0 0 14px #39bafa);width:180px;height:100px;animation:.45s ease-out both bridge-flash;position:absolute;transform:translate(-50%,-50%)}.bridge-flash svg{width:100%;height:100%}.bridge-flash path{stroke:#3fc9ff;stroke-width:2.4px;stroke-dasharray:11 4 3 5;stroke-linejoin:round;animation:.13s linear infinite bridge-spark}@keyframes bridge-spark{to{stroke-dashoffset:-26px}}@keyframes bridge-flash{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}20%,65%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.12)}}.bridge-focus-details{z-index:9;color:#123b2e;background:#f4f7f2f0;border:1px solid #a5c3b3;width:min(230px,42%);padding:18px;font-size:11px;line-height:1.45;position:absolute;bottom:30px;left:20px;box-shadow:0 8px 24px #12372b22}.bridge-focus-kicker{letter-spacing:.12em;color:#17654f;font:9px Mono,monospace}.bridge-focus-details h3{letter-spacing:-.06em;margin:10px 0;font-size:23px;line-height:1.05}.bridge-focus-details h3 em{color:#17654f;font-family:Georgia,serif}.bridge-focus-details dl{margin:10px 0}.bridge-focus-details dl div{border-top:1px solid #c8d9cd;justify-content:space-between;gap:8px;padding:5px 0;display:flex}.bridge-focus-details dt{color:#4c7164}.bridge-focus-details dd{text-align:right;margin:0;font-weight:600}.bridge-focus-details button{color:#17654f;background:0 0;border:1px solid #17654f;padding:7px 9px;font-size:11px}.viewport.is-inspecting .view-callout,.viewport.is-inspecting .interaction-hint{visibility:hidden}html[data-site-theme=dark] .bridge-focus-details{color:#d9f2eb;background:#0c2125f0;border-color:#426961}html[data-site-theme=dark] .bridge-focus-kicker,html[data-site-theme=dark] .bridge-focus-details h3 em,html[data-site-theme=dark] .bridge-focus-details button{color:#a5f2db}html[data-site-theme=dark] .bridge-focus-details dt{color:#a8c6bd}.focus-access:not(:focus-visible){clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){.bridge-focus-details{width:min(185px,48%);padding:10px;font-size:10px;bottom:8px;left:8px}.bridge-focus-details h3{margin:6px 0;font-size:19px}.bridge-focus-details dl{margin:5px 0}.bridge-focus-details dl div{padding:3px 0}.bridge-focus-details p{margin:4px 0}.bridge-focus-details button{padding:5px 7px}}@media (prefers-reduced-motion:reduce){.bridge-flash,.bridge-flash path{animation:none}}.bridge-hover-outline{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.bridge-hover-outline .outline-stroke{fill:none;stroke:#ffffffb3;stroke-width:10px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
