@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/inter/inter-latin-300-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter/inter-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter/inter-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter/inter-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter/inter-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/bricolage/bricolage-grotesque-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/bricolage/bricolage-grotesque-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/bricolage/bricolage-grotesque-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/bricolage/bricolage-grotesque-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/bricolage/bricolage-grotesque-latin-800-normal.woff2) format("woff2")}:root{--color-primary: #0369a1;--color-secondary: #0ea5e9;--color-cta: #22c55e;--color-background: #f0f9ff;--color-text: #0c4a6e;--color-surface: #ffffff;--color-surface-raised: #f8fafc;--color-border: #bae6fd;--color-border-subtle: #e0f2fe;--color-text-muted: #475569;--color-text-secondary: #164e63;--color-text-faint: #64748b;--color-error: #b91c1c;--color-error-bg: #fef2f2;--color-green-zone-bg: #f0fdf4;--color-green-zone-bg-ready: #dcfce7;--color-green-zone-border: #bbf7d0;--color-green-zone-border-cleared: #94a3b8;--color-green-zone-text-secondary: #166534;--color-dropzone-border: #bae6fd;--color-dropzone-border-active: var(--color-cta);--color-dropzone-bg-active: #f0fdf4;--color-trust-prose: #475569;--color-code-bg: #f1f5f9;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 20px rgba(3, 105, 161, .1);--shadow-xl: 0 20px 40px rgba(3, 105, 161, .14);--shadow-panel: 0 8px 32px rgba(3, 105, 161, .1);--ease-spring: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-base: .22s;--duration-slow: .35s;--duration-reveal: .52s;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--scan-height: 120px;--green-zone-transition: border-color var(--transition-base), background var(--transition-base), box-shadow var(--transition-base);--font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Bricolage Grotesque", Inter, ui-sans-serif, system-ui, sans-serif;color:var(--color-text);background:var(--color-background);font-family:var(--font-body);font-size:16px;line-height:1.6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background-color:var(--color-background);background-image:radial-gradient(900px 520px at 12% -8%,rgba(14,165,233,.16),transparent 60%),radial-gradient(820px 520px at 92% 2%,rgba(34,197,94,.1),transparent 58%),linear-gradient(rgba(3,105,161,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(3,105,161,.045) 1px,transparent 1px);background-size:100% 100%,100% 100%,44px 44px,44px 44px;background-attachment:fixed,fixed,fixed,fixed}button,input,select,textarea{font:inherit}ul[role=list]{list-style:none;margin:0;padding:0}.site-header{position:sticky;top:0;z-index:100;background:#ffffffc7;backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--color-border-subtle);box-shadow:0 1px 4px #0369a10f}.site-header__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm);max-width:1200px;margin:0 auto;padding:10px var(--space-lg)}.site-header__logo{display:inline-flex;align-items:center;gap:var(--space-sm);text-decoration:none;color:var(--color-text);transition:opacity var(--transition-fast)}.site-header__logo:hover{opacity:.8}.site-header__logo:focus-visible{outline:3px solid var(--color-primary);outline-offset:4px;border-radius:4px}.site-header__name{font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--color-text)}.site-header__tagline{font-size:.78rem;color:var(--color-text-faint);margin:0;letter-spacing:.01em}.lang-switcher{display:inline-flex;align-items:center}.lang-switcher__select{font:inherit;font-size:.85rem;color:var(--color-text);background:var(--color-surface, #fff);border:1px solid var(--color-border, #cbd5e1);border-radius:8px;padding:6px 28px 6px 10px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.lang-switcher__select:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.site-nav{display:flex;align-items:center}.site-nav__toggle{display:none;align-items:center;gap:var(--space-sm);font:inherit;font-size:.9rem;font-weight:600;color:var(--color-text);background:var(--color-surface, #fff);border:1px solid var(--color-border, #bae6fd);border-radius:8px;min-height:44px;padding:8px 14px;cursor:pointer}.site-nav__toggle:focus-visible,.site-nav__trigger:focus-visible,.site-nav__link:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.site-nav__list{display:flex;align-items:center;gap:var(--space-xs);list-style:none;margin:0;padding:0}.site-nav__item{position:relative}.site-nav__trigger{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.9rem;font-weight:600;color:var(--color-text);background:transparent;border:0;border-radius:8px;min-height:40px;padding:6px 10px;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}.site-nav__trigger:hover{background:#ffffffb3;color:var(--color-primary)}.site-nav__trigger[aria-expanded=true]{background:var(--color-surface, #fff);color:var(--color-primary)}.site-nav__chevron{transition:transform var(--transition-fast)}.site-nav__trigger[aria-expanded=true] .site-nav__chevron{transform:rotate(180deg)}.site-nav__dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:20;display:grid;grid-auto-flow:column;grid-template-rows:repeat(8,auto);gap:2px var(--space-md);list-style:none;margin:0;padding:var(--space-sm);background:var(--color-surface, #fff);border:1px solid var(--color-border, #bae6fd);border-radius:12px;box-shadow:var(--shadow-panel)}.site-nav__dropdown[hidden]{display:none}.site-nav__link{display:block;font-size:.875rem;color:var(--color-text-secondary);text-decoration:none;border-radius:6px;padding:8px 10px;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}.site-nav__link:hover{background:var(--color-border-subtle);color:var(--color-primary)}.site-header__tagline{display:none}@media(max-width:1024px){.site-nav__toggle{display:inline-flex}.site-nav__panel{display:none;position:absolute;top:100%;left:0;right:0;z-index:20;max-height:calc(100vh - 64px);overflow-y:auto;padding:var(--space-sm) var(--space-md) var(--space-md);background:var(--color-surface, #fff);border-bottom:1px solid var(--color-border, #bae6fd);box-shadow:var(--shadow-panel)}.site-nav__panel.is-open,.site-nav__list{display:block}.site-nav__item+.site-nav__item{border-top:1px solid var(--color-border-subtle)}.site-nav__trigger{display:flex;justify-content:space-between;width:100%;min-height:48px;font-size:1rem}.site-nav__dropdown{position:static;grid-auto-flow:row;grid-template-rows:none;gap:0;padding:0 0 var(--space-sm) var(--space-sm);background:transparent;border:0;border-radius:0;box-shadow:none}.site-nav__link{min-height:44px;display:flex;align-items:center;white-space:normal}}@media(min-width:1025px){.site-nav{flex:1 0 100%;order:2;border-top:1px solid var(--color-border-subtle);margin-bottom:-4px;padding-top:4px}.site-nav__list{flex-wrap:wrap;margin-left:-10px}}@media(max-width:560px){.site-nav__toggle{gap:0;padding:8px;min-width:44px;justify-content:center}.site-nav__toggle span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.site-footer{background:#082f49;color:#bae6fd;font-size:.875rem;line-height:1.7;text-align:center;padding:var(--space-2xl) var(--space-lg)}.site-footer__inner{max-width:960px;margin:0 auto}.site-footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md);list-style:none;margin:0 0 var(--space-lg);padding:0}.site-footer__info{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md);list-style:none;margin:0 0 var(--space-sm);padding:0}.site-footer__info a{color:#7dd3fc;text-decoration:underline;text-underline-offset:3px;font-weight:600}.site-footer__nav a{color:#7dd3fc;text-decoration:underline;text-underline-offset:3px;transition:color var(--transition-fast)}.site-footer__nav a:hover{color:#fff}.site-footer__nav a:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:2px}.site-footer__legal{font-size:.8rem;color:#94a3b8;margin:0}footer{padding:var(--space-xl) var(--space-lg);background:#082f49;color:#bae6fd;font-size:.875rem;line-height:1.7;text-align:center}footer a{color:#7dd3fc;text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-fast)}footer a:hover{color:#fff}footer a:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:2px}.app-shell{min-height:calc(100vh - 120px);padding:var(--space-2xl) var(--space-lg)}.workspace{display:grid;grid-template-columns:1fr;gap:var(--space-xl);width:min(720px,100%);margin:0 auto}.workspace--tool{max-width:720px}.merge-workspace,.split-workspace,.rotate-workspace,.watermark-workspace,.insert-workspace{grid-template-columns:1fr;max-width:720px}.home-workspace{grid-template-columns:1fr;width:min(1140px,100%);max-width:1140px;gap:var(--space-3xl)}.stub-workspace{grid-template-columns:1fr;max-width:720px}h1,h2,h3,p{margin-top:0}h1{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.5rem);font-weight:700;line-height:1.05;letter-spacing:-.025em;color:#082f49;margin-bottom:var(--space-md)}h2{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--color-text);letter-spacing:-.015em;margin-bottom:var(--space-md)}h3{font-family:var(--font-display);letter-spacing:-.01em}.eyebrow{display:inline-flex;align-items:center;margin:0 0 var(--space-sm);padding:4px 14px;background:var(--color-cta, var(--color-primary));color:#052e16;font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border-radius:100px}.summary{margin-bottom:0;color:var(--color-text-secondary);font-size:1.0625rem;line-height:1.75;max-width:60ch}.hero{margin-bottom:var(--space-xl)}.hero h1{font-size:clamp(1.625rem,3vw,2.5rem);margin-bottom:var(--space-sm)}.hero .summary{font-size:1rem;color:var(--color-text-secondary);line-height:1.7}.home-hero h1{font-size:clamp(2rem,4.5vw,3.25rem);max-width:20ch}.home-hero .summary{font-size:1.0625rem;max-width:52ch}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.home-hero .eyebrow,.home-hero h1,.home-hero .summary,.home-hero .home-trust-list,.tool-grid .tool-card{animation:rise-in .6s cubic-bezier(.16,1,.3,1) both}.home-hero .eyebrow{animation-delay:40ms}.home-hero h1{animation-delay:.11s}.home-hero .summary{animation-delay:.19s}.home-hero .home-trust-list{animation-delay:.27s}.tool-grid .tool-card:nth-child(1){animation-delay:.34s}.tool-grid .tool-card:nth-child(2){animation-delay:.4s}.tool-grid .tool-card:nth-child(3){animation-delay:.46s}.tool-grid .tool-card:nth-child(4){animation-delay:.52s}.tool-grid .tool-card:nth-child(5){animation-delay:.58s}.home-trust-list{display:flex;flex-direction:column;gap:var(--space-sm);list-style:none;margin:var(--space-xl) 0 0;padding:0}.home-trust-item{display:flex;align-items:flex-start;gap:var(--space-sm);font-size:.9375rem;color:var(--color-text-secondary);line-height:1.5}.green-zone{display:flex;align-items:center;gap:var(--space-sm);min-height:60px;padding:var(--space-md) var(--space-lg);background:var(--color-green-zone-bg);border:1px solid var(--color-green-zone-border);border-left:4px solid var(--color-cta);border-radius:8px;box-shadow:0 1px 4px #22c55e1f;transition:var(--green-zone-transition)}.green-zone[data-state=readyToDownload]{background:var(--color-green-zone-bg-ready);box-shadow:0 2px 8px #22c55e33}.green-zone[data-state=cleared]{background:var(--color-surface-raised);border-color:#e2e8f0;border-left-color:var(--color-green-zone-border-cleared);box-shadow:none}.green-zone[data-state=offlineReady]{background:var(--color-green-zone-bg)}.green-zone__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--color-cta)}.green-zone[data-state=cleared] .green-zone__icon{color:var(--color-green-zone-border-cleared)}@keyframes shield-pulse{0%,to{opacity:1}50%{opacity:.55}}.green-zone[data-state=readingLocalFile] .green-zone__icon svg,.green-zone[data-state=processingLocally] .green-zone__icon svg{animation:shield-pulse 1.8s ease-in-out infinite}.green-zone__text{display:flex;flex-direction:column;gap:2px;flex:1}.green-zone__primary{font-weight:600;font-size:.9375rem;color:var(--color-text);line-height:1.3}.green-zone__secondary{font-size:.8rem;color:var(--color-green-zone-text-secondary);line-height:1.4}.green-zone[data-state=cleared] .green-zone__secondary{color:var(--color-text-faint)}.offline-badge{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto;padding:3px 8px;background:var(--color-cta);color:#052e16;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:100px;line-height:1}.offline-badge svg{flex-shrink:0}.dropzone{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;min-height:140px;padding:var(--space-xl) var(--space-lg);background:var(--color-surface);border:2px dashed var(--color-dropzone-border);border-radius:10px;text-align:center;cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.dropzone[data-active=true]{border-color:var(--color-dropzone-border-active);background:var(--color-dropzone-bg-active);box-shadow:0 0 0 4px #22c55e1f}.dropzone:focus-visible,.dropzone:has(:focus-visible){outline:3px solid var(--color-primary);outline-offset:3px}.dropzone__icon{display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-bottom:var(--space-xs);transition:color var(--transition-fast)}.dropzone[data-active=true] .dropzone__icon{color:var(--color-cta)}.dropzone__label{font-weight:600;font-size:.9375rem;color:var(--color-text);margin:0;line-height:1.4}.dropzone__hint{font-size:.875rem;color:var(--color-text-faint);margin:0;line-height:1.4}.dropzone__types{font-size:.78rem;color:var(--color-text-muted);margin:0;line-height:1.4}.skip-link{position:absolute;left:8px;top:-40px;z-index:1000;padding:8px 16px;background:var(--color-primary, #0369a1);color:#fff;border-radius:6px;font-weight:700;text-decoration:none;transition:top .15s ease}.skip-link:focus{top:8px;outline:3px solid var(--color-cta, #22c55e);outline-offset:2px}.drop-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0f172a8c;pointer-events:none}.drop-overlay__card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 48px;border-radius:16px;text-align:center;background:var(--color-surface);border:2px dashed var(--color-primary);box-shadow:0 12px 48px #00000047}.drop-overlay__title{margin:0;font-size:1.3rem;font-weight:800;color:var(--color-primary)}.drop-overlay__sub{margin:0;color:var(--color-green-zone-text-secondary, #166534)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes scan-progress{0%{transform:translateY(0);opacity:0}5%{opacity:1}95%{opacity:1}to{transform:translateY(var(--scan-height, 140px));opacity:0}}.scan-progress{position:absolute;inset-inline:0;top:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--color-cta) 20%,var(--color-cta) 80%,transparent 100%);border-radius:1px;animation:scan-progress 1.6s cubic-bezier(.4,0,.6,1) infinite;pointer-events:none}.settings-panel{padding:var(--space-lg);border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);box-shadow:var(--shadow-sm)}.settings-panel h2{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-md);letter-spacing:-.01em}.settings-panel__field+.settings-panel__field{margin-top:var(--space-md)}.action-bar{display:flex;justify-content:center;padding:var(--space-sm) 0}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);min-height:48px;padding:12px 28px;background:var(--color-cta);color:#052e16;border:0;border-radius:8px;font-weight:700;font-size:1rem;letter-spacing:.01em;cursor:pointer;transition:background var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.btn-primary:hover:not(:disabled){background:#16a34a;box-shadow:0 8px 24px #22c55e4d;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-primary:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.btn-primary:disabled{cursor:not-allowed;opacity:.55}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);min-height:48px;padding:12px 24px;background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:background var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}.btn-secondary:hover:not(:disabled){background:var(--color-background);box-shadow:var(--shadow-sm)}.btn-secondary:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.btn-secondary:disabled{cursor:not-allowed;opacity:.55}.input{display:block;width:100%;padding:10px 14px;border:1.5px solid #cbd5e1;border-radius:8px;font-size:.9375rem;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0369a126}.input:focus-visible{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0369a126}.input[aria-invalid=true]{border-color:var(--color-error);box-shadow:0 0 0 3px #b91c1c1a}.completion{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl);background:var(--color-green-zone-bg-ready);border:1px solid var(--color-green-zone-border);border-radius:10px;text-align:center;animation:fade-in var(--transition-slow) ease both}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.completion h2{display:flex;align-items:center;gap:var(--space-sm);font-size:1.15rem;color:var(--color-text);margin-bottom:0}.completion__actions{display:flex;gap:var(--space-md);flex-wrap:wrap;justify-content:center}.completion__clear{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;background:transparent;color:var(--color-text-faint);border:1px solid #cbd5e1;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:color var(--transition-base),border-color var(--transition-base),background var(--transition-base)}.completion__clear:hover{color:var(--color-text);border-color:#94a3b8;background:var(--color-surface-raised)}.completion__save:focus-visible,.completion__clear:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.tool-panel{display:grid;gap:var(--space-lg);padding:var(--space-xl);border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);box-shadow:var(--shadow-panel)}.tool-panel h2{margin-bottom:10px;color:var(--color-text);font-size:1.25rem;letter-spacing:-.01em}.tool-panel p{color:var(--color-text-muted);line-height:1.6}.tool-panel button{min-height:48px;border:0;border-radius:8px;background:var(--color-cta);color:#052e16;cursor:pointer;font-weight:700;transition:transform var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.tool-panel button:hover:not(:disabled){background:#16a34a;box-shadow:0 8px 24px #22c55e47;transform:translateY(-1px)}.tool-panel button:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.tool-panel button:disabled{cursor:not-allowed;opacity:.55}.trust-section{width:100%;padding:var(--space-3xl) 0;border-top:1px solid var(--color-border-subtle)}.trust-section h2{font-size:1.35rem;color:var(--color-text);margin-bottom:var(--space-lg)}.trust-section p{color:var(--color-trust-prose);font-size:.9375rem;line-height:1.7;margin-bottom:var(--space-md);max-width:70ch}.trust-section p:last-child{margin-bottom:0}.faq{max-width:680px;padding:var(--space-2xl) 0;border-top:1px solid var(--color-border-subtle)}.faq h2{font-size:1.35rem;color:var(--color-text);margin-bottom:var(--space-xl);letter-spacing:-.01em}.faq dl{margin:0;padding:0}.faq__question,dt.faq__question{font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs);font-size:.9375rem;line-height:1.5}.faq__answer,dd.faq__answer{color:var(--color-text-muted);margin:0 0 var(--space-lg);padding:0;font-size:.9rem;line-height:1.75}.faq__answer:last-child,dd.faq__answer:last-child{margin-bottom:0}.tech-details{max-width:680px;padding:var(--space-2xl) 0;border-top:1px solid var(--color-border-subtle)}.tech-details h2{font-size:1.35rem;color:var(--color-text);margin-bottom:var(--space-md);letter-spacing:-.01em}.tech-details p{color:var(--color-trust-prose);line-height:1.75;margin-bottom:var(--space-md);font-size:.9375rem}.tech-details code{background:var(--color-code-bg);padding:1px 5px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875em;color:var(--color-primary)}.tech-updated{font-size:.8125rem;color:var(--color-text-faint);margin-top:var(--space-lg)}.tool-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-lg);width:100%}.tool-card{position:relative;display:flex;flex-direction:column;gap:var(--space-xs);flex:0 1 296px;min-width:260px;padding:var(--space-xl) var(--space-lg) var(--space-lg);background:linear-gradient(180deg,#f0f9ff8c,#fff0),var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:16px;box-shadow:var(--shadow-sm);cursor:pointer;text-decoration:none;color:inherit;overflow:hidden;isolation:isolate;transition:box-shadow var(--transition-base),transform var(--transition-base),border-color var(--transition-base)}.tool-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--color-secondary),var(--color-cta));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-slow)}.tool-card:hover,.tool-card:focus-visible{box-shadow:var(--shadow-xl);transform:translateY(-4px);border-color:var(--color-secondary)}.tool-card:hover:before,.tool-card:focus-visible:before{transform:scaleX(1)}.tool-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px;border-radius:12px}.tool-card__icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:linear-gradient(145deg,#e0f2fe,#f0fdf4);border:1px solid var(--color-border-subtle);border-radius:14px;box-shadow:inset 0 1px #ffffffe6;color:var(--color-primary);margin-bottom:var(--space-sm);transition:transform var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}.tool-card:hover .tool-card__icon{transform:translateY(-1px) scale(1.04);color:var(--color-secondary);box-shadow:0 6px 16px #0ea5e92e}.tool-card__privacy-badge{display:inline-flex;align-items:center;align-self:flex-start;padding:2px 8px;background:var(--color-background);color:var(--color-primary);border:1px solid var(--color-border);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:100px;line-height:1.6;margin-bottom:2px}.tool-card__badges{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;margin-bottom:2px}.tool-card__free-badge{display:inline-flex;align-items:center;padding:2px 8px;background:var(--color-primary);color:var(--color-background);border:1px solid var(--color-primary);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:100px;line-height:1.6}.trust-section__free{font-weight:600;color:var(--color-primary)}.tool-card__title{font-family:var(--font-display);font-weight:700;font-size:1.0625rem;color:var(--color-text);margin:0;letter-spacing:-.015em;line-height:1.25}.tool-card__description{font-size:.875rem;color:var(--color-text-muted);margin:0;line-height:1.6;flex:1}.tool-card__cta{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;color:var(--color-primary);font-weight:600;margin-top:var(--space-xs);transition:gap var(--transition-fast)}.tool-card:hover .tool-card__cta{gap:6px}.ad-slot{width:100%;max-width:728px;margin:var(--space-2xl) auto;text-align:center}[data-ad-slot]{max-width:100%}.ad-label{font-size:.68rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-xs)}.ad-slot__container{min-height:90px;border:1px dashed #e2e8f0;border-radius:4px;display:flex;align-items:center;justify-content:center}.status{min-height:28px;margin-bottom:0;color:#0f766e;font-weight:700}.coming-soon-panel{border-color:var(--color-border);background:var(--color-background)}.coming-soon-panel h2{color:var(--color-primary)}@media(max-width:780px){.app-shell{padding:var(--space-xl) var(--space-md)}h1{font-size:2.25rem}.tool-grid{gap:var(--space-md)}.site-header__tagline{display:none}}@media(max-width:480px){.app-shell{padding:var(--space-lg) var(--space-md)}h1{font-size:1.75rem}.hero h1{font-size:1.5rem}.home-hero h1{font-size:1.75rem}.dropzone{min-height:100px;padding:var(--space-lg) var(--space-md)}.green-zone{flex-direction:column;align-items:flex-start;gap:var(--space-xs);min-height:unset;padding:var(--space-md)}.offline-badge{margin-left:0;margin-top:var(--space-xs)}.completion__actions{flex-direction:column;width:100%}.btn-primary,.btn-secondary{width:100%;justify-content:center}.tool-grid .tool-card{flex-basis:100%;min-width:0}.ad-slot{margin:var(--space-xl) auto}.site-header__tagline{display:none}}.tool-sections{display:flex;flex-direction:column;gap:var(--space-3xl)}.tool-section__label{font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-subtle)}.tool-section--featured{background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:12px;padding:var(--space-lg)}.tool-section--featured .tool-section__label{margin-bottom:var(--space-xs);padding-bottom:0;border-bottom:0}.editor-staged{margin:0 0 var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-surface-raised);border-left:3px solid var(--color-primary);border-radius:6px;color:var(--color-text-muted);font-size:.95rem}.editor-handoff{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md) var(--space-lg);justify-content:space-between;margin:var(--space-2xl) 0;padding:var(--space-lg);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:12px}.editor-handoff__text{margin:0;flex:1 1 22rem;min-width:0;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}.editor-handoff__link{flex:0 0 auto;font-weight:600;white-space:nowrap}@media(max-width:640px){.editor-handoff__link{white-space:normal}}.tool-section__blurb{margin:0 0 var(--space-lg);max-width:60ch;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}body:before,body:after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(80px);opacity:.55}body:before{width:680px;height:480px;top:-120px;left:-80px;background:radial-gradient(ellipse at center,rgba(14,165,233,.38),transparent 70%);animation:blob-drift-a 24s ease-in-out infinite alternate}body:after{width:520px;height:420px;bottom:-100px;right:-60px;background:radial-gradient(ellipse at center,rgba(34,197,94,.28),transparent 70%);animation:blob-drift-b 30s ease-in-out infinite alternate}@keyframes blob-drift-a{0%{transform:translate(0) scale(1)}33%{transform:translate(60px,40px) scale(1.08)}66%{transform:translate(20px,80px) scale(.96)}to{transform:translate(80px,20px) scale(1.04)}}@keyframes blob-drift-b{0%{transform:translate(0) scale(1)}33%{transform:translate(-50px,-30px) scale(1.06)}66%{transform:translate(-20px,-60px) scale(.94)}to{transform:translate(-70px,-15px) scale(1.02)}}.app-shell:before{content:"";position:fixed;width:400px;height:350px;top:40%;left:30%;border-radius:50%;pointer-events:none;z-index:0;filter:blur(100px);opacity:.22;background:radial-gradient(ellipse at center,rgba(3,105,161,.5),transparent 70%);animation:blob-drift-c 18s ease-in-out infinite alternate}@keyframes blob-drift-c{0%{transform:translate(0) scale(1)}50%{transform:translate(-40px,50px) scale(1.1)}to{transform:translate(30px,-30px) scale(.92)}}.app-shell,.site-footer{position:relative;z-index:1}.site-header{position:relative;z-index:110}.site-header{background:#f0f9ffb8;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid rgba(186,230,253,.6);box-shadow:0 1px 4px #0369a10f,inset 0 1px #fffc}@supports not (backdrop-filter: blur(1px)){.site-header{background:#e0f2fe}}.tool-card{background:linear-gradient(135deg,#ffffffd1,#f0f9ff99);backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);border:1px solid rgba(186,230,253,.55);box-shadow:var(--shadow-sm),inset 0 1px #ffffffe6;transition:box-shadow var(--duration-base) var(--ease-spring),transform var(--duration-base) var(--ease-spring),border-color var(--duration-base) ease}.tool-card:hover,.tool-card:focus-visible{box-shadow:0 20px 40px #0369a124,0 0 0 1px #0ea5e959,0 0 24px #0ea5e92e;transform:scale(1.03) translateY(-3px);border-color:#0ea5e999}@supports not (backdrop-filter: blur(1px)){.tool-card{background:var(--color-surface)}}.settings-panel{background:linear-gradient(135deg,#ffffffe6,#f0f9ffb3);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(186,230,253,.5);box-shadow:var(--shadow-sm),inset 0 1px #ffffffd9}@supports not (backdrop-filter: blur(1px)){.settings-panel{background:var(--color-surface)}}.completion{background:linear-gradient(135deg,#f0fdf4eb,#dcfce7bf);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(187,247,208,.7);box-shadow:0 8px 32px #22c55e1a,inset 0 1px #ffffffe6}@supports not (backdrop-filter: blur(1px)){.completion{background:var(--color-green-zone-bg-ready)}}.btn-primary{transition:background var(--duration-base) ease,transform var(--duration-base) var(--ease-spring),box-shadow var(--duration-base) var(--ease-spring)}.btn-primary:hover:not(:disabled){background:#16a34a;box-shadow:0 8px 24px #22c55e59,0 0 0 3px #22c55e26;transform:scale(1.02) translateY(-1px)}.tool-card:hover .tool-card__cta svg,.tool-card:focus-visible .tool-card__cta svg{transform:translate(3px);transition:transform var(--duration-fast) var(--ease-spring)}.tool-card__cta svg{transition:transform var(--duration-fast) ease}.tool-card:hover .tool-card__icon svg,.tool-card:focus-visible .tool-card__icon svg{animation:icon-pulse .4s var(--ease-spring) both}@keyframes icon-pulse{0%{transform:scale(1)}50%{transform:scale(1.15) rotate(3deg)}to{transform:scale(1.04) rotate(0)}}[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity var(--duration-reveal) var(--ease-spring),transform var(--duration-reveal) var(--ease-spring)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}[data-reveal].is-visible .tool-card:nth-child(1){transition-delay:0ms}[data-reveal].is-visible .tool-card:nth-child(2){transition-delay:40ms}[data-reveal].is-visible .tool-card:nth-child(3){transition-delay:80ms}[data-reveal].is-visible .tool-card:nth-child(4){transition-delay:.12s}[data-reveal].is-visible .tool-card:nth-child(5){transition-delay:.16s}[data-reveal].is-visible .tool-card:nth-child(6){transition-delay:.2s}[data-reveal] .tool-card{opacity:0;transform:translateY(14px);transition:opacity var(--duration-reveal) var(--ease-spring),transform var(--duration-reveal) var(--ease-spring),box-shadow var(--duration-base) var(--ease-spring),border-color var(--duration-base) ease}[data-reveal].is-visible .tool-card{opacity:1;transform:translateY(0)}.images-to-pdf-workspace,.pdf-to-images-workspace,.page-numbers-workspace,.compress-workspace,.extract-text-workspace,.metadata-workspace,.organize-workspace{grid-template-columns:1fr;max-width:720px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body:before,body:after,.app-shell:before{animation:none!important}.scan-progress{animation:none;transform:translateY(calc(var(--scan-height, 140px) * .3));opacity:1}.green-zone__icon svg{animation:none;opacity:1}.tool-card:hover,.tool-card:focus-visible{transform:none}.tool-card:hover .tool-card__icon svg,.tool-card:focus-visible .tool-card__icon svg{animation:none}.tool-card:hover .tool-card__cta svg,.tool-card:focus-visible .tool-card__cta svg{transform:none}.btn-primary:hover:not(:disabled),.tool-panel button:hover:not(:disabled){transform:none}.completion{animation:none}[data-reveal],[data-reveal] .tool-card{opacity:1!important;transform:none!important;transition:none!important}.home-hero .eyebrow,.home-hero h1,.home-hero .summary,.home-hero .home-trust-list,.tool-grid .tool-card{animation:none;opacity:1;transform:none}}.home-search{margin-top:22px;width:100%;max-width:520px}.home-search__label{display:block;font-size:.82rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.home-search__field{position:relative;display:flex;align-items:center}.home-search__input{width:100%;padding:12px 40px 12px 14px;font-size:1rem;color:var(--color-text);background:var(--color-surface, #fff);border:1px solid var(--color-border, #cbd5e1);border-radius:10px;outline:none;transition:border-color .12s ease,box-shadow .12s ease}.home-search__input::placeholder{color:var(--color-text-faint)}.home-search__input:focus-visible{border-color:var(--color-cta);box-shadow:0 0 0 3px #22c55e2e}.home-search__clear{position:absolute;right:8px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;color:var(--color-text-faint);background:transparent;border:none;border-radius:6px;cursor:pointer}.home-search__clear:hover{color:var(--color-text);background:var(--color-border-subtle)}.home-search__empty{color:var(--color-text-muted);font-size:.95rem;padding:8px 0}.home-search__empty:empty{padding:0}.use-cases{margin:28px 0 8px;padding:18px 20px;background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:12px}.use-cases h2{margin:0 0 10px;font-size:1.05rem;color:var(--color-text)}.use-cases__list{margin:0;padding-left:1.1rem;display:grid;gap:7px}.use-cases__list li{color:var(--color-text-muted);font-size:.94rem;line-height:1.45}.home-trust-badges{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.home-trust-badges li{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-cta);border-radius:999px}.home-trust-badges li:before{content:"✓";color:var(--color-cta);font-weight:800}.quick-answer{margin:24px 0 8px;padding:18px 20px;background:var(--color-green-zone-bg);border:1px solid var(--color-green-zone-border);border-radius:12px}.quick-answer h2{margin:0 0 12px;font-size:1.05rem;color:var(--color-text)}.quick-answer__list{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:6px 16px}.quick-answer__list dt{font-weight:600;color:var(--color-text-secondary);font-size:.9rem}.quick-answer__list dd{margin:0;color:var(--color-text-muted);font-size:.92rem;line-height:1.45}@media(max-width:540px){.quick-answer__list{grid-template-columns:1fr;gap:2px 0}.quick-answer__list dd{margin-bottom:8px}}.related-tools{margin:24px 0 8px}.related-tools h2{margin:0 0 10px;font-size:1.05rem;color:var(--color-text)}.related-tools__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.related-tools__list a{display:inline-flex;padding:7px 13px;font-size:.88rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:999px;text-decoration:none;transition:border-color .12s ease,background .12s ease}.related-tools__list a:hover{border-color:var(--color-cta);background:var(--color-surface)}.app-shell--editor{padding-top:var(--space-lg)}.editor-workspace>*:not(.editor-app){width:min(760px,100%);justify-self:center}.editor-hero{margin-top:var(--space-xl)}.editor-app{--ed-bar: #0b3a56;--ed-bar-line: rgba(255, 255, 255, .16);--ed-panel: #ffffff;--ed-rail: #f4f8fb;--ed-line: #dde8f1;--ed-line-soft: #eaf2f8;--ed-ink: #10344b;--ed-muted: #5c7a91;--ed-stage: #ccdbe7;--ed-radius: 10px;--ed-radius-sm: 7px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:min(calc(100dvh - 9rem),68rem);min-height:38rem;overflow:clip;background:var(--ed-panel);border:1px solid var(--color-border);border-radius:14px;box-shadow:var(--shadow-panel)}.editor-app:fullscreen{height:100dvh;max-height:none;border:0;border-radius:0}.editor-icon{width:20px;height:20px;flex-shrink:0}.editor-topbar{display:flex;align-items:center;gap:var(--space-md);min-height:3.5rem;padding:8px var(--space-md);color:#fff;background:var(--ed-bar)}.editor-topbar__brand{display:flex;align-items:center;gap:8px;flex-shrink:0}.editor-topbar__mark{display:grid;place-items:center;width:30px;height:30px;color:#fff;background:var(--color-cta);border-radius:8px}.editor-topbar__mark .editor-icon{width:18px;height:18px}.editor-topbar__kind{font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.editor-topbar__doc{display:flex;align-items:center;gap:7px;min-width:0;padding:5px 10px;background:#ffffff17;border:1px solid var(--ed-bar-line);border-radius:999px}.editor-topbar__doc-icon{width:16px;height:16px;color:#ffffffa6}.editor-topbar__name{min-width:0;font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-topbar__size{flex-shrink:0;color:#fff9;font-size:.75rem;font-variant-numeric:tabular-nums}.editor-topbar__actions{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.editor-topbar__actions a{text-decoration:none}.editor-topbar__actions .btn-primary[aria-disabled=true]{opacity:.45;pointer-events:none}.editor-topbar__clear,.editor-topbar__icon-btn,.editor-topbar .export-menu__toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;padding:0 12px;font:inherit;font-size:.85rem;font-weight:600;color:#ffffffe0;background:#ffffff0f;border:1px solid var(--ed-bar-line);border-radius:var(--ed-radius-sm);cursor:pointer}.editor-topbar__icon-btn{padding:0}.editor-topbar__clear:hover:not(:disabled),.editor-topbar__icon-btn:hover,.editor-topbar .export-menu__toggle:hover{color:#fff;background:#ffffff29}.editor-topbar__icon-btn[aria-pressed=true]{color:#fff;background:#fff3}.editor-topbar__clear:disabled{opacity:.4;cursor:not-allowed}.editor-topbar__clear:hover:not(:disabled){color:#fff;background:#dc3c3c8c;border-color:#ffa0a080}.editor-topbar__clear .editor-icon{width:17px;height:17px}.editor-topbar .btn-primary{min-height:40px;padding:0 16px;border-radius:var(--ed-radius-sm);font-size:.9rem}.editor-topbar .export-menu__panel{color:var(--color-text)}.editor-topbar .export-menu__panel{max-height:min(70vh,calc(100dvh - 18rem))}.editor-error{margin:0 0 var(--space-md);padding:var(--space-md);color:var(--color-error);background:var(--color-error-bg);border-radius:8px}.editor-notices{margin:0 0 var(--space-md);padding:var(--space-md) var(--space-md) var(--space-md) var(--space-xl);color:var(--color-text-secondary);background:var(--color-surface-raised);border-radius:8px;font-size:.9rem}.editor-shell{display:grid;grid-template-columns:6rem minmax(15rem,17rem) minmax(0,1fr) minmax(17rem,20rem);grid-template-areas:"rail panel stage props";min-height:0}.editor-rail{grid-area:rail}.editor-panel{grid-area:panel}.editor-stage{grid-area:stage}.editor-props{grid-area:props}.editor-rail{min-width:0;padding:var(--space-sm) 6px;overflow-y:auto;background:var(--ed-rail);border-right:1px solid var(--ed-line)}.editor-rail__items{display:flex;flex-direction:column;gap:4px}.editor-rail__btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:4.25rem;padding:9px 4px;font:inherit;font-size:.66rem;line-height:1.15;color:var(--ed-muted);background:none;border:1px solid transparent;border-radius:var(--ed-radius-sm);cursor:pointer;text-align:center;overflow-wrap:anywhere}.editor-rail__btn:hover{color:var(--color-primary);background:#0369a112}.editor-rail__btn.is-active{color:var(--color-primary);font-weight:600;background:var(--ed-panel);border-color:var(--ed-line);box-shadow:var(--shadow-sm)}.editor-rail__btn .editor-icon{width:22px;height:22px}.editor-panel{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:var(--ed-panel);border-right:1px solid var(--ed-line)}.op-catalog{display:flex;flex-direction:column;flex:1;min-height:0}.op-catalog__search{position:relative;display:flex;align-items:center;padding:var(--space-sm) var(--space-sm) 0}.op-catalog__search .editor-icon{position:absolute;left:18px;width:17px;height:17px;color:var(--color-text-faint);pointer-events:none}.op-catalog__search input{width:100%;min-height:36px;padding:0 10px 0 32px;font:inherit;font-size:.85rem;color:var(--color-text);background:var(--ed-rail);border:1px solid var(--ed-line);border-radius:var(--ed-radius-sm)}.op-catalog__search input:focus{background:var(--color-surface);outline:2px solid var(--color-secondary);outline-offset:1px}.op-catalog__kicker{display:flex;align-items:center;gap:8px;margin:var(--space-md) var(--space-sm) 6px;font-family:var(--font-display);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ed-muted)}.op-catalog__kicker:after{content:"";flex:1;height:1px;background:var(--ed-line-soft)}.op-catalog__kicker-count{order:1;color:var(--color-text-faint);font-size:.68rem;font-weight:600;letter-spacing:0}.op-catalog__list{display:grid;gap:4px;flex:1;min-height:0;overflow-y:auto;list-style:none;margin:0;padding:0 var(--space-sm) var(--space-md)}.op-catalog__op{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;min-height:40px;padding:7px 10px;font:inherit;font-size:.85rem;color:var(--ed-ink);background:none;border:1px solid transparent;border-radius:var(--ed-radius-sm);cursor:pointer;text-align:left;text-decoration:none}.op-catalog__op:hover:not(:disabled){color:var(--color-primary);background:#0369a10f;border-color:#0369a12e}.op-catalog__op:disabled{color:var(--color-text-faint);background:var(--color-surface-raised);cursor:not-allowed}.op-catalog__op-text{display:grid;min-width:0}.op-catalog__op-name{overflow-wrap:anywhere}.op-catalog__op-group{color:var(--color-text-faint);font-size:.7rem}.op-catalog__op-add{width:18px;height:18px;color:var(--color-text-faint)}.op-catalog__op:hover:not(:disabled) .op-catalog__op-add{color:var(--color-cta)}.op-catalog__op--external{color:var(--color-primary)}.op-catalog__empty{margin:0 var(--space-sm) var(--space-md);color:var(--color-text-faint);font-size:.85rem}.editor-stage{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--ed-stage)}.editor-zoom[hidden]{display:none}.editor-zoom{position:absolute;right:var(--space-md);bottom:var(--space-md);z-index:4;display:flex;align-items:center;gap:2px;padding:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-md)}.editor-zoom button{min-width:36px;min-height:36px;font:inherit;font-size:1.1rem;line-height:1;color:var(--color-text);background:var(--color-surface-raised);border:0;border-radius:8px;cursor:pointer}.editor-zoom button:hover:not(:disabled){color:var(--color-primary);background:var(--color-border-subtle)}.editor-zoom button:disabled{opacity:.35;cursor:not-allowed}.editor-zoom output{min-width:3.4rem;color:var(--color-text-muted);font-size:.78rem;font-variant-numeric:tabular-nums;text-align:center}.editor-stage__status{padding:var(--space-sm) var(--space-md) 0}.editor-stage__status>*{margin-bottom:var(--space-sm)}.editor-stage__scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--space-lg) var(--space-md) 4rem}.editor-stage__scroll--open{display:grid;place-items:center;padding-bottom:var(--space-lg)}.editor-open{width:min(30rem,100%)}.editor-pagechip{position:absolute;left:var(--space-md);bottom:var(--space-md);z-index:4;margin:0;padding:7px 12px;color:var(--ed-ink);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--ed-radius-sm);box-shadow:var(--shadow-md);font-size:.78rem;font-weight:600}.editor-props{display:flex;flex-direction:column;min-width:0;overflow-y:auto;background:var(--ed-panel);border-left:1px solid var(--ed-line)}.editor-props__section{padding:0 var(--space-md) var(--space-md)}.editor-props__section+.editor-props__section{border-top:1px solid var(--ed-line)}.editor-props .info-panel,.editor-sheet .info-panel{margin-top:0;padding-top:0;border-top:0}@media(min-width:1180px){.editor-props .recipe-list__row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"index name" ".     actions";row-gap:2px}.editor-props .recipe-list__index{grid-area:index}.editor-props .recipe-list__name{grid-area:name;min-height:0;padding:2px 0}.editor-props .recipe-list__actions{grid-area:actions;justify-self:start}.editor-props .recipe-list__icon-btn{width:34px;height:34px}}.editor-props .op-settings,.editor-props .recipe-list__error,.editor-sheet .op-settings,.editor-sheet .recipe-list__error{margin-left:0}.editor-panel__heading{display:flex;align-items:center;gap:8px;min-height:2.9rem;margin:0 calc(var(--space-md) * -1) var(--space-sm);padding:0 var(--space-md);border-bottom:1px solid var(--ed-line-soft);font-family:var(--font-display);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ed-ink)}.editor-panel__heading .editor-icon{width:16px;height:16px}.editor-panel__badge{min-width:22px;margin-left:auto;padding:1px 7px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:0;text-align:center}.editor-statusbar{border-top:1px solid var(--ed-line);background:var(--ed-rail)}.editor-statusbar .green-zone{gap:8px;min-height:0;margin:0;padding:7px var(--space-md);background:none;border:0;border-radius:0;box-shadow:none}.editor-statusbar .green-zone__text{flex-direction:row;gap:6px;align-items:baseline}.editor-statusbar .green-zone__primary{font-size:.78rem}.editor-statusbar .green-zone__secondary{display:none}.editor-statusbar .green-zone__icon svg{width:15px;height:15px}.editor-tabbar{display:none}.op-settings__form-fields .op-settings__field:first-child{margin-top:0}.recipe-list{list-style:none;margin:var(--space-sm) 0 0;padding:0;counter-reset:none}.recipe-list__empty{margin:var(--space-md) 0 0;color:var(--color-text-faint);font-size:.9rem}.recipe-list__item{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-subtle)}.editor-props .recipe-list__item,.editor-sheet .recipe-list__item{padding:4px 8px;border-bottom:0;border:1px solid var(--ed-line);border-radius:var(--ed-radius-sm);background:var(--ed-panel)}.editor-props .recipe-list__item+.recipe-list__item,.editor-sheet .recipe-list__item+.recipe-list__item{margin-top:6px}.editor-props .recipe-list__empty,.editor-sheet .recipe-list__empty{margin:0;padding:var(--space-lg) var(--space-md);color:var(--ed-muted);font-size:.82rem;line-height:1.55;text-align:center;background:var(--ed-rail);border:1px dashed var(--ed-line);border-radius:var(--ed-radius-sm)}.recipe-list__item.is-disabled .recipe-list__name{opacity:.5;text-decoration:line-through}.recipe-list__item.is-failed{background:var(--color-error-bg);border-radius:8px;padding-left:var(--space-sm);padding-right:var(--space-sm)}.recipe-list__row{display:flex;align-items:center;gap:var(--space-sm)}.recipe-list__index{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--color-border-subtle);color:var(--color-primary);font-size:.75rem;font-weight:700;line-height:22px;text-align:center}.recipe-list__name{flex:1;min-width:0;min-height:44px;font:inherit;font-weight:600;color:var(--color-text);background:none;border:0;cursor:pointer;text-align:left}.recipe-list__actions{display:flex;gap:2px;flex-shrink:0}.recipe-list__icon-btn{width:40px;height:40px;font-size:1rem;color:var(--color-text-muted);background:none;border:0;border-radius:6px;cursor:pointer}.recipe-list__icon-btn:hover:not(:disabled){background:var(--color-border-subtle);color:var(--color-primary)}.recipe-list__icon-btn:disabled{opacity:.3;cursor:not-allowed}.recipe-list__icon-btn--remove:hover{color:var(--color-error)}.recipe-list__error{margin:var(--space-xs) 0 0 30px;color:var(--color-error);font-size:.85rem}.op-settings{margin:var(--space-sm) 0 var(--space-sm) 30px;padding:var(--space-md);background:var(--color-surface-raised);border-radius:8px}.op-settings__notice,.op-settings__no-options{margin:0 0 var(--space-md);color:var(--color-text-muted);font-size:.85rem}.op-settings__field+.op-settings__field{margin-top:var(--space-md)}.op-settings__label{display:block;margin-bottom:4px;font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.op-settings__input,.op-settings__select{width:100%;min-height:44px;padding:8px 10px;font:inherit;font-size:.9rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.op-settings__color{width:64px;height:44px;padding:2px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.op-settings__hint{margin:4px 0 0;color:var(--color-text-faint);font-size:.8rem}.op-settings__files{margin:6px 0 0;padding-left:18px;color:var(--color-text-muted);font-size:.8rem;overflow-wrap:anywhere}.op-settings__deep-link{margin:var(--space-md) 0 0;font-size:.85rem}.editor-workspace{width:min(1200px,100%)}.editor-preview__manual{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md);background:var(--color-surface-raised);border:1px dashed var(--color-border);border-radius:8px}.editor-preview__manual p{margin:0;font-size:.9rem;color:var(--color-text-muted)}.page-preview__empty,.page-preview__error{padding:var(--space-xl);color:var(--color-text-faint);text-align:center;background:var(--color-surface-raised);border-radius:12px}.page-preview__grid{display:grid;grid-template-columns:repeat(auto-fill,min(var(--page-thumb-w, 120px),100%));justify-content:center;gap:var(--space-md);list-style:none;margin:0;padding:0}.page-preview__cell{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.editor-stage .page-preview__cell{border:0;border-radius:2px;box-shadow:0 1px 2px #10344b2e,0 10px 24px #10344b29}.editor-stage .page-preview__num{background:#10344bd1}.editor-stage .page-preview__empty,.editor-stage .page-preview__error{background:#fff9;border:1px dashed var(--color-border)}.page-preview__holder{display:block}.page-preview__canvas{display:block;width:100%;height:auto}.page-preview__placeholder{width:100%;aspect-ratio:1 / 1.414;background:var(--color-surface-raised)}.page-preview__num{position:absolute;bottom:4px;right:4px;padding:1px 6px;border-radius:4px;background:#0c4a6ebf;color:#fff;font-size:.7rem}.editor-sheet__backdrop{position:fixed;inset:0;z-index:190;background:#0c4a6e6b}.editor-sheet{position:fixed;z-index:200;left:0;right:0;bottom:0;display:flex;flex-direction:column;height:min(78dvh,44rem);padding-bottom:env(safe-area-inset-bottom);background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:16px 16px 0 0;box-shadow:0 -10px 30px #0369a12e}.editor-sheet__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border-subtle)}.editor-sheet__bar h2{margin:0;font-size:1rem}.editor-sheet__close{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--color-text-muted);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:10px;cursor:pointer}.editor-sheet__body{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:var(--space-md)}.editor-sheet .op-catalog__list{overflow:visible;padding-inline:0}.editor-sheet .op-catalog__search{padding-inline:0}.editor-sheet .op-catalog__search .editor-icon{left:10px}.editor-sheet .op-catalog__kicker,.editor-sheet .op-catalog__empty{margin-inline:0}@media(max-width:1179px){.editor-shell{grid-template-columns:6rem minmax(14rem,16rem) minmax(0,1fr);grid-template-areas:"rail panel stage" "props props props";grid-template-rows:minmax(0,1fr) auto}.editor-props{flex-direction:row;max-height:17rem;border-left:0;border-top:1px solid var(--color-border-subtle)}.editor-props__section{flex:1;min-width:0;max-height:17rem;overflow-y:auto}.editor-props__section+.editor-props__section{border-top:0;border-left:1px solid var(--color-border-subtle)}}@media(max-width:767px){.editor-app{grid-template-rows:auto minmax(0,1fr) auto auto;height:calc(100dvh - 5rem);min-height:30rem}.editor-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-template-areas:"stage"}.editor-rail,.editor-panel,.editor-props{display:none}.editor-topbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:8px 10px}.editor-topbar__kind{display:none}.editor-topbar__doc{min-width:0}.editor-topbar__actions{grid-column:1 / -1;width:100%}.editor-topbar__clear{padding:0 12px}.editor-topbar__clear span{display:none}.editor-topbar__actions .export-menu{flex:1;flex-wrap:nowrap}.editor-topbar__actions .export-menu>.btn-primary,.editor-topbar__actions .export-menu>.export-menu__toggle{flex:1;display:flex;align-items:center;justify-content:center;padding-inline:10px;font-size:.88rem;white-space:nowrap;text-align:center}.editor-tabbar{display:grid;grid-template-columns:repeat(3,1fr);background:var(--color-surface);border-top:1px solid var(--color-border)}.editor-tabbar__btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:3.75rem;padding:6px 4px;font:inherit;font-size:.66rem;line-height:1.15;color:var(--color-text-muted);background:none;border:0;cursor:pointer;text-align:center}.editor-tabbar__btn.is-active{color:var(--color-primary);font-weight:600}.editor-tabbar__badge{position:absolute;top:6px;right:calc(50% - 26px);min-width:18px;padding:0 5px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.62rem;font-weight:700}.editor-sheet .editor-rail{display:block;flex-shrink:0;margin-bottom:var(--space-sm);padding:0 0 var(--space-sm);overflow-x:auto;background:none;border-right:0;border-bottom:1px solid var(--color-border-subtle)}.editor-sheet .editor-rail__items{flex-direction:row;width:max-content}.editor-sheet .editor-rail__btn{flex-direction:row;gap:6px;min-height:40px;padding:6px 12px;font-size:.8rem;border-color:var(--color-border);border-radius:999px}.editor-sheet .editor-rail__btn.is-active{color:#fff;background:var(--color-primary);border-color:var(--color-primary)}.editor-zoom{right:var(--space-sm);bottom:var(--space-md)}.editor-zoom button{min-width:40px;min-height:40px}.op-settings,.recipe-list__error{margin-left:0}.recipe-list__icon-btn{width:44px;height:44px}}.workspace,[class$=-workspace]{grid-template-columns:minmax(0,1fr)}.export-menu{position:relative;display:flex;gap:var(--space-sm);flex-wrap:wrap}.export-menu__panel{position:absolute;top:calc(100% + 6px);right:0;z-index:30;width:min(360px,90vw);max-height:70vh;overflow-y:auto;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-panel);text-align:left}.export-menu__panel[hidden]{display:none}.export-menu__list,.info-panel__list{list-style:none;margin:0;padding:0}.export-menu__item,.info-panel__item{display:block;width:100%;min-height:44px;padding:8px 10px;font:inherit;font-size:.9rem;color:var(--color-text-secondary);background:none;border:0;border-radius:6px;cursor:pointer;text-align:left;text-decoration:none}.export-menu__item:hover,.info-panel__item:hover{background:var(--color-border-subtle);color:var(--color-primary)}.export-menu__item[aria-pressed=true],.info-panel__item[aria-pressed=true]{background:var(--color-border-subtle);color:var(--color-primary);font-weight:600}.export-menu__item--external{color:var(--color-primary)}.export-menu__settings{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border-subtle)}.export-menu__run{width:100%;margin-top:var(--space-sm)}.export-menu__result{margin:var(--space-md) 0 var(--space-xs);font-size:.85rem;color:var(--color-text-muted)}.export-menu__files{margin:0;padding-left:18px;font-size:.9rem;overflow-wrap:anywhere}.info-panel{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border-subtle)}.info-panel__list{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:var(--space-sm) 0}.info-panel__list>li{flex:0 0 auto}.info-panel__item{width:auto;border:1px solid var(--color-border)}.editor-props .info-panel__item,.editor-sheet .info-panel__item{min-height:36px;padding:6px 10px;font-size:.82rem;border-color:var(--ed-line);border-radius:var(--ed-radius-sm)}.info-panel__rows{margin:var(--space-md) 0 0}.info-panel__row{display:flex;justify-content:space-between;gap:var(--space-md);padding:6px 0;border-bottom:1px solid var(--color-border-subtle);font-size:.9rem}.info-panel__row dt{color:var(--color-text-muted)}.info-panel__row dd{margin:0;font-weight:600;overflow-wrap:anywhere}.asset-gate{margin:var(--space-md) 0;padding:var(--space-md);background:var(--color-green-zone-bg);border:1px solid var(--color-green-zone-border);border-radius:8px}.asset-gate--refused{background:var(--color-error-bg);border-color:#fecaca}.asset-gate__title{margin:0 0 var(--space-xs);font-weight:700;font-size:.9rem}.asset-gate__body{margin:0 0 var(--space-sm);font-size:.85rem;color:var(--color-text-muted)}
