@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.CntWwq_className{font-family:Geist,Geist Fallback;font-style:normal}.CntWwq_variable{--geist:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.eIVO-W_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.eIVO-W_variable{--geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Poah;src:url(/poah.ttf)format("truetype");font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-sans:var(--geist), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--geist-mono), ui-monospace, "SF Mono", Menlo, monospace;--font-hand:"Poah", var(--font-sans);--bg:var(--lightningcss-light,#f9fafb)var(--lightningcss-dark,#090a0c);--bg-2:var(--lightningcss-light,#f2f3f5)var(--lightningcss-dark,#0f1013);--raised:var(--lightningcss-light,#fff)var(--lightningcss-dark,#16171a);--fg:var(--lightningcss-light,#16181d)var(--lightningcss-dark,#f1f2f4);--fg-2:var(--lightningcss-light,#52555c)var(--lightningcss-dark,#abaeb3);--fg-3:var(--lightningcss-light,#6c6f75)var(--lightningcss-dark,#83868c);--line:var(--lightningcss-light,#14182212)var(--lightningcss-dark,#ffffff12);--line-2:var(--lightningcss-light,#1418221c)var(--lightningcss-dark,#ffffff1a);--hover:var(--lightningcss-light,#1418220b)var(--lightningcss-dark,#ffffff0f);--ink:var(--lightningcss-light,#1d3fd6)var(--lightningcss-dark,#8aa4ff);--ink-soft:var(--lightningcss-light,#1d3fd617)var(--lightningcss-dark,#8aa4ff26);--ok:var(--lightningcss-light,#15803d)var(--lightningcss-dark,#4ade80);--warn:var(--lightningcss-light,#b45309)var(--lightningcss-dark,#fbbf24);--stage:#fff;--outline:var(--lightningcss-light,#0000001a)var(--lightningcss-dark,#ffffff1a);--hi:var(--lightningcss-light,#fff)var(--lightningcss-dark,#ffffff12);--drop:var(--lightningcss-light,#1118260f)var(--lightningcss-dark,#00000073);--drop-2:var(--lightningcss-light,#1118261a)var(--lightningcss-dark,#0009);--elev-1:inset 0 1px 0 var(--hi), 0 0 0 1px var(--line-2), 0 1px 2px var(--drop);--elev-2:inset 0 1px 0 var(--hi), 0 0 0 1px var(--line-2), 0 1px 2px var(--drop), 0 16px 40px -12px var(--drop-2);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--radius-1:6px;--radius-2:10px;--radius-3:18px;--content:1120px;--measure:34rem;--ease:cubic-bezier(.23, 1, .32, 1);--ease-swap:cubic-bezier(.2, 0, 0, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@supports (color:lab(0% 0 0)){:root{--bg:var(--lightningcss-light,lab(98.2516% -.0501573 -.758076))var(--lightningcss-dark,lab(2.74467% -.0340939 -.773394));--bg-2:var(--lightningcss-light,lab(95.9273% -.0742376 -1.13651))var(--lightningcss-dark,lab(4.82441% -.0609979 -1.41));--raised:var(--lightningcss-light,lab(100% 0 0))var(--lightningcss-dark,lab(7.75445% -.0992194 -2.2428));--fg:var(--lightningcss-light,lab(8.30991% -.112765 -3.71904))var(--lightningcss-dark,lab(95.3473% -.0742078 -1.13652));--fg-2:var(--lightningcss-light,lab(36.1443% -.212252 -4.4992))var(--lightningcss-dark,lab(70.9651% -.179976 -3.02018));--fg-3:var(--lightningcss-light,lab(46.595% -.201464 -3.7622))var(--lightningcss-dark,lab(55.8754% -.208616 -3.76608));--line:var(--lightningcss-light,lab(8.24245% .0749901 -7.32541/.07))var(--lightningcss-dark,lab(100% 0 0/.07));--line-2:var(--lightningcss-light,lab(8.24245% .0749901 -7.32541/.11))var(--lightningcss-dark,lab(100% 0 0/.1));--hover:var(--lightningcss-light,lab(8.24245% .0749901 -7.32541/.045))var(--lightningcss-dark,lab(100% 0 0/.06));--outline:var(--lightningcss-light,lab(0% 0 0/.1))var(--lightningcss-dark,lab(100% 0 0/.1));--hi:var(--lightningcss-light,lab(100% 0 0))var(--lightningcss-dark,lab(100% 0 0/.07));--drop:var(--lightningcss-light,lab(8.15628% .58081 -10.86/.06))var(--lightningcss-dark,lab(0% 0 0/.45));--drop-2:var(--lightningcss-light,lab(8.15628% .58081 -10.86/.1))var(--lightningcss-dark,lab(0% 0 0/.6))}}*{box-sizing:border-box}html.wait body{visibility:hidden}html{background:var(--bg);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font:400 15px/24px var(--font-sans);margin:0}code,pre{font-family:var(--font-mono)}::selection{background:var(--ink);color:#fff}a{color:inherit;-webkit-text-decoration:underline var(--line-2);text-decoration:underline var(--line-2);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}svg.icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.wrap{width:100%;max-width:calc(var(--content) + 2 * var(--space-6));padding-inline:var(--space-6);margin-inline:auto}h1{font:600 52px/1.06 var(--font-sans);letter-spacing:-.035em;text-wrap:balance;margin:0}h1 .hand{font:400 1.12em/1 var(--font-hand);color:var(--ink);letter-spacing:0;display:inline-block}h2{font:600 28px/1.15 var(--font-sans);letter-spacing:-.025em;text-wrap:balance;margin:0}.lead{max-width:var(--measure);color:var(--fg-2);text-wrap:balance;margin:20px 0 0;font-size:17px;line-height:28px}.icon-btn{border-radius:var(--radius-1);width:30px;height:30px;color:var(--fg-2);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:background .15s,color .15s;display:inline-grid}.icon-btn:hover{background:var(--hover);color:var(--fg)}.icon-btn:disabled{opacity:.35;cursor:default;background:0 0}.icon-btn[aria-pressed=true]{background:var(--ink-soft);color:var(--ink)}.swap{place-items:center start;display:inline-grid}.swap>*{transition:opacity .2s var(--ease-swap), transform .2s var(--ease-swap), filter .2s var(--ease-swap);grid-area:1/1}.swap>:last-child,[data-done] .swap>:first-child{opacity:0;transform:translateY(3px)}.swap>.icon:last-child,[data-done] .swap>.icon:first-child{filter:blur(4px);transform:scale(.25)}[data-done] .swap>:last-child{opacity:1;filter:none;transform:none}[data-done] .swap>.icon:last-child{color:var(--ok)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cta{align-items:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.hero{padding-block:var(--space-9) var(--space-6);text-align:center}.hero .lead{margin-inline:auto}.hero .cta{justify-content:center}.demo{text-align:left;margin-top:56px}.bench{border-radius:var(--radius-3);background:var(--raised);box-shadow:var(--elev-2);padding:6px;position:relative}.bench-body{display:grid}.stage-wrap{position:relative}.stage{background:var(--stage);box-shadow:0 0 0 1px var(--lightningcss-light,transparent)var(--lightningcss-dark,var(--line));touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;position:relative;overflow:hidden}.stage svg{cursor:crosshair;width:100%;height:auto;display:block}.shot{opacity:0;transition:opacity .3s ease-out}.shot[data-ready]{opacity:1}.stage-loading{aspect-ratio:2614/1980;color:#71717a;font:13px var(--font-mono);place-items:center;display:grid}.drop-active:after{content:"drop a screenshot";inset:var(--space-3);border-radius:var(--radius-2);color:#1d3fd6;font:32px/1 var(--font-hand);background:#1d3fd60f;border:2px dashed #1d3fd6;place-items:center;display:grid;position:absolute}.note-input{transform-origin:0 0;z-index:5;animation:pop .16s var(--ease);background:#fff;border-radius:9px;align-items:center;gap:2px;padding:3px;display:flex;position:absolute;box-shadow:inset 0 1px #fff,0 0 0 1px #00000014,0 1px 2px #0000000f,0 4px 12px -2px #0000001a}@keyframes pop{0%{opacity:0;transform:translateY(-2px)scale(.98)}}.note-input input{color:#1d3fd6;width:190px;height:26px;font:19px/1 var(--font-hand);background:0 0;border:0;outline:0;padding:0 6px}.note-input input::placeholder{color:#a1a1aa}.note-input button{color:#8b8b93;cursor:pointer;width:24px;height:22px;transition:color .15s var(--ease), background .15s var(--ease);background:#fff;border:0;border-radius:5px;place-items:center;padding:0;display:grid;box-shadow:inset 0 1px #fff,0 0 0 1px #0000001a,0 1px #00000014}.note-input button .icon{width:13px;height:13px}.note-input button:hover,.note-input input:not(:placeholder-shown)+button{color:#1d3fd6}.note-input button:hover{background:#f4f4f5}.note-menu{z-index:5;transform-origin:0 0;animation:pop .16s var(--ease);background:#fff;border-radius:9px;align-items:center;gap:1px;padding:3px;display:flex;position:absolute;box-shadow:inset 0 1px #fff,0 0 0 1px #00000014,0 1px 2px #0000000f,0 4px 12px -2px #0000001a}.note-menu .icon-btn{color:#52525b;border-radius:6px;width:24px;height:24px}.note-menu .icon{width:14px;height:14px}.note-menu .icon-btn:hover{color:#18181b;background:#0000000d}.note-menu .icon-btn[aria-pressed=true]{color:#1d3fd6;background:#1d3fd617}.note-menu .icon-btn[data-danger]:hover{color:#dc2626;background:#dc262614}.note-menu .tool[data-label]:hover:after{top:calc(100% + 8px);bottom:auto}.note-menu .sep{background:#0000001a;height:14px;margin:0 2px}.note-hover,.note-sel{fill:#1d3fd60f;stroke:none;pointer-events:none}.note-sel{fill:#1d3fd614;stroke:#1d3fd6}.tool{position:relative}@media (hover:hover){.tool[data-label]:hover:after{content:attr(data-label);background:var(--fg);color:var(--bg);font:500 12px/1 var(--font-sans);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50%}}.sep{width:1px;height:18px;margin:0 var(--space-1);background:var(--line-2)}.dock{z-index:4;background:var(--raised);box-shadow:var(--elev-2);border-radius:12px;align-items:center;gap:2px;padding:5px;display:flex;position:absolute;bottom:0;left:50%;translate:-50% 50%}.dock .icon-btn{border-radius:7px;width:34px;height:34px}.dock-next:empty{display:none}.dock-next{min-width:170px;color:var(--fg-2);white-space:nowrap;padding:0 10px 0 6px;font-size:13px}.ghost{pointer-events:none}.ghost-box{fill:#1d3fd60f;stroke:#1d3fd6;transform-box:fill-box;transform-origin:0 0;animation:ghost-box 2.8s var(--ease) infinite}.ghost-cursor path{fill:#18181b;stroke:#fff;stroke-width:2.5px}.ghost-cursor{animation:ghost-cursor 2.8s var(--ease) infinite}.ghost-label{fill:#1d3fd6;font-family:var(--font-hand);animation:2.8s infinite ghost-fade}@keyframes ghost-box{0%,8%{opacity:1;transform:scale(.02)}55%,82%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes ghost-cursor{0%,8%{opacity:1;transform:translate(0)}55%,82%{transform:translate(var(--tw,376px), var(--th,90px));opacity:1}to{transform:translate(var(--tw,376px), var(--th,90px));opacity:0}}@keyframes ghost-fade{0%,to{opacity:.55}50%{opacity:1}}.spec{flex-direction:column;min-width:0;padding-top:28px;display:flex}.spec-head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) 4px 0 10px;font:12px var(--font-mono);color:var(--fg-3);display:flex}.spec pre{padding:var(--space-1) 10px var(--space-4);max-height:280px;font:12.5px/20px var(--font-mono);color:var(--fg-2);flex:1;margin:0;overflow:auto}.spec .k{color:var(--fg)}.spec .s{color:var(--ink)}.status{gap:var(--space-1) var(--space-4);background:var(--bg-2);font:12px/16px var(--font-mono);color:var(--fg-3);border-radius:12px;flex-wrap:wrap;padding:10px;display:flex}.status .ok{color:var(--ok)}.status .warn{color:var(--warn)}.section{padding-top:88px}.section-lead{margin:var(--space-2) 0 var(--space-5);color:var(--fg-2)}.gallery{gap:var(--space-4);flex-wrap:wrap;display:flex}.gallery figure{flex:var(--r) 1 0;background:var(--raised);min-width:0;box-shadow:var(--elev-1);border-radius:16px;margin:0;padding:6px}.gallery figure.wide{flex-basis:100%}.gallery img{background:var(--stage);outline:1px solid var(--outline);outline-offset:-1px;border-radius:10px;width:100%;height:auto;display:block}.zoom{cursor:zoom-in;background:0 0;border:0;border-radius:10px;width:100%;padding:0;display:block}.gallery figcaption{color:var(--fg-3);padding:10px 8px 4px;font-size:13px;line-height:20px}html:has(.lightbox[open]){overflow:hidden}.lightbox{cursor:zoom-out;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.lightbox[open]{place-items:center;display:grid}.lightbox::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#090a0cb8;background:lab(2.74467% -.0340939 -.773394/.72);transition:opacity .2s ease-out;animation:.25s ease-out fade}.lightbox[data-closing]::backdrop{opacity:0}@keyframes fade{0%{opacity:0}}.lightbox img{background:var(--stage);outline-offset:-1px;transform-origin:0 0;border-radius:12px;outline:1px solid #ffffff14;outline:1px solid lab(100% 0 0/.08);width:auto;max-width:min(100vw - 32px,1800px);height:auto;max-height:calc(100dvh - 48px);display:block}.lightbox-frame{filter:drop-shadow(0 24px 32px #00000073);display:block}.lightbox-close{top:var(--space-4);right:var(--space-4);color:#fff;cursor:pointer;background:#ffffff1f;background:lab(100% 0 0/.12);border:0;border-radius:999px;place-items:center;width:36px;height:36px;padding:0;transition:background .15s,opacity .2s ease-out;display:grid;position:fixed}.lightbox-close:hover{background:#fff3;background:lab(100% 0 0/.2)}.lightbox[data-closing] .lightbox-close{opacity:0}.footer{margin-top:var(--space-9);padding-block:var(--space-6) var(--space-8);box-shadow:inset 0 1px var(--line);color:var(--fg-3);font-size:13px}.footer p{margin:0 0 var(--space-2)}@media (pointer:coarse){.note-menu .icon-btn{border-radius:8px;width:34px;height:34px}.note-menu{border-radius:11px}.note-menu .icon{width:16px;height:16px}.note-input button{border-radius:7px;width:34px;height:30px}}@media (max-width:480px){.demo .bench{border-radius:16px;margin-inline:-12px;padding:4px}.stage,.status{border-radius:12px}.spec pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.pill-link{justify-content:center;width:44px;padding:0}.pill-link .icon{width:18px;height:18px}.pill-link-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cta{gap:var(--space-2);flex-wrap:nowrap}}@media (max-width:900px){.gallery figure{flex-basis:100%}.dock-next{display:none}h1{font-size:36px}.hero{padding-block:var(--space-7) 0}.section{padding-top:var(--space-8)}.wrap{padding-inline:var(--space-4)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.pill{background:var(--raised);height:44px;box-shadow:var(--elev-1);color:var(--fg);font:500 15px/1 var(--font-sans);white-space:nowrap;cursor:pointer;--ring:var(--raised);border:0;border-radius:999px;align-items:center;gap:10px;padding:0 18px 0 8px;transition:box-shadow .15s,background .15s;display:inline-flex}.pill:hover{box-shadow:inset 0 1px 0 var(--hi), 0 0 0 1px var(--line-2), 0 2px 6px var(--drop)}.pill .icon{width:15px;height:15px;color:var(--fg-3)}.chips{display:inline-flex}.chip{color:#18181b;width:28px;height:28px;box-shadow:0 0 0 2px var(--ring), inset 0 0 0 1px #00000014;background:#fff;border-radius:999px;place-items:center;margin-left:-7px;display:grid}@supports (color:lab(0% 0 0)){.chip{box-shadow:0 0 0 2px var(--ring), inset 0 0 0 1px lab(0% 0 0/.08)}}.chip:first-child{margin-left:0}.logo,.logo svg{width:15px;height:15px;display:block}.pill-link{height:44px;color:var(--fg-2);font:500 15px/1 var(--font-sans);border-radius:999px;align-items:center;gap:8px;padding:0 16px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.pill-link:hover{background:var(--hover);color:var(--fg)}
