@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.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}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f3ec;--bg-band:#efeadf;--bg-deep:#191713;--surface:#fffdf8;--surface-2:#faf6ee;--surface-3:#f1ebdf;--field:#fffefb;--border:#e2dbcc;--border-strong:#c9bfab;--divider:#e9e3d6;--ink:#191713;--ink-2:#48433a;--ink-3:#686256;--ink-on-deep:#f4f0e7;--ink-on-deep-2:#c7c0b1;--primary:#191713;--primary-hover:#000;--on-primary:#fffdf8;--link:#2440c2;--focus:#2f5bea;--mark:#ffe48a;--highlight:#fff2bf;--success:#1c7442;--success-soft:#e3f3e8;--warning:#8a5a00;--warning-soft:#fcf1d6;--danger:#b4262a;--danger-soft:#fbe8e6;--info:#2d4f86;--info-soft:#e7eef8;--cat-text:#6a3fd2;--cat-text-ink:#5a2fc2;--cat-text-tint:#efe8fb;--cat-pdf:#c8312e;--cat-pdf-ink:#a8231f;--cat-pdf-tint:#fbe6e2;--cat-documents:#1f7a4d;--cat-documents-ink:#186640;--cat-documents-tint:#e1f1e6;--cat-images:#1f63c9;--cat-images-ink:#1a54ab;--cat-images-tint:#e2ecfa;--cat-data:#c25a12;--cat-data-ink:#a24a0d;--cat-data-tint:#fbe9d9;--cat-converters:#0f7684;--cat-converters-ink:#0b6470;--cat-converters-tint:#ddf0f1;--cat-archives:#8a5a2b;--cat-archives-ink:#744a21;--cat-archives-tint:#f2e8db;--cat-utilities:#d9a514;--cat-utilities-ink:#876300;--cat-utilities-tint:#fbf0cc;--shadow-1:0 1px 2px #1917130f;--shadow-2:0 1px 2px #1917130d, 0 10px 24px -12px #1917132e;--shadow-3:0 2px 6px #1917130f, 0 28px 56px -20px #1917134d;--overlay:#1917136b;--header-bg:#f6f3ece6;--font-sans:"Figtree Variable", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--font-mono:ui-monospace, "SF Mono", SFMono-Regular, "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, "Liberation Mono", monospace;--fs-hero:clamp(2.125rem, 1.4rem + 3.1vw, 4.25rem);--fs-h1:clamp(2rem, 1.55rem + 1.9vw, 3.25rem);--fs-h2:clamp(1.5rem, 1.28rem + .95vw, 2.125rem);--fs-h3:clamp(1.375rem, 1.22rem + .6vw, 1.75rem);--fs-tool:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--fs-lead:clamp(1.0625rem, .98rem + .38vw, 1.3125rem);--fs-body:clamp(1rem, .96rem + .18vw, 1.0625rem);--fs-desc:clamp(.96875rem, .94rem + .12vw, 1.03125rem);--fs-nav:.96875rem;--fs-btn:1rem;--fs-small:.875rem;--fs-xs:.8125rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--section-y:clamp(56px, 2.5rem + 3vw, 104px);--radius-sm:8px;--radius:12px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--gutter:clamp(16px, 4vw, 56px);--content-max:1520px;--wide-max:1840px;--measure:46rem;--header-h:72px;--control-h:44px;--ease:cubic-bezier(.2, .7, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.42s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12110f;--bg-band:#171613;--bg-deep:#0c0b0a;--surface:#1b1a17;--surface-2:#211f1b;--surface-3:#2a2823;--field:#161512;--border:#302d27;--border-strong:#4a453c;--divider:#2a2722;--ink:#f2eee6;--ink-2:#c9c2b4;--ink-3:#a19a8b;--ink-on-deep:#f2eee6;--ink-on-deep-2:#b8b1a2;--primary:#f2eee6;--primary-hover:#fff;--on-primary:#12110f;--link:#a7b8ff;--focus:#8ea6ff;--mark:#6b5814;--highlight:#3a3214;--success:#63c98d;--success-soft:#63c98d1f;--warning:#e7b950;--warning-soft:#e7b9501f;--danger:#ff8582;--danger-soft:#ff85821f;--info:#a9bfe3;--info-soft:#a9bfe31a;--cat-text:#b195ff;--cat-text-ink:#c3adff;--cat-text-tint:#b195ff24;--cat-pdf:#ff8a7d;--cat-pdf-ink:#ffa79d;--cat-pdf-tint:#ff8a7d21;--cat-documents:#62cf95;--cat-documents-ink:#84dbac;--cat-documents-tint:#62cf9521;--cat-images:#78aefc;--cat-images-ink:#9cc3ff;--cat-images-tint:#78aefc24;--cat-data:#ffa463;--cat-data-ink:#ffbb8b;--cat-data-tint:#ffa46321;--cat-converters:#4fd0db;--cat-converters-ink:#7fdee6;--cat-converters-tint:#4fd0db21;--cat-archives:#d6a675;--cat-archives-ink:#e3bd96;--cat-archives-tint:#d6a67524;--cat-utilities:#f2c94c;--cat-utilities-ink:#f5d67a;--cat-utilities-tint:#f2c94c24;--shadow-1:0 1px 2px #0006;--shadow-2:0 1px 2px #00000059, 0 10px 24px -10px #0009;--shadow-3:0 2px 8px #0006, 0 28px 56px -18px #000000bf;--overlay:#040403a8;--header-bg:#12110fe0}[data-cat=text]{--c:var(--cat-text);--c-ink:var(--cat-text-ink);--c-tint:var(--cat-text-tint)}[data-cat=pdf]{--c:var(--cat-pdf);--c-ink:var(--cat-pdf-ink);--c-tint:var(--cat-pdf-tint)}[data-cat=documents]{--c:var(--cat-documents);--c-ink:var(--cat-documents-ink);--c-tint:var(--cat-documents-tint)}[data-cat=images]{--c:var(--cat-images);--c-ink:var(--cat-images-ink);--c-tint:var(--cat-images-tint)}[data-cat=data]{--c:var(--cat-data);--c-ink:var(--cat-data-ink);--c-tint:var(--cat-data-tint)}[data-cat=converters]{--c:var(--cat-converters);--c-ink:var(--cat-converters-ink);--c-tint:var(--cat-converters-tint)}[data-cat=archives]{--c:var(--cat-archives);--c-ink:var(--cat-archives-ink);--c-tint:var(--cat-archives-tint)}[data-cat=utilities]{--c:var(--cat-utilities);--c-ink:var(--cat-utilities-ink);--c-tint:var(--cat-utilities-tint)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px);background:var(--bg)}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"ss01" on;margin:0;line-height:1.6}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}h1,h2,h3,h4{letter-spacing:-.022em;text-wrap:balance;font-weight:740;line-height:1.12}p{text-wrap:pretty}ul[role=list],ol[role=list]{padding:0;list-style:none}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2.5px solid var(--focus);outline-offset:2px;border-radius:6px}::selection{background:var(--mark);color:var(--ink)}mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 1px}kbd{border:1px solid var(--border-strong);background:var(--surface);min-width:1.6em;height:1.6em;color:var(--ink-2);font-family:var(--font-sans);border-bottom-width:2px;border-radius:6px;justify-content:center;align-items:center;padding:0 .35em;font-size:.75rem;font-weight:650;line-height:1;display:inline-flex}code,pre{font-family:var(--font-mono)}hr{border:0;border-top:1px solid var(--divider);margin:var(--space-6) 0}.container{width:min(calc(100% - var(--gutter) * 2), var(--content-max));margin-inline:auto}.container-wide{width:min(calc(100% - var(--gutter) * 2), var(--wide-max));margin-inline:auto}#root{min-height:100vh;flex-direction:column;min-height:100dvh;display:flex}#root>main{flex:1 0 auto}main:focus{outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:200;border-radius:var(--radius-sm);background:var(--primary);color:var(--on-primary);transition:top var(--dur) var(--ease);padding:12px 18px;font-weight:650;text-decoration:none;position:absolute;top:-80px;left:12px}.skip-link:focus{top:12px}.muted{color:var(--ink-3)}@media (max-width:479px){.hide-xs{display:none}}@media (hover:none),(pointer:coarse){.hide-touch{display:none!important}}@media (max-width:899px){.hide-mobile{display:none!important}}@media (min-width:900px){.only-mobile{display:none!important}}.arrow-link{color:var(--ink);font-size:var(--fs-desc);white-space:nowrap;align-items:center;gap:6px;font-weight:650;text-decoration:none;display:inline-flex}.arrow-link svg{transition:transform var(--dur) var(--ease)}.arrow-link:hover{text-underline-offset:4px;text-decoration:underline}.arrow-link:hover svg{transform:translate(3px)}.card-link,.tool-card-link,.task-link{color:inherit;text-decoration:none}.card-link:after,.tool-card-link:after,.task-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.card-link:focus-visible,.tool-card-link:focus-visible,.task-link:focus-visible{outline:none}.card-link:focus-visible:after,.tool-card-link:focus-visible:after,.task-link:focus-visible:after{outline:2.5px solid var(--focus);outline-offset:2px}.btn{--btn-bg:var(--surface);--btn-fg:var(--ink);--btn-border:var(--border-strong);min-height:var(--control-h);border:1px solid var(--btn-border);border-radius:var(--radius);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-btn);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), box-shadow var(--dur) var(--ease);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.btn:hover:not(:disabled){--btn-bg:var(--surface-3);text-decoration:none}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45}.btn svg{flex:none}.btn-primary,.btn-cat{--btn-bg:var(--primary);--btn-fg:var(--on-primary);--btn-border:var(--primary)}.btn-primary:hover:not(:disabled),.btn-cat:hover:not(:disabled){--btn-bg:var(--primary-hover);--btn-border:var(--primary-hover);box-shadow:var(--shadow-2)}.btn-secondary{--btn-bg:var(--surface);--btn-border:var(--border-strong)}.btn-ghost{--btn-bg:transparent;--btn-border:transparent;--btn-fg:var(--ink-2)}.btn-ghost:hover:not(:disabled){--btn-bg:var(--surface-3);--btn-fg:var(--ink)}.btn-on-deep{--btn-bg:transparent;--btn-fg:var(--ink-on-deep);--btn-border:#ffffff47}.btn-on-deep:hover:not(:disabled){--btn-bg:#ffffff1a}.btn-lg{border-radius:14px;min-height:54px;padding:0 24px;font-size:1.0625rem}.btn-sm{border-radius:10px;min-height:38px;padding:0 12px;font-size:.9375rem}@media (pointer:coarse){.btn-sm{min-height:44px}}.icon-btn{width:44px;height:44px;color:var(--ink-2);transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);border-radius:12px;flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.icon-btn:active:not(:disabled){transform:scale(.94)}.icon-btn:disabled{opacity:.35}.spinner{border:2.5px solid color-mix(in srgb, currentColor 25%, transparent);border-top-color:currentColor;border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.progress{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;position:relative;overflow:hidden}.progress>span{border-radius:inherit;background:var(--c,var(--primary));transition:width var(--dur) var(--ease);position:absolute;inset:0 auto 0 0}.progress--indeterminate>span{width:35%;animation:indeterminate 1.3s var(--ease) infinite}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(300%)}}.input{width:100%;min-height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--field);color:var(--ink);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);padding:9px 13px;font-size:1rem}.input-lg{min-height:52px;font-size:1.0625rem}.input:hover{border-color:var(--ink-3)}.input:focus,.field:focus{border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 22%, transparent);outline:none}.input-mono{font-family:var(--font-mono)}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23686256' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:38px}@media (pointer:coarse){.input,textarea,select{font-size:16px!important}}.page-enter{animation:page-in .26s var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}.cursor-ring{z-index:9999;border:1.5px solid color-mix(in srgb, var(--cursor-c,var(--ink)) 35%, transparent);pointer-events:none;opacity:0;width:34px;height:34px;transition:opacity var(--dur) var(--ease), width var(--dur) var(--ease), height var(--dur) var(--ease), margin var(--dur) var(--ease), border-color var(--dur) var(--ease);will-change:transform;border-radius:50%;margin:-17px 0 0 -17px;position:fixed;top:0;left:0}.cursor-dot{display:none}.cursor-visible .cursor-ring{opacity:1}[data-cursor=link] .cursor-ring,[data-cursor=card] .cursor-ring{border-color:color-mix(in srgb, var(--cursor-c,var(--ink)) 55%, transparent);width:46px;height:46px;margin:-23px 0 0 -23px}[data-cursor=text] .cursor-ring{opacity:0}.cursor-down .cursor-ring{width:28px;height:28px;margin:-14px 0 0 -14px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.site-header{z-index:50;background:var(--header-bg);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);transition:border-color var(--dur) var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--border)}.site-header-inner{height:var(--header-h);align-items:center;gap:clamp(12px,2vw,32px);display:flex}.logo{border-radius:8px;flex:none;align-items:center;height:44px;padding:4px 2px;display:inline-flex}.logo-img{width:auto;height:30px}.logo-img--light-ink,:root[data-theme=dark] .logo-img--dark-ink,.logo--on-dark .logo-img--dark-ink{display:none}:root[data-theme=dark] .logo-img--light-ink,.logo--on-dark .logo-img--light-ink{display:block}@media (max-width:479px){.logo-img{height:26px}}.main-nav{align-items:center;gap:2px;display:flex}.nav-link{min-height:44px;color:var(--ink-2);font-size:var(--fs-nav);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-radius:10px;align-items:center;gap:5px;padding:0 12px;font-weight:620;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-menu.is-open .nav-trigger{background:var(--surface-3);color:var(--ink);text-decoration:none}.nav-link.active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink);border-radius:10px 10px 0 0}.nav-chevron{transition:transform var(--dur) var(--ease)}.nav-menu.is-open .nav-chevron{transform:rotate(180deg)}.nav-menu{position:relative}.nav-panel{z-index:60;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:300px;box-shadow:var(--shadow-3);animation:pop-in .16s var(--ease-out);padding:12px;position:absolute;top:calc(100% + 10px);left:0}.nav-panel--mega{width:min(960px,100vw - 32px);padding:16px}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}.mega-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.mega-item{color:var(--ink);transition:background-color var(--dur-fast) var(--ease);border-radius:14px;align-items:flex-start;gap:14px;padding:14px;text-decoration:none;display:flex}.mega-item:hover{background:var(--surface-2)}.mega-item-text{gap:2px;display:grid}.mega-item-name{font-size:1.0625rem;font-weight:700}.mega-item-count{color:var(--ink-3);font-size:var(--fs-xs);margin-left:4px;font-weight:600}.mega-item-desc{color:var(--ink-2);font-size:.9375rem;line-height:1.45}.mega-foot{border-top:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-top:8px;padding:16px 14px 6px;display:flex}.mega-popular{flex-wrap:wrap;gap:4px 16px;font-size:.9375rem;display:flex}.mega-popular-label{color:var(--ink-3);font-weight:600}.mega-popular a{color:var(--ink-2);text-decoration:none}.mega-popular a:hover{color:var(--ink);text-decoration:underline}.header-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.header-search{border:1px solid var(--border-strong);background:var(--surface);min-width:220px;height:44px;color:var(--ink-3);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:12px;align-items:center;gap:10px;padding:0 10px 0 14px;font-size:.96875rem;display:inline-flex}.header-search:hover{border-color:var(--ink-3);box-shadow:var(--shadow-1)}.header-search-text{text-align:left;flex:1}.header-search-keys{gap:3px;display:inline-flex}.header-menu-btn{display:none}@media (max-width:1099px){.nav-link--wide{display:none}}@media (max-width:1023px){.main-nav{display:none}.header-menu-btn{display:inline-grid}}@media (max-width:639px){.header-search{width:44px;min-width:0;color:var(--ink-2);background:0 0;border-color:#0000;justify-content:center;padding:0}.header-search-text,.header-search-keys{display:none}}.theme-menu{position:relative}.popover{z-index:60;border:1px solid var(--border);background:var(--surface);min-width:200px;box-shadow:var(--shadow-3);border-radius:14px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.popover[hidden]{display:none}.popover-label{color:var(--ink-3);font-size:var(--fs-xs);padding:6px 10px 8px;font-weight:650}.popover-item{width:100%;min-height:44px;color:var(--ink);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-size:.96875rem;display:flex}.popover-item:hover{background:var(--surface-2)}.popover-item[aria-pressed=true]{font-weight:650}.popover-check{margin-left:auto}.dialog{color:var(--ink);background:0 0;border:0;max-width:none;max-height:none;padding:0}.dialog::backdrop{background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}:root.has-dialog{overflow:hidden}.dialog-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-3)}.dialog-header{justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 4px 20px;display:flex}.dialog-title{font-size:1.125rem;font-weight:720}.drawer[open]{width:min(420px,100%);height:100%;animation:drawer-in .22s var(--ease-out);margin:0;position:fixed;inset:0 0 0 auto}.drawer .dialog-panel{border-width:0 0 0 1px;border-radius:0;height:100%;overflow-y:auto}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}}.drawer-body{gap:24px;padding:8px 20px 32px;display:grid}.drawer-search{border:1px solid var(--border-strong);background:var(--field);min-height:52px;color:var(--ink-3);text-align:left;border-radius:14px;align-items:center;gap:10px;padding:0 16px;font-size:1rem;display:flex}.drawer-section{border:0;gap:4px;margin:0;padding:0;display:grid}.drawer-label{color:var(--ink-3);font-size:var(--fs-small);margin-bottom:6px;padding:0;font-weight:650}.drawer-cats{gap:2px;margin:0 0 12px;display:grid}.drawer-cat{min-height:52px;color:var(--ink);border-radius:12px;align-items:center;gap:12px;padding:4px 8px;font-size:1.0625rem;font-weight:620;text-decoration:none;display:flex}.drawer-cat:hover{background:var(--surface-2)}.drawer-cat-count{color:var(--ink-3);font-size:var(--fs-small);margin-left:auto}.drawer-link{min-height:48px;color:var(--ink);border-radius:10px;align-items:center;padding:0 8px;font-size:1.0625rem;text-decoration:none;display:flex}.drawer-link:hover{background:var(--surface-2)}.search-dialog[open]{width:min(720px,100% - 24px);animation:pop-in .16s var(--ease-out);margin:0;position:fixed;top:clamp(12px,10vh,120px);left:50%;transform:translate(-50%)}.search-panel{flex-direction:column;max-height:min(680px,100dvh - 2*clamp(12px,10vh,120px));display:flex}.search-field{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:10px 12px 10px 20px;display:flex}.search-field-icon{color:var(--ink-3);flex:none}.search-input{background:0 0;border:0;flex:1;min-width:0;min-height:48px;font-size:1.1875rem}.search-input:focus{outline:none}.search-input::-webkit-search-cancel-button{display:none}.search-esc{border-radius:10px;place-items:center;min-width:44px;min-height:44px;display:inline-grid}.search-results{overscroll-behavior:contain;flex:1;padding:8px;overflow-y:auto}.search-group+.search-group{margin-top:6px}.search-group-head{color:var(--ink-3);font-size:var(--fs-small);padding:10px 12px 6px;font-weight:650}.search-option{cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:10px 12px;display:flex}.search-option[aria-selected=true]{background:var(--surface-3)}.search-option-text{flex:1;gap:1px;min-width:0;display:grid}.search-option-name{font-size:1.0625rem;font-weight:650}.search-option-desc{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;overflow:hidden}.search-option-cat{color:var(--ink-3);font-size:var(--fs-small);flex:none}@media (max-width:559px){.search-option-cat{display:none}}.search-empty{color:var(--ink-3);text-align:center;justify-items:center;gap:8px;padding:40px 16px;display:grid}.search-empty-title{color:var(--ink);font-size:1.125rem;font-weight:650}.chip-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px;display:flex}.chip{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface);min-height:40px;color:var(--ink);padding:0 14px;font-size:.9375rem}.chip:hover{background:var(--surface-3)}.search-foot{border-top:1px solid var(--divider);color:var(--ink-3);font-size:var(--fs-small);flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px 20px;display:flex}.search-foot-hint{align-items:center;gap:4px;display:inline-flex}.search-foot-shortcut{margin-left:auto}.search-clear{min-height:36px;color:var(--ink-2);font-size:var(--fs-small);text-decoration:underline}@media (pointer:coarse){.search-foot-hint{display:none}}.site-footer{margin-top:var(--section-y);background:var(--bg-deep);color:var(--ink-on-deep);padding:clamp(48px,6vw,80px) 0 32px}.site-footer a{color:var(--ink-on-deep)}.footer-grid{grid-template-columns:minmax(0,1.7fr) repeat(4,minmax(0,1fr));gap:40px 32px;display:grid}.footer-brand .logo-img{height:32px}.footer-tagline{margin-top:18px;font-size:1.125rem;font-weight:650}.footer-about{max-width:34rem;color:var(--ink-on-deep-2);margin-top:8px;font-size:.96875rem}.footer-contact{color:var(--ink-on-deep-2);gap:6px;margin-top:22px;font-size:.96875rem;display:grid}.footer-contact strong{color:var(--ink-on-deep);font-weight:650}.footer-heading{color:var(--ink-on-deep);letter-spacing:0;margin-bottom:14px;font-size:1rem;font-weight:700}.footer-col ul{gap:4px;display:grid}.footer-col a{min-height:32px;color:var(--ink-on-deep-2);align-items:center;font-size:.96875rem;text-decoration:none;display:inline-flex}.footer-col a:hover{color:var(--ink-on-deep);text-decoration:underline}.footer-bottom{color:var(--ink-on-deep-2);font-size:var(--fs-small);border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:48px;padding-top:24px;display:flex}.footer-legal{flex-wrap:wrap;align-items:center;gap:4px 0;display:flex}.footer-credit{color:var(--ink-on-deep);font-weight:600}.footer-credit:before{content:"·";color:var(--ink-on-deep-2);margin:0 10px;font-weight:400}.footer-credit a{text-underline-offset:3px;text-decoration:underline}@media (max-width:479px){.footer-legal{flex-direction:column;align-items:flex-start}.footer-credit:before{content:none}}.footer-toggle{min-height:40px;color:var(--ink-on-deep-2);font-size:var(--fs-small);border:1px solid #fff3;border-radius:10px;padding:0 12px}.footer-toggle:hover{color:var(--ink-on-deep)}@media (hover:none),(pointer:coarse){.cursor-toggle{display:none}}@media (max-width:1099px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}}@media (max-width:479px){.footer-grid{grid-template-columns:minmax(0,1fr)}}.toasts{z-index:300;pointer-events:none;gap:10px;width:min(420px,100% - 32px);display:grid;position:fixed;bottom:16px;right:16px}.toast{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-3);pointer-events:auto;animation:pop-in .2s var(--ease-out);border-radius:14px;align-items:flex-start;gap:12px;padding:14px 14px 14px 16px;display:flex}.toast-icon{flex:none;margin-top:2px}.toast--success .toast-icon{color:var(--success)}.toast--error .toast-icon{color:var(--danger)}.toast-body{flex:1;min-width:0}.toast-title{font-weight:650}.toast-text{color:var(--ink-2);margin-top:2px;font-size:.9375rem}.toast-action{min-height:36px;color:var(--ink);margin-top:6px;font-weight:650;text-decoration:underline}.toast-close{width:36px;height:36px;color:var(--ink-3);border-radius:8px;place-items:center;display:inline-grid}.page-loading{padding:32px 0;animation:.3s .25s both fade-in}@keyframes fade-in{0%{opacity:0}}.page-loading-head .container,.page-loading-body{gap:14px;display:grid}.page-loading-body{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));margin-top:32px}.skel{background:linear-gradient(90deg, var(--surface-3), var(--surface-2), var(--surface-3));background-size:200% 100%;border-radius:10px;animation:1.4s linear infinite shimmer;display:block}@keyframes shimmer{to{background-position:-200% 0}}.skel--crumb{width:160px;height:16px}.skel--title{width:min(520px,80%);height:44px}.skel--line{width:min(680px,90%);height:20px}.skel--panel{border-radius:var(--radius-lg);height:280px}.page-loading-slow{justify-items:start;gap:12px;margin-top:24px;display:grid}.page-error{justify-items:start;gap:16px;padding:64px 0;display:grid}.page-error-actions{flex-wrap:wrap;gap:10px;display:flex}.consent{z-index:250;border-top:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-3);padding:16px 0;position:fixed;inset:auto 0 0}.consent-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;display:flex}.consent-title{font-size:1.0625rem}.consent p{max-width:60rem;color:var(--ink-2);font-size:.9375rem}.consent-actions{gap:10px;display:flex}.ad-wrap{margin-block:clamp(24px,3vw,40px)}.ad-slot{min-height:calc(var(--ad-h-mobile) + 22px);border-block:1px solid var(--divider);gap:6px;padding:8px 0;display:grid}@media (min-width:768px){.ad-slot{min-height:calc(var(--ad-h-desktop) + 22px)}}.ad-label{color:var(--ink-3);font-size:var(--fs-xs)}.ad-preview{border:1px dashed var(--border-strong);min-height:30px;color:var(--ink-3);font-size:var(--fs-xs);border-radius:8px;place-items:center;margin-block:16px;display:grid}.tool-icon{background:var(--c-tint,var(--surface-3));width:46px;height:46px;color:var(--c-ink,var(--ink));border-radius:13px;flex:none;place-items:center;display:inline-grid}.tool-icon--sm{border-radius:9px;width:32px;height:32px}.tool-icon--lg{border-radius:15px;width:56px;height:56px}.tool-icon--xl{border-radius:18px;width:68px;height:68px}.section{padding-block:var(--section-y)}.band{background:var(--bg-band);border-block:1px solid var(--divider)}.section-head{gap:8px;margin-bottom:clamp(24px,3vw,36px);display:grid}.section-head--row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 32px;display:flex}.section-head--row>div{gap:8px;display:grid}.section-title{font-size:var(--fs-h2);letter-spacing:-.025em;font-weight:760}.section-title--sm{font-size:clamp(1.375rem,1.24rem + .5vw,1.75rem)}.section-sub{max-width:44rem;color:var(--ink-2);font-size:var(--fs-desc)}.tool-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:16px;display:grid}.tool-grid>li{display:flex}.tool-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:100%;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);grid-template-columns:auto minmax(0,1fr);align-content:start;gap:16px;padding:20px 20px 22px;display:grid;position:relative}.tool-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2);transform:translateY(-2px)}.tool-card:has(.tool-card-link:focus-visible){outline:2.5px solid var(--focus);outline-offset:2px}.tool-card-body{gap:6px;padding-right:28px;display:grid}.tool-card-title{font-size:var(--fs-tool);letter-spacing:-.012em;font-weight:700;line-height:1.25}.tool-card-desc{color:var(--ink-2);font-size:var(--fs-desc);line-height:1.5}.tool-card-cat{color:var(--c-ink);font-size:var(--fs-small);margin-top:2px;font-weight:620}.tool-card-fav{z-index:1;position:absolute;top:10px;right:10px}.fav-btn{color:var(--ink-3);transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);justify-content:center;align-items:center;gap:8px;display:inline-flex}.fav-btn--icon{border-radius:10px;width:40px;height:40px}.fav-btn--icon:hover{background:var(--surface-3);color:var(--ink)}.fav-btn.is-active{color:var(--cat-utilities)}.fav-btn:active{transform:scale(.9)}.fav-btn--labelled{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--ink-2);border-radius:12px;padding:0 16px;font-size:.9375rem;font-weight:620}.fav-btn--labelled:hover{color:var(--ink);background:var(--surface-3)}.pill-list{flex-wrap:wrap;gap:10px;display:flex}.tool-pill{border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--ink);transition:border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);border-radius:14px;align-items:center;gap:10px;padding:6px 16px 6px 8px;font-size:1rem;font-weight:620;text-decoration:none;display:inline-flex}.tool-pill:hover{border-color:var(--border-strong);background:var(--surface-2)}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.filter-chip{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--ink-2);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-radius:12px;align-items:center;gap:8px;padding:0 16px;font-size:.96875rem;font-weight:600;display:inline-flex}.filter-chip:hover{color:var(--ink);border-color:var(--ink-3)}.filter-chip[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.cat-dot{background:var(--c);border-radius:50%;width:9px;height:9px}.filter-chip[aria-pressed=true] .cat-dot{box-shadow:0 0 0 2px var(--on-primary)}@media (max-width:767px){.filter-chips{min-width:0;margin-inline:calc(var(--gutter) * -1);padding:2px var(--gutter) 6px;scrollbar-width:thin;scroll-padding-inline:var(--gutter);flex-wrap:nowrap;flex:100%;overflow-x:auto}}.segmented{border:1px solid var(--border);background:var(--surface-2);border-radius:13px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segment{min-height:38px;color:var(--ink-2);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-radius:9px;justify-content:center;align-items:center;padding:0 14px;font-size:.9375rem;font-weight:620;display:inline-flex;position:relative}.segment:hover{color:var(--ink)}.segment.is-checked{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1), 0 0 0 1px var(--border)}.segment:has(input:focus-visible){outline:2.5px solid var(--focus);outline-offset:1px}@media (pointer:coarse){.segment{min-height:42px}}.options{gap:18px;display:grid}.options-row{flex-wrap:wrap;align-items:flex-start;gap:18px 24px;display:flex}.opt{border:0;align-content:start;gap:8px;min-width:0;margin:0;padding:0;display:grid}.opt-text{flex:220px}.opt-wide{flex-basis:100%}.opt-number .input{width:140px}.opt-label{color:var(--ink);padding:0;font-size:.96875rem;font-weight:650}.opt-hint{max-width:34rem;color:var(--ink-3);font-size:var(--fs-small);line-height:1.45}.options-checks{gap:12px 28px}.check{cursor:pointer;align-items:flex-start;gap:12px;min-height:32px;display:inline-flex;position:relative}.check-input{opacity:0;width:22px;height:22px;margin:0;position:absolute}.check-box{border:1.5px solid var(--border-strong);background:var(--field);color:#0000;width:22px;height:22px;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-radius:6px;flex:none;place-items:center;margin-top:1px;display:inline-grid}.check-input:checked+.check-box{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.check-input:focus-visible+.check-box{outline:2.5px solid var(--focus);outline-offset:2px}.check-text{gap:2px;display:grid}.check-label{font-size:.96875rem;font-weight:600}.check-hint{color:var(--ink-3);font-size:var(--fs-small)}.color-field{align-items:center;gap:10px;display:inline-flex}.color-input{border:1px solid var(--border-strong);background:var(--field);cursor:pointer;border-radius:10px;width:52px;height:44px;padding:3px}.color-value{color:var(--ink-2);font-family:var(--font-mono);font-size:var(--fs-small)}.inline-note{background:var(--info-soft);color:var(--ink-2);border-radius:10px;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;font-size:.9375rem;line-height:1.45;display:flex}.inline-note svg{flex:none;margin-top:2px}.inline-note--warning{background:var(--warning-soft)}.inline-note--error{background:var(--danger-soft);color:var(--ink)}.inline-note--error svg{color:var(--danger)}.breadcrumbs ol{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 14px;padding:0;font-size:.9375rem;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:4px;display:inline-flex}.breadcrumbs a{min-height:32px;color:var(--ink-2);align-items:center;text-decoration:none;display:inline-flex}.breadcrumbs a:hover{color:var(--ink);text-decoration:underline}.breadcrumbs-sep{color:var(--border-strong)}.faq{gap:18px;display:grid}.faq-list{border-top:1px solid var(--divider)}.faq-item{border-bottom:1px solid var(--divider)}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:14px 4px;font-size:1.0625rem;font-weight:650;line-height:1.4;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-icon{color:var(--ink-3);transition:transform var(--dur) var(--ease);flex:none}.faq-item[open] .faq-icon{transform:rotate(45deg)}.faq-answer{max-width:var(--measure);color:var(--ink-2);font-size:var(--fs-desc);padding:0 4px 20px;line-height:1.65}.faq--compact .section-title{font-size:clamp(1.375rem,1.24rem + .5vw,1.75rem)}.faq-split{grid-template-columns:minmax(0,1fr);gap:28px;display:grid}.faq-split-head{align-content:start;justify-items:start;gap:12px;display:grid}@media (min-width:1024px){.faq-split{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:64px}}.guide-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px;display:grid}.guide-grid--compact{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.guide-card{border:1px solid var(--border);border-top:4px solid var(--c);border-radius:var(--radius-lg);background:var(--surface);transition:box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);align-content:start;gap:10px;padding:24px;display:grid;position:relative}.guide-card:hover{box-shadow:var(--shadow-2);transform:translateY(-2px)}.guide-card-kicker{color:var(--c-ink);font-size:var(--fs-small);font-weight:650}.guide-card-title{font-size:1.1875rem;font-weight:720;line-height:1.3}.guide-card-desc{color:var(--ink-2);font-size:var(--fs-desc)}.guide-card-more{align-items:center;gap:6px;margin-top:4px;font-size:.96875rem;font-weight:650;display:inline-flex}.side-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink-2);font-size:var(--fs-desc);gap:12px;padding:22px;display:grid}.side-card-title{color:var(--ink);align-items:center;gap:10px;font-size:1.0625rem;font-weight:700;display:flex}.side-links{gap:2px;display:grid}.side-links a{min-height:40px;color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.side-links a:hover{text-decoration:underline}.side-count{color:var(--ink-3);font-size:var(--fs-small);margin-left:auto}.empty-state{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--ink-2);text-align:center;justify-items:center;gap:10px;padding:56px 24px;display:grid}.empty-state>svg{color:var(--ink-3)}.empty-state-title{color:var(--ink);font-size:1.25rem;font-weight:700}.empty-state .btn{margin-top:8px}.example{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.example-pane{border:1px solid var(--border);background:var(--surface);border-radius:14px;min-width:0;overflow:hidden}.example-pane figcaption{border-bottom:1px solid var(--divider);color:var(--ink-3);font-size:var(--fs-small);padding:10px 16px;font-weight:650}.example-pane--after figcaption{color:var(--success)}.example-pane pre{white-space:pre;margin:0;padding:14px 16px;font-size:.9375rem;line-height:1.6;overflow-x:auto}.example-arrow{color:var(--ink-3);place-items:center;display:grid}.example-caption{color:var(--ink-3);font-size:var(--fs-small);margin-top:10px}@media (max-width:699px){.example{grid-template-columns:minmax(0,1fr)}.example-arrow{transform:rotate(90deg)}}.steps-list{counter-reset:step;gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps-list li{min-height:34px;font-size:var(--fs-body);counter-increment:step;padding-left:48px;line-height:1.6;position:relative}.steps-list li:before{content:counter(step);background:var(--c-tint,var(--surface-3));width:32px;height:32px;color:var(--c-ink,var(--ink));border-radius:50%;place-items:center;font-size:.9375rem;font-weight:720;display:grid;position:absolute;top:0;left:0}.check-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.check-list li{align-items:flex-start;gap:12px;display:flex}.check-list svg{color:var(--success);flex:none;margin-top:5px}.facts-list{border-top:1px solid var(--divider);gap:0;margin:0;display:grid}.facts-list div{border-bottom:1px solid var(--divider);grid-template-columns:minmax(110px,160px) minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.facts-list dt{color:var(--ink-3);font-weight:650}@media (max-width:479px){.facts-list div{grid-template-columns:minmax(0,1fr);gap:4px}}.hero{border-bottom:1px solid var(--divider);background-image:repeating-linear-gradient(to bottom, transparent 0 35px, color-mix(in srgb, var(--border) 60%, transparent) 35px 36px);padding:clamp(36px,5vw,76px) 0 clamp(40px,4.5vw,64px);position:relative;-webkit-mask-image:none}.hero:after{content:"";background:linear-gradient(to bottom, transparent 20%, var(--bg) 92%);pointer-events:none;position:absolute;inset:0}.hero-inner{z-index:1;grid-template-columns:minmax(0,1fr);gap:40px;display:grid;position:relative}@media (min-width:1100px){.hero-inner{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:center;gap:clamp(48px,5vw,96px)}}.hero-copy{gap:22px;max-width:54rem;display:grid}.hero-title{max-width:15ch;font-size:var(--fs-hero);letter-spacing:-.038em;font-weight:780;line-height:1.02}.hero-lead{max-width:44rem;color:var(--ink-2);font-size:var(--fs-lead);line-height:1.55}.hero-ctas{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}@media (max-width:479px){.hero-ctas .btn{flex:100%}}.hero-search-wrap{gap:12px;display:grid}.hero-search{gap:10px;max-width:46rem;display:grid;position:relative}.hero-search-label{font-size:1.0625rem;font-weight:700}.hero-search-box{border:1.5px solid var(--ink-3);background:var(--field);min-height:64px;box-shadow:var(--shadow-2);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:16px;align-items:center;gap:12px;padding:6px 6px 6px 18px;display:flex}.hero-search-box:focus-within{border-color:var(--focus);box-shadow:var(--shadow-2), 0 0 0 4px color-mix(in srgb, var(--focus) 20%, transparent)}.hero-search-icon{color:var(--ink-3);flex:none}.hero-search-input{background:0 0;border:0;flex:1;min-width:0;min-height:48px;font-size:1.125rem}.hero-search-input:focus{outline:none}.hero-search-input::placeholder{color:var(--ink-3)}.hero-search-input::-webkit-search-cancel-button{display:none}.hero-search-submit{border-radius:12px;min-height:50px}@media (max-width:479px){.hero-search-submit{display:none}}.hero-search-results{z-index:40;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-3);border-radius:16px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0}.hero-search-results[hidden]{display:none}.hero-search-empty{color:var(--ink-2);padding:16px}.hero-examples{color:var(--ink-3);flex-wrap:wrap;align-items:baseline;gap:6px 16px;font-size:.96875rem;display:flex}.hero-examples-label{font-weight:650}.hero-example{min-height:32px;color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:5px;align-items:center;text-decoration-thickness:1.5px;display:inline-flex}.hero-example:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.hero-index{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-2);padding:22px}.hero-index-title{color:var(--ink-3);margin:0 6px 10px;font-size:.9375rem;font-weight:650}.hero-index ul{gap:2px;display:grid}.hero-index-link{min-height:48px;color:var(--ink);transition:background-color var(--dur-fast) var(--ease);border-radius:12px;align-items:center;gap:12px;padding:4px 8px;text-decoration:none;display:flex}.hero-index-link:hover{background:var(--surface-2)}.hero-index-name{font-size:1.03125rem;font-weight:650}.hero-index-count{color:var(--ink-3);font-size:var(--fs-small);font-variant-numeric:tabular-nums;margin-left:auto}@media (max-width:1099px){.hero-index ul{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}}.your-tools{padding-block:clamp(32px,4vw,56px) 0}.your-tools-row{gap:12px;display:grid}.your-tools-row+.your-tools-row{margin-top:24px}.your-tools-label{color:var(--ink-2);letter-spacing:0;align-items:center;gap:8px;font-size:1rem;font-weight:650;display:inline-flex}.task-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;display:grid}@media (min-width:1024px){.task-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.task-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);transition:box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease), border-color var(--dur) var(--ease);align-content:start;gap:12px;padding:clamp(22px,2.4vw,30px);display:grid;position:relative}.task-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-2);transform:translateY(-2px)}.task-title{font-size:var(--fs-h3);margin-top:6px;font-weight:740}.task-body{color:var(--ink-2);font-size:var(--fs-desc)}.task-examples{z-index:1;flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:.9375rem;display:flex;position:relative}.task-examples a{min-height:32px;color:var(--c-ink);align-items:center;font-weight:620;text-decoration:none;display:inline-flex}.task-examples a:hover{text-decoration:underline}.category-list{border-top:1px solid var(--divider);grid-template-columns:minmax(0,1fr);column-gap:48px;display:grid}@media (min-width:1024px){.category-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.category-row{border-bottom:1px solid var(--divider);transition:background-color var(--dur) var(--ease);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 8px;display:grid;position:relative}.category-row:hover{background:var(--surface)}.category-row-text{gap:4px;display:grid}.category-row-title{font-size:var(--fs-h3);font-weight:740}.category-row-desc{color:var(--ink-2);font-size:var(--fs-desc)}.category-row-count{color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;font-size:.9375rem;font-weight:620;display:inline-flex}.category-row:hover .category-row-count{color:var(--ink)}@media (max-width:559px){.category-row{grid-template-columns:auto minmax(0,1fr)}.category-row-count{grid-column:2}.category-row .tool-icon--xl{width:52px;height:52px}}.converter-band{background:var(--bg-deep);color:var(--ink-on-deep)}.converter-band .section-sub{color:var(--ink-on-deep-2)}.converter-groups{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:32px;display:grid}.converter-group{align-content:start;gap:14px;display:grid}.converter-group-title{color:var(--ink-on-deep);letter-spacing:0;align-items:center;gap:10px;font-size:1.0625rem;font-weight:720;display:flex}.converter-group-title:before{content:"";background:var(--c);border-radius:3px;width:10px;height:10px}.converter-chips{flex-wrap:wrap;gap:8px;display:flex}.converter-chip{min-height:44px;color:var(--ink-on-deep);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border:1px solid #ffffff2e;border-radius:12px;align-items:center;padding:0 14px;font-size:.96875rem;font-weight:620;text-decoration:none;display:inline-flex}.converter-chip:hover{background:#ffffff14;border-color:#ffffff73}:root[data-theme=dark] .converter-band{border-block:1px solid var(--border);background:#1c1a17}.page-header{border-bottom:1px solid var(--divider);padding:clamp(24px,3.5vw,48px) 0 clamp(28px,3.5vw,44px)}.page-title{font-size:var(--fs-h1);letter-spacing:-.032em;font-weight:780;line-height:1.06}.page-lead{max-width:48rem;color:var(--ink-2);font-size:var(--fs-lead);margin-top:14px;line-height:1.55}.category-hero{align-items:flex-start;gap:22px;display:flex}.category-hero-count{color:var(--c-ink);margin-top:12px;font-size:.96875rem;font-weight:650}@media (max-width:559px){.category-hero{flex-direction:column;gap:16px}}.directory{padding-top:clamp(24px,3vw,36px)}.directory-controls{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:18px;display:grid}.filter-search{border:1.5px solid var(--border-strong);background:var(--field);max-width:46rem;min-height:58px;color:var(--ink-3);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:16px;align-items:center;gap:12px;padding:0 18px;display:flex}.filter-search:focus-within{border-color:var(--focus);box-shadow:0 0 0 4px color-mix(in srgb, var(--focus) 18%, transparent)}.filter-search-input{min-width:0;min-height:52px;color:var(--ink);background:0 0;border:0;flex:1;font-size:1.0625rem}.filter-search-input:focus{outline:none}.directory-row{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.directory-row--split{justify-content:space-between}.segmented-tabs{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.segmented-tab{min-height:40px;color:var(--ink-2);border-radius:10px;padding:0 16px;font-size:.96875rem;font-weight:620}.segmented-tab[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1), 0 0 0 1px var(--border)}.sort-select{color:var(--ink-2);align-items:center;gap:10px;font-size:.96875rem;font-weight:620;display:inline-flex}.sort-select select{border:1px solid var(--border-strong);background:var(--field) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23686256' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;min-height:44px;color:var(--ink);appearance:none;border-radius:12px;padding:0 38px 0 14px;font-weight:620}.directory-status{min-height:44px;color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:10px;font-size:.96875rem;display:flex}.directory-status p:empty{display:none}.load-more{justify-content:center;margin-top:28px;display:flex}.az-index{columns:4 220px;column-gap:32px;margin-top:20px}.az-index li{break-inside:avoid}.az-index a{min-height:36px;color:var(--ink-2);align-items:center;font-size:.96875rem;text-decoration:none;display:inline-flex}.az-index a:hover{color:var(--ink);text-decoration:underline}.tool-section+.tool-section{margin-top:clamp(40px,4vw,56px)}.tool-section-head{flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin-bottom:18px;display:flex}.tool-section-title{font-size:var(--fs-h3);font-weight:740}.tool-section-title a{color:inherit;text-decoration:none}.tool-section-title a:hover{text-decoration:underline}.tool-section-head p{color:var(--ink-2);font-size:var(--fs-desc)}.category-content{gap:clamp(40px,4vw,56px);padding-top:clamp(48px,5vw,72px);display:grid}.prose-block{max-width:var(--measure);gap:32px;display:grid}.content-block{gap:14px;display:grid}.content-text{max-width:var(--measure);color:var(--ink-2);font-size:var(--fs-body);line-height:1.7}.related-cats{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;display:grid}.related-cat{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);height:100%;color:var(--ink);transition:border-color var(--dur) var(--ease);align-items:flex-start;gap:14px;padding:18px;text-decoration:none;display:flex}.related-cat:hover{border-color:var(--border-strong)}.related-cat>span:last-child{gap:2px;display:grid}.related-cat-name{font-size:1.0625rem;font-weight:700}.related-cat-desc{color:var(--ink-2);font-size:.9375rem}.faq-narrow{max-width:60rem}.page-body{grid-template-columns:minmax(0,1fr);gap:48px;padding-top:clamp(32px,4vw,56px);display:grid}@media (min-width:1100px){.page-body{grid-template-columns:minmax(0, var(--measure)) minmax(280px, 340px);justify-content:space-between}.page-body--single{grid-template-columns:minmax(0, var(--measure))}}.page-aside{align-content:start;gap:16px;display:grid}@media (min-width:1100px){.page-aside{top:calc(var(--header-h) + 24px);position:sticky}}.prose{min-width:0;font-size:var(--fs-body);line-height:1.72}.prose>*+*{margin-top:18px}.prose h2{margin-top:48px;font-size:clamp(1.5rem,1.3rem + .7vw,1.9rem);font-weight:760}.prose h3{font-size:1.1875rem;font-weight:700}.prose section>*+*{margin-top:14px}.prose ul,.prose ol:not([role]){padding-left:1.3em}.prose li+li{margin-top:8px}.prose p,.prose li{color:var(--ink-2)}.prose-quote{border-left:4px solid var(--ink);padding-left:20px;font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem);font-weight:650;line-height:1.4;color:var(--ink)!important}.prose-meta{font-size:var(--fs-small);color:var(--ink-3)!important}.prose-callout{border-left:4px solid var(--warning);background:var(--warning-soft);border-radius:0 12px 12px 0;padding:16px 18px;font-size:.96875rem;color:var(--ink)!important}.prose-links{flex-wrap:wrap;gap:8px 24px;display:flex}.code{background:var(--bg-deep);color:var(--ink-on-deep);border-radius:12px;margin:0;padding:16px 18px;font-size:.9375rem;line-height:1.55;overflow-x:auto}:root[data-theme=dark] .code{background:var(--surface-2);color:var(--ink)}.guides-index{gap:clamp(40px,4vw,56px);padding-top:clamp(32px,4vw,48px);display:grid}.guides-group{gap:18px;display:grid}.guide-cta{margin-top:24px}.guide-steps{counter-reset:step;gap:18px;list-style:none;display:grid;padding:0!important}.guide-steps li{counter-increment:step;padding-left:52px;position:relative}.guide-steps li:before{content:counter(step);background:var(--c-tint);width:36px;height:36px;color:var(--c-ink);border-radius:50%;place-items:center;font-weight:750;display:grid;position:absolute;top:-2px;left:0}.guide-steps h3{margin-bottom:4px}.guide-cta-box{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-wrap:wrap;align-items:center;gap:18px;padding:24px;display:flex;margin-top:40px!important}.guide-cta-box>div{flex:240px}.guide-cta-title{font-size:1.1875rem;font-weight:720;color:var(--ink)!important}.contact{padding-top:clamp(32px,4vw,48px)}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;display:grid}.contact-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);grid-template-rows:auto auto auto 1fr auto;gap:10px;padding:clamp(24px,2.6vw,34px);display:grid}.contact-icon{background:var(--surface-3);width:60px;height:60px;color:var(--ink);border-radius:18px;place-items:center;margin-bottom:6px;display:grid}.contact-title{font-size:var(--fs-h3);font-weight:740}.contact-value{color:var(--ink);overflow-wrap:anywhere;font-size:1.25rem;font-weight:700}.contact-text{color:var(--ink-2);font-size:var(--fs-desc)}.contact-action{width:100%;margin-top:10px}.contact-notes{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:32px 48px;max-width:76rem;margin-top:clamp(40px,5vw,64px);display:grid}.contact-notes section{gap:12px;display:grid}.contact-notes p{color:var(--ink-2);line-height:1.7}.not-found{justify-items:start;gap:14px;padding-block:clamp(48px,7vw,96px);display:grid}.not-found-code{color:#0000;letter-spacing:-.06em;-webkit-text-stroke:2px var(--border-strong);font-size:clamp(5rem,3rem + 9vw,10rem);font-weight:800;line-height:.9}.not-found-actions{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.not-found-sub{margin-top:36px}.not-found-tools{flex-wrap:wrap;gap:10px;display:flex}.tool-hero{padding:clamp(20px,2.6vw,36px) 0 clamp(20px,2.4vw,28px)}.tool-hero-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:18px 22px;display:grid}.tool-title{font-size:var(--fs-h1);letter-spacing:-.032em;font-weight:780;line-height:1.06}.tool-lead{max-width:50rem;color:var(--ink-2);font-size:var(--fs-lead);margin-top:10px;line-height:1.5}.tool-facts{color:var(--ink-2);flex-wrap:wrap;gap:6px 18px;margin-top:14px;font-size:.9375rem;display:flex}.tool-facts li{align-items:center;gap:6px;display:inline-flex}.tool-facts svg{color:var(--success)}@media (max-width:719px){.tool-hero-row{grid-template-columns:auto minmax(0,1fr)}.tool-hero-row .tool-icon--lg{width:46px;height:46px}.tool-hero-actions{grid-column:1/-1}}.tool-main{padding-bottom:clamp(32px,4vw,56px)}.workspace-loading .skel--panel{height:460px}.tool-content{border-top:1px solid var(--divider);grid-template-columns:minmax(0,1fr);gap:48px;padding-top:clamp(32px,4vw,48px);display:grid}@media (min-width:1100px){.tool-content{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:64px}}.tool-content-main{gap:44px;min-width:0;max-width:54rem;display:grid}.tool-content-side{align-content:start;gap:16px;display:grid}.tool-guides,.related{padding-top:clamp(48px,5vw,72px)}.related .section-title,.tool-guides .section-title{margin-bottom:22px}.tool-faq{padding-top:clamp(48px,5vw,72px)}.ws-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;padding:clamp(16px,1.8vw,24px)}.ws-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;min-height:44px;margin-bottom:14px;display:flex}.ws-panel-title,.ws-panel-title label,.ws-panel-title h2{letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.125rem;font-weight:720;display:flex}.ws-panel-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ws-panel-meta{color:var(--ink-3);font-size:var(--fs-small);margin-top:10px}.ws-step{background:var(--c-tint);width:28px;height:28px;color:var(--c-ink);border-radius:50%;place-items:center;font-size:.875rem;font-weight:750;display:inline-grid}.workspace{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (min-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.workspace--text{grid-template-rows:auto 1fr;grid-template-areas:"input controls""input output"}.workspace--text .ws-input{top:calc(var(--header-h) + 16px);grid-area:input;position:sticky}.workspace--compare{grid-template-areas:"lists lists""controls output"}.workspace--compare .ws-lists{grid-area:lists}.workspace--none{grid-template-areas:"controls output"}.workspace .ws-controls{grid-area:controls}.workspace .ws-output{grid-area:output}}.ws-lists{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px;display:grid}.field-wrap{position:relative}.field{border:1px solid var(--border-strong);background:var(--field);width:100%;min-height:260px;color:var(--ink);resize:vertical;transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:14px;padding:14px 16px;font-size:1rem;line-height:1.6;display:block}.field::placeholder{color:var(--ink-3)}.field--mono{font-family:var(--font-mono);tab-size:2;font-size:.9375rem}.field--output{background:var(--surface-2)}.field-empty-hint{pointer-events:none;justify-content:center;display:flex;position:absolute;inset:auto 12px 12px}.upload-prompt{border:1.5px dashed var(--border-strong);background:var(--surface-2);width:100%;color:var(--ink-2);text-align:center;border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;padding:14px;display:flex}.upload-prompt-icon{color:var(--ink-3);place-items:center;display:inline-grid}.upload-prompt-text{font-size:.96875rem}.upload-prompt-choose{min-height:40px;color:var(--ink);text-underline-offset:3px;pointer-events:auto;padding:0 4px;font-weight:650;text-decoration:underline}.upload-prompt-formats{color:var(--ink-3);font-size:var(--fs-small);flex-basis:100%}@media (max-width:559px){.upload-prompt-drag{display:none}}.drop-target{position:relative}.drop-overlay{z-index:3;border:2px dashed var(--c);background:color-mix(in srgb, var(--surface) 88%, transparent);text-align:center;border-radius:14px;place-items:center;display:none;position:absolute;inset:0}.drop-target.is-dragover .drop-overlay{display:grid}.drop-target.is-drag-reject .drop-overlay{border-color:var(--danger)}.drop-overlay-inner{color:var(--ink-2);justify-items:center;gap:6px;display:grid}.drop-overlay-inner p{color:var(--ink);font-size:1.125rem;font-weight:700}.file-status{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;align-items:flex-start;gap:12px;margin-top:12px;padding:12px 12px 12px 14px;display:flex}.file-status--error{border-color:color-mix(in srgb, var(--danger) 35%, var(--border));background:var(--danger-soft)}.file-status-icon{color:var(--ink-3);margin-top:2px}.file-status--ready .file-status-icon{color:var(--success)}.file-status--error .file-status-icon{color:var(--danger)}.file-status-body{flex:1;gap:4px;min-width:0;display:grid}.file-status-heading{font-weight:700}.file-status-name{text-overflow:ellipsis;white-space:nowrap;font-weight:620;overflow:hidden}.file-status-meta{color:var(--ink-2);font-size:.9375rem}.file-status-ok{color:var(--success);font-weight:650}.file-status-actions{align-items:center;gap:4px;display:flex}.ws-controls .options{margin-bottom:18px}.ws-run{gap:10px;display:grid}.ws-run-btn{width:100%}.ws-run-buttons{flex-wrap:wrap;gap:10px;display:flex}.ws-run-buttons .btn{flex:180px}.ws-run-hint{color:var(--ink-3);font-size:var(--fs-small);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;display:flex}.ws-private{align-items:center;gap:6px;display:inline-flex}.ws-status:empty{display:none}.ws-status{margin-bottom:12px}.ws-working{color:var(--ink-2);gap:8px;font-size:.9375rem;display:grid}.ws-done,.ws-stale{border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;font-size:.96875rem;display:flex}.ws-done{background:var(--success-soft);animation:pop-in .22s var(--ease-out)}.ws-done-check{background:var(--success);width:22px;height:22px;color:var(--surface);border-radius:50%;place-items:center;display:inline-grid}.ws-stale{background:var(--warning-soft)}.ws-stale p{flex:200px}.ws-error{background:var(--danger-soft);border-radius:12px;gap:12px;padding:16px;display:flex}.ws-error>svg{color:var(--danger);flex:none}.ws-error-title{font-weight:700}.ws-error-text{color:var(--ink-2);margin-top:2px}.stats{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.stats li{background:var(--surface-2);border-radius:10px;align-items:baseline;gap:6px;padding:6px 12px;font-size:.9375rem;display:inline-flex}.stats-value{font-variant-numeric:tabular-nums;font-weight:750}.stats-label{color:var(--ink-2)}.downloads{gap:10px;margin-top:14px;display:grid}.downloads-label{color:var(--ink-2);font-size:.9375rem;font-weight:620}.downloads-row{flex-wrap:wrap;gap:8px;display:flex}.format-chip{border:1px solid var(--border-strong);background:var(--surface);min-height:44px;color:var(--ink);border-radius:12px;align-items:center;gap:8px;padding:0 14px;font-size:.9375rem;font-weight:650;display:inline-flex}.format-chip:hover:not(:disabled){background:var(--surface-3)}.format-chip:disabled{opacity:.45}.format-chip.is-done{border-color:var(--success);color:var(--success)}.downloads-note{color:var(--ink-3);font-size:var(--fs-small)}.ws-use-mobile{margin-top:12px}.ws-empty{border:1.5px dashed var(--border);min-height:220px;color:var(--ink-3);text-align:center;border-radius:14px;align-content:center;justify-items:center;gap:8px;padding:24px;display:grid}.ws-empty-icon{background:var(--c-tint,var(--surface-3));width:56px;height:56px;color:var(--c-ink,var(--ink-2));border-radius:16px;place-items:center;margin-bottom:4px;display:grid}.ws-empty-title{max-width:30rem;color:var(--ink);font-size:1.0625rem;font-weight:650}.ws-empty-text{font-size:.9375rem}.sheet[open]{width:100%;margin:0;position:fixed;inset:auto 0 0}.sheet .dialog-panel{padding-bottom:env(safe-area-inset-bottom);border-radius:20px 20px 0 0}.sheet-list{padding:4px 12px 16px;display:grid}.sheet-item{text-align:left;border-radius:12px;align-items:center;gap:14px;width:100%;min-height:56px;padding:6px 8px;display:flex}.sheet-item:hover:not(:disabled){background:var(--surface-2)}.sheet-item:disabled{opacity:.5}.sheet-item-badge{background:var(--surface-3);min-width:52px;font-size:var(--fs-small);text-align:center;border-radius:8px;padding:6px 8px;font-weight:750}.sheet-item-text{flex:1;display:grid}.sheet-item-text small{color:var(--ink-3)}.chain-steps{gap:10px;margin:0 0 12px;padding:0;list-style:none;display:grid}.chain-step{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:12px}.chain-step-row{align-items:center;gap:8px;display:flex}.chain-index{background:var(--surface-3);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.875rem;font-weight:750;display:inline-grid}.chain-step .select{flex:1;min-width:0}.chain-step-actions{display:flex}.chain-step-options{margin-top:12px}.chain-empty{color:var(--ink-3)}.file-ws{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (min-width:1100px){.file-ws{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"main results""main facts";align-items:start}.file-ws-main{grid-area:main}.file-results{grid-area:results}.file-facts{grid-area:facts}}.file-ws-main{gap:16px;min-width:0;display:grid}.dropzone{border:2px dashed var(--border-strong);background:var(--surface-2);text-align:center;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);border-radius:18px;justify-items:center;gap:14px;padding:clamp(28px,4vw,48px) 20px;display:grid}.dropzone.is-dragging{border-color:var(--c);background:var(--c-tint)}.dropzone-icon{background:var(--c-tint);width:64px;height:64px;color:var(--c-ink);border-radius:18px;place-items:center;display:grid}.dropzone-text{gap:4px;display:grid}.dropzone-title{font-size:clamp(1.1875rem,1.1rem + .4vw,1.375rem);font-weight:740}.dropzone-meta{color:var(--ink-2);font-size:.96875rem}.dropzone--compact{text-align:left;grid-template-columns:auto minmax(0,1fr) auto;place-items:center start;gap:14px;padding:14px 16px}.dropzone--compact .dropzone-icon{border-radius:12px;width:44px;height:44px}.dropzone--compact .dropzone-title{font-size:1.0625rem}.dropzone--compact .dropzone-meta{font-size:var(--fs-small)}@media (max-width:559px){.dropzone--compact{grid-template-columns:auto minmax(0,1fr)}.dropzone--compact .btn{grid-column:1/-1;width:100%}}.file-list{border-top:1px solid var(--divider);margin:14px 0 0;display:grid}.file-item{border-bottom:1px solid var(--divider);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px 4px;display:grid}.file-item-icon{background:var(--surface-3);width:32px;height:32px;color:var(--ink-3);border-radius:9px;place-items:center;display:grid}.file-item.is-ready .file-item-icon{background:var(--success-soft);color:var(--success)}.file-item.is-invalid .file-item-icon{background:var(--danger-soft);color:var(--danger)}.file-item-text{gap:2px;min-width:0;display:grid}.file-item-name{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.file-item-meta{color:var(--ink-3);font-size:var(--fs-small)}.file-item-error{color:var(--danger);font-size:.9375rem;line-height:1.45}.file-item-actions{align-items:center;display:flex}.file-run{gap:10px;display:grid}.file-run-btn{width:100%}.file-run-hint{color:var(--ink-3);text-align:center;font-size:.9375rem}.file-progress{border:1px solid var(--border);background:var(--surface);border-radius:14px;gap:12px;padding:16px;display:grid}.file-progress-text{overflow-wrap:anywhere;align-items:center;gap:10px;min-width:0;font-weight:620;display:flex}.file-progress .btn{justify-self:start}.result-summary{background:var(--success-soft);animation:pop-in .22s var(--ease-out);border-radius:12px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;font-weight:650;display:flex}.result-summary svg{color:var(--success)}.result-summary.has-errors{background:var(--warning-soft)}.result-summary.has-errors svg{color:var(--warning)}.result-list{gap:14px;display:grid}.result-item{gap:8px;display:grid}.result-item+.result-item{border-top:1px solid var(--divider);padding-top:14px}.result-label{align-items:center;gap:8px;min-width:0;font-weight:650;display:flex}.result-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.result-item.is-done .result-label svg{color:var(--success)}.result-item.is-error .result-label svg{color:var(--danger)}.result-error{background:var(--danger-soft);border-radius:10px;padding:10px 12px;font-size:.96875rem}.output-list{gap:8px;display:grid}.output-item{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;align-items:center;gap:12px;padding:10px;display:flex}.output-check{width:20px;height:20px;accent-color:var(--primary);flex:none}.result-thumb{background:repeating-conic-gradient(var(--surface-3) 0 25%, var(--surface) 0 50%) 0 0 / 12px 12px;border-radius:10px;flex:none;place-items:center;width:56px;height:56px;display:grid;overflow:hidden}.result-thumb img{object-fit:contain;width:100%;height:100%}.result-thumb--file{background:var(--surface-3);color:var(--ink-3)}.output-text{flex:1;gap:2px;min-width:0;display:grid}.output-name{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.output-detail{color:var(--ink-3);font-size:var(--fs-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.output-note{color:var(--ink-2);font-size:var(--fs-small)}.output-download{flex:none}@media (max-width:479px){.output-download-label{display:none}}.skipped{background:var(--warning-soft);border-radius:12px;padding:12px 14px;font-size:.9375rem}.skipped summary{cursor:pointer;font-weight:650}.skipped ul{gap:6px;margin-top:10px;display:grid}.skipped code{overflow-wrap:anywhere}.fact-list{color:var(--ink-2);gap:10px;margin-top:4px;padding-left:1.2em;font-size:.96875rem;line-height:1.55;display:grid}.file-facts .ws-panel-title{margin-bottom:10px}.notes-ws{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (min-width:1100px){.notes-ws{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.notes-preview{top:calc(var(--header-h) + 16px);position:sticky}}.notes-editor{gap:8px;display:grid}.notes-editor .ws-panel-head{margin-bottom:6px}.notes-body-label{margin-top:10px}.notes-field{min-height:340px}.notes-settings{border-top:1px solid var(--divider);margin-top:14px;padding-top:18px}.notes-warning{background:var(--warning-soft);border-radius:12px;gap:10px;margin-bottom:14px;padding:14px 16px;font-size:.96875rem;display:grid}.notes-chars{letter-spacing:.08em;font-size:1.125rem}.notes-pages{background:var(--surface-3);max-height:min(1000px,80dvh);transition:opacity var(--dur) var(--ease);border-radius:14px;gap:16px;padding:16px;display:grid;overflow-y:auto}.notes-pages.is-updating{opacity:.75}.notes-page{width:100%;height:auto;box-shadow:var(--shadow-2);border-radius:4px}.notes-page-skeleton{aspect-ratio:210/297;background:var(--surface);border-radius:4px}.notes-more{color:var(--ink-2);text-align:center;font-size:.9375rem}.notes-actions{gap:8px;margin-top:16px;display:grid}.notes-actions .btn{width:100%}.spinner--on-primary{color:var(--on-primary)}
/*$vite$:1*/