@font-face{font-family:Geist;src:url(/fonts/Geist.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ink:#0a0a0a;--bg:#fafafa;--muted:#52525b;--muted2:#71717a;--muted3:#a1a1aa;--line:#e7e7ea;--blue:#2f6fed;--font:Geist,system-ui,sans-serif;--mono:"Geist Mono",ui-monospace,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:var(--ink)}.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}.wrap.wide{max-width:1296px;padding:0 clamp(12px,2.4vw,48px)}.dots{pointer-events:none;background-image:radial-gradient(#0a0a0a21 1px,#0000 1px);background-size:22px 22px;height:1100px;position:absolute;inset:0 0 auto;-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 30%,#000 30%,#0000 75%)}header{align-items:center;gap:16px;height:60px;display:flex;position:relative}.logo{letter-spacing:-.035em;color:var(--ink);align-items:center;gap:9px;font-size:17px;font-weight:700;text-decoration:none;display:flex}.logo .mark{flex:none;width:28px;height:28px;display:block}.spacer{flex:1}.navlink{color:var(--muted);white-space:nowrap;font-size:14px;text-decoration:none}.pillbtn{background:var(--ink);color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;align-items:center;height:38px;padding:0 16px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.hero{text-align:center;flex-direction:column;align-items:center;gap:16px;padding-top:clamp(20px,2.4vw,36px);display:flex;position:relative}.badge{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#3f3f46;white-space:nowrap;background:#fffc;border-radius:999px;align-items:center;gap:8px;height:30px;padding:0 6px 0 12px;font-size:13px;font-weight:500;display:inline-flex}.badge b{background:var(--ink);color:#fff;border-radius:999px;align-items:center;height:20px;padding:0 8px;font-size:11.5px;font-weight:500;display:inline-flex}h1{letter-spacing:-.045em;text-wrap:balance;max-width:22ch;margin:0;font-size:clamp(34px,4.3vw,62px);font-weight:600;line-height:1}h1 span{color:#8a8a93}.lead{color:var(--muted);text-wrap:pretty;max-width:560px;margin:0;font-size:clamp(15px,1.15vw,17px)}form.wl{flex-direction:column;gap:10px;width:100%;max-width:480px;margin-top:4px;display:flex}.wl .row{border:1px solid var(--line);background:#fff;border-radius:999px;flex-wrap:wrap;gap:6px;padding:5px;display:flex;box-shadow:0 1px 2px #0000000a,0 12px 32px #0000000f}.wl input{min-width:0;height:46px;font:400 15px var(--font);color:var(--ink);background:0 0;border:0;border-radius:999px;outline:none;flex:180px;padding:0 16px}.wl button{background:var(--ink);color:#fff;height:46px;font:500 15px var(--font);cursor:pointer;border:0;border-radius:999px;flex:none;padding:0 22px}.wl button:hover{background:#27272a}.wl button:disabled{opacity:.6}.wl .done{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;height:58px;padding:0 18px;font-size:15px;display:none}.wl .done i{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-style:normal;display:grid}.wl.is-done .row{display:none}.wl.is-done .done{display:flex}.wl small{color:var(--muted2);font-size:13px}.wl .err{color:#b3261e;font-size:13px;display:none}.wl.is-error .err{display:block}.shot{position:relative}.wrap.wide.shot{padding-top:clamp(36px,4vw,56px)}.glow{filter:blur(30px);pointer-events:none;background:radial-gradient(closest-side,#2f6fed38,#2f6fed00);width:70%;height:60%;position:absolute;top:18%;left:50%;transform:translate(-50%)}.tilt{transform-origin:50% 0;will-change:transform;transition:transform .12s linear;position:relative}.shot .frame{background:linear-gradient(#ffffffe6,#ffffff80);border:1px solid #e4e4e7;border-radius:clamp(14px,1.6vw,22px);padding:clamp(4px,.6vw,8px);box-shadow:0 1px 1px #0000000a,0 30px 80px -20px #0a0a0a40,0 60px 120px -40px #2f6fed40}.shot .frame img{background:#f9f9fa;border-radius:14px;width:100%;height:auto;display:block}.float{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:14px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;display:flex;position:absolute;box-shadow:0 12px 32px #0000001a}.float code{font:500 12px var(--mono);background:var(--ink);color:#fff;border-radius:6px;padding:3px 7px}.float small{color:var(--muted2);font-size:11.5px;font-weight:400;display:block}.float.check i{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;display:grid}@media (width<=760px){.float{display:none}}.platforms{text-align:center;color:var(--muted2);padding-top:clamp(48px,6vw,80px)}.platforms .row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 40px;display:flex}.platforms .row span{font-size:13px}.platforms .row b{letter-spacing:-.03em;color:#3f3f46;font-size:20px;font-weight:600}.platforms p{color:var(--muted3);margin:10px 0 0;font-size:13px}section.block{padding-top:clamp(80px,10vw,144px)}.kicker{font:500 12.5px var(--mono);color:var(--muted2);letter-spacing:.02em}h2{letter-spacing:-.045em;text-wrap:balance;margin:14px 0 0;font-size:clamp(32px,4.4vw,60px);font-weight:600;line-height:1}h2 span{color:#8a8a93}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin-top:48px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:22px;flex-direction:column;padding:8px;display:flex;box-shadow:0 1px 2px #00000008}.card .pic{background:#f9f9fa;border-radius:16px;height:260px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,#0000);mask-image:linear-gradient(#000 70%,#0000)}.card .txt{flex-direction:column;gap:6px;padding:14px 16px 18px;display:flex}.card .txt .n{font:500 12px var(--mono);color:var(--muted3)}.card .txt p{margin:0}.card .txt .t{letter-spacing:-.02em;font-size:18px;font-weight:600;line-height:1.3}.card .txt .s{color:var(--muted2);font-size:14px}.note{flex-direction:column;gap:22px;max-width:720px;margin:0 auto;display:flex}.note .letter{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px 24px;font-size:17px;line-height:1.55}.note .letter.todo{color:var(--muted2);border-style:dashed;font-size:14px}.note .who-is{align-items:center;gap:14px;display:flex}.note .avatar{object-fit:cover;border:1px solid var(--line);background:#ececef;border-radius:50%;flex:none;width:48px;height:48px}.note .who-is b{font-size:15px;font-weight:600;display:block}.note .who-is small{color:var(--muted2);font-size:13.5px}.close{background:var(--ink);color:#fafafa;text-align:center;border-radius:clamp(22px,2.6vw,36px);flex-direction:column;align-items:center;gap:28px;padding:clamp(56px,8vw,128px) clamp(20px,4vw,56px);display:flex;position:relative;overflow:hidden}.close h2{letter-spacing:-.05em;max-width:900px;margin:0;font-size:clamp(38px,6vw,84px);line-height:.98;position:relative}.close .glow2{filter:blur(40px);pointer-events:none;background:radial-gradient(closest-side,#2f6fed59,#0000);width:70%;height:80%;position:absolute;bottom:-40%;left:50%;transform:translate(-50%)}.close form.wl{position:relative}.close .wl .row{box-shadow:none;border:0}.close .wl small{color:var(--muted3)}footer.wrap{color:var(--muted2);flex-wrap:wrap;align-items:center;gap:12px 24px;padding-top:40px;padding-bottom:48px;font-size:13px;display:flex}footer a{color:var(--muted2);text-decoration:none}@media (width<=480px){header .cta{display:none}}form.wl.top{max-width:440px;margin-top:2px}.wl.top input,.wl.top button{height:42px}.wl button{padding:0 20px}.note .letter.todo{border-color:#d4d4d8;flex-direction:column;gap:8px;display:flex}.note .letter.todo .mono{font:500 13px var(--mono);color:var(--ink)}.note .avatar{font:500 9px var(--mono);color:var(--muted2);background:repeating-linear-gradient(135deg,#ececef 0 6px,#f6f6f7 6px 12px);place-items:center;display:grid}.card .pic{background:#f4f4f5;-webkit-mask-image:none;mask-image:none}.demo{font-family:var(--font);color:var(--ink);position:absolute;inset:0;overflow:hidden}.demo .sp{flex:1}.demo.marca{flex-direction:column;justify-content:center;gap:12px;padding:0 clamp(18px,8%,36px);display:flex}.demo .dl{color:var(--muted2);font-size:11.5px;font-weight:500}.demo .din{border:1px solid var(--line);height:42px;font:500 15px var(--mono);background:#fff;border-radius:10px;align-items:center;padding:0 14px;transition:border-color .2s;display:flex;box-shadow:0 1px 2px #0000000a}.demo .din.on{border-color:var(--ink)}.demo .caret{background:var(--ink);opacity:0;width:1.5px;height:18px;margin-left:1px}.demo .spin{border:2px solid var(--line);border-top-color:var(--ink);opacity:0;border-radius:50%;width:14px;height:14px;transition:opacity .2s}.demo .dcard{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.demo .drow{opacity:0;align-items:center;gap:10px;transition:opacity .45s cubic-bezier(.4,0,.2,1),transform .45s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(6px)}.demo .drow.in{opacity:1;transform:none}.demo .drow.first{border-bottom:1px solid #f0f0f2;padding-bottom:8px}.demo .tile{color:#fff;letter-spacing:-.04em;background:#2f6fed;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:17px;font-weight:700;display:grid}.demo .word{letter-spacing:-.045em;font-size:19px;font-weight:700}.demo small{color:var(--muted2);font-size:11px}.demo .k{flex:none;width:74px;font-size:12px}.demo .mono{font:500 12.5px var(--mono)}.demo .tag{color:var(--muted);background:#f4f4f5;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500}.demo .sw{background:#2f6fed;border-radius:5px;width:16px;height:16px;display:block}.demo.preview{flex-direction:column;align-items:center;gap:10px;padding-top:14px;display:flex}.demo .dtabs{border:1px solid var(--line);background:#fff;border-radius:999px;gap:2px;padding:3px;display:flex}.demo .dtabs span{color:var(--muted);border-radius:999px;padding:4px 11px;font-size:11px;font-weight:500;transition:background .3s,color .3s}.demo .dtabs span.on{background:var(--ink);color:#fff}.demo .dframe{background:#fff;border:1px solid #e4e4e7;border-bottom:0;border-radius:20px 20px 0 0;flex:none;width:150px;max-width:320px;height:200px;transition:width .7s cubic-bezier(.4,0,.2,1),border-radius .7s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 10px 30px #00000014}.demo .dframe.desk{border-radius:10px 10px 0 0;width:86%}.demo .dcontent{flex-direction:column;gap:8px;padding:12px;transition:transform 1.9s cubic-bezier(.4,0,.2,1),padding .7s cubic-bezier(.4,0,.2,1);display:flex}.demo .dframe.desk .dcontent{padding:14px 22px}.demo .dcontent.up{transform:translateY(-150px)}.demo .dbrand{align-items:center;gap:5px;font-size:11px;font-weight:600;display:flex}.demo .dbrand i{background:#2f6fed;border-radius:50%;width:7px;height:7px}.demo .dhero{color:#fff;background:#2f6fed;border-radius:8px;flex-direction:column;gap:7px;padding:12px;display:flex}.demo .dhero span{letter-spacing:-.02em;font-size:13px;font-weight:600;line-height:1.15;transition:font-size .7s cubic-bezier(.4,0,.2,1)}.demo .dframe.desk .dhero span{font-size:17px}.demo .dhero small{opacity:.9;color:#fff;font-size:9px;line-height:1.4}.demo .dhero em{color:#2f6fed;background:#fff;border-radius:5px;align-self:flex-start;padding:5px 9px;font-size:9px;font-style:normal;font-weight:600}.demo .dh2{margin-top:4px;font-size:10.5px;font-weight:600}.demo .dli{align-items:center;gap:6px;display:flex}.demo .dli i{background:#2f6fed;border-radius:2px;flex:none;width:6px;height:6px}.demo .dli span{background:var(--line);border-radius:3px;height:6px}.demo .dbox{background:#f4f4f5;border-radius:6px;display:block}.demo .dfoot{color:var(--muted3);text-align:center;margin-top:6px;font-size:8px}.demo.export{width:240px;height:240px;margin-left:-120px;position:absolute;inset:16px auto auto 50%;overflow:visible}.demo .dbtn{background:var(--ink);color:#fff;border-radius:999px;align-items:center;gap:8px;height:36px;padding:0 16px;font-size:13.5px;font-weight:500;transition:transform .15s;display:inline-flex}.demo .dbtn span{opacity:.7;font-size:10px}.demo .dbtn.press{transform:scale(.95)}.demo .dmenu{border:1px solid var(--line);opacity:0;transform-origin:20% 0;background:#fff;border-radius:12px;margin-top:8px;padding:5px;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transform:translateY(-6px)scale(.98);box-shadow:0 16px 40px #0000001f}.demo .dmenu.open{opacity:1;transform:none}.demo .dopt{opacity:0;border-radius:8px;align-items:center;gap:9px;height:32px;padding:0 9px;transition:opacity .3s,transform .3s,background .2s;display:flex;transform:translate(-4px)}.demo .dopt.in{opacity:1;transform:none}.demo .dopt.hover{background:#f4f4f5}.demo .dopt .ic{border:1px solid var(--line);background:#f4f4f5;border-radius:6px;flex:none;place-items:center;width:20px;height:20px;font-size:10.5px;font-weight:600;display:grid}.demo .dopt b{flex:1;min-width:0;font-size:13px;font-weight:500}.demo .dopt small{font:400 10.5px var(--mono);color:var(--muted2)}.demo .dopt.more{color:var(--muted2)}.demo .dopt.more .ic{background:#fff;border:1px dashed #d4d4d8}.demo .ok{border-radius:50%;width:16px;height:16px;font-style:normal;display:none}.demo [data-el=check]{background:var(--ink);color:#fff;opacity:0;place-items:center;font-size:9px;transition:opacity .2s,transform .25s;display:grid;transform:scale(.5)}.demo [data-el=check].on{opacity:1;transform:scale(1)}.demo .cursor{filter:drop-shadow(0 2px 3px #0003);pointer-events:none;transition:transform .8s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0}.wrap.wide.block{padding-top:clamp(80px,10vw,144px)}@media (width<=480px){.wl .row{border-radius:20px}.wl button,.wl.top button{flex:100%}.platforms .row{gap:10px 28px}.platforms .row span{flex-basis:100%}}.wl .row:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px #2f6fed40,0 12px 32px #0000000f}.close .wl .row:focus-within{box-shadow:0 0 0 3px #2f6fed8c}a:focus-visible,.wl button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.close .wl .err{color:#fca5a5}.wl .legal{color:var(--muted3);font-size:12px}.wl .legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.wl.is-done .legal{display:none}footer .logo{font-size:14px}footer a:hover{color:var(--ink)}.note .letter p{margin:0 0 12px}.note .letter p:last-child{margin:0}.note .avatar{background:var(--blue);color:#fff;font:600 19px/1 var(--font);letter-spacing:-.03em;border:0}.note .who-is .li{color:var(--ink);align-items:center;gap:5px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.note .who-is .li:hover{text-underline-offset:3px;text-decoration:underline}.note .who-is .li svg{color:var(--muted2)}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.note .who-is small{display:block}.navlink.lang{font:500 12.5px var(--mono);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 8px}.navlink.lang:hover{color:var(--ink);border-color:#d4d4d8}
