@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--paper:#fbfbf9;--paper-2:#f4f4f0;--surface:#fff;--surface-2:#f8f8f5;--ink:#15171a;--ink-2:#565c63;--ink-3:#878d95;--ink-4:#b4b9bf;--line:#e5e6e1;--line-2:#d6d8d2;--line-strong:#c2c5be;--signal:#0e9e6b;--signal-ink:#0a7c53;--signal-bright:#16b97e;--signal-wash:#e7f5ee;--signal-line:#bce3d2;--info:#2563c9;--info-wash:#e8effc;--info-line:#bdd2f2;--warn:#b7791f;--warn-wash:#fbf1dd;--warn-line:#ecd7a6;--danger:#d1473b;--danger-wash:#fbe9e7;--danger-line:#f2c4be;--focus-ring:0 0 0 3px #0e9e6b47;--font-sans:"IBM Plex Sans JP", "IBM Plex Sans", system-ui, -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--w-light:300;--w-regular:400;--w-medium:500;--w-semibold:600;--w-bold:700;--fs-display:52px;--fs-h1:38px;--fs-h2:28px;--fs-h3:22px;--fs-h4:18px;--fs-lg:17px;--fs-body:15px;--fs-sm:13px;--fs-xs:12px;--fs-micro:11px;--lh-tight:1.12;--lh-snug:1.3;--lh-body:1.65;--tracking-label:.14em;--tracking-tight:-.01em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;--page-max:1200px;--page-pad-x:max(var(--sp-6), env(safe-area-inset-left,0px));--page-pad-x-end:max(var(--sp-6), env(safe-area-inset-right,0px));--r-xs:3px;--r-sm:5px;--r-md:7px;--r-lg:10px;--r-xl:14px;--r-pill:999px;--sh-1:0 1px 2px #15171a0d;--sh-2:0 2px 4px #15171a0f, 0 1px 2px #15171a0a;--sh-3:0 6px 16px #15171a14, 0 2px 4px #15171a0a;--sh-4:0 16px 40px #15171a1f, 0 4px 10px #15171a0f;--ease:cubic-bezier(.22, .61, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-fast:.12s;--dur:.17s;--dur-slow:.28s;--grid-dot:#15171a0d;--grid-line:#15171a0b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--paper:#0d0f11;--paper-2:#070809;--surface:#1e2329;--surface-2:#282e35;--ink:#ecedea;--ink-2:#a7adb4;--ink-3:#767c84;--ink-4:#4c5158;--line:#313841;--line-2:#3d444c;--line-strong:#4e555d;--signal:#18b87e;--signal-ink:#52d2a2;--signal-bright:#2bcb8f;--signal-wash:#0f2a22;--signal-line:#1f4e3c;--info:#5c9df5;--info-wash:#142338;--info-line:#294a71;--warn:#dca640;--warn-wash:#2c2410;--warn-line:#564420;--danger:#e36a5e;--danger-wash:#321613;--danger-line:#5c2922;--focus-ring:0 0 0 3px #18b87e57;--sh-1:0 1px 2px #0006;--sh-2:0 2px 4px #00000075, 0 1px 2px #00000052;--sh-3:0 6px 16px #00000085, 0 2px 4px #00000057;--sh-4:0 18px 44px #0000009e, 0 4px 12px #0000006b;--grid-dot:#ffffff0e;--grid-line:#ffffff0b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0d0f11;--paper-2:#070809;--surface:#1e2329;--surface-2:#282e35;--ink:#ecedea;--ink-2:#a7adb4;--ink-3:#767c84;--ink-4:#4c5158;--line:#313841;--line-2:#3d444c;--line-strong:#4e555d;--signal:#18b87e;--signal-ink:#52d2a2;--signal-bright:#2bcb8f;--signal-wash:#0f2a22;--signal-line:#1f4e3c;--info:#5c9df5;--info-wash:#142338;--info-line:#294a71;--warn:#dca640;--warn-wash:#2c2410;--warn-line:#564420;--danger:#e36a5e;--danger-wash:#321613;--danger-line:#5c2922;--focus-ring:0 0 0 3px #18b87e57;--sh-1:0 1px 2px #0006;--sh-2:0 2px 4px #00000075, 0 1px 2px #00000052;--sh-3:0 6px 16px #00000085, 0 2px 4px #00000057;--sh-4:0 18px 44px #0000009e, 0 4px 12px #0000006b;--grid-dot:#ffffff0e;--grid-line:#ffffff0b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}html{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scrollbar-gutter:stable}body{background:var(--paper);min-height:100vh;color:var(--ink)}html:has(.tool-split){scrollbar-gutter:stable;height:100dvh;overflow:hidden}html:has(.tool-split) body{height:100dvh;min-height:0;overflow:hidden}html:has(.tool-split) .preview-auth-content{flex:1;height:100%;min-height:0;overflow:hidden}html:has(.tool-split) .site-header{flex-shrink:0}html:has(.tool-split) .site-main{flex:1;min-height:0;overflow:hidden}a{color:var(--signal-ink);text-underline-offset:2px;text-decoration:none}.mono-label{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3)}.tool-code{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--w-medium);color:var(--ink-3);letter-spacing:.02em}.site-header{z-index:100;-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:background var(--dur) var(--ease);padding-top:env(safe-area-inset-top,0px);background:#fbfbf9e0;position:sticky;top:0}[data-theme=dark] .site-header{background:#0d0f11e0}.header-inner{max-width:var(--page-max);padding:0 var(--page-pad-x-end) 0 var(--page-pad-x);align-items:center;gap:var(--sp-6);height:56px;margin:0 auto;display:flex}.header-logo{align-items:center;gap:var(--sp-2);flex-shrink:0;text-decoration:none;display:flex}.header-logo-sub{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--w-semibold);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;padding-left:var(--sp-3);border-left:1px solid var(--line-2);margin-left:2px}.header-version{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-medium);letter-spacing:.04em;color:var(--ink-3)}.header-spacer{flex:1}.header-actions{align-items:center;gap:var(--sp-2);display:flex}.btn-icon{border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--surface);width:34px;height:34px;color:var(--ink-2);cursor:pointer;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.btn-icon:hover{background:var(--surface-2);border-color:var(--line-strong);color:var(--ink)}.btn-icon:active{transform:translateY(1px)}.btn-icon:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-icon svg{stroke-width:1.75px;width:16px;height:16px}.hero{padding:var(--sp-20) 0 var(--sp-16);background:var(--paper);position:relative;overflow:hidden}.hero-grid-bg{background-image:radial-gradient(circle, var(--grid-dot) 1px, transparent 1px);pointer-events:none;background-size:14px 14px;position:absolute;inset:0}.hero-inner{max-width:var(--page-max);padding:0 var(--page-pad-x-end) 0 var(--page-pad-x);margin:0 auto;position:relative}.hero-eyebrow{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--signal-ink);align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-5);display:inline-flex}[data-theme=dark] .hero-eyebrow{color:var(--signal)}.hero-eyebrow-dot{background:var(--signal);border-radius:50%;flex-shrink:0;width:6px;height:6px}.hero-headline{font-size:var(--fs-display);font-weight:var(--w-bold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--ink);max-width:18em;margin-bottom:var(--sp-5)}.hero-sub{font-size:var(--fs-lg);line-height:var(--lh-body);color:var(--ink-2);max-width:56rem;margin-bottom:var(--sp-8);line-break:strict;overflow-wrap:normal}.hero-meta{font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:var(--w-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.hero-meta-dot{background:var(--ink-4);border-radius:50%;width:3px;height:3px}.catalog{max-width:var(--page-max);padding:var(--sp-8) var(--page-pad-x-end) var(--sp-24) var(--page-pad-x);margin:0 auto}.catalog-header{margin-bottom:var(--sp-5);justify-content:space-between;align-items:center;gap:var(--sp-4);display:flex}.catalog-count{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ink-3);letter-spacing:.04em;white-space:nowrap}.catalog-tabs-wrap{scrollbar-width:none;margin-bottom:var(--sp-8);overflow-x:auto}.catalog-tabs-wrap::-webkit-scrollbar{display:none}.catalog-tabs{border-bottom:1px solid var(--line);min-width:max-content;display:flex}.catalog-tab{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--w-medium);color:var(--ink-3);padding:var(--sp-3) var(--sp-4);cursor:pointer;white-space:nowrap;align-items:center;gap:var(--sp-2);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;line-height:1;display:flex}.catalog-tab:hover{color:var(--ink)}.catalog-tab.active{color:var(--ink);border-bottom-color:var(--signal)}.catalog-tab svg{stroke-width:1.75px;flex-shrink:0;width:13px;height:13px}.tab-count{font-family:var(--font-mono);font-size:10px;font-weight:var(--w-semibold);color:var(--ink-4);background:var(--paper-2);border-radius:var(--r-pill);padding:1px 6px;line-height:1.5}.catalog-tab.active .tab-count{color:var(--signal-ink);background:var(--signal-wash)}[data-theme=dark] .catalog-tab.active .tab-count{color:var(--signal)}.tool-grid{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.catalog-pin{margin-bottom:var(--sp-5)}.catalog-pin-label{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);font-size:var(--fs-xs);font-weight:var(--w-semibold);color:var(--warn);letter-spacing:.04em;display:inline-flex}.catalog-pin-label svg{fill:currentColor;stroke-width:1.75px;flex-shrink:0;width:13px;height:13px}.tool-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--sh-1);height:100%;color:inherit;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;text-decoration:none;display:flex}.tool-card:hover{border-color:var(--line-strong);box-shadow:var(--sh-2);transform:translateY(-1px)}.tool-card.is-soon{background:var(--paper-2)}.tool-card.is-soon:hover{transform:none}.tool-card.is-drop,.tool-card.is-busy{border-color:var(--signal);background:var(--signal-wash);box-shadow:var(--sh-2);transform:none}.tool-card.is-static{cursor:default}.tool-card:not(.is-static){cursor:pointer}.tool-card-muted{font-size:var(--fs-xs);color:var(--ink-3)}.catalog-group+.catalog-group{margin-top:var(--sp-10)}.catalog-group-head{margin:0 0 var(--sp-5)}.catalog-group-title{font-size:var(--fs-h4);font-weight:var(--w-semibold);color:var(--ink);letter-spacing:var(--tracking-tight)}.catalog-group-lead{margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-2)}.tool-card-top{margin-bottom:var(--sp-4);justify-content:space-between;align-items:flex-start;display:flex}.tool-card-meta{align-items:center;gap:var(--sp-1);display:flex}.tool-fav{width:32px;height:32px;color:var(--ink-4);cursor:pointer;border-radius:var(--r-md);background:0 0;border:none;justify-content:center;align-items:center;margin:-6px -4px 0 0;display:inline-flex}.tool-fav svg{stroke-width:1.75px;width:16px;height:16px}.tool-fav:hover,.tool-fav.is-on{color:var(--warn)}.tool-fav.is-on svg{fill:currentColor}.tool-card-error,.tool-card-drop-hint{font-size:var(--fs-xs);margin:0 0 var(--sp-3)}.tool-card-error{color:var(--danger)}.tool-card-drop-hint{color:var(--signal-ink)}.tool-tile{border-radius:var(--r-md);background:var(--signal-wash);width:40px;height:40px;color:var(--signal-ink);flex-shrink:0;justify-content:center;align-items:center;display:flex}[data-theme=dark] .tool-tile{color:var(--signal)}.tool-tile svg{stroke-width:1.75px;width:20px;height:20px}.tool-card-body{flex:1}.tool-card-name{font-size:var(--fs-h4);font-weight:var(--w-semibold);line-height:var(--lh-snug);color:var(--ink);margin-bottom:var(--sp-2);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tool-card-desc{font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-2);-webkit-line-clamp:2;line-clamp:2;min-height:calc(var(--fs-sm) * var(--lh-body) * 2);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tool-card-footer{margin-top:var(--sp-5);justify-content:space-between;align-items:center;display:flex}.badge{font-family:var(--font-mono);font-size:10px;font-weight:var(--w-medium);letter-spacing:.04em;border-radius:var(--r-pill);white-space:nowrap;border:1px solid;padding:3px 8px;line-height:1.5}.badge-public{background:var(--signal-wash);color:var(--signal-ink);border-color:var(--signal-line)}[data-theme=dark] .badge-public{color:var(--signal)}.badge-beta{background:var(--info-wash);color:var(--info);border-color:var(--info-line)}.badge-soon{background:var(--warn-wash);color:var(--warn);border-color:var(--warn-line)}.btn{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--w-semibold);border-radius:var(--r-md);cursor:pointer;align-items:center;gap:var(--sp-2);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), transform var(--dur-fast) var(--ease);border:1px solid #0000;padding:7px 13px;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn svg{stroke-width:2px;flex-shrink:0;width:14px;height:14px}.btn-primary{background:var(--signal);color:#fff}.btn-primary:hover{background:var(--signal-bright);color:#fff}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line-2)}.btn-secondary:hover{border-color:var(--line-strong);background:var(--surface-2)}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:var(--sp-10) 0}.footer-inner{max-width:var(--page-max);padding:0 var(--page-pad-x-end) 0 var(--page-pad-x);justify-content:space-between;align-items:center;gap:var(--sp-6);flex-wrap:wrap;margin:0 auto;display:flex}.footer-left{align-items:center;gap:var(--sp-4);display:flex}.footer-copy{font-size:var(--fs-xs);color:var(--ink-3)}.footer-right{align-items:center;gap:var(--sp-3);display:flex}.footer-link{font-size:var(--fs-xs);color:var(--ink-3);transition:color var(--dur) var(--ease);text-decoration:none}.footer-link:hover{color:var(--ink)}.footer-dot{background:var(--ink-4);border-radius:50%;width:3px;height:3px}.no-results{padding:var(--sp-16) var(--sp-6);text-align:center;color:var(--ink-3);font-size:var(--fs-sm);grid-column:1/-1}.info-banner{background:var(--info-wash);border-bottom:1px solid var(--info-line);padding:var(--sp-2) 0}.info-banner-inner{max-width:var(--page-max);padding:0 var(--page-pad-x-end) 0 var(--page-pad-x);align-items:center;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--info);margin:0 auto;display:flex}.info-banner-inner svg{stroke-width:2px;flex-shrink:0;width:13px;height:13px}.preview-auth-content{flex-direction:column;flex:1;min-height:0;display:flex}.site-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.tool-page{width:100%;max-width:720px;padding:clamp(28px, 7vh, 80px) var(--page-pad-x-end) var(--sp-16) var(--page-pad-x);gap:var(--sp-8);flex-direction:column;flex:1;margin-inline:auto;display:flex}.tool-page:has(.page-preview){max-width:none}.tool-page:has(.tool-split){flex:1;grid-template-rows:auto minmax(0,1fr);grid-template-columns:3fr 2fr;gap:0;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0;display:grid;overflow:hidden}.tool-page:has(.tool-split)>.tool-page-header{padding:var(--sp-6) var(--page-pad-x-end) var(--sp-4) var(--page-pad-x);grid-area:1/1}.tool-page:has(.tool-split)>.tool-page-body{display:contents}.tool-page:has(.tool-split) .tool-split{display:contents}.tool-page:has(.tool-split) .tool-controls-stack{overscroll-behavior:contain;min-width:0;min-height:0;padding:0 var(--page-pad-x-end) var(--sp-10) var(--page-pad-x);gap:var(--sp-4);flex-direction:column;grid-area:2/1;display:flex;overflow:auto}.tool-result-pane{gap:var(--sp-3);flex-direction:column;flex:auto;min-width:0;min-height:12rem;display:flex}.tool-result-text{resize:vertical;flex:auto;width:100%;min-height:16rem}.tool-result-empty{color:var(--ink-3);font-size:var(--fs-sm);line-height:var(--lh-body);margin:0}.tool-page-header{align-items:stretch;gap:var(--sp-3);flex-direction:column;display:flex}.tool-page-header-row{align-items:flex-start;gap:var(--sp-4);display:flex}.tool-page-heading{flex:1;min-width:0}.tool-page-title{font-size:var(--fs-h3);font-weight:var(--w-semibold);letter-spacing:var(--tracking-tight);line-height:var(--lh-snug);color:var(--ink)}.tool-page-desc{margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-2);line-height:var(--lh-body);max-width:42em}.tool-phase{gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex}.tool-phase[data-phase=done]{border-color:var(--signal);background:var(--signal-wash)}.tool-phase-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.tool-phase-chip{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line);background:var(--paper);border-radius:var(--r-pill);padding:4px 10px}.tool-phase-chip.is-current{color:var(--signal-ink);border-color:var(--signal-line);background:var(--signal-wash)}.tool-phase[data-phase=done] .tool-phase-chip.is-current{background:var(--paper)}.tool-phase-mode,.tool-phase-outcome,.tool-phase-leave,.tool-stay-local{font-size:var(--fs-sm);color:var(--ink-2);line-height:var(--lh-body);margin:0}.tool-phase-outcome{color:var(--ink)}.tool-stay-local{text-align:center;margin-bottom:var(--sp-3)}.file-drop-hint{margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-2);line-height:var(--lh-body)}.file-drop-hint-link{color:var(--signal-ink);text-underline-offset:2px;text-decoration:underline}.tool-page-body{gap:var(--sp-5);flex-direction:column;flex:1;display:flex}.file-drop{width:100%}.file-drop-zone{justify-content:center;align-items:center;gap:var(--sp-3);min-height:min(46vh,380px);padding:var(--sp-10) var(--sp-6);border:1.5px dashed var(--line-strong);border-radius:var(--r-xl);background-color:var(--surface);background-image:radial-gradient(circle, var(--grid-dot) 1px, transparent 1px);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center;color:var(--ink);transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);background-size:14px 14px;flex-direction:column;display:flex}.file-drop-zone:hover,.file-drop-zone:focus-visible{border-color:var(--signal);box-shadow:var(--focus-ring);outline:none}.file-drop-zone.is-dragging,.file-drop-zone.is-busy{border-color:var(--signal);background-color:var(--signal-wash);box-shadow:var(--focus-ring);border-style:solid}.file-drop-zone.is-busy{pointer-events:none;cursor:wait}.file-drop-zone.is-disabled{pointer-events:none;opacity:.5}.file-drop-zone.is-compact{min-height:168px;padding:var(--sp-6)}.file-drop-zone.is-compact .file-drop-icon{width:44px;height:44px}.file-drop-zone.is-compact .file-drop-icon svg{width:20px;height:20px}.file-drop-icon{border-radius:var(--r-lg);border:1px solid var(--signal-line);background:var(--signal-wash);width:56px;height:56px;color:var(--signal-ink);margin-bottom:var(--sp-1);justify-content:center;align-items:center;display:flex}.file-drop-icon svg{stroke-width:1.75px;width:24px;height:24px}.file-drop-title{font-size:var(--fs-lg);font-weight:var(--w-semibold);color:var(--ink)}.file-drop-sub{font-size:var(--fs-sm);color:var(--ink-2)}.file-drop-meta{justify-content:center;gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.file-drop-chip{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line);background:var(--paper);border-radius:var(--r-pill);padding:5px 10px}.file-drop-error{align-items:flex-start;gap:var(--sp-2);margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--danger-line);background:var(--danger-wash);border-radius:var(--r-lg);color:var(--danger);font-size:var(--fs-sm);font-weight:var(--w-medium);line-height:var(--lh-body);display:flex}.file-drop-error svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.tool-empty{text-align:center;justify-content:center;align-items:center;gap:var(--sp-3);min-height:min(40vh,320px);padding:var(--sp-10) var(--sp-6);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);flex-direction:column;flex:1;display:flex}.tool-empty-icon{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--paper-2);width:56px;height:56px;color:var(--ink-3);margin-bottom:var(--sp-1);justify-content:center;align-items:center;display:flex}.tool-empty-icon svg{stroke-width:1.75px;width:24px;height:24px}.tool-empty-title{font-size:var(--fs-lg);font-weight:var(--w-semibold);color:var(--ink)}.tool-empty-copy{font-size:var(--fs-sm);color:var(--ink-2);max-width:32em}.tool-workspace{gap:var(--sp-5);flex-direction:column;display:flex}.tool-file{align-items:center;gap:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:0;padding:12px 14px;display:flex}.tool-file-label{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--signal-ink);flex-shrink:0}.tool-file-name{font-size:var(--fs-sm);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tool-note{padding:var(--sp-4) var(--sp-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.tool-note.is-info{background:var(--info-wash);border-color:var(--info-line)}.tool-note.is-warn{background:var(--warn-wash);border-color:var(--warn-line)}.tool-note-title{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--sp-2)}.tool-note.is-info .tool-note-title{color:var(--info)}.tool-note.is-warn .tool-note-title{color:var(--warn)}.tool-note-copy{font-size:var(--fs-sm);color:var(--ink-2);line-height:var(--lh-body)}.tool-progress{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--info-wash);border:1px solid var(--info-line);border-radius:var(--r-lg);color:var(--ink);display:flex}.tool-progress-cancel{flex-shrink:0;width:auto;min-height:36px;padding:6px 12px}.tool-split>.tool-progress{grid-column:1/-1}.tool-page:has(.tool-split) .tool-split:has(.tool-progress) .tool-preview-pane{grid-row:2/-1}.tool-progress>svg{width:18px;height:18px;color:var(--info);flex-shrink:0}.tool-progress-copy{flex:1;min-width:0}.tool-progress-copy p{font-size:var(--fs-sm);font-weight:var(--w-medium);line-height:var(--lh-body);margin:0}.tool-progress-bar{background:var(--line);border-radius:999px;height:4px;margin-top:8px;overflow:hidden}.tool-progress-bar>div{background:var(--signal);height:100%;transition:width .25s}.tool-submit{justify-content:center;width:100%;padding:12px 16px}.tool-reset{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:0;padding:0;text-decoration:none}.tool-reset:hover{color:var(--ink)}.tool-error{align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border:1px solid var(--danger-line);background:var(--danger-wash);border-radius:var(--r-lg);color:var(--danger);font-size:var(--fs-sm);font-weight:var(--w-medium);line-height:var(--lh-body);margin:0;display:flex}.tool-page button.underline{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:0;padding:0;text-decoration:none}.tool-page button.underline:hover{color:var(--ink)}.tool-split{gap:var(--sp-6);grid-template-columns:minmax(0,3fr) minmax(240px,2fr);align-items:start;display:grid}.tool-split .tool-workspace,.tool-preview-pane{min-width:0}.tool-page:has(.tool-split) .tool-preview-pane{border-left:1px solid var(--line);background:var(--paper-2);flex-direction:column;grid-area:1/2/-1;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.tool-page:has(.tool-split) .page-preview{background:var(--paper-2);border:none;border-radius:0;flex:1;height:100%;min-height:0;overflow:hidden}.tool-page:has(.tool-split) .page-preview-bar{flex-shrink:0}.tool-page:has(.tool-split) .page-preview-stage{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.tool-field{gap:var(--sp-2);flex-direction:column;display:flex}.tool-field-head{justify-content:space-between;align-items:baseline;gap:var(--sp-3);display:flex}.tool-field-label,.tool-page label{font-size:var(--fs-sm);font-weight:var(--w-medium);color:var(--ink);display:block}.tool-field-hint{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-3);letter-spacing:.02em}.tool-page input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),.tool-page select,.tool-page textarea{width:100%;font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-md);padding:10px 12px}.tool-page input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]):focus,.tool-page select:focus,.tool-page textarea:focus{border-color:var(--signal);box-shadow:var(--focus-ring);outline:none}.tool-color-row{align-items:center;gap:var(--sp-3);display:flex}.tool-page input[type=color]{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);cursor:pointer;width:44px;height:36px;padding:2px}.tool-page input[type=color]:disabled{opacity:.4;cursor:not-allowed}.tool-page input[type=range]{appearance:none;border-radius:var(--r-pill);background:var(--line);width:100%;height:4px;box-shadow:none;border:none;margin:10px 0;padding:0}.tool-page input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--signal);border:2px solid var(--surface);width:16px;height:16px;box-shadow:0 0 0 1px var(--signal);cursor:pointer;border-radius:50%}.tool-page input[type=range]::-moz-range-thumb{background:var(--signal);border:2px solid var(--surface);width:16px;height:16px;box-shadow:0 0 0 1px var(--signal);cursor:pointer;border-radius:50%}.tool-check{align-items:flex-start;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--ink);cursor:pointer;line-height:var(--lh-snug);display:flex}.tool-check input{width:16px;height:16px;accent-color:var(--signal);flex-shrink:0;margin-top:1px}.tool-seg{gap:var(--sp-2);flex-wrap:wrap;display:flex}.tool-seg-btn{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);min-width:0;color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-sm);cursor:pointer;flex:1;padding:10px 12px}.tool-seg-btn.is-on{border-color:var(--signal);background:var(--signal-wash);color:var(--signal-ink);font-weight:var(--w-semibold)}.tool-choice{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.tool-choice-btn{text-align:left;padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);cursor:pointer}.tool-choice-btn.is-on{border-color:var(--signal);background:var(--signal-wash)}.tool-choice-btn strong{font-size:var(--fs-sm);font-weight:var(--w-semibold);display:block}.tool-choice-btn span{font-size:var(--fs-xs);color:var(--ink-3);margin-top:4px;display:block}.sortable-list{flex-direction:column;display:flex}.sortable-block{min-width:0}.sortable-line{pointer-events:none;background:0 0;border-radius:2px;height:3px;margin:2px 0}.sortable-line.is-on{background:var(--info)}.sortable-grip{color:var(--ink-3);cursor:grab;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sortable-grip:active{cursor:grabbing}.tree-pages{gap:var(--sp-2);flex-direction:column;margin:4px 0 8px 28px;display:flex}.tree-toggle{width:24px;height:24px;color:var(--ink-3);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tree-toggle svg{transition:transform var(--dur) var(--ease)}.tree-toggle.is-open svg{transform:rotate(90deg)}.tree-toggle:hover{color:var(--ink);background:var(--paper-2)}.tree-toggle.is-leaf{visibility:hidden;pointer-events:none}.tool-item{align-items:center;gap:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;min-width:0;padding:10px 12px;display:flex}.tool-item.is-on{border-color:var(--signal);background:var(--signal-wash)}.tool-item.is-active{border-style:dashed}.tool-item.is-dim,.tool-item.is-dragging{opacity:.45}.tool-item.is-dragging{cursor:grabbing}.tool-item.is-child{padding:8px 10px}.bookmark-row{flex-wrap:wrap}.bookmark-row input[type=text],.bookmark-row input:not([type]){flex:1;min-width:8rem}.bookmark-range{flex-shrink:0;align-items:center;gap:4px;display:flex}.bookmark-range input{max-width:64px}.tool-item-name{min-width:0;font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tool-item-meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-3);flex-shrink:0}.tool-item-remove{width:28px;height:28px;color:var(--ink-3);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.tool-item-remove:hover{color:var(--danger);background:var(--danger-wash)}.tool-item-move{flex-shrink:0;display:none}.tool-item-move-btn{width:28px;height:28px;color:var(--ink-3);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.tool-item-move-btn svg{width:16px;height:16px}.tool-item-move-btn:hover{color:var(--ink);background:var(--paper-2)}.tool-item-move-btn:disabled{opacity:.3;cursor:not-allowed}.tool-mobile-tabs{display:none}.page-chips{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(40px,1fr));display:grid}.page-chip{aspect-ratio:1;border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--surface);color:var(--ink-2);font-size:var(--fs-sm);cursor:pointer}.page-chip.is-on{border-color:var(--signal);background:var(--signal);color:#fff;font-weight:var(--w-semibold)}.thumb-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.pdf-thumb-card{flex-direction:column;min-width:0;display:flex}.pdf-thumb{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--ink-3);padding:0;display:block;position:relative;overflow:hidden}.pdf-thumb-hit{cursor:pointer;background:0 0;border:none;width:100%;padding:0;display:block}.pdf-thumb img{background:#fff;width:100%;height:auto;display:block}.pdf-thumb.is-on{border-color:var(--signal);box-shadow:var(--focus-ring)}.pdf-thumb canvas{background:#fff;width:100%;height:auto;display:block}.pdf-thumb-num{z-index:2;font-family:var(--font-mono);font-size:var(--fs-micro);border-radius:var(--r-sm);background:color-mix(in srgb, var(--surface) 88%, transparent);color:var(--ink-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;padding:3px 6px;line-height:1.2;position:absolute;bottom:6px;left:6px}.pdf-thumb-icon{z-index:3;border:1px solid var(--line);border-radius:var(--r-sm);background:color-mix(in srgb, var(--surface) 88%, transparent);width:32px;height:32px;color:var(--ink-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}.pdf-thumb-icon svg{width:14px;height:14px}.pdf-thumb-icon.is-preview{top:6px;left:6px}.pdf-thumb-icon.is-select{top:6px;right:6px}.pdf-thumb-icon.is-download{bottom:6px;right:6px}.pdf-thumb-icon:hover,.pdf-thumb-icon:focus-visible{color:var(--ink);border-color:var(--line-strong)}.pdf-thumb-icon.is-select.is-on{border-color:var(--signal);background:var(--signal);color:#fff}@media (max-width:700px){.pdf-thumb-icon{width:36px;height:36px}}.pdf-thumb.is-drop:after{content:"";background:color-mix(in srgb, var(--danger) 22%, transparent);pointer-events:none;position:absolute;inset:0}.page-preview{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);flex-direction:column;min-height:420px;display:flex;overflow:hidden}.page-preview-bar{justify-content:space-between;align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--line);background:var(--paper-2);flex-wrap:wrap;padding:8px 12px;display:flex}.page-preview-bar span{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-3);letter-spacing:.04em}.page-preview-nav{align-items:center;gap:var(--sp-2);display:flex}.page-preview-stage{padding:var(--sp-5);background:radial-gradient(circle, var(--grid-dot) 1px, transparent 1px);background-size:14px 14px;background-color:var(--paper-2);flex:1;justify-content:center;align-items:flex-start;min-height:360px;display:flex;overflow:auto}.page-preview-stage.is-strip{display:block}.page-preview-bar-tools{align-items:center;gap:var(--sp-3);display:flex}.page-preview-zoom{align-items:center;gap:2px;display:inline-flex}.page-preview-zoom-btn,.page-preview-zoom-value{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.04em;color:var(--ink-2);border:1px solid var(--line);border-radius:var(--r-sm,4px);cursor:pointer;background:0 0;justify-content:center;align-items:center;min-width:28px;height:24px;padding:0 6px;display:inline-flex}.page-preview-zoom-btn:hover,.page-preview-zoom-value:hover{color:var(--ink);border-color:var(--ink-4)}.page-preview-zoom-value{min-width:3.4em}.page-preview-strip{width:calc(min(100%, 520px) * var(--preview-zoom,1));flex-direction:column;gap:14px;max-width:none;margin:0 auto;display:flex}.page-preview-file-label{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--ink-3);letter-spacing:.04em;word-break:break-all;margin:6px 0 2px}.page-preview-sheet{box-shadow:var(--sh-3);background:#fff;line-height:0;position:relative}.page-preview-sheet.is-lazy{width:100%;overflow:hidden}.page-preview-sheet.is-pending{justify-content:center;align-items:center;line-height:normal;display:flex}.page-preview-sheet-spinner{width:22px;height:22px;color:var(--ink-3)}.page-preview-sheet img{width:100%;height:auto;display:block}.page-preview-sheet.is-lazy>img.page-preview-bitmap{object-fit:fill;width:100%;height:100%;position:absolute;inset:0}.page-preview-sheet.is-selectable{cursor:pointer}.page-preview-sheet.is-selectable:focus-visible{outline:3px solid var(--signal);outline-offset:2px}.page-preview-sheet.is-selected,.page-preview-sheet.is-current{box-shadow:0 0 0 3px var(--signal)}.page-preview-sheet.is-dropped{opacity:.42}.page-preview-sheet.is-dropped:after{content:"";background:color-mix(in srgb, var(--danger) 22%, transparent);pointer-events:none;position:absolute;inset:0}.page-preview-sheet.is-openable{cursor:zoom-in}.page-preview-sheet-wrap{position:relative}.page-preview-open{z-index:3;border:1px solid var(--line);border-radius:var(--r-sm);background:color-mix(in srgb, var(--surface) 88%, transparent);width:28px;height:28px;color:var(--ink-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;opacity:0;transition:opacity var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:8px;left:8px}.page-preview-sheet-wrap:hover .page-preview-open,.page-preview-open:focus-visible{opacity:1}.page-preview-open:hover{color:var(--ink);border-color:var(--ink-4)}@media (hover:none){.page-preview-open{opacity:1}}.page-preview-page-num{z-index:2;background:color-mix(in srgb, var(--ink) 72%, transparent);color:#fff;font-family:var(--font-mono);letter-spacing:.04em;border-radius:999px;padding:2px 6px;font-size:10px;line-height:1.4;position:absolute;bottom:8px;right:8px}.page-preview-sheet canvas{max-width:100%;height:auto;display:block}.page-preview-error,.page-preview-empty{font-size:var(--fs-sm);color:var(--ink-3);padding:var(--sp-8)}.preview-lightbox{z-index:800;background:color-mix(in srgb, var(--ink) 58%, transparent);-webkit-backdrop-filter:blur(16px);padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);flex-direction:column;display:flex;position:fixed;inset:0}.preview-lightbox-bar{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-shrink:0;padding:12px 16px;display:flex}.preview-lightbox-count{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.08em;color:#fff}.preview-lightbox-close,.preview-lightbox-nav{border:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:var(--sh-2);cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background var(--dur) var(--ease);justify-content:center;align-items:center;display:inline-flex}.preview-lightbox-close{border-radius:var(--r-md);width:36px;height:36px}.preview-lightbox-nav{z-index:2;border-radius:var(--r-pill);width:44px;height:44px;position:absolute;top:50%;transform:translateY(-50%)}.preview-lightbox-nav.is-prev{left:16px}.preview-lightbox-nav.is-next{right:16px}.preview-lightbox-close:hover,.preview-lightbox-nav:not(:disabled):hover{color:var(--signal-ink);border-color:var(--signal)}.preview-lightbox-nav:disabled{opacity:.35;cursor:default}.preview-lightbox-stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:8px 72px 28px;display:flex;position:relative}.preview-lightbox-sheet{width:min(calc(100vw - 152px), calc((100dvh - 128px) * (var(--lb-w,1) / var(--lb-h,1))));max-height:calc(100dvh - 128px);aspect-ratio:var(--lb-w,1) / var(--lb-h,1);box-shadow:var(--sh-4);background:#fff;position:relative;overflow:hidden}.preview-lightbox-bitmap{object-fit:fill;width:100%;height:100%;position:absolute;inset:0}.preview-lightbox-overlay{pointer-events:none;position:absolute;inset:0}.preview-lightbox-spinner{width:28px;height:28px;color:var(--ink-3);margin:auto;position:absolute;inset:0}@media (max-width:700px){.preview-lightbox-stage{padding:8px 12px 24px}.preview-lightbox-nav.is-prev{left:8px}.preview-lightbox-nav.is-next{right:8px}.preview-lightbox-sheet{width:min(calc(100vw - 24px), calc((100dvh - 120px) * (var(--lb-w,1) / var(--lb-h,1))))}}.legal-page{width:100%;max-width:720px;padding:clamp(28px, 6vh, 64px) var(--page-pad-x-end) var(--sp-16) var(--page-pad-x);margin:0 auto}.legal-kicker{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--sp-2)}.legal-page h1{font-size:var(--fs-h2);font-weight:var(--w-semibold);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);margin-bottom:var(--sp-2)}.legal-updated{font-size:var(--fs-xs);color:var(--ink-3);margin-bottom:var(--sp-8)}.legal-page h2{font-size:var(--fs-h4);font-weight:var(--w-semibold);margin:var(--sp-8) 0 var(--sp-3)}.legal-page p,.legal-page li{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-2)}.legal-page p+p{margin-top:var(--sp-3)}.legal-page ul{margin:var(--sp-3) 0;padding-left:1.2em}.legal-page li{margin:.35em 0}.legal-actions{gap:var(--sp-2);margin-top:var(--sp-5);flex-wrap:wrap;display:flex}html:has(.tool-split) .site-footer{display:none}.preview-qr{z-index:1;box-shadow:var(--sh-2);background:#fff;border:1px solid #15171a1f;position:absolute}.preview-qr img{width:100%;height:100%;display:block}.preview-mark{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden;container-type:inline-size}.preview-mark span{font-family:var(--font-sans);font-weight:var(--w-bold);color:#111;white-space:nowrap;transform-origin:50%;line-height:1;display:inline-block}.preview-pagenum{font-family:var(--font-sans);color:#222;pointer-events:none;position:absolute}.tool-dl{font-size:var(--fs-sm);gap:6px;display:grid}.tool-dl div{justify-content:space-between;gap:var(--sp-4);display:flex}.tool-dl dt{color:var(--ink-3)}.tool-dl dd{color:var(--ink);text-align:right}.tool-actions-row{gap:var(--sp-2);flex-wrap:wrap;display:flex}.compare-slots{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.compare-preview{touch-action:pan-y}.compare-stack{width:calc(min(100%, 720px) * var(--preview-zoom,1));min-height:200px;box-shadow:var(--sh-3);background:#fff;margin:0 auto;position:relative}.compare-layer{width:100%;height:auto;display:block}.compare-stack:has(.compare-layer.is-a) .compare-layer.is-b{object-fit:fill;width:100%;height:100%;position:absolute;inset:0}@media (max-width:860px){.compare-slots{grid-template-columns:1fr}.tool-page:has(.tool-split){flex-direction:column;flex:1;align-items:stretch;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.tool-page:has(.tool-split)>.tool-page-header{padding:var(--sp-3) var(--page-pad-x-end) var(--sp-3) var(--page-pad-x);flex-shrink:0;align-items:stretch}.tool-page-header-row{align-items:center}.tool-page:has(.tool-split) .tool-page-desc{display:none}:is(.tool-page:has(.tool-split[data-mobile-pane=preview]) .next-tool,.tool-page:has(.tool-split[data-mobile-pane=preview]) .tool-phase,.tool-page:has(.tool-split[data-mobile-pane=result]) .next-tool,.tool-page:has(.tool-split[data-mobile-pane=result]) .tool-phase),.tool-phase-mode,.tool-phase-outcome,.tool-phase-leave{display:none}:is(.tool-page:has(.tool-split)>.tool-page-body,.tool-page:has(.tool-split) .tool-split){flex-direction:column;flex:1;align-items:stretch;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.tool-split>.tool-progress{margin:0 var(--page-pad-x-end) 0 var(--page-pad-x);border-left:none;border-right:none;border-radius:0;flex-shrink:0}.tool-mobile-tabs{gap:var(--sp-4);padding:0 var(--page-pad-x-end) 0 var(--page-pad-x);border-bottom:1px solid var(--line);background:var(--paper);flex-shrink:0;display:flex}.tool-mobile-tab{min-height:44px;color:var(--ink-3);font-size:var(--fs-sm);font-weight:var(--w-medium);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:0 2px}.tool-mobile-tab.is-on{border-bottom-color:var(--signal);color:var(--ink);font-weight:var(--w-semibold);background:0 0}.tool-page:has(.tool-split) .tool-controls-stack{padding:0;display:contents;overflow:visible}:is(.tool-page:has(.tool-split) .tool-workspace,.tool-page:has(.tool-split) .tool-preview-pane,.tool-page:has(.tool-split) .tool-result-pane){overscroll-behavior:contain;flex:auto;grid-area:auto;width:100%;min-width:0;height:auto;min-height:0;max-height:none;overflow:auto}.tool-page:has(.tool-split) .tool-workspace{padding:0 var(--page-pad-x-end) max(var(--sp-6), env(safe-area-inset-bottom,0px)) var(--page-pad-x)}.tool-page:has(.tool-split) .tool-preview-pane{border-left:none}.tool-page:has(.tool-split) .tool-result-pane{padding:0 var(--page-pad-x-end) max(var(--sp-6), env(safe-area-inset-bottom,0px)) var(--page-pad-x);min-height:0}:is(.tool-page:has(.tool-split) .page-preview,.tool-page:has(.tool-split) .page-preview-strip){width:100%;max-width:none}.tool-split[data-mobile-pane=preview] .tool-workspace,.tool-split[data-mobile-pane=preview] .tool-result-pane,.tool-split[data-mobile-pane=controls] .tool-preview-pane,.tool-split[data-mobile-pane=controls] .tool-result-pane,.tool-split[data-mobile-pane=result] .tool-workspace,.tool-split[data-mobile-pane=result] .tool-preview-pane{display:none}.tool-split[data-mobile-pane=result] .tool-result-text{resize:none;flex:auto;min-height:0}.tool-choice{grid-template-columns:1fr}.btn{min-height:44px;padding:11px 16px}.btn-icon{width:44px;height:44px}.tool-item{min-height:48px;padding:10px 12px}.tool-item-move{display:flex}.tool-item-remove,.tree-toggle,.tool-item-move-btn{width:44px;height:44px}.tool-page input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),.tool-page select,.tool-page textarea{min-height:44px;font-size:16px}.file-drop-zone{min-height:160px}}@media (hover:none){.btn-icon:hover,.tree-toggle:hover,.tool-item-remove:hover,.tool-item-move-btn:hover{color:inherit;border-color:inherit;background:0 0}.tool-item-remove:hover{color:var(--ink-3)}}.preview-auth-gate{z-index:9999;padding:var(--sp-6);background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:center;align-items:center;display:none;position:fixed;inset:0}html[data-preview-locked="1"] .preview-auth-gate{display:flex}html[data-preview-locked="1"]{overflow:hidden}html[data-preview-locked="1"] .preview-auth-content{visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.preview-auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);width:min(420px,100%);box-shadow:var(--sh-4);padding:var(--sp-8);flex-direction:column;display:flex}.preview-auth-eyebrow{font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--w-semibold);letter-spacing:var(--tracking-label);color:var(--warn);margin-bottom:var(--sp-3)}.preview-auth-title{font-size:var(--fs-h3);font-weight:var(--w-semibold);letter-spacing:var(--tracking-tight);color:var(--ink);line-height:var(--lh-snug);margin-bottom:var(--sp-3)}.preview-auth-copy{font-size:var(--fs-sm);color:var(--ink-2);line-height:var(--lh-body);margin-bottom:var(--sp-6)}.preview-auth-label{font-size:var(--fs-xs);font-weight:var(--w-medium);color:var(--ink-2);margin-bottom:var(--sp-2)}.preview-auth-input{font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink);background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-md);margin-bottom:var(--sp-4);padding:10px 12px}.preview-auth-input:focus{border-color:var(--signal);box-shadow:var(--focus-ring);outline:none}.preview-auth-error{font-size:var(--fs-xs);color:var(--danger);margin:calc(var(--sp-2) * -1) 0 var(--sp-4)}.preview-auth-submit{justify-content:center;width:100%;padding:12px 16px}@media (max-width:640px){:root{--page-pad-x:max(var(--sp-4), env(safe-area-inset-left,0px));--page-pad-x-end:max(var(--sp-4), env(safe-area-inset-right,0px))}.hero-headline{font-size:34px}.hero{padding:var(--sp-12) 0 var(--sp-10)}.catalog{padding:var(--sp-6) var(--page-pad-x-end) max(var(--sp-16), env(safe-area-inset-bottom,0px)) var(--page-pad-x)}.tool-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;align-items:flex-start}}.next-tool{width:100%;min-width:0}.next-tool-lead{font-size:var(--fs-xs);color:var(--ink-2);margin:0 0 var(--sp-2)}.next-tool summary.next-tool-lead{cursor:pointer;list-style:none}.next-tool summary.next-tool-lead::-webkit-details-marker{display:none}@media (min-width:861px){.next-tool summary.next-tool-lead{cursor:default;pointer-events:none}}@media (max-width:860px){.next-tool summary.next-tool-lead{align-items:center;min-height:44px;margin-bottom:0;display:flex}.next-tool[open] summary.next-tool-lead{margin-bottom:var(--sp-2)}}.next-tool-chips{flex-wrap:wrap;gap:6px;display:flex}.next-tool-chip{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--w-medium);border-radius:var(--r-pill);cursor:pointer;padding:6px 10px;line-height:1.3}.next-tool-chip:hover:not(:disabled){border-color:var(--signal);color:var(--signal-ink);background:var(--signal-wash)}.next-tool-chip:disabled{opacity:.55;cursor:wait}
