@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/fonts/archivo-var.woff2)format("woff2-variations"),url(/fonts/archivo-var.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ground:#f4f5f1;--surface:#fff;--surface-2:#e9ebe5;--line:#d7dad2;--line-strong:#aeb3a8;--ink:#121716;--ink-2:#3d4643;--muted:#58625e;--accent:#1f6f5f;--accent-ink:#145147;--accent-soft:#dcefe8;--accent-contrast:#fff;--field:#1f6f5f;--field-deep:#175b4e;--on-field:#f4faf7;--on-field-2:#c8e3d8;--on-field-line:#f4faf738;--warn:#b3541e;--warn-soft:#f7e4d6;--danger:#b42318;--danger-soft:#fbe4e1;--ok:#1d7a4a;--shadow:0 1px 2px #1217160d, 0 10px 30px -12px #1217162e;--shadow-lift:0 2px 4px #0614102e, 0 28px 60px -20px #0614108c;--radius:16px;--radius-sm:10px;--font:Archivo, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ease-out:cubic-bezier(.16, 1, .3, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0e1312;--surface:#161c1b;--surface-2:#1f2725;--line:#2a3331;--line-strong:#46524e;--ink:#e9efec;--ink-2:#b6c2bd;--muted:#8a9893;--accent:#4fb89f;--accent-ink:#8fd9c6;--accent-soft:#173a33;--accent-contrast:#0b1714;--field:#123a32;--field-deep:#0d2c26;--on-field:#e9f5f0;--on-field-2:#a3cbbd;--on-field-line:#e9f5f029;--warn:#e8935c;--warn-soft:#3a2619;--danger:#f08579;--danger-soft:#3b1f1c;--ok:#5cc48a;--shadow:0 1px 2px #00000059, 0 10px 30px -12px #00000080;--shadow-lift:0 2px 4px #0006, 0 28px 60px -20px #000c}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#0e1312;--surface:#161c1b;--surface-2:#1f2725;--line:#2a3331;--line-strong:#46524e;--ink:#e9efec;--ink-2:#b6c2bd;--muted:#8a9893;--accent:#4fb89f;--accent-ink:#8fd9c6;--accent-soft:#173a33;--accent-contrast:#0b1714;--field:#123a32;--field-deep:#0d2c26;--on-field:#e9f5f0;--on-field-2:#a3cbbd;--on-field-line:#e9f5f029;--warn:#e8935c;--warn-soft:#3a2619;--danger:#f08579;--danger-soft:#3b1f1c;--ok:#5cc48a;--shadow:0 1px 2px #00000059, 0 10px 30px -12px #00000080;--shadow-lift:0 2px 4px #0006, 0 28px 60px -20px #000c}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}body{background:var(--ground);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;margin:0;font-size:16.5px;line-height:1.6}::selection{background:var(--accent);color:var(--accent-contrast)}img,svg,canvas{max-width:100%;display:block}[hidden]{display:none!important}a{color:var(--accent-ink);-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}h1,h2,h3{text-wrap:balance;margin:0;font-stretch:112%;line-height:1.08}h1{letter-spacing:-.035em;font-size:clamp(34px,5.4vw,58px);font-weight:800}h2{letter-spacing:-.025em;font-size:clamp(24px,3vw,32px);font-weight:760}h3{letter-spacing:-.01em;font-size:17px;font-weight:680}p{margin:0 0 12px}code{font-family:var(--mono);background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:.9em}.wrap{width:min(1160px,100% - 32px);margin-inline:auto}.wrap-narrow{width:min(760px,100% - 32px);margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.muted{color:var(--muted)}.small{font-size:14px}.site-header{z-index:20;background:color-mix(in srgb, var(--ground) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{align-items:center;gap:18px;min-height:62px;display:flex}.brand{letter-spacing:-.03em;color:var(--ink);flex:none;align-items:center;gap:10px;font-size:20px;font-weight:800;font-stretch:112%;text-decoration:none;display:inline-flex}.brand svg{flex:none;width:28px;height:28px}.nav{flex-wrap:wrap;align-items:center;gap:2px;margin-left:auto;display:flex}.nav a{color:var(--ink-2);border-radius:8px;padding:7px 11px;font-size:15px;font-weight:520;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:var(--surface-2)}.nav .cta{border:1px solid var(--line-strong);color:var(--ink);margin-left:8px;font-weight:600}.nav .cta:hover{border-color:var(--ink);background:0 0}.search-trigger{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:0;height:38px;color:var(--muted);font:inherit;cursor:pointer;text-align:left;flex:0 250px;align-items:center;gap:9px;margin-left:10px;padding:0 8px 0 11px;font-size:15px;display:inline-flex}.search-trigger:hover{border-color:var(--ink-2);color:var(--ink-2)}.search-trigger svg{flex:none;width:18px;height:18px}.st-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.site-header kbd,.search-dialog kbd{font:600 12px/1 var(--font);color:var(--muted);border:1px solid var(--line);background:var(--ground);border-bottom-width:2px;border-radius:5px;padding:3px 6px 2px}@media (hover:none),(pointer:coarse){.st-key,.search-keys{display:none}}@media (max-width:1000px){.search-trigger{flex:none;justify-content:center;width:40px;margin-left:4px;padding:0}.st-label,.st-key{display:none}}.search-dialog{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);width:min(640px,100vw - 32px);max-width:none;max-height:min(600px,100dvh - 96px);color:var(--ink);box-shadow:var(--shadow-lift);margin:72px auto auto;padding:0;overflow:hidden}.search-dialog[open]{flex-direction:column;display:flex}.search-dialog::backdrop{background:#08100e6b}.search-bar{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:12px;padding:0 12px 0 18px;display:flex}.search-bar:focus-within{border-bottom-color:var(--accent);box-shadow:inset 0 -1px 0 var(--accent)}.search-bar svg{width:20px;height:20px;color:var(--accent);flex:none}.search-bar input{min-width:0;color:var(--ink);font:inherit;letter-spacing:-.01em;background:0 0;border:0;outline:none;flex:1;padding:17px 0;font-size:19px;font-weight:520}.search-bar input::placeholder{color:var(--muted);font-weight:450}.search-bar input::-webkit-search-cancel-button{display:none}.search-close{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:8px 6px;font-size:14px;font-weight:560}.search-close:hover{color:var(--ink)}.search-results{overscroll-behavior:contain;flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.search-results a{border-radius:var(--radius-sm);color:var(--ink);grid-template-columns:minmax(0,1fr) auto;column-gap:14px;padding:9px 12px 10px;text-decoration:none;display:grid}.search-results [aria-selected=true] a{background:var(--accent-soft)}.sr-name{letter-spacing:-.01em;font-size:16px;font-weight:640}.sr-kind{color:var(--muted);align-self:center;font-size:13px}.search-results [aria-selected=true] .sr-kind{color:var(--accent-ink)}.sr-desc{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;grid-column:1/-1;font-size:13.5px;line-height:1.45;overflow:hidden}.search-empty{color:var(--ink-2);flex:1;margin:0;padding:28px 22px 30px}.search-foot{border-top:1px solid var(--line);color:var(--muted);flex:none;margin:0;padding:10px 18px 11px;font-size:13px}.search-keys{margin-right:6px}.search-keys kbd{margin-right:2px}@media (prefers-reduced-motion:no-preference){.search-dialog[open]{animation:search-in .18s var(--ease-out)}}@keyframes search-in{0%{opacity:0;transform:translateY(-6px)scale(.99)}}.site-footer{border-top:1px solid var(--line);color:var(--muted);background:var(--surface);margin-top:96px;padding:44px 0 52px;font-size:14px}.site-footer .cols{grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:28px;display:grid}.site-footer h3{letter-spacing:0;color:var(--ink);margin-bottom:10px;font-size:14px;font-stretch:100%}.site-footer h3 a{color:inherit;min-height:0;padding:0}.site-footer ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.site-footer ul+h3{margin-top:28px}.site-footer a{color:var(--ink-2);min-height:24px;padding:3px 0;text-decoration:none;display:inline-block}.site-footer .links{margin-top:4px}.site-footer a:hover{color:var(--ink);text-decoration:underline}.site-footer .conversions{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.site-footer .conversions ul{column-count:4;column-gap:24px;display:block}.site-footer .conversions li{break-inside:avoid}.site-footer .legal{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;margin-top:32px;padding-top:18px;display:flex}.btn{appearance:none;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s var(--ease-out), border-color .2s var(--ease-out), transform .2s var(--ease-out);align-items:center;gap:8px;padding:10px 16px;font-size:15px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--ink-2)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:var(--accent-ink);border-color:var(--accent-ink)}.btn-lg{border-radius:12px;padding:14px 24px;font-size:16.5px}.btn-sm{padding:6px 10px;font-size:13px}.btn-icon{justify-content:center;width:32px;height:32px;padding:6px}.btn-ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);border-color:#0000}label{color:var(--ink-2);font-size:14px;font-weight:620}select,input[type=number],input[type=text],input[type=password],input[type=color]{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-height:42px;padding:8px 10px;font-size:15px}input[type=color]{width:48px;padding:3px}input[type=range]{accent-color:var(--accent);width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:18px;height:18px}.field{align-content:start;gap:8px;display:grid}.field output{font-family:var(--mono);color:var(--accent-ink);background:var(--accent-soft);border-radius:5px;margin-left:4px;padding:1px 6px;font-size:13px}.field-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.check{color:var(--ink);align-items:center;gap:10px;font-size:15px;font-weight:500;display:inline-flex}.segmented{background:var(--surface-2);border-radius:var(--radius-sm);flex-wrap:wrap;justify-self:start;gap:2px;max-width:100%;padding:3px;display:inline-flex}.segmented label{margin:0}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented span{color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background .2s var(--ease-out), color .2s var(--ease-out);border-radius:7px;padding:7px 16px;font-size:14px;font-weight:650;display:inline-block}.segmented input:checked+span{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #1217161f,0 2px 6px -2px #1217161f}.segmented input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.facts,.badges{flex-wrap:wrap;gap:6px 0;margin:0;padding:0;list-style:none;display:flex}.facts li,.badge{color:var(--ink-2);border-left:1px solid var(--line-strong);align-items:center;gap:7px;padding:0 14px;font-size:14px;font-weight:600;line-height:1.3;display:inline-flex}.facts li:first-child,.badge:first-child{border-left:0;padding-left:0}.facts svg,.badge svg{width:16px;height:16px;color:var(--accent);flex:none}.tool-hero{padding:48px 0 26px}.tool-hero h1{margin-bottom:12px;font-size:clamp(36px,5.6vw,64px)}.tool-hero .tagline{color:var(--ink-2);max-width:60ch;margin-bottom:18px;font-size:clamp(17px,1.6vw,19px)}.tool-panel{background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);gap:20px;padding:14px;display:grid}.tool-panel>:not(.dropzone):not(input){margin-inline:8px}.tool-panel>.privacy-note{margin-bottom:6px}.dropzone{border:1.5px dashed color-mix(in srgb, var(--on-field) 45%, transparent);border-radius:var(--radius);text-align:center;background:var(--field);color:var(--on-field);cursor:pointer;transition:background .25s var(--ease-out), border-color .25s var(--ease-out);padding:52px 20px 48px;position:relative}.dropzone:hover,.dropzone:focus-visible{background:var(--field-deep);border-color:var(--on-field);outline-offset:3px}.dropzone.is-over{background:var(--field-deep);border-style:solid;border-color:var(--on-field)}.dropzone svg{width:44px;height:44px;color:var(--on-field);transition:transform .35s var(--ease-out);margin:0 auto 14px}.dropzone:hover svg,.dropzone.is-over svg{transform:translateY(-4px)}.dropzone strong{letter-spacing:-.025em;margin-bottom:6px;font-size:clamp(22px,2.6vw,30px);font-weight:780;font-stretch:112%;line-height:1.1;display:block}.dropzone span{color:var(--on-field-2);font-size:15px}.dropzone.is-compact{text-align:left;align-items:center;gap:12px;padding:14px 18px;display:flex}.dropzone.is-compact svg{width:22px;height:22px;margin:0}.dropzone.is-compact strong{letter-spacing:-.01em;margin:0;font-size:16px;display:inline}.file-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.file-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.file-item .thumb{background:var(--surface-2);object-fit:cover;width:44px;height:44px;color:var(--muted);border-radius:6px;place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.file-item .thumb img{object-fit:cover;width:100%;height:100%}.file-item .name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.file-item .meta{color:var(--muted);font-size:13px}.file-item .actions{gap:4px;display:flex}.options{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px 28px;padding:4px 0 2px;display:grid}.options .wide{grid-column:1/-1}.run-dock{gap:12px;display:grid}.run-dock .error{max-height:30vh;overflow-y:auto}.run-hint{color:var(--ink-2);font-size:14px}.run-hint[hidden]{display:none}#tool[data-count]:not([data-count="0"]) .run-dock{z-index:5;padding:0 22px max(14px, env(safe-area-inset-bottom));background:var(--surface);margin-inline:-14px;position:sticky;bottom:0}.run-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;padding-top:18px;display:flex}.progress{color:var(--ink-2);align-items:center;gap:10px;font-size:14px;display:none}.progress.is-active{display:flex}.progress .bar{background:var(--surface-2);border-radius:3px;flex:1;min-width:120px;height:6px;overflow:hidden}.progress .bar i{background:var(--accent);width:0;height:100%;transition:width .15s;display:block}.error{background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;display:none}.error.is-active{display:block}.results{border-top:1px solid var(--line);gap:10px;padding-top:18px;display:none}.results.is-active{display:grid}.results-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.results-head h2{font-size:20px}.snippet{gap:8px;margin-top:14px;display:grid}.snippet[hidden]{display:none}.snippet-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.snippet pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:12px 14px;overflow-x:auto}.snippet pre code{white-space:pre;background:0 0;padding:0;font-size:13px;line-height:1.6}.next-steps{flex-wrap:wrap;align-items:center;gap:10px;padding-top:6px;display:flex}.next-steps[hidden]{display:none}.result-item{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.result-item .name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.result-item .meta{color:var(--muted);font-size:13px}.result-item .saving{color:var(--ok);font-weight:650}.result-item .grew{color:var(--warn);font-weight:650}.result-item .actions{gap:6px;display:flex}.result-item .result-text{resize:vertical;width:100%;font:15px/1.55 var(--font);color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);grid-column:1/-1;padding:10px 12px}.privacy-note{color:var(--muted);align-items:flex-start;gap:8px;font-size:13.5px;display:flex}.privacy-note svg{width:16px;height:16px;color:var(--accent);flex:none;margin-top:2px}.section{margin-top:88px}.section>h2{margin-bottom:20px}.split{border-top:1px solid var(--line);grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:20px 48px;padding-top:28px;display:grid}.split>h2{margin:0}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;color:var(--ink-2);align-content:start;gap:8px;font-size:16px;display:grid}.steps li:before{content:counter(step);letter-spacing:-.04em;color:var(--accent);font-size:44px;font-weight:800;font-stretch:125%;line-height:1}.faq{border-top:1px solid var(--line);display:grid}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:17px;font-weight:650;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;transition:transform .3s var(--ease-out);flex:none;transform:translateY(-3px)rotate(45deg)}.faq details[open] summary:after{transform:translateY(2px)rotate(-135deg)}.faq summary:hover{color:var(--accent-ink)}.faq details p{color:var(--ink-2);max-width:68ch;margin:0;padding-bottom:20px}.tool-grid{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));column-gap:40px;display:grid}.tool-card{border-bottom:1px solid var(--line);color:var(--ink);transition:background .2s var(--ease-out);grid-template-columns:22px minmax(0,1fr) 18px;align-items:start;gap:4px 14px;padding:16px 4px;text-decoration:none;display:grid}.tool-card .icon{color:var(--accent);grid-row:1/span 2;padding-top:2px}.tool-card .icon svg{width:22px;height:22px}.tool-card h3{font-size:18px;font-stretch:106%}.tool-card p{color:var(--muted);grid-column:2;margin:0;font-size:14.5px;line-height:1.5}.tool-card .go{width:18px;height:18px;color:var(--muted);transition:transform .3s var(--ease-out), color .2s;grid-area:1/3;margin-top:2px}.tool-card:hover{background:var(--surface)}.tool-card:hover h3{color:var(--accent-ink)}.tool-card:hover .go{color:var(--accent);transform:translate(4px)}.hero{background:var(--field);color:var(--on-field);overflow:hidden}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:56px;padding:88px 0 96px;display:grid}.hero h1{letter-spacing:-.045em;max-width:7ch;margin-bottom:26px;font-size:clamp(56px,8.6vw,96px);font-weight:850;font-stretch:118%;line-height:.92}.hero .lede{color:var(--on-field-2);max-width:44ch;margin-bottom:30px;font-size:clamp(17px,1.7vw,20px)}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.btn-invert{background:var(--on-field);border-color:var(--on-field);color:#0d2c26}.btn-invert:hover:not(:disabled){background:#fff;border-color:#fff}.hero-link{color:var(--on-field);-webkit-text-decoration-color:var(--on-field-line);text-decoration-color:var(--on-field-line);font-weight:620}.hero-link:hover{text-decoration-color:currentColor}.hero :focus-visible{outline-color:var(--on-field)}.hero figure{margin:0}.hero figcaption{color:var(--on-field-2);max-width:52ch;margin-top:14px;font-size:13.5px}.hero .devtools{box-shadow:var(--shadow-lift)}.index{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 56px;margin-top:88px;display:grid}.index .tool-grid{grid-template-columns:1fr}.index #image-tools{grid-area:1/1}.index #media-tools{grid-area:2/1}.index #pdf-tools{grid-area:1/2/span 2}.index-head{gap:6px;margin-bottom:20px;display:grid}.index-head p{color:var(--muted);margin:0;font-size:15px}.conv-intro p{max-width:34ch;margin:12px 0 0}.conv-map{width:100%;max-width:360px;height:auto;margin-top:36px;display:block;overflow:visible}.conv-map .cm-wire{fill:none;stroke:var(--line-strong);stroke-width:1.5px}.conv-map .cm-file path{fill:var(--surface);stroke:var(--line-strong);stroke-width:1.5px;stroke-linejoin:round}.conv-map .cm-file .cm-fold{fill:none}.conv-map .cm-file text{fill:var(--ink);font:650 13px var(--font);text-anchor:middle}.conv-map .cm-tab rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5px}.conv-map .cm-tab path{fill:none;stroke:var(--accent);stroke-width:1.5px}.conv-map .cm-tab circle{fill:var(--accent)}.conv-map .cm-tab text{text-anchor:middle}.conv-map .cm-tab-name{fill:var(--accent-ink);font:760 15px var(--font)}.conv-map .cm-tab-sub{fill:var(--muted);font:11.5px var(--mono)}.conv-map .cm-pulses circle{fill:var(--accent)}@media (prefers-reduced-motion:reduce){.conv-map .cm-pulses{display:none}}@media (max-width:900px){.conv-map{display:none}}.uvl{width:100%;max-width:360px;height:auto;margin-top:32px;display:block;overflow:visible}.uvl text{font-family:var(--font)}.uvl-lane{fill:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:650}.uvl-lane-us{fill:var(--accent-ink)}.uvl-them rect,.uvl-them>path{fill:var(--surface);stroke:var(--line-strong);stroke-width:1.5px}.uvl-them circle{fill:var(--line-strong)}.uvl-them .uvl-trip{fill:none;stroke:var(--muted);stroke-dasharray:4 4;stroke-linecap:round;stroke-linejoin:round}.uvl-note{fill:var(--muted);text-anchor:middle;font:11.5px var(--mono)!important}.uvl-us rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5px}.uvl-us>path{fill:none;stroke:var(--accent);stroke-width:1.5px}.uvl-us circle{fill:var(--accent)}.uvl-us .uvl-go{stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.uvl-here{fill:var(--accent-ink);text-anchor:middle;font-size:12.5px;font-weight:650}.uvl-zero{fill:var(--muted);text-anchor:end;font:11.5px var(--mono)!important}.uvl-file path{fill:var(--surface);stroke:var(--line-strong);stroke-width:1.5px;stroke-linejoin:round}.uvl-file .uvl-fold{fill:none}.uvl-file text{fill:var(--ink);text-anchor:middle;font-weight:650}@media (max-width:900px){.uvl{display:none}}.mcp-flow{margin:28px 0 8px}.mcp-machine{border:1.5px dashed var(--line-strong);border-radius:var(--radius);padding:30px 18px 18px;position:relative}.mcp-machine-label{background:var(--ground);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:0 8px;font-size:12px;font-weight:650;position:absolute;top:-10px;left:16px}.mcp-flow ol{counter-reset:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:0;padding:0;list-style:none;display:grid}.prose .mcp-flow li{background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);align-content:start;gap:4px;margin:0;padding:14px 14px 13px;display:grid;position:relative}.prose .mcp-flow li:before{content:none}.prose .mcp-flow li b{color:var(--ink);font-size:15.5px;font-weight:700}.prose .mcp-flow li span{color:var(--muted);font-size:13.5px;line-height:1.4}.prose .mcp-flow li.mcp-core{background:var(--accent-soft);border-color:var(--accent)}.prose .mcp-flow li.mcp-core b{color:var(--accent-ink);font-family:var(--mono);font-size:14.5px}.prose .mcp-flow li+li:after{content:"";background:var(--accent);width:24px;height:12px;margin-top:-6px;position:absolute;top:50%;left:-30px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M1 6h20M17 1.5 21.5 6 17 10.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12'%3E%3Cpath d='M1 6h20M17 1.5 21.5 6 17 10.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat}.mcp-flow figcaption{color:var(--muted);margin-top:12px;font-size:14px}.mcp-zero{color:var(--accent-ink);font-weight:800}@media (max-width:640px){.mcp-flow ol{grid-template-columns:1fr;gap:28px}.prose .mcp-flow li+li:after{transform-origin:50%;width:16px;height:12px;margin:0 0 0 -8px;top:-22px;left:50%;transform:rotate(90deg)}}.spec-sheet{border-top:1px solid var(--ink);margin:0;display:grid}.spec-sheet>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(110px,2fr) minmax(0,5fr);gap:16px;padding:14px 0;display:grid}.spec-sheet dt{font-weight:700}.spec-sheet dd{color:var(--ink-2);margin:0}.spec-sheet dd b{color:var(--ink);font-weight:700}.spec-intro p{color:var(--ink-2);max-width:52ch}.spec-intro .actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.prose{max-width:70ch}.prose p,.prose li{color:var(--ink-2)}.prose h2{margin-top:36px;margin-bottom:10px}.prose pre.code{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--mono);color:var(--ink);tab-size:2;margin:18px 0;padding:14px 16px;font-size:13.5px;line-height:1.55;overflow-x:auto}.prose pre.code code{font:inherit;background:0 0;border-radius:0;padding:0}.thumb-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.page-thumb{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);justify-items:center;gap:6px;padding:8px;display:grid}.page-thumb img{width:auto;max-height:150px;transition:transform .2s;box-shadow:0 1px 3px #00000026}.page-thumb .label{color:var(--muted);font-size:12px}.page-thumb .controls{gap:4px;display:flex}@media (max-width:900px){.site-footer .conversions ul{column-count:3}.hero-grid{grid-template-columns:1fr;gap:44px;padding:56px 0 64px}.index{grid-template-columns:1fr;gap:56px}.index #image-tools,.index #media-tools,.index #pdf-tools{grid-area:auto}.split{grid-template-columns:1fr}}@media (max-width:720px){.site-footer .cols{grid-template-columns:1fr}.site-footer .conversions ul{column-count:2}.file-item,.result-item{grid-template-columns:40px 1fr}.file-item .actions,.result-item .actions{grid-column:1/-1;justify-content:flex-end}.section{margin-top:64px}.spec-sheet>div{grid-template-columns:1fr;gap:2px}.facts{grid-template-columns:1fr 1fr;gap:10px 12px;display:grid}.facts li{border-left:0;padding:0;font-size:13.5px}.dropzone{padding:40px 16px 36px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.skip-link{z-index:50;background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius-sm);padding:10px 14px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}.netproof{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);padding:0 14px}.netproof summary{cursor:pointer;align-items:center;gap:8px;padding:12px 0;font-weight:620;list-style:none;display:flex}.netproof summary::-webkit-details-marker{display:none}.netproof summary svg{width:18px;height:18px;color:var(--accent);flex:none}.netproof p{margin:0 0 8px;font-size:14px}.netproof-list{color:var(--ink-2);gap:6px;margin:0;padding:0 0 12px;font-size:13px;list-style:none;display:grid}.netproof-list code{font-size:12px}.install{border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}.install strong{color:var(--ink);display:block}.engine{gap:0;display:grid}.engine p{color:var(--ink-2);border-bottom:1px solid var(--line);margin:0;padding:16px 0}.engine p:first-child{color:var(--ink);padding-top:0;font-size:17.5px}.engine strong{color:var(--ink)}.prose-wide{max-width:72ch}.prose-wide p{color:var(--ink-2);font-size:17.5px}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chips a{border:1px solid var(--line);background:var(--surface);color:var(--ink);transition:border-color .2s var(--ease-out), color .2s var(--ease-out);border-radius:8px;padding:7px 12px;font-size:14px;font-weight:560;text-decoration:none;display:inline-block}.chips a:hover{border-color:var(--accent);color:var(--accent-ink)}.devtools{color:#c9d4cf;font-family:var(--mono);box-shadow:var(--shadow);background:#0f1412;border:1px solid #27302d;border-radius:12px;font-size:12.5px;overflow:hidden}.devtools .tabs{color:#83918b;border-bottom:1px solid #27302d;gap:2px;padding:9px 12px 0;display:flex}.devtools .tabs span{padding:6px 10px}.devtools .tabs .on{color:#eef4f1;border-bottom:2px solid #4fb89f}.devtools .rows{display:grid}.devtools .row{border-bottom:1px solid #1c2421;grid-template-columns:1fr 64px 64px;gap:10px;padding:8px 14px;display:grid}.devtools .row.head{color:#83918b}.devtools .row .ok{color:#5cc48a}.devtools .empty{text-align:center;color:#83918b;padding:30px 14px 32px}.devtools .empty b{color:#eef4f1;font-family:var(--font);letter-spacing:-.04em;margin-bottom:8px;font-size:40px;font-weight:850;font-stretch:118%;line-height:1;display:block}.devtools .empty b i{color:#5cc48a;font-style:normal}.devtools .drop{color:#a9d8c7;background:#13201c;border-bottom:1px solid #1c2421;padding:9px 14px}@media (prefers-reduced-motion:no-preference){.hero .devtools .row:not(.head),.hero .devtools .drop,.hero .devtools .empty{animation:np-in .6s var(--ease-out) both}.hero .devtools .row:nth-child(2){animation-delay:.15s}.hero .devtools .row:nth-child(3){animation-delay:.3s}.hero .devtools .row:nth-child(4){animation-delay:.45s}.hero .devtools .drop{animation-delay:.9s}.hero .devtools .empty{animation:np-land .9s var(--ease-out) 1.25s both}}@keyframes np-in{0%{opacity:.001;transform:translateY(6px)}}@keyframes np-land{0%{opacity:.001;filter:blur(4px);transform:scale(.96)}}@media (max-width:720px){.devtools .row{grid-template-columns:1fr 56px}.devtools .row :nth-child(3),.devtools .tabs span:not(.on):nth-child(n+3){display:none}.site-header .wrap{gap:10px}.nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav{flex:1;min-width:0}.search-trigger{order:3}.search-dialog{border:0;border-radius:0;width:100vw;height:100dvh;max-height:none;margin:0}.search-bar{padding-left:16px}.search-bar input{padding:15px 0;font-size:17px}.nav a{white-space:nowrap;padding:7px 9px;font-size:14px}.tool-hero{padding-top:30px}.tool-panel{padding:10px}#tool[data-count]:not([data-count="0"]) .run-dock{margin-inline:-10px;padding-inline:18px}#tool[data-count]:not([data-count="0"]) .run-row{flex-wrap:nowrap;padding-top:12px}#tool[data-count]:not([data-count="0"]) .run-row .btn-lg{flex:1;width:auto}#tool[data-count]:not([data-count="0"]) .run-row .btn-ghost{flex:none}#tool.is-busy[data-count] .run-row{flex-wrap:wrap}.btn-lg{justify-content:center;width:100%}.run-row .btn-ghost{flex:1;justify-content:center}.hero-actions .btn-lg{width:auto}}.reorder-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.reorder-cell{cursor:grab;touch-action:manipulation;position:relative}.reorder-cell:active{cursor:grabbing}.reorder-cell.is-dragging{opacity:.4}.reorder-cell.is-target{outline:2px solid var(--accent);outline-offset:2px}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/caveat-500.woff2)format("woff2")}.sign-panel{gap:18px;display:grid}.sign-maker{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);gap:12px;padding:14px;display:grid}.sig-pad{aspect-ratio:3;border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;max-width:600px;height:auto;box-shadow:var(--shadow);touch-action:none;cursor:crosshair;background:#fdfdfa linear-gradient(#0000 calc(74% - 1px),#d8d4c4 calc(74% - 1px) 74%,#0000 74%);display:block}.sig-text{flex:1;min-width:180px}.sig-preview{color:#1b1f23;border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-height:64px;box-shadow:var(--shadow);white-space:nowrap;background:#fdfdfa;align-items:center;margin-top:10px;padding:6px 14px;display:flex;overflow:hidden}.sign-actions{gap:8px}.pdf-stage-wrap{gap:10px;display:grid}.pager{gap:10px}.pdf-stage{max-width:100%;box-shadow:var(--shadow);border:1px solid var(--line);-webkit-user-select:none;user-select:none;background:#fff;line-height:0;display:inline-block;position:relative}.pdf-stage canvas{max-width:100%;display:block}.stamp-layer{position:absolute;inset:0}.stamp{cursor:move;touch-action:none;box-sizing:border-box;border:1px dashed #0000;position:absolute}.stamp img{pointer-events:none;width:100%;height:100%;display:block}.stamp:hover,.stamp:focus-visible,.stamp.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);outline:none}.stamp-remove{border:1px solid var(--line-strong);background:var(--surface);width:24px;height:24px;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:none;position:absolute;top:-12px;right:-12px}.stamp-handle{background:var(--accent);border:2px solid var(--surface);cursor:nwse-resize;touch-action:none;border-radius:3px;width:14px;height:14px;display:none;position:absolute;bottom:-7px;right:-7px}.stamp:hover .stamp-remove,.stamp:focus-visible .stamp-remove,.stamp.is-active .stamp-remove,.stamp:hover .stamp-handle,.stamp:focus-visible .stamp-handle,.stamp.is-active .stamp-handle{display:flex}@media (pointer:coarse){.stamp-remove,.stamp-handle{display:flex}.stamp-handle{width:22px;height:22px;bottom:-11px;right:-11px}}.number-preview{justify-content:center;display:flex}.number-thumb{width:260px}.number-page{line-height:0;position:relative}.number-page img{width:auto;max-height:300px;box-shadow:0 1px 3px #00000026}.number-sample{--m:12px;white-space:nowrap;pointer-events:none;font-size:9px;line-height:1;position:absolute}.number-sample.pos-bottom-center{bottom:var(--m);left:50%;transform:translate(-50%)}.number-sample.pos-bottom-left{bottom:var(--m);left:var(--m)}.number-sample.pos-bottom-right{bottom:var(--m);right:var(--m)}.number-sample.pos-top-center{top:var(--m);left:50%;transform:translate(-50%)}.number-sample.pos-top-left{top:var(--m);left:var(--m)}.number-sample.pos-top-right{top:var(--m);right:var(--m)}.page{padding-top:56px}.guide{padding-top:48px}.guide .crumbs{color:var(--muted);margin-bottom:18px;font-size:14px}.guide .crumbs a{color:inherit}.guide h1,.page>h1{font-size:clamp(36px,5.4vw,60px)}.guide .dek,.page.prose>h1+p{color:var(--ink-2);max-width:58ch;margin:16px 0 8px;font-size:clamp(18px,1.8vw,21px);line-height:1.5}.page.prose>h1+p{border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:28px}.guide .meta{margin-bottom:28px}.guide .prose h2,.page.prose h2{margin-top:44px;margin-bottom:12px;font-size:clamp(22px,2.6vw,28px)}.prose ul{padding-left:0;list-style:none}.prose li{margin-bottom:10px;padding-left:22px;position:relative}.prose li:before{content:"";background:var(--accent);border-radius:2px;width:7px;height:7px;position:absolute;top:.62em;left:2px}.prose strong{color:var(--ink)}.guide .prose p+ul{margin-top:-4px}.guide .prose .faq{margin-top:8px}.guide .prose .faq p{padding-left:0}.guide-cta{background:var(--field);color:var(--on-field);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin:8px 0 12px;padding:22px 24px;display:flex}.guide-cta div{flex:320px;gap:4px;display:grid}.guide-cta strong{letter-spacing:-.01em;font-size:18px;font-stretch:108%}.guide-cta .muted{color:var(--on-field-2)}.guide-cta :focus-visible{outline-color:var(--on-field)}.guides-index .dek{max-width:62ch;margin-bottom:36px}.guide-list{border-top:1px solid var(--line);column-gap:40px;margin:0;padding:0;list-style:none;display:grid}.guide-list li{border-bottom:1px solid var(--line);gap:3px;padding:16px 0;display:grid}.guide-list a{color:var(--ink);font-size:17px;font-weight:680;text-decoration:none}.guide-list a:hover{color:var(--accent-ink);text-decoration:underline}.guide-list span{font-size:14.5px}.guide-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}
