.hero{padding-top:clamp(24px,2.6vw,34px)}.hero .h1>span{display:block}.hero-act{flex-wrap:wrap;align-items:center;gap:12px 26px;margin-top:22px;display:flex}.install-chip{border:1px solid var(--field);background:var(--paper);align-items:center;height:42px;display:inline-flex}.install-chip code{font-family:var(--mono);white-space:nowrap;padding:0 14px;font-size:13.5px}.install-chip code span{color:var(--ink-3);margin-right:8px}.install-chip button{border:0;border-left:1px solid var(--rule);height:100%;color:var(--ink-2);cursor:pointer;background:0 0;padding:0 14px;font-size:13.5px;transition:color .15s linear,background-color .15s linear}.install-chip button:hover{color:var(--ink);background:var(--fill)}@media (max-width:720px){.hero{padding-top:18px}.hero-act{gap:12px 22px;margin-top:20px}.install-chip{width:100%}.install-chip code{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}}.f1{margin-top:clamp(22px,2.2vw,28px)}.f1-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:4px 16px;min-height:46px;padding:7px 18px;font-size:14px;line-height:1.4;display:flex}.f1-head-l{align-items:baseline;gap:12px;min-width:0;display:flex}.f1-no{white-space:nowrap;font-weight:540}.f1-title{color:var(--ink-2);text-wrap:balance}.f1-head-r{color:var(--ink-2);white-space:nowrap;align-items:center;gap:14px;display:flex}.f1-status{align-items:center;gap:8px;display:inline-flex}.f1-status .dot-off,.f1-nojs{display:none}@media (scripting:none){.f1-js{display:none}.f1-status.f1-nojs{display:inline-flex}}.f1-sep{background:var(--rule-2);width:1px;height:16px}.f1-linkbtn{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--rule-2);text-decoration-color:var(--rule-2);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:14px;text-decoration-thickness:1px;transition:text-decoration-color .15s linear}.f1-linkbtn:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.f1-linkbtn[hidden]{display:none}.f1-win{color:var(--ink-3);align-items:baseline;gap:3px;display:inline-flex}.f1-win a{color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--rule-2);text-decoration-color:var(--rule-2);text-underline-offset:4px;padding:6px 4px;text-decoration-thickness:1px;transition:color .15s linear,text-decoration-color .15s linear}.f1-win a:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.f1-win a[aria-current]{color:var(--ink);font-weight:520;text-decoration:none}.f1-draw{position:relative;container-type:inline-size}.f1-svg{width:100%;font-family:var(--sans);touch-action:pan-y;display:block;overflow:visible}.f1-narrow{display:none}@container not (min-width:720px){.f1-wide{display:none}.f1-narrow{display:block}}.f1-draw[data-v] .f1-svg{display:block}@media (scripting:enabled){.f1-draw:not([data-ready]) .f1-svg{visibility:hidden;animation:0s 3s forwards f1-reveal}}@keyframes f1-reveal{to{visibility:visible}}.f1-empty{border:1px solid var(--rule);background:var(--paper);max-width:calc(100% - 32px);color:var(--ink-2);text-align:center;padding:10px 16px;font-size:14px;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.f-grid path{fill:none;stroke:var(--ink);stroke-opacity:.07;stroke-width:1px;shape-rendering:crispedges}.f-grid .f-ticks{stroke-opacity:.4}.f-grid .f-axis{stroke-opacity:.3}.f-grid text{fill:var(--ink-3);font-variant-numeric:tabular-nums;font-size:13px}.f-grid .f-nowt{fill:var(--ink);font-weight:540}.f-now{stroke:var(--ink);stroke-opacity:.5;stroke-width:1px;shape-rendering:crispedges}.f-sweep{stroke:var(--ink);stroke-opacity:.6;stroke-width:1px;shape-rendering:crispedges}.f-sweep-t{fill:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.f-wood{fill:var(--ink)}.f-idle{fill:none;stroke:var(--ink);stroke-opacity:.36;stroke-width:1.3px;stroke-dasharray:.5 5;stroke-linecap:round}.f-idle.thin{stroke-opacity:.24;stroke-dasharray:.5 8}.f-nodata rect{fill:var(--fill)}.f-nodata path{fill:none;stroke:var(--ink);stroke-opacity:.3;stroke-width:1px;stroke-dasharray:2 3;shape-rendering:crispedges}.f-nodata text{fill:var(--ink-3);font-size:12px}.f-gap{fill:none;stroke:var(--ink);stroke-opacity:.18;stroke-width:1px}.f-rl text{transition:fill .2s linear}.f-rl .r1{fill:var(--ink);letter-spacing:-.01em;font-size:14px;font-weight:520}.f-rl .m .r1{font-family:var(--mono);font-size:13px}.f-rl .r2{fill:var(--ink-3);font-variant-numeric:tabular-nums;font-size:13px}.f-rl .r3{fill:var(--ink-3);font-size:12px}.f-rl .rp{fill:var(--ink);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round;font-size:13px;font-weight:520}.f-rl .rp.m .rn{font-family:var(--mono);letter-spacing:-.01em;font-size:12px}.f-rl .rp .rq{fill:var(--ink-3);font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:12px;font-weight:400}.twig{cursor:pointer;transition:opacity .2s linear}.twig:focus{outline:none}.tw-stem{fill:var(--ink)}.tw-nA{fill:var(--ink);fill-opacity:.84}.tw-nB{fill:var(--ink);fill-opacity:.46}.tw-tip{fill:var(--paper);stroke:var(--ink);stroke-width:1.3px}.twig.newest .tw-tip{fill:var(--needle)}.f-ring{fill:none;stroke:var(--ink);stroke-width:2px;pointer-events:none}.f-tl text{font-family:var(--mono);letter-spacing:-.01em;fill:var(--ink-2);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round;font-size:12px}.f-tl text.nw{fill:var(--ink);font-weight:520}.f1-narrow .f-tl text.nw{font-size:12.5px}.f-tl .ag{font-family:var(--sans);letter-spacing:0;fill:var(--ink-3);font-size:12px;font-weight:400}.f-growth,.f-tl{transition:opacity .2s linear}.f1-svg.has-sel .twig{opacity:.3}.f1-svg.has-sel .twig.on{opacity:1}.f1-svg.has-sel .f-tl text{fill:var(--ink-3);font-weight:400}.f1-svg.has-sel .f-tl text.on{fill:var(--ink);font-weight:520}.f1-svg.has-sel .f-growth{opacity:.6}.f1-svg.has-sel .f-rl .r1,.f1-svg.has-sel .f-rl .rp{fill:var(--ink-3)}.f1-svg.has-sel .f-rl .on .r1,.f1-svg.has-sel .f-rl .rp.on{fill:var(--ink)}.f1-svg.has-sel .f-halo{visibility:hidden}.f1-svg.pointing{cursor:pointer}.f-lead{stroke:var(--ink);stroke-opacity:.55;stroke-width:1px}.f-halo{fill:none;stroke:var(--needle);stroke-width:1.4px;vector-effect:non-scaling-stroke;opacity:0;transform-box:fill-box;transform-origin:50%;pointer-events:none}.f-halo.on{animation:f-halo 2.6s var(--ease) 3}@keyframes f-halo{0%{opacity:.75;transform:scale(1)}to{opacity:0;transform:scale(3.4)}}.f1-callout{z-index:2;border:1px solid var(--rule-2);background:var(--paper);white-space:nowrap;opacity:0;pointer-events:none;padding:7px 10px 8px;font-size:13px;line-height:1.45;transition:opacity .15s linear;position:absolute;top:0;left:0}.f1-callout.show{opacity:1}.f1-callout .c-repo{font-family:var(--mono);letter-spacing:-.01em;color:var(--ink);font-size:13px;font-weight:520;display:block}.f1-callout .c-row{color:var(--ink-2);grid-template-columns:auto auto;gap:0 10px;margin-top:2px;display:grid}.f1-callout .c-row b{color:var(--ink-3);font-weight:400}.f1-callout .c-row code{font-family:var(--mono);color:var(--ink);font-size:12px}.f1-callout i{color:var(--ink);font-style:normal;font-weight:520}.f1-stats{border-top:1px solid var(--rule);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.f1-stats>div{border-left:1px solid var(--rule);padding:13px 18px 15px}.f1-stats>div:first-child{border-left:0}.f1-stats b{letter-spacing:-.032em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:450;line-height:1.15;display:block}.f1-stats>div>span{color:var(--ink-2);font-size:14px}.f1-cap{margin-top:14px}.f1-src{display:none}.f1-newest{color:var(--ink-2);margin-bottom:6px;font-size:14px}.f1-newest code{font-family:var(--mono);color:var(--ink);font-size:13px}.f1-how>summary{color:var(--ink-2);cursor:pointer;align-items:baseline;gap:8px;padding:6px 0;font-size:15px;list-style:none;transition:color .15s linear;display:inline-flex}.f1-how>summary::-webkit-details-marker{display:none}.f1-how>summary:after{content:"+";color:var(--ink-3)}.f1-how[open]>summary:after{content:"−"}.f1-how>summary:hover{color:var(--ink)}.f1-how[open]>summary{margin-bottom:8px}.f1-how-in{grid-template-columns:minmax(0,760px) auto;justify-content:space-between;gap:14px 48px;display:grid}.f1-legend{color:var(--ink-2);grid-template-columns:auto auto;align-content:start;gap:7px 22px;padding-top:3px;font-size:13px;display:grid}.f1-legend li{white-space:nowrap;align-items:center;gap:8px;display:flex}.f1-legend svg{flex:none;width:28px;height:14px;overflow:visible}.f1-sr{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@supports selector(::details-content){@media (min-width:721px){.f1-how>summary{display:none}.f1-how::details-content{content-visibility:visible;height:auto}}@media (min-width:901px){.f1-cap{grid-template-columns:minmax(0,760px) auto;justify-content:space-between;column-gap:48px;display:grid}.f1-newest{grid-area:1/1}.f1-cap>.f1-how::details-content{grid-area:2/1/auto/-1}.f1-cap>.f1-how,.f1-how-in{display:contents}.f1-cap>.f1-how::details-content{display:contents}.f1-how-in>.caption{grid-area:2/1}.f1-how-in>.f1-legend{grid-area:1/2/span 2}}}@media (max-width:900px){.f1-head{align-items:flex-start}.f1-head-r{padding-top:0}.f1-how-in{grid-template-columns:minmax(0,760px)}}@media (min-width:721px) and (max-width:900px){.f1-legend{justify-content:start}}@media (max-width:720px){.f1-head{align-items:center;min-height:44px;padding:6px 12px}.f1-title,.f1-sep,.f1-ex{display:none}.f1-head-r{flex-wrap:wrap;justify-content:flex-end;row-gap:0}.f1-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.f1-stats>div{padding:11px 12px 13px}.f1-stats>div:nth-child(3){border-left:0}.f1-stats>div:nth-child(n+3){border-top:1px solid var(--rule)}.f1-stats b{font-size:23px}.f1-stats>div>span{font-size:13px;line-height:1.35;display:block}.f1-stats .f1-mn{display:none}.f1-src{color:var(--ink-3);margin-bottom:4px;font-size:13px;line-height:1.45;display:block}.f1-how-in{grid-template-columns:minmax(0,1fr)}.f1-legend{gap:6px 16px}}@media (prefers-reduced-motion:reduce){.f-halo.on{animation:none}.twig,.f-growth,.f-tl,.f1-callout,.f-rl text,.f1-how>summary,.f1-win a{transition:none}}
