@font-face{font-family:Bitter Variable fallback;src:local(Noto Serif);size-adjust:95.2183%;ascent-override:98.1954%;descent-override:27.8308%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Georgia);size-adjust:102.736%;ascent-override:91.0095%;descent-override:25.7942%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Times New Roman);size-adjust:112.739%;ascent-override:82.9353%;descent-override:23.5057%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/bitter-cyrillic-ext-wght-normal-sLcV1o1_.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Bitter Variable fallback;src:local(Noto Serif);size-adjust:95.2183%;ascent-override:98.1954%;descent-override:27.8308%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Georgia);size-adjust:102.736%;ascent-override:91.0095%;descent-override:25.7942%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Times New Roman);size-adjust:112.739%;ascent-override:82.9353%;descent-override:23.5057%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/bitter-cyrillic-wght-normal-7PAZDwbd.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Bitter Variable fallback;src:local(Noto Serif);size-adjust:95.2183%;ascent-override:98.1954%;descent-override:27.8308%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Georgia);size-adjust:102.736%;ascent-override:91.0095%;descent-override:25.7942%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Times New Roman);size-adjust:112.739%;ascent-override:82.9353%;descent-override:23.5057%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/bitter-vietnamese-wght-normal-BY9eXNra.woff2)format("woff2-variations");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:Bitter Variable fallback;src:local(Noto Serif);size-adjust:95.2183%;ascent-override:98.1954%;descent-override:27.8308%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Georgia);size-adjust:102.736%;ascent-override:91.0095%;descent-override:25.7942%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Times New Roman);size-adjust:112.739%;ascent-override:82.9353%;descent-override:23.5057%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/bitter-latin-ext-wght-normal-BaDBgC7F.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bitter Variable fallback;src:local(Noto Serif);size-adjust:95.2183%;ascent-override:98.1954%;descent-override:27.8308%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Georgia);size-adjust:102.736%;ascent-override:91.0095%;descent-override:25.7942%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable fallback;src:local(Times New Roman);size-adjust:112.739%;ascent-override:82.9353%;descent-override:23.5057%;line-gap-override:0%;font-style:normal;font-weight:100 900}@font-face{font-family:Bitter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/bitter-latin-wght-normal-C8X_T8j_.woff2)format("woff2-variations");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:Spline Sans Variable fallback;src:local(Noto Sans);size-adjust:152.321%;ascent-override:63.2547%;descent-override:15.5265%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Arial);size-adjust:161.956%;ascent-override:59.4916%;descent-override:14.6028%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Helvetica Neue);size-adjust:160.444%;ascent-override:60.0519%;descent-override:14.7403%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Segoe UI);size-adjust:162.848%;ascent-override:59.1658%;descent-override:14.5228%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(BlinkMacSystemFont);size-adjust:173.348%;ascent-override:55.5819%;descent-override:13.6431%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/spline-sans-latin-ext-wght-normal-DGzmlScV.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Spline Sans Variable fallback;src:local(Noto Sans);size-adjust:95.3586%;ascent-override:101.04%;descent-override:24.8011%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Arial);size-adjust:101.391%;ascent-override:95.0286%;descent-override:23.3256%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Helvetica Neue);size-adjust:100.444%;ascent-override:95.9237%;descent-override:23.5454%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(Segoe UI);size-adjust:101.949%;ascent-override:94.5081%;descent-override:23.1979%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable fallback;src:local(BlinkMacSystemFont);size-adjust:108.522%;ascent-override:88.7835%;descent-override:21.7927%;line-gap-override:0%;font-style:normal;font-weight:300 700}@font-face{font-family:Spline Sans Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/spline-sans-latin-wght-normal-DI10v4rJ.woff2)format("woff2-variations");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:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/courier-prime-latin-ext-400-normal-B-EsvyE4.woff2)format("woff2"),url(/assets/courier-prime-latin-ext-400-normal-CKOCNFvK.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:400}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/courier-prime-latin-400-normal-BbyBr73r.woff2)format("woff2"),url(/assets/courier-prime-latin-400-normal-BAlbUm6l.woff)format("woff");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:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/courier-prime-latin-ext-700-normal-ByMJlNdM.woff2)format("woff2"),url(/assets/courier-prime-latin-ext-700-normal-BIFoAzHx.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Noto Sans Mono);size-adjust:99.9349%;ascent-override:78.1759%;descent-override:34.202%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Roboto Mono);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime fallback;src:local(Courier New);size-adjust:99.9186%;ascent-override:78.1886%;descent-override:34.2075%;line-gap-override:0%;font-style:normal;font-weight:700}@font-face{font-family:Courier Prime;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/courier-prime-latin-700-normal-D1YCjmaD.woff2)format("woff2"),url(/assets/courier-prime-latin-700-normal-CVvp4Sof.woff)format("woff");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}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{background:#f1ebdf;min-height:100vh;margin:0}.site{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--sans);flex-direction:column;display:flex}.site-top{z-index:10;border-bottom:1px solid var(--line-soft);background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:saturate(1.1)blur(8px);backdrop-filter:saturate(1.1)blur(8px);justify-content:space-between;align-items:center;gap:16px;padding:16px clamp(20px,5vw,48px);display:flex;position:sticky;top:0}.site-nav{gap:clamp(18px,3vw,32px);display:flex}nav.site-nav a{font-family:var(--mono);letter-spacing:.03em;color:var(--ink-soft);font-size:13px;text-decoration:none}nav.site-nav a:hover{color:var(--ink)}.site-top a.site-brand{align-items:center;display:inline-flex}.site-brand img{width:auto;height:30px;display:block}.site-main{flex:1;width:100%;max-width:820px;margin:0 auto;padding:clamp(32px,6vw,64px) clamp(20px,5vw,40px)}.site-main.wide{max-width:1080px}@keyframes page-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.site-main{animation:.5s cubic-bezier(.2,.85,.25,1) both page-enter}@media (prefers-reduced-motion:reduce){.site-main{animation:none}}.site h1{font-family:var(--display);letter-spacing:-.01em;margin:0 0 8px;font-size:clamp(30px,5vw,42px);font-weight:560;line-height:1.1}.site .lead{color:var(--ink-soft);max-width:60ch;margin:0 0 36px;font-size:clamp(17px,2.5vw,20px)}.site h2{font-family:var(--display);margin:40px 0 10px;font-size:clamp(20px,3vw,25px);font-weight:540}.site h3{margin:26px 0 6px;font-size:17px;font-weight:620}.site p,.site li{color:var(--ink);max-width:68ch;font-size:16px;line-height:1.65}.site p{margin:0 0 14px}.site ul{margin:0 0 14px;padding-left:22px}.site li{margin:4px 0}.site a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.site .muted{color:var(--ink-soft);text-wrap:pretty;max-width:none;font-size:14px}.site .legal-meta{font-family:var(--mono);color:var(--ink-faint);margin:0 0 28px;font-size:13px;line-height:1.7}.site .callout{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;margin:22px 0;padding:18px 20px}.tiers{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:28px 0 12px;display:grid}.tier{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;flex-direction:column;padding:22px 20px;transition:transform .18s cubic-bezier(.2,.85,.25,1),box-shadow .18s,border-color .18s;display:flex}.tier:hover{border-color:var(--ink-faint);transform:translateY(-3px);box-shadow:0 2px 4px #281e0f14,0 16px 36px #281e0f24}.tier.featured{border-color:var(--ink);box-shadow:0 1px 2px #281e0f1a,0 14px 34px #281e0f1f}.tier.featured:hover{border-color:var(--ink);box-shadow:0 2px 4px #281e0f1f,0 18px 40px #281e0f29}.tier .tier-name{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:12px}.tier .tier-badge{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--safe);margin-left:8px;font-size:11px}.tier .tier-price{font-family:var(--display);margin:8px 0 2px;font-size:34px;font-weight:560}.tier .tier-price small{font-family:var(--sans);color:var(--ink-soft);font-size:14px;font-weight:400}.tier ul{margin:14px 0 20px;padding:0;list-style:none}.tier .tier-cta{box-sizing:border-box;text-align:center;width:100%;font-family:var(--sans);cursor:pointer;border-radius:9px;margin-top:auto;padding:11px 18px;font-size:14.5px;font-weight:600;text-decoration:none;transition:transform 80ms,background .15s,border-color .15s,color .15s,box-shadow .15s;display:block}.tier .tier-cta.solid{background:var(--ink);border:1px solid var(--ink);color:var(--paper-2)}.tier .tier-cta.solid:hover{background:#000;box-shadow:0 4px 14px #14110d2e}.tier .tier-cta.outline{border:1px solid var(--line);color:var(--ink);background:0 0}.tier .tier-cta.outline:hover:not(:disabled){border-color:var(--ink-faint);background:var(--paper)}.tier .tier-cta:active{transform:translateY(1px)}.tier .tier-cta:disabled{opacity:.5;cursor:not-allowed;pointer-events:none;transform:none}.tier .tier-action{margin-top:auto}.tier .tier-action .tier-cta{margin-top:0}.tier .tier-note{color:var(--ink-faint);text-align:center;max-width:none;margin:0 0 8px;font-size:12.5px;line-height:1.4}.tier:hover .tier-cta.outline:not(:disabled){border-color:var(--ink-faint)}.tier:hover .tier-cta.solid{box-shadow:0 4px 14px #14110d2e}.tier li{max-width:none;padding:6px 0 6px 22px;font-size:14.5px;line-height:1.5;position:relative}.tier li:before{content:"";background:var(--ink);border-radius:2px;width:8px;height:8px;position:absolute;top:12px;left:2px}.compare{border-collapse:collapse;width:100%;margin:20px 0;font-size:15px}.compare th,.compare td{text-align:left;border-bottom:1px solid var(--line-soft);padding:10px 12px}.compare th{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);font-size:12px}.faq-item{border-bottom:1px solid var(--line-soft)}.faq-item summary{cursor:pointer;color:var(--ink);padding:16px 34px 16px 0;font-size:17px;font-weight:620;line-height:1.4;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"";border-right:2px solid var(--ink-faint);border-bottom:2px solid var(--ink-faint);width:8px;height:8px;transition:transform .2s;position:absolute;top:21px;right:6px;transform:rotate(45deg)}.faq-item[open] summary:after{transform:rotate(-135deg)}.faq-answer{padding:0 34px 18px 0}.faq-answer p:last-child{margin-bottom:0}.site-footer{font-family:var(--mono);color:var(--ink-faint);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;padding:22px 16px 30px;font-size:12px;display:flex}.site-footer a{color:var(--ink-faint);text-decoration:none}.site-footer a:hover{color:var(--ink-soft)}.site-footer .sep{opacity:.5}.site .license-form{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 10px;display:flex}.site .license-input{min-width:0;font-family:var(--mono);color:var(--ink);background:var(--paper-2);border:1px solid var(--line);border-radius:9px;flex:320px;padding:12px 14px;font-size:15px}.site .license-input:focus-visible{border-color:var(--ink-faint);box-shadow:0 0 0 3px var(--paper), 0 0 0 4px var(--ink);outline:none}.site .license-btn{font-family:var(--sans);cursor:pointer;border-radius:9px;padding:11px 18px;font-size:14.5px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.site .license-btn.solid{background:var(--ink);border:1px solid var(--ink);color:var(--paper-2)}.site .license-btn.solid:hover:not(:disabled){background:#000;box-shadow:0 4px 14px #14110d2e}.site .license-btn.outline{border:1px solid var(--line);color:var(--ink);background:0 0}.site .license-btn.outline:hover:not(:disabled){border-color:var(--ink-faint);background:var(--paper)}.site .license-btn:disabled{opacity:.5;cursor:default}.site .license-note{margin:8px 0;font-size:14.5px}.site .license-note.danger{color:#8a2b20}.site .license-replace{margin:16px 0}.site .license-replace summary{cursor:pointer;color:var(--ink-soft);font-size:14.5px}:root{--desk:#e8e1d1;--paper:#f1ebdf;--paper-1:#f7f2e8;--paper-2:#fcf9f1;--ink:#211c15;--ink-soft:#514a3d;--ink-faint:#766c5b;--line:#211c1529;--line-soft:#211c1514;--safe:#2f7d4f;--safe-bg:#2f7d4f1f;--alert:#bf3a23;--alert-bg:#bf3a231a;--notice:#9a6b1a;--notice-bg:#9a6b1a1f;--display:"Bitter Variable", "Bitter Variable fallback", Georgia, serif;--sans:"Spline Sans Variable", "Spline Sans Variable fallback", system-ui, sans-serif;--mono:"Courier Prime", "Courier Prime fallback", ui-monospace, monospace;--col:1140px;--shadow-sheet:0 1px 2px #281e0f1a, 0 20px 50px #281e0f2e}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent}:where(button,[href],input,summary,[tabindex]):focus-visible{outline-offset:2px;box-shadow:0 0 0 2px var(--paper), 0 0 0 4px var(--ink);outline:2px solid #0000}body{margin:0}.app{min-height:100vh;color:var(--ink);font-family:var(--sans);background:var(--paper);flex-direction:column;font-size:16px;line-height:1.55;display:flex}.grain{z-index:0;pointer-events:none;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.topbar,.workspace,.dropzone{z-index:1;position:relative}::selection{background:var(--notice);color:#fff}.topbar,.toolbar,.hint,.banner-wrap{padding-left:max(32px, calc((100% - var(--col)) / 2));padding-right:max(32px, calc((100% - var(--col)) / 2))}.topbar{border-bottom:1px solid var(--line);background:var(--paper-1);justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px;animation:.5s both drop-in;display:flex}.brand{-webkit-user-select:none;user-select:none;align-items:center;display:flex}button.brand{background:0 0;border:0;padding:0}.brand.clickable{cursor:pointer}.brand-logo{width:auto;height:32px;transition:opacity .2s;display:block}.brand.clickable:hover .brand-logo{opacity:.65}.classification{font-family:var(--mono);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:9px;font-size:12px;display:inline-flex}.clx-dot{background:var(--safe);border-radius:50%;width:8px;height:8px;animation:2.6s ease-out infinite pulse-dot}.dropzone{cursor:pointer;background:var(--paper);border-radius:10px;flex:1;place-items:center;margin:28px;transition:background .25s,box-shadow .25s;animation:.6s .1s both drop-in;display:grid}.dropzone.over{background:var(--paper-1);box-shadow:inset 0 0 0 2px var(--ink-faint)}.drop-inner{text-align:center;max-width:820px;padding:48px 32px;transition:opacity .2s}.dropzone.over .drop-inner{opacity:.18}.drop-flash{opacity:0;pointer-events:none;place-items:center;transition:opacity .2s;display:grid;position:absolute;inset:0}.dropzone.over .drop-flash{opacity:1}.drop-flash span{font-family:var(--display);letter-spacing:-.6px;color:var(--ink);font-size:30px;font-weight:500}.hero-mark{margin:6px 0 20px}.hero-mark img{width:min(760px,92%);height:auto;margin:0 auto;display:block}.lede{max-width:480px;color:var(--ink-soft);text-wrap:pretty;margin:0 auto 30px;font-size:18px;line-height:1.55}.lede strong{color:var(--ink);font-weight:600}.drop-cta{flex-direction:column;align-items:center;gap:13px;margin-bottom:30px;display:flex}.drop-or{color:var(--ink-soft);font-size:14.5px}.trust{font-family:var(--mono);letter-spacing:.2px;color:var(--ink-soft);justify-content:center;align-items:center;margin:0;font-size:12.5px;display:flex}.trust span:not(:first-child):before{content:"·";color:var(--ink-faint);margin:0 11px}@media (width<=640px){.trust{flex-direction:column;gap:8px;line-height:1.4}.trust span:not(:first-child):before{content:none}}.drop-inner h1{animation:.6s cubic-bezier(.2,.85,.25,1) 60ms both rise}.lede{animation:.6s cubic-bezier(.2,.85,.25,1) .2s both rise}.drop-cta{animation:.6s cubic-bezier(.2,.85,.25,1) .28s both rise}.trust{animation:.6s cubic-bezier(.2,.85,.25,1) .36s both rise}.busy-inline{color:var(--ink);margin-top:22px;font-size:15px}.busy-inline:after{content:"";animation:1.4s steps(4,end) infinite dots}.error-inline{color:var(--alert);margin-top:22px;font-size:15px}.workspace{flex-direction:column;flex:1;animation:.5s both drop-in;display:flex}.toolbar{border-bottom:1px solid var(--line);background:var(--paper-1);z-index:5;flex-wrap:wrap;align-items:center;gap:12px 18px;padding-top:14px;padding-bottom:14px;display:flex;position:sticky;top:0}.toolbar button{white-space:nowrap}.group,.mark-tools{align-items:center;gap:10px;display:inline-flex}.divider{background:var(--line);flex-shrink:0;align-self:stretch;width:1px;min-height:26px}.divider.subtle{background:var(--line);opacity:.7;min-height:20px}.spacer{flex:1}.pager{font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:14px;font-size:13px;display:inline-flex}.pager span{white-space:nowrap}.pager button{background:var(--paper-2);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:6px;width:34px;height:34px;font-size:17px;line-height:1;transition:border-color .15s,background .15s}.pager button:hover:not(:disabled){border-color:var(--ink-faint);background:#fff}.pager button:disabled{opacity:.35;cursor:default}.count{font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;font-size:12px}button.ghost,button.primary,button.download{font-family:var(--sans);cursor:pointer;border-radius:7px;padding:11px 22px;font-size:15px;font-weight:600;transition:transform 80ms,background .15s,border-color .15s,opacity .15s}button.ghost{border:1px solid var(--line);color:var(--ink-soft);background:0 0;font-weight:500}button.ghost:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint);background:var(--paper-2)}button.ghost.icon{align-items:center;gap:7px;padding-left:16px;padding-right:18px;display:inline-flex}button.ghost.icon svg{display:block}button.primary{background:var(--ink);border:1px solid var(--ink);color:var(--paper-2)}button.primary:hover:not(:disabled){background:#000}button.primary.lg{border-radius:9px;padding:15px 32px;font-size:16px;box-shadow:0 2px 12px #14110d29}button.primary.lg:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 18px #14110d38}button.primary.lg:active:not(:disabled){transform:translateY(0)}button.download{background:var(--safe);border:1px solid var(--safe);color:#fff;animation:.4s cubic-bezier(.2,.9,.2,1) both ready-pop;box-shadow:0 2px 10px #2f7d4f4d}button.download:hover{background:#36905b}button.primary:active:not(:disabled),button.download:active,button.ghost:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}button.primary:disabled{opacity:1;background:var(--paper-2);border-color:var(--line);color:var(--ink-faint)}.hint{color:var(--ink-soft);padding-top:18px;padding-bottom:2px;font-size:16px}.banner-wrap{padding-top:0}.banner{border:1px solid var(--line);background:var(--paper-1);border-radius:8px;gap:18px;margin-top:16px;padding:18px 22px;animation:.32s cubic-bezier(.2,.9,.3,1.1) both stamp-in;display:flex;box-shadow:0 1px 3px #281e0f0f}.banner-body{flex:1}.banner-body p{color:var(--ink-soft);margin:0;font-size:15.5px;line-height:1.5}.banner-body p.verdict{color:var(--ink);letter-spacing:-.2px;margin:0 0 5px;font-size:17.5px;font-weight:600;line-height:1.35}.banner-body p.sub{color:var(--ink-soft);margin-top:8px;font-size:14px}.stamp{font-family:var(--sans);letter-spacing:1.5px;text-transform:uppercase;border:2px solid;border-radius:5px;flex-shrink:0;align-self:flex-start;padding:5px 11px;font-size:12.5px;font-weight:700}.banner.ok{background:linear-gradient(180deg, var(--safe-bg), var(--paper-1) 70%);border-color:#2f7d4f73}.banner.ok .stamp{color:var(--safe)}.banner.danger{background:linear-gradient(180deg, var(--alert-bg), var(--paper-1) 70%);border-color:#bf3a2373}.banner.danger .stamp{color:var(--alert)}.banner.info{background:linear-gradient(180deg, var(--notice-bg), var(--paper-1) 70%);border-color:#9a6b1a66}.banner.info .stamp{color:var(--notice)}.chips{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.chip{font-family:var(--sans);cursor:pointer;background:var(--notice-bg);color:var(--ink);border:1px solid #9a6b1a73;border-radius:14px;padding:5px 13px;font-size:13.5px;font-weight:500;transition:background .15s}.chip:hover{background:#9a6b1a38}.chip.danger{background:var(--alert-bg);border-color:#bf3a2380}.chip.danger:hover{background:#bf3a2333}.stage{background:var(--desk);border-top:1px solid var(--line);flex:1;justify-content:safe center;padding:44px 32px 72px;display:flex;position:relative;overflow:auto;box-shadow:inset 0 1px #fff6}.sheet{align-self:flex-start;animation:.5s 50ms both drop-in;position:relative}.crop{border:1.5px solid var(--ink-faint);pointer-events:none;width:18px;height:18px;position:absolute}.crop.tl{border-bottom:0;border-right:0;top:-16px;left:-16px}.crop.tr{border-bottom:0;border-left:0;top:-16px;right:-16px}.crop.bl{border-top:0;border-right:0;bottom:-16px;left:-16px}.crop.br{border-top:0;border-left:0;bottom:-16px;right:-16px}.sheet-tag{font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;color:var(--ink-faint);font-size:11px;position:absolute;top:-16px;left:50%;transform:translate(-50%)translateY(-130%)}.surface{box-shadow:var(--shadow-sheet);-webkit-user-select:none;user-select:none;touch-action:none;background:#fff;position:relative}.surface.mode-box{cursor:crosshair}.surface canvas{pointer-events:none;display:block}.redaction{transform-origin:0;background:#0a0a0a;outline:1px solid #0a0a0a;animation:.18s ease-out ink-wipe;position:absolute}.redaction .remove{background:var(--alert);color:#fff;cursor:pointer;opacity:0;border:none;border-radius:50%;place-items:center;width:21px;height:21px;font-size:14px;line-height:1;transition:opacity .12s,transform .12s;display:grid;position:absolute;top:-10px;right:-10px}.redaction:hover .remove{opacity:1}.redaction .remove:hover{transform:scale(1.12)}.miss{border:2px solid var(--alert);pointer-events:auto;cursor:help;background:#bf3a234d;border-radius:1px;animation:1.6s ease-in-out infinite miss-pulse;position:absolute}.leak{border:1.5px solid var(--notice);pointer-events:auto;cursor:help;background:#9a6b1a47;border-radius:1px;position:absolute}.dragbox{pointer-events:none;background:#0a0a0a4d;border:1px solid #0a0a0a;position:absolute}.busy{background:var(--ink);color:var(--paper-2);border-radius:22px;padding:10px 20px;font-size:14px;position:absolute;top:26px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #281e0f4d}.busy:after{content:"";animation:1.4s steps(4,end) infinite dots}.banner-body p.caveat{color:var(--ink-soft);border-top:1px solid #211c151f;margin-top:12px;padding-top:11px;font-size:14px;line-height:1.5}.banner-body p.caveat strong{color:var(--ink)}@keyframes drop-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes stamp-in{0%{opacity:0;transform:scale(.97)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes ink-wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ready-pop{0%{opacity:0;transform:scale(.92)}60%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes miss-pulse{0%,to{box-shadow:0 0 #bf3a2380}50%{box-shadow:0 0 0 5px #bf3a2300}}@keyframes pulse-dot{0%{box-shadow:0 0 #2f7d4f80}70%{box-shadow:0 0 0 8px #2f7d4f00}to{box-shadow:0 0 #2f7d4f00}}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@media (prefers-reduced-motion:reduce){*,:after{animation:none!important}}.zoomctl{border:1px solid var(--line);border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.zoomctl button{background:var(--paper-2);color:var(--ink);font-family:var(--mono);cursor:pointer;border:none;min-width:42px;padding:8px 12px;font-size:13px}.zoomctl button:hover{background:#fff}.zoomctl button:not(:last-child){border-right:1px solid var(--line)}.modetoggle{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:3px;display:inline-flex;position:relative;box-shadow:inset 0 1px 2px #281e0f14}.modetoggle .seg-thumb{z-index:0;background:var(--ink);border-radius:999px;width:calc(50% - 3px);transition:transform .24s cubic-bezier(.2,.8,.2,1);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 3px #14110d47}.modetoggle.is-redact .seg-thumb{transform:translate(100%)}.modetoggle button{z-index:1;color:var(--ink-soft);cursor:pointer;font-family:var(--sans);background:0 0;border:none;border-radius:999px;flex:1;padding:8px 20px;font-size:14px;font-weight:500;transition:color .2s;position:relative}.modetoggle button.on{color:var(--paper-2)}.touch-only{display:none}@media (pointer:coarse){.touch-only{display:inline-flex}}.surface.mode-move{cursor:grab}.surface.mode-move:active{cursor:grabbing}@media (width<=640px){.topbar{padding-left:14px;padding-right:14px}.brand-logo{height:27px}.classification{display:none}.toolbar{gap:10px 12px;padding-left:12px;padding-right:12px}.toolbar .divider,.toolbar .spacer,.count{display:none}.group{gap:8px}.group.view{flex:100%;justify-content:space-between}.modetoggle button{padding:8px 14px}.group.marks{margin-left:auto}.group.finish{flex:100%;justify-content:space-between}.group.finish .primary,.group.finish .download{flex:1}.hint{padding-left:14px;padding-right:14px;font-size:14px}.banner-wrap{padding-left:12px;padding-right:12px}.banner-body p{font-size:15px}.stage{padding:18px 10px 48px}.drop-inner{padding:36px 20px}button.ghost,button.primary,button.download{padding:9px 14px;font-size:13.5px}button.ghost.icon{padding-left:12px;padding-right:12px}button.ghost.icon .icon-label{display:none}}.topbar-right{align-items:center;gap:14px;display:flex}.help{border:1px solid var(--line);background:var(--paper-2);width:26px;height:26px;color:var(--ink-soft);font-family:var(--sans);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:600;line-height:1;transition:border-color .15s,color .15s,background .15s;display:grid}.help:hover{border-color:var(--ink-faint);color:var(--ink);background:#fff}.tour{z-index:1000;position:fixed;inset:0}.tour-spot{outline:2px solid var(--paper-2);outline-offset:3px;pointer-events:none;border-radius:8px;transition:top .25s cubic-bezier(.2,.8,.2,1),left .25s cubic-bezier(.2,.8,.2,1),width .25s cubic-bezier(.2,.8,.2,1),height .25s cubic-bezier(.2,.8,.2,1);position:fixed;box-shadow:0 0 0 9999px #14110d94}.tour-catch{cursor:pointer;position:fixed;inset:0}.tour-card{background:var(--paper-2);border:1px solid var(--line);border-radius:11px;width:300px;max-width:calc(100vw - 32px);padding:16px 18px 13px;transition:left .25s cubic-bezier(.2,.8,.2,1),top .25s cubic-bezier(.2,.8,.2,1);animation:.25s cubic-bezier(.2,.9,.3,1.1) both stamp-in;position:fixed;box-shadow:0 10px 34px #281e0f4d}.tour-body{color:var(--ink);margin:0;font-size:15.5px;line-height:1.5}.tour-foot{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.tour-count{font-family:var(--mono);letter-spacing:1px;color:var(--ink-faint);font-size:12px}.tour-actions{align-items:center;gap:8px;display:flex}.tour-skip{color:var(--ink-soft);font-family:var(--sans);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 10px;font-size:14px}.tour-skip:hover{color:var(--ink)}.tour-next{background:var(--ink);border:1px solid var(--ink);color:var(--paper-2);font-family:var(--sans);cursor:pointer;border-radius:7px;padding:7px 16px;font-size:14px;font-weight:600}.tour-next:hover{background:#000}.tour-hint{color:var(--ink-faint);margin:9px 0 0;font-size:12px}@media (prefers-reduced-motion:reduce){.tour-spot,.tour-card{transition:none}}.free-remaining{font-family:var(--mono);letter-spacing:.2px;color:var(--ink-soft);margin:-14px 0 26px;font-size:12.5px}.drop-inner .free-remaining{animation:.6s cubic-bezier(.2,.85,.25,1) .32s both rise}.paywall{flex:1;place-items:center;margin:28px;animation:.6s .1s both drop-in;display:grid}.paywall-card{text-align:center;max-width:560px;padding:48px 32px}.paywall-head{font-family:var(--display);letter-spacing:-.5px;color:var(--ink);text-wrap:balance;margin:0 0 16px;font-size:clamp(26px,5vw,34px);font-weight:560}.paywall-body{max-width:440px;color:var(--ink-soft);text-wrap:pretty;margin:0 auto 28px;font-size:17px;line-height:1.55}.paywall-cta{flex-direction:column;align-items:center;gap:14px;display:flex}.paywall-primary{background:var(--ink);color:var(--paper-2);border:1px solid var(--ink);font-family:var(--sans);border-radius:8px;padding:13px 28px;font-size:16px;font-weight:560;text-decoration:none;transition:box-shadow .2s,transform 50ms;display:inline-block}.paywall-primary:hover{box-shadow:0 4px 14px #14110d2e}.paywall-primary:active{transform:translateY(1px)}.paywall-link{color:var(--ink-soft);text-underline-offset:2px;font-size:14.5px;text-decoration:underline}.paywall-link:hover{color:var(--ink)}.paywall-note{color:var(--ink-faint);margin:0;font-size:14px}
