@font-face{font-family:Mona Sans;src:url(/fonts/mona-sans.woff2)format("woff2");font-weight:300 800;font-stretch:85% 110%;font-display:swap}@font-face{font-family:Mona Sans Mono;src:url(/fonts/mona-sans-mono.woff2)format("woff2");font-weight:400 600;font-stretch:85% 100%;font-display:swap}:root{--paper:#fff;--paper-2:#f4f5f6;--ink:#0f1113;--ink-2:#5b6168;--ink-3:#6b7177;--hair:#0f11131f;--hair-2:#0f11130f;--pencil:#0a6dc8;--pencil-soft:#0b74d41a;--sans:"Mona Sans", system-ui, "Helvetica Neue", sans-serif;--mono:"Mona Sans Mono", ui-monospace, "SF Mono", Menlo, monospace;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4rem;--s9:6rem;--gutter:clamp(1rem, 4vw, 3rem);--ease:cubic-bezier(.2, .7, .2, 1);--t1:.12s;--t2:.2s;--t3:.32s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#101214;--paper-2:#181b1e;--ink:#eceef0;--ink-2:#9aa1a8;--ink-3:#8e959c;--hair:#eceef024;--hair-2:#eceef012;--pencil:#62bbff;--pencil-soft:#62bbff24}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:400 1.0625rem/1.55 var(--sans);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,pre,figure,ul,ol{margin:0}h1{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.5rem,6vw,4.25rem);font-weight:600;line-height:1}h2{letter-spacing:-.025em;text-wrap:balance;max-width:24ch;font-size:clamp(1.75rem,3.2vw,2.25rem);font-weight:600;line-height:1.1}h3{letter-spacing:-.01em;font-size:1.125rem;font-weight:600;line-height:1.3}p{text-wrap:pretty;max-width:62ch}.lede{color:var(--ink-2);text-wrap:balance;font-size:1.25rem;line-height:1.4}.small{color:var(--ink-2);font-size:.9375rem;line-height:1.5}a{color:inherit;-webkit-text-decoration-color:var(--hair);text-decoration-color:var(--hair);text-underline-offset:.15em;transition:text-decoration-color var(--t1) var(--ease)}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--pencil);outline-offset:2px}::selection{background:var(--pencil-soft)}code,pre,.mono,.label{font-family:var(--mono);font-variant-ligatures:none;font-variant-numeric:tabular-nums}pre{font-size:.875rem;line-height:1.6;overflow-x:auto}pre b{color:var(--pencil);font-weight:500}img,svg,video{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.page{border-inline:1px solid var(--hair);max-width:80rem;margin-inline:auto}section{padding:var(--s8) var(--gutter);border-top:1px solid var(--hair)}.label{font:500 .75rem/1 var(--mono);color:var(--pencil);font-variant-numeric:tabular-nums}.rubric{align-items:center;gap:var(--s4);margin-bottom:var(--s6);max-width:none;display:flex}.rubric span{color:var(--ink-3)}.rubric:after{content:"";background:var(--hair);flex:1;height:1px}.scheme:after{content:"light"}@media (prefers-color-scheme:dark){.scheme:after{content:"dark"}}.dim{color:var(--pencil);justify-content:center;align-items:center;display:flex;position:relative}.dim.h{border-inline:1px solid;height:12px}.dim.h:before{content:"";transform-origin:0;background:currentColor;height:1px;position:absolute;inset:50% 0 auto}.dim.v{border-block:1px solid;flex-direction:column;width:12px}.dim.v:before{content:"";transform-origin:top;background:currentColor;width:1px;position:absolute;inset:0 auto 0 50%}.dim>span{z-index:1;padding:0 var(--s2);background:var(--paper);font:500 .75rem/1 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;position:relative}.dim.v>span{padding:var(--s2) 0}@media (prefers-reduced-motion:no-preference){.measured .dim:before{animation:draw var(--t3) var(--ease) both}.measured .dim>span{animation:fade var(--t2) var(--ease) var(--t3) both}.measured .nodes rect{animation:pop var(--t2) var(--ease) calc(var(--i,0) * 24ms) both;transform-box:fill-box;transform-origin:50%}}@keyframes draw{0%{transform:scaleX(0)}}.dim.v:before{animation-name:draw-v}@keyframes draw-v{0%{transform:scaleY(0)}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.framed{gap:var(--s2);align-content:start;min-width:0;display:grid}.framed .label{color:var(--ink-3);white-space:nowrap}.frame{outline:1px solid var(--ink);outline-offset:-1px;background:var(--paper)}.frame>picture>img,.frame>img,.frame>video{width:100%;height:auto}.framed.light{--paper:#f4f5f6;--ink:#0f1113;--ink-2:#5b6168;--ink-3:#6b7177;--pencil:#0a6dc8;padding:var(--s4);background:var(--paper);color:var(--ink)}.bar{height:3.5rem;padding-inline:var(--gutter);border-bottom:1px solid var(--hair);justify-content:space-between;align-items:center;display:flex}.bar svg{width:auto;height:1.125rem}.bar a{text-decoration:none}.bar a.gh{font:500 .8125rem/1 var(--mono);color:var(--ink-2)}.bar a.gh:hover{color:var(--ink)}.hero{padding-block:var(--s7) var(--s8);border-top:0}.hero-fig{max-width:30rem;margin-bottom:var(--s4);padding-right:2.25rem;position:relative}.tagline{color:var(--ink-2);margin-bottom:var(--s6);font-size:1.125rem}.hero-fig svg{width:100%;height:auto;margin-left:-2.32%}.hero-fig .dim.h{margin-top:var(--s3)}.hero-fig .dim.v{position:absolute;top:0;right:0}.hero h1{margin-bottom:var(--s4)}.hero .lede{margin-bottom:var(--s6)}.hero .install{align-items:center;gap:var(--s5);flex-wrap:wrap;display:flex}.hero .install a{font:500 .8125rem/1 var(--mono);color:var(--ink-2);text-decoration:none}.hero .install a:hover{color:var(--ink)}.cmd{border:1px solid var(--ink);align-items:stretch;max-width:100%;display:inline-flex}.cmd pre{min-width:0;padding:var(--s3) var(--s4);white-space:pre;text-overflow:ellipsis;font-size:.9375rem;overflow:hidden}.cmd button{padding:0 var(--s4);border-left:1px solid var(--ink);font:500 .8125rem/1 var(--mono);color:var(--ink-2);transition:color var(--t1) var(--ease), background var(--t1) var(--ease)}.cmd button:hover{color:var(--ink);background:var(--pencil-soft)}.cmd button:focus-visible{outline-offset:-2px}.cmd button[data-copied]{color:var(--pencil)}.section-line{margin-top:var(--s4);text-wrap:balance}.examples{gap:var(--s9);margin-top:var(--s7);display:grid}.example{gap:var(--s6);min-width:0;display:grid}.example-head{gap:var(--s3);display:grid}.example-head picture,.example-head svg{height:1.5rem}.example-head picture img{width:auto;height:100%}.example-head svg{width:auto}.example-head .mark.cp{height:2.125rem;margin-top:-.3125rem}.name{letter-spacing:-.01em;margin-top:var(--s2);font-weight:600}.name span{color:var(--ink-2);font-weight:400}.facts,.links{font:400 .8125rem/1.6 var(--mono);color:var(--ink-2);max-width:none}.facts i,.links i{color:var(--ink-3);font-style:normal}.links a{-webkit-text-decoration-color:var(--hair);text-decoration-color:var(--hair)}.shots{gap:var(--s5) var(--s4);grid-template-columns:1.4375fr .4621fr;align-items:start;min-width:0;display:grid}.shots .span{grid-column:1/-1}.caption{margin-top:var(--s8);letter-spacing:-.015em;font-size:1.25rem;font-weight:600;line-height:1.4}.tree{column-gap:var(--s6);margin-top:var(--s7);font:400 .875rem/1.6 var(--mono);grid-template-columns:max-content 1fr;row-gap:.1875rem;max-width:54rem;display:grid}.tree b{white-space:nowrap;font-weight:400}.tree span{color:var(--ink-2)}.tree .in{padding-left:2ch}.tree .wide{grid-column:1/-1}.term{margin-top:var(--s7);padding:var(--s5) var(--s6);background:var(--paper-2);border:1px solid var(--hair);max-width:54rem}.term i{color:var(--ink-3);font-style:normal}#install .install{margin-top:var(--s7)}.need{margin-top:var(--s6)}.need b{font-weight:600}.closing{margin-top:var(--s6)}footer{padding:var(--s6) var(--gutter);border-top:1px solid var(--hair);justify-content:space-between;gap:var(--s3) var(--s6);font:400 .8125rem/1.6 var(--mono);color:var(--ink-2);flex-wrap:wrap;display:flex}footer p{max-width:none}footer a{-webkit-text-decoration-color:var(--hair);text-decoration-color:var(--hair)}@media (width<=840px){.narrow .label .site,.narrow .label .sch{display:none}}@media (width<=640px){.hero{padding-block:var(--s6) var(--s7)}.hero-fig{margin-bottom:var(--s6);padding-right:1.75rem}.lede{font-size:1.125rem}.tagline{font-size:1rem}.cmd pre{font-size:.875rem}.examples{gap:var(--s8);margin-top:var(--s7)}.shots{gap:var(--s4) var(--s3)}.tree{grid-template-columns:1fr;row-gap:0}.tree b{white-space:normal;overflow-wrap:anywhere}.tree span{margin-bottom:var(--s2);padding-left:2ch}.tree .in+span{padding-left:4ch}.tree span:empty{display:none}.tree .wide{margin-bottom:var(--s2)}.links i{display:none}.links a{display:block}.term{padding:var(--s4);white-space:pre-wrap;overflow-wrap:anywhere}}
