@font-face{font-family:Open Sans;src:url(/assets/OpenSans-VariableFont-wdth-wght.ttf)format("truetype");font-style:normal;font-weight:300 800;font-display:swap}:root{--bg:#fafafa;--text-main:#2d3138;--text-sub:#898989;--card-text-sub:#0009;--card-grad-start:oklch(99.8% .001 255);--card-grad-mid:oklch(99.3% .002 255);--card-grad-end:oklch(98.6% .003 255);--card-rim:oklch(78% .012 250/.46);--card-highlight:#fffffffa;--card-highlight-soft:#ffffffbd;--card-merge-glow:#ffffffe6;--card-edge-glow:#fffc;--card-white-clear:#fff0;--card-bottom-line:oklch(52% .012 250/.18);--card-shadow:oklch(44% .018 250/.08);--card-shadow-soft:oklch(70% .012 250/.14);--lang-ink:#5e7064;--lang-option-ink:#465348;--lang-border:oklch(82% .018 145/.58);--lang-surface:oklch(99.2% .004 115/.84);--lang-surface-hover:oklch(97.4% .016 145/.9);--lang-surface-active:oklch(94.2% .03 145/.92);--lang-active-ink:oklch(39% .054 145);--lang-shadow:oklch(42% .02 145/.12);--border-soft:#e2e2e2;--producthunt-badge-width:250px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-top-capped:min(var(--safe-area-top), 72px);--mobile-top-clearance:var(--safe-area-top-capped);--safe-area-bottom:env(safe-area-inset-bottom,0px);--browser-chrome-bottom:0px;--mobile-bottom-clearance:max(var(--safe-area-bottom), var(--browser-chrome-bottom));--mobile-flow-bottom-clearance:var(--safe-area-bottom);--mobile-status-cover-height:var(--mobile-top-clearance)}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text-main);margin:0;font-family:Open Sans,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif}.onboarding{min-height:100dvh;display:flex;overflow:hidden}.left-pane{flex:none;align-items:center;width:clamp(560px,44vw,760px);padding-left:clamp(56px,9vw,132px);padding-right:48px;display:flex;position:relative}.left-main{flex-direction:column;gap:112px;width:min(100%,668px);display:flex;position:relative}.hero{opacity:0;filter:blur(6px);width:100%;animation:.62s cubic-bezier(.22,1,.36,1) .1s forwards x-hero-enter;transform:translate(-24px)}.title-row{align-items:center;gap:clamp(10px,1.8vw,24px);display:flex}.title{letter-spacing:.2px;white-space:nowrap;background:linear-gradient(#000 0%,#666 100%);color:#0000;background-clip:text;margin:0;font-size:clamp(38px,3.6vw,44px);font-weight:500;line-height:1.2}.logo-lockup{align-items:center;gap:10px;display:inline-flex;transform:translateY(-2px)}.logo-icon-wrap{--logo-box:54px;width:var(--logo-box);height:var(--logo-box);flex:none;position:relative;overflow:visible}.logo-icon{width:calc(var(--logo-box) * 63 / 48);height:calc(var(--logo-box) * 69 / 48);left:calc(var(--logo-box) * -13 / 48);top:calc(var(--logo-box) * -1 / 48);backface-visibility:hidden;max-width:none;display:block;position:absolute;transform:translateZ(0)}.logo-icon svg{shape-rendering:geometricprecision;width:100%;height:100%;display:block}.logo-wordmark-wrap{--wordmark-width:182px;width:var(--wordmark-width);height:calc(var(--wordmark-width) * 47 / 165);flex:none;position:relative;overflow:visible}.logo-wordmark{width:100%;height:100%;display:block}.logo-butterfly-stage{left:calc(var(--wordmark-width) * 152 / 165);width:calc(var(--wordmark-width) * 20 / 165);height:calc(var(--wordmark-width) * 22 / 165);transform-origin:24% 77%;position:absolute;top:6px;overflow:visible;transform:rotate(-4deg)}.logo-butterfly{display:block;position:absolute;inset:0}.logo-butterfly-wing{transform-origin:24% 77%}.logo-butterfly-wing-back{opacity:.22;filter:blur(.1px);transform:translate(.6px,.2px)rotate(12deg)scale(.97)}.logo-butterfly-wing-front{opacity:.34;transform:translate(-.2px,.1px)rotate(-8deg)scale(1.01)}.logo-butterfly-path{opacity:1}.mark-svg{-webkit-user-drag:none;user-drag:none;user-select:none;pointer-events:none}.seo-wordmark-text{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.subtitle{color:#9b9b9b;letter-spacing:.1px;margin:8px 0 0;font-size:17px;font-weight:400;line-height:1.45}.is-locale-en .subtitle{white-space:normal;overflow-wrap:anywhere;letter-spacing:0;font-size:15px}.is-locale-en .title{letter-spacing:-1px}.shortcut-line{opacity:0;filter:blur(6px);justify-content:flex-start;align-items:center;width:100%;max-width:668px;margin-top:0;animation:.62s cubic-bezier(.22,1,.36,1) .3s forwards x-hero-enter;display:flex;transform:translate(-24px)}.shortcut-guide{backdrop-filter:blur(18px);background:#ffffffc2;border:1px solid #24282f14;border-radius:20px;width:100%;padding:18px;box-shadow:0 18px 44px #0f172a14}.shortcut-guide-title{color:#111827;margin:0 0 12px;font-size:17px;font-weight:600;line-height:1.4}.shortcut-code-block{color:#24292f;background:#f6f8fa;border:1px solid #d0d7de;border-radius:12px;margin:0;padding:14px 54px 14px 16px;position:relative;overflow:hidden}.shortcut-code{white-space:normal;word-break:break-all;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.5;display:block}.shortcut-copy-btn{color:#485466;opacity:1;cursor:pointer;background:#e3e8ef;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:34px;height:34px;padding:0 10px;transition:opacity .2s,transform .22s cubic-bezier(.22,1,.36,1),background-color .28s cubic-bezier(.22,1,.36,1),color .24s cubic-bezier(.22,1,.36,1),box-shadow .28s cubic-bezier(.22,1,.36,1);display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.shortcut-copy-btn i{font-size:15px;line-height:1}.shortcut-copy-label{font-size:12px;font-weight:600;line-height:1}.shortcut-copy-btn:focus-visible{outline-offset:2px;opacity:1;outline:2px solid #0969da59}.shortcut-copy-btn.is-copied{opacity:1;color:#1a7f37;background:#dafbe1;transform:translateY(-50%)scale(.98);box-shadow:inset 0 0 0 1px #1a7f3714}.shortcut-steps{color:#3c4455;text-wrap:pretty;margin:14px 0 0;padding-left:20px;font-size:14px;line-height:1.65}.shortcut-steps li{text-wrap:pretty}.shortcut-steps li+li{margin-top:8px}.shortcut-notes{border-top:1px solid #24282f1a;margin-top:18px;padding-top:14px}.shortcut-notes-list{color:#4b5565e0;text-wrap:pretty;margin:0;padding-left:20px;font-size:13px;line-height:1.95}.shortcut-notes-list li{text-wrap:pretty;padding-left:0;font-weight:400}.shortcut-notes-list li+li{margin-top:8px}.shortcut-notes-list li::marker{color:#6b72808f}.shortcut-inline-code{color:#24292f;vertical-align:-.08em;white-space:nowrap;word-break:normal;overflow-wrap:normal;box-decoration-break:clone;background:#24282f0d;border:0;border-radius:5px;margin:0 .12em;padding:.16em .34em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.89em;line-height:1.45;display:inline-block}.shortcut-inline-code-url{vertical-align:baseline;white-space:normal;overflow-wrap:anywhere;word-break:break-all;color:#4b5565e6;line-height:inherit;background:#24282f09;display:inline}.shortcut-inline-url-group{white-space:normal;display:inline}.shortcut-inline-copy-btn{color:#485466e0;vertical-align:-.06em;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:2px;padding:0;transition:transform .22s cubic-bezier(.22,1,.36,1),background-color .24s cubic-bezier(.22,1,.36,1),color .22s cubic-bezier(.22,1,.36,1),box-shadow .24s cubic-bezier(.22,1,.36,1);display:inline-flex}.shortcut-inline-copy-btn i{font-size:13px;line-height:1}.shortcut-inline-copy-btn:focus-visible{outline-offset:2px;outline:2px solid #0969da47}.shortcut-inline-copy-btn.is-copied{color:#1a7f37;box-shadow:none;transform:scale(.97)}.shortcut-note-text{color:#4b5565e0;text-wrap:pretty}.producthunt-badge-wrap{z-index:1;opacity:0;filter:blur(6px);margin-top:18px;animation:.62s cubic-bezier(.22,1,.36,1) .38s forwards x-hero-enter;position:relative;transform:translate(-24px)}.producthunt-badge-link{align-items:center;display:inline-flex}.producthunt-badge-image{width:var(--producthunt-badge-width);height:54px;display:block}.producthunt-badge-wrap--page-bottom{opacity:1;filter:none;width:100%;animation:none;display:none;transform:none}.shortcut-line-store{z-index:3;position:relative}.shortcut-quote{color:#111827;font-weight:600}.shortcut-store-link{align-items:center;display:inline-flex}.shortcut-store-badge{width:248px;height:75px;display:block}.text-shimmer{-webkit-text-fill-color:transparent;background-image:linear-gradient(110deg,#3c4455e0 0%,#3c4455f2 30%,#ffffff1f 46%,#ffffff29 50%,#ffffff1f 54%,#3c4455f2 70%,#3c4455e0 100%);background-position:140% 0;background-size:280% 100%;background-clip:text;font-weight:400;display:inline-block;position:relative}.is-entered .text-shimmer{animation:4.3s linear infinite x-text-shimmer-press}.is-entered .text-shimmer-delay{animation:4.3s linear infinite x-text-shimmer-invoke}@keyframes x-text-shimmer-press{0%{background-position:140% 0}24%{background-position:-40% 0}to{background-position:-40% 0}}@keyframes x-text-shimmer-invoke{0%,33.8%{background-position:140% 0}66%{background-position:-40% 0}to{background-position:-40% 0}}.is-safari .text-shimmer{color:#3c4455;-webkit-text-fill-color:currentColor;background:0 0;-webkit-background-clip:border-box;background-clip:border-box}.is-safari .text-shimmer:after{content:attr(data-shimmer-text);pointer-events:none;color:#0000;-webkit-text-fill-color:transparent;background-image:linear-gradient(110deg,#fff0 0% 38%,#fff9 49%,#fff0 60% 100%);background-position:140% 0;background-size:280% 100%;background-clip:text;position:absolute;inset:0}.is-safari .is-entered .text-shimmer:after{animation:4.3s linear infinite x-text-shimmer-press}.is-safari .is-entered .text-shimmer-delay:after{animation:4.3s linear infinite x-text-shimmer-invoke}@keyframes x-hero-enter{0%{opacity:0;filter:blur(6px);transform:translate(-24px)}to{opacity:1;filter:blur();transform:translate(0)}}.kbd-group{align-items:center;gap:4px;display:inline-flex}kbd{color:#000;text-shadow:0 1px #ffffff6b;background:linear-gradient(#ededed 0%,#fff 100%);border:3px solid #000;border-radius:8px;justify-content:center;align-items:center;min-width:38px;height:30px;padding:0 10px;font-family:Open Sans,PingFang SC,sans-serif;font-size:13px;font-weight:500;transition:transform .12s,box-shadow .12s,background .12s;display:inline-flex;box-shadow:0 5px #000,inset 0 -2px 5px #ffffff57}.kbd-key-trigger{text-shadow:0 1px #ffffff6b,0 0 1px #00000042}.is-entered .kbd-key-modifier{animation:4.3s linear infinite x-kbd-press-modifier}.is-entered .kbd-key-trigger{animation:4.3s linear infinite x-kbd-press-trigger}@keyframes x-kbd-press-modifier{0%,24.5%,to{background:linear-gradient(#ededed 0%,#fff 100%);transform:translateY(0);box-shadow:0 5px #000,inset 0 -2px 5px #ffffff57}25.2%,26.8%{background:linear-gradient(#e2e2e2 0%,#f2f2f2 100%);transform:translateY(2px);box-shadow:0 3px #000,inset 0 -1px 3px #ffffff38}27.6%{background:linear-gradient(#f1f1f1 0%,#fff 100%);transform:translateY(-1px);box-shadow:0 6px #000,inset 0 -2px 5px #ffffff5c}}@keyframes x-kbd-press-trigger{0%,26.9%,to{background:linear-gradient(#ededed 0%,#fff 100%);transform:translateY(0);box-shadow:0 5px #000,inset 0 -2px 5px #ffffff57}27.6%,29.2%{background:linear-gradient(#e2e2e2 0%,#f2f2f2 100%);transform:translateY(2px);box-shadow:0 3px #000,inset 0 -1px 3px #ffffff38}30%{background:linear-gradient(#f1f1f1 0%,#fff 100%);transform:translateY(-1px);box-shadow:0 6px #000,inset 0 -2px 5px #ffffff5c}}.actions{align-items:center;gap:14px;display:flex}.top-nav{z-index:30;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;top:18px;left:36px;right:24px}.top-nav-brand{align-items:center;text-decoration:none;display:inline-flex}.top-nav-brand-mark{width:auto;height:24px;display:block}.top-nav-brand-mark :global(svg){shape-rendering:geometricprecision;width:auto;height:100%;display:block}.is-safari .top-nav-brand-mark{transform:translateZ(0)}.top-actions{align-items:center;gap:10px;display:inline-flex}.pill-btn{border:1px solid var(--border-soft);min-height:36px;color:var(--lang-ink);background:linear-gradient(#fff 0%,#ecedef 100%);border-radius:999px;align-items:center;gap:10px;padding:9px 14px;font-size:14px;font-weight:500;line-height:1;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:inline-flex;position:relative;box-shadow:0 1px 2px #00000005,inset 0 -4px 3px #ffffff96}.pill-btn-selected{box-shadow:0 20px 6px #0000,0 13px 5px #0000,0 7px 4px #00000003,0 3px 3px #00000005,0 1px 2px #00000005}.pill-btn-selected:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:-1px;box-shadow:inset 0 -4px 3px #ffffff96}.pill-btn:focus-visible{outline-offset:2px;outline:2px solid #4b545f59}@media (hover:hover) and (pointer:fine){.pill-btn:hover{background:linear-gradient(#fff 0%,#e8ebef 100%);border-color:#d2d8df;transform:translateY(-1px);box-shadow:0 14px 18px #0000000a,0 2px 3px #0000000a,inset 0 -4px 3px #ffffffa6}.pill-btn.pill-btn-selected:hover{box-shadow:0 20px 6px #0000,0 13px 5px #0000,0 9px 6px #00000005,0 4px 4px #00000008,0 1px 2px #00000008}}.pill-btn:active{background:linear-gradient(#fff 0%,#ecedef 100%);transform:translateY(1px);box-shadow:0 2px 5px #0000000f,inset 0 -4px 3px #ffffff96}.pill-btn.pill-btn-selected:active{box-shadow:0 6px 8px #0000000f,0 1px 2px #0000000a}@media (prefers-reduced-motion:reduce){.pill-btn{transition:none}.hero,.shortcut-line{opacity:1;filter:none;animation:none;transform:none}.text-shimmer,.text-shimmer-delay{-webkit-text-fill-color:currentColor;background:0 0;animation:none}.kbd-key{animation:none}.logo-butterfly{animation:none;transform:none}.logo-butterfly animate{display:none}.feature-card{opacity:1;animation:none;transform:none}}.pill-btn-figma-icon{width:18px;height:18px;display:block}.pill-btn img{width:18px;height:18px}.pill-btn .ri-discord-fill,.pill-btn .ri-wechat-fill,.pill-btn .ri-settings-6-line,.pill-btn .ri-github-fill,.pill-btn .ri-file-list-3-line{justify-content:center;align-items:center;width:18px;height:18px;font-size:18px;line-height:1;display:inline-flex}.pill-btn-icon-only{justify-content:center;width:36px;min-width:36px;height:36px;padding:0}.pill-btn-dark{color:#fff;background:linear-gradient(#404859 0%,#273042 100%);border:none;position:relative;box-shadow:0 10px 3px #0000,0 6px 2px #00000002,0 3px 2px #00000009,0 2px 2px #0001,0 0 1px #00000013}.pill-btn-dark:before{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #040404,inset 0 1px #ffffff85,inset 0 1px 2.4px #ffffff5c}.pill-btn-dark:after{display:none}@media (hover:hover) and (pointer:fine){.pill-btn-dark:hover{color:#fff;background:linear-gradient(#475164 0%,#2c374b 100%);border-color:#0000;box-shadow:0 10px 3px #0000,0 6px 2px #00000003,0 3px 2px #0000000a,0 2px 2px #00000012,0 0 1px #00000014}}.pill-btn-dark:active{color:#fff;background:linear-gradient(#364052 0%,#212a3a 100%);box-shadow:0 4px 6px #0003,0 1px 2px #0000002e}.lang-control{right:24px;bottom:calc(24px + var(--mobile-bottom-clearance));z-index:22;width:38px;position:fixed}.lang-toggle{appearance:none;width:38px;min-width:38px;height:38px;box-shadow:none;color:var(--lang-ink);-webkit-text-fill-color:currentColor;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:0;padding:0;display:inline-flex}.lang-toggle i,.lang-select-prefix,.lang-select-arrow{color:inherit;-webkit-text-fill-color:currentColor}.lang-toggle i{font-size:16px;line-height:1}.lang-select-prefix{justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.lang-current-label{min-width:0;color:var(--lang-ink);text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:14px;display:none;overflow:hidden}.lang-select-arrow{width:16px;height:16px;color:var(--lang-ink);justify-content:center;align-items:center;display:none}@media (hover:hover) and (pointer:fine){.lang-toggle:hover{border-color:var(--lang-border);background:var(--lang-surface-hover);box-shadow:0 6px 14px var(--lang-shadow)}}.lang-toggle:active{border-color:var(--lang-border);background:var(--lang-surface-active);box-shadow:0 2px 6px oklch(42% .02 145/.08)}.lang-menu{z-index:36;background:var(--lang-surface);border:1px solid var(--lang-border);min-width:180px;box-shadow:0 18px 34px var(--lang-shadow), inset 0 1px 0 oklch(100% 0 0/.86);opacity:0;visibility:hidden;transform-origin:100% 100%;pointer-events:none;border-radius:12px;flex-direction:column;gap:4px;padding:6px;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:auto;bottom:calc(100% + 8px);right:0;transform:translateY(6px)scale(.97)}.lang-menu[data-open=true]{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)scale(1)}.lang-option{text-align:left;width:100%;color:var(--lang-option-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-family:inherit;font-size:14px}.lang-option:hover{background:var(--lang-surface-hover)}.lang-option.is-active{background:var(--lang-surface-active);color:var(--lang-active-ink);font-weight:600}.qrcode-modal{z-index:30;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.qrcode-modal[hidden]{display:none}.qrcode-modal-backdrop{background:#080c1499;position:absolute;inset:0}.qrcode-modal-panel{--qrcode-panel-radius:16px;--qrcode-panel-padding:20px;border-radius:var(--qrcode-panel-radius);width:min(92vw,380px);padding:var(--qrcode-panel-padding);background:#fff;position:relative;box-shadow:0 24px 42px #10172642}.qrcode-modal-close{color:#212733;cursor:pointer;background:#f2f4f8;border:none;border-radius:999px;width:32px;height:32px;position:absolute;top:10px;right:10px}.qrcode-modal-title{color:#0f1725;margin:0 34px 12px 0;font-size:16px;font-weight:600;line-height:1.35}.qrcode-modal-image{border-radius:max(0px, calc(var(--qrcode-panel-radius) - var(--qrcode-panel-padding)));width:100%;display:block}.right-pane{border-radius:0;flex:auto;justify-content:center;align-items:center;width:auto;margin:0;display:flex;position:relative;overflow:hidden}.right-bg{opacity:.2;position:absolute;inset:0}.right-bg-image{object-fit:cover;object-position:left center;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block}.feature-grid{filter:none;transform-origin:50%;width:546px;height:455px;position:relative;transform:scale(1.08)}.is-safari .feature-grid{filter:none;width:590px;height:491px;transform:none}.is-safari .feature-card{box-shadow:0 18px 34px var(--card-shadow), 0 2px 8px var(--card-shadow-soft)}.is-safari .logo-lockup{transform:none}.is-safari .logo-icon{width:71px;height:78px;top:-1px;left:-15px}.is-safari .logo-butterfly-wing-back{filter:none;transform:translate(1px)rotate(12deg)scale(.97)}.feature-card{background:var(--card-grad-end);box-shadow:0 18px 34px var(--card-shadow), 0 2px 8px var(--card-shadow-soft);isolation:isolate;opacity:0;border:none;border-radius:12px;flex-direction:column;transition:transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s cubic-bezier(.22,1,.36,1);animation:.4s cubic-bezier(.22,1,.36,1) forwards x-feature-card-enter;display:flex;position:absolute;overflow:hidden;transform:translateY(14px)}.feature-card:before{content:"";z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse 88% 62% at 18% -10%, var(--card-highlight) 0%, var(--card-highlight-soft) 42%, var(--card-white-clear) 72%), radial-gradient(ellipse 86% 46% at 50% 62%, var(--card-merge-glow) 0%, var(--card-white-clear) 68%), linear-gradient(90deg, var(--card-white-clear) 0%, var(--card-white-clear) 68%, var(--card-edge-glow) 100%), linear-gradient(180deg, var(--card-grad-start) 0%, var(--card-grad-mid) 52%, var(--card-grad-end) 100%);position:absolute;inset:0}.feature-card:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px var(--card-rim), inset 0 2px 0 oklch(100% 0 0/.94), inset 0 -1px 0 var(--card-bottom-line);position:absolute;inset:0}.feature-card>*{z-index:1;position:relative}@media (hover:hover) and (pointer:fine){.feature-card:hover{transform:translateY(-4px);box-shadow:0 24px 42px oklch(39% .026 74/.1),0 7px 16px oklch(50% .025 82/.1)}}@keyframes x-feature-card-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.card-title-wrap{flex:none;min-height:0;padding:24px 22px 0}.card-title{color:#000;margin:0;font-size:16px;font-weight:500;line-height:1.3}.card-desc{color:var(--card-text-sub);margin:4px 0 0;font-size:13px;line-height:1.38}.card-a{width:280px;height:222px;animation-delay:.12s;top:0;left:0}.card-a-graphic{flex:0 0 120px;height:120px;margin-top:auto;position:relative}.card-a-image,.card-graphic-image{backface-visibility:hidden;width:100%;height:100%;display:block;transform:translateZ(0)}.card-a-image svg,.card-graphic-image svg{shape-rendering:geometricprecision;width:100%;height:100%;display:block}.card-b{width:252px;height:222px;animation-delay:.2s;top:0;left:292px}.card-b-graphic{flex:0 0 120px;height:120px;margin-top:auto;position:relative;overflow:hidden}.rings{position:absolute;left:50%;transform:translate(-50%)}.rings.r1{width:287px;top:-84px}.rings.r2{width:241px;top:-61px}.rings.r3{width:189px;top:-35px}.rings.r4{width:143px;top:-12px}.rings.r5{width:95px;top:12px}.center-mark{width:44px;position:absolute;top:37px;left:50%;transform:translate(-50%)}.social-bubble{background:#fff;border-radius:999px;width:34px;height:34px;padding:8px;position:absolute;box-shadow:0 1px 2px #0000000d,0 3px 3px #0000000a}.social-bubble img{width:18px;height:18px}.s1{top:66px;left:31px}.s2{top:15px;left:186px}.s3{top:7px;left:61px}.s4{top:73px;left:210px}.edge-fade-top,.edge-fade-bottom{pointer-events:none;width:280px;position:absolute;left:50%;transform:translate(-50%)}.edge-fade-top{height:40px;top:0}.edge-fade-bottom{height:20px;bottom:0}.card-c{width:236px;height:222px;animation-delay:.28s;top:233px;left:0}.card-c-graphic{flex:0 0 120px;height:120px;margin-top:auto;position:relative;overflow:hidden}.c-ellipse-a{width:194px;position:absolute;top:-5px;left:78px}.c-ellipse-b{width:162px;position:absolute;top:-11px;left:41px}.mini-card{background:#dae6f8;border:.52px solid #0000009e;border-radius:14.5px;width:118px;height:74px;position:absolute;top:7px;left:96px;transform:rotate(-6.2deg);box-shadow:0 2px 4px #5280bc26,0 7px 7px #5280bc21}.mini-window{background:#fff;border:.52px solid #0000001a;border-radius:10.4px;height:57.9px;position:absolute;top:-6.7px;left:3.6px;right:3.6px;overflow:hidden}.mini-brand{align-items:center;gap:3.6px;font-size:7.3px;font-weight:600;line-height:1;display:flex;position:absolute;top:6.7px;left:7.8px}.mini-brand img{width:13px;height:13px}.mini-window p{margin:0}.mini-text{font-size:6.2px;line-height:1.25;position:absolute;top:21px;left:24px;right:7px}.mini-footer{color:#00000080;align-items:center;gap:2px;font-size:7.3px;display:flex;position:absolute;bottom:8px;left:7px;right:7px}.mini-footer img{width:7px;height:7px}.folder-a,.folder-b{position:absolute}.folder-a{width:25px;top:10px;left:49px;transform:rotate(-21.57deg)}.folder-b{width:21px;top:49px;left:51px;transform:rotate(-41.18deg)}.fade-c{width:280px;height:42px;position:absolute;bottom:0;left:calc(50% + 8px);transform:translate(-50%)scaleY(-1)}.card-d{width:298px;height:222px;animation-delay:.36s;top:233px;left:248px}.title-with-badge{align-items:center;gap:8px;display:flex}.title-badge{flex:none;width:36.991px;height:20.684px;display:block}.title-strong{font-weight:600}.card-d-graphic{flex:0 0 120px;height:120px;margin-top:auto;position:relative;overflow:hidden}.auto-pip-box{background:linear-gradient(#fcfcfc 0%,#fff 100%);border:1px solid #e2e2e2;border-radius:10px;justify-content:center;align-items:center;width:126px;height:79px;display:flex;position:absolute;top:17px;left:133px;transform:rotate(4.94deg)}.auto-pip-box img{width:36px}.auto-pill{width:56px;position:absolute;top:10px;left:173px;transform:rotate(4.94deg)}.binary{color:#acace6;opacity:.85;user-select:none;font-family:MiSans,Inter,sans-serif;font-size:11px;line-height:1.1;position:absolute}.b1{top:3px;left:261px}.b2{top:64px;left:99px}.star-a{width:19px;position:absolute;top:19px;left:108px;transform:rotate(71.44deg)}.star-b{width:12px;position:absolute;top:69px;left:269px;transform:rotate(71.44deg)}@media (width<=1250px){.left-pane{width:clamp(500px,42vw,620px)}.feature-grid{transform-origin:50%;transform:scale(.92)}}@media (width<=1280px){:root{--producthunt-badge-width:min(68vw, 250px)}html{background-color:var(--bg);background-image:none}body{background:0 0}body:after{content:"";height:var(--mobile-status-cover-height);z-index:29;pointer-events:none;background:var(--bg);position:fixed;top:0;left:0;right:0}.top-nav{box-shadow:none;background:0 0;border:0;transition:background-color .16s}body.has-nav-overlap .top-nav{background:#fafafa}.onboarding{min-height:100dvh;padding:112px 0 44px;padding:112px 0 max(44px, var(--mobile-flow-bottom-clearance));flex-direction:column;justify-content:flex-start}.left-pane,.right-pane{border-radius:0;width:100%;min-width:0;margin:0}.left-pane{padding:28px 30px 30px;display:block}.left-main{text-align:center;align-items:center;gap:24px;width:100%;max-width:680px;margin:0 auto;position:static;transform:none}.hero{width:100%;max-width:700px}.title-row{flex-wrap:wrap;justify-content:center}.is-locale-en .subtitle{white-space:normal;overflow-wrap:anywhere}.shortcut-line{justify-content:center;margin-top:22px}.shortcut-guide{padding:16px}.producthunt-badge-wrap{justify-content:center;margin-top:16px;display:flex}.producthunt-badge-wrap--hero{display:none}.producthunt-badge-wrap--page-bottom{margin:0 auto 56px;margin:0 auto max(56px, calc(var(--mobile-flow-bottom-clearance) + 16px));padding:0 20px;display:flex}.is-twitter-in-app-browser .producthunt-badge-wrap--page-bottom{display:none}.shortcut-store-badge{width:min(68vw,248px);height:auto}.producthunt-badge-image{width:var(--producthunt-badge-width);height:auto}.actions{flex-wrap:wrap;justify-content:flex-start;gap:10px;margin:0}.right-pane{z-index:1;border-radius:0;align-items:center;min-height:430px;margin-top:16px;padding:8px 0 16px;position:relative;overflow:visible}.right-bg{opacity:.22;z-index:0;pointer-events:none;height:auto;position:fixed;inset:0;overflow:hidden}.right-bg-image{object-position:center bottom}.right-bg:before{content:"";background:linear-gradient(to bottom, var(--bg) 0%, #fafafaf5 16%, #fafafa9e 34%, #fafafa00 58%);position:absolute;inset:0}.feature-grid{transform-origin:top;transform:scale(1.35)}.card-title{font-size:13px}.card-desc{font-size:11px;line-height:1.32}.top-nav{gap:10px;padding-bottom:8px;top:14px;left:16px;right:16px}.top-nav-brand-mark{height:21px}.top-actions{flex-wrap:wrap;justify-content:flex-end;max-width:calc(100vw - 180px)}.lang-control{width:var(--producthunt-badge-width);margin:14px auto 18px;position:relative;bottom:auto;right:auto}.lang-toggle{border:1px solid var(--lang-border);background:var(--lang-surface);width:100%;min-width:0;min-height:40px;box-shadow:0 8px 20px var(--lang-shadow);border-radius:10px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:0 12px;display:grid}.lang-current-label,.lang-select-arrow{display:inline-flex}.lang-current-label{text-align:center;flex:none;justify-self:center;max-width:100%;padding:0 6px;display:block}.lang-select-prefix{justify-self:start;width:18px}.lang-select-arrow{justify-self:end;width:18px}.lang-menu{background:var(--lang-surface);border-color:var(--lang-border);width:100%;min-width:0;box-shadow:0 18px 34px var(--lang-shadow), inset 0 1px 0 oklch(100% 0 0/.86);-webkit-backdrop-filter:none;transform-origin:bottom;inset:auto auto calc(100% + 8px) 0;transform:translateY(6px)scale(.97)}}@media (width<=1280px) and (orientation:landscape){.top-nav{padding-top:calc(var(--mobile-top-clearance) + 8px);box-shadow:none;-webkit-backdrop-filter:saturate(160%)blur(14px);background:#fafafaf0;border-bottom:0;border-radius:0;gap:10px;padding-bottom:8px;padding-left:16px;padding-right:16px;top:0;left:0;right:0}body.has-nav-overlap .top-nav{background:#fafafafa}}@media (width<=680px){:root{--producthunt-badge-width:min(74vw, 250px)}.onboarding{padding-top:120px;padding-bottom:52px;padding-bottom:max(52px, var(--mobile-flow-bottom-clearance));justify-content:flex-start}.left-pane{padding:42px 20px 18px}.title{font-size:30px}.logo-icon{width:calc(var(--logo-box) * 63 / 48);height:calc(var(--logo-box) * 69 / 48);left:calc(var(--logo-box) * -13 / 48);top:calc(var(--logo-box) * -1 / 48)}.is-safari .logo-icon{width:55px;height:60px;top:-1px;left:-11px}.logo-icon-wrap{--logo-box:42px}.logo-wordmark-wrap{--wordmark-width:152px}.shortcut-line{flex-wrap:wrap;justify-content:center}.shortcut-guide{border-radius:18px;padding:14px}.shortcut-guide-title{font-size:16px}.shortcut-code-block{padding-bottom:54px;padding-right:16px}.shortcut-copy-btn{opacity:1;top:50%;bottom:auto;transform:translateY(-50%)}.shortcut-steps{font-size:13px}.shortcut-store-badge{width:min(74vw,248px);height:auto}.producthunt-badge-image{width:var(--producthunt-badge-width);height:auto}.top-nav{padding-top:calc(var(--mobile-top-clearance) + 10px);background:0 0;border:0;border-radius:0;padding-bottom:8px;padding-left:14px;padding-right:14px;top:0;left:0;right:0}.top-nav-brand-mark{height:18px}.top-actions{flex:0 min(244px,100vw - 124px);gap:6px;width:min(244px,100vw - 124px);max-width:calc(100vw - 124px)}.actions{flex-wrap:nowrap;justify-content:flex-end;gap:8px;width:100%;min-width:0;max-width:100%}.actions .pill-btn{aspect-ratio:1;flex:0 0 36px;justify-content:center;gap:0;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;padding:0}.actions .pill-btn span{display:none}.lang-control{width:var(--producthunt-badge-width);margin:22px auto 20px}.lang-menu{transform-origin:bottom;width:100%;left:0;right:auto;transform:translateY(6px)scale(.97)}.lang-menu[data-open=true]{transform:translateY(0)scale(1)}.feature-grid{flex-direction:column;align-items:center;gap:12px;width:min(92vw,420px);height:auto;margin:0 auto;display:flex;transform:none}.is-safari .feature-grid{width:min(92vw,420px);height:auto;margin-left:auto;margin-right:auto;transform:none}.feature-card{width:100%;height:auto;min-height:228px;margin-left:auto;margin-right:auto;position:relative;top:auto;left:auto}.card-a,.card-b,.card-c,.card-d{width:100%}.card-a-graphic,.card-b-graphic,.card-c-graphic,.card-d-graphic{flex:none;height:auto}.card-a-image,.card-graphic-image{height:auto}.card-a-image svg,.card-graphic-image svg{width:100%;height:auto}.card-title{font-size:18px;line-height:1.32}.card-desc{font-size:14px;line-height:1.45}.right-pane{justify-content:center;align-items:center;min-height:auto;margin-top:36px;padding:16px 0 12px;display:flex}.right-bg-image{object-position:center bottom}}
