/* FreNiMi PDF Editor. Loaded only by tools/pdf-editor.html, after tools.css. */
.tool-workspace.workspace-shell.pe-workspace{width:min(1280px,calc(100% - 24px))}
.pe-app{margin-top:6px}
.pe-app[hidden],.pe-workspace .drop-zone[hidden]{display:none}

.pe-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:10px}
.pe-file{display:flex;align-items:center;gap:8px;min-width:0;color:var(--tools-muted);font-size:.9rem}
.pe-file strong{overflow:hidden;max-width:min(46vw,420px);color:var(--tools-ink);text-overflow:ellipsis;white-space:nowrap}
.pe-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pe-actions .tool-btn{width:auto;min-height:42px;padding:9px 16px}
.pe-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:42px;height:42px;padding:0 11px;border:1px solid var(--tools-border);border-radius:10px;background:#fff;color:var(--tools-ink);font:inherit;font-size:.88rem;font-weight:700;cursor:pointer}
.pe-icon-btn:hover:not(:disabled){border-color:#cfc8f5;background:var(--tools-lilac);color:var(--tools-purple-dark)}
.pe-icon-btn:disabled{opacity:.4;cursor:default}
.pe-icon-btn:focus-visible,.pe-tool:focus-visible,.pe-page-actions button:focus-visible,.pe-toggle:focus-visible{outline:3px solid rgba(91,64,232,.45);outline-offset:2px}
.pe-zoom{display:inline-flex;align-items:center;gap:4px}
.pe-zoom span{min-width:48px;color:var(--tools-muted);font-size:.84rem;font-variant-numeric:tabular-nums;text-align:center}

.pe-toolbar{display:flex;gap:4px;overflow-x:auto;padding:6px;border:1px solid var(--tools-border);border-radius:14px;background:var(--tools-soft);scrollbar-width:thin}
.pe-tool-sep{flex:0 0 1px;margin:6px 4px;background:var(--tools-border)}
.pe-tool{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:68px;min-height:58px;padding:6px 8px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--tools-ink);font:inherit;font-size:.74rem;font-weight:700;line-height:1.1;cursor:pointer}
.pe-tool i{font-size:1.15rem}
.pe-tool:hover{background:#fff;border-color:var(--tools-border)}
.pe-tool[aria-pressed="true"]{border-color:#cfc8f5;background:var(--tools-lilac);color:var(--tools-purple-dark)}
.pe-tool-feature{color:var(--tools-purple-dark)}

.pe-props{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;min-height:52px;margin-top:8px;padding:8px 12px;border:1px solid var(--tools-border);border-radius:12px;background:#fff}
.pe-props[hidden]{display:none}
.pe-props label{display:inline-flex;align-items:center;gap:7px;color:var(--tools-muted);font-size:.84rem;font-weight:650}
.pe-props input[type="color"]{width:36px;height:32px;padding:2px;border:1px solid var(--tools-border);border-radius:8px;background:#fff;cursor:pointer}
.pe-props input[type="color"]:disabled{opacity:.35;cursor:default}
.pe-props select,.pe-props input[type="number"]{height:34px;padding:0 8px;border:1px solid var(--tools-border);border-radius:8px;background:#fff;color:var(--tools-ink);font:inherit;font-size:.88rem}
.pe-props input[type="number"]{width:68px}
.pe-props input[type="range"]{width:110px;accent-color:var(--tools-purple)}
.pe-toggle{width:34px;height:34px;border:1px solid var(--tools-border);border-radius:8px;background:#fff;color:var(--tools-ink);font:inherit;cursor:pointer}
.pe-toggle[aria-pressed="true"]{border-color:var(--tools-purple);background:var(--tools-lilac);color:var(--tools-purple-dark)}
.pe-prop-actions{display:inline-flex;gap:6px;margin-left:auto}
.pe-prop-actions .pe-icon-btn{height:34px;min-width:34px}
/* Show only the controls that apply to the current tool or selection. */
.pe-props [data-for]{display:none}
.pe-props[data-kind="text"] [data-for~="text"],
.pe-props[data-kind="draw"] [data-for~="stroke"],.pe-props[data-kind="mark"] [data-for~="stroke"],
.pe-props[data-kind="line"] [data-for~="stroke"],.pe-props[data-kind="arrow"] [data-for~="stroke"],
.pe-props[data-kind="rect"] [data-for~="stroke"],.pe-props[data-kind="ellipse"] [data-for~="stroke"],
.pe-props[data-kind="rect"] [data-for~="fill"],.pe-props[data-kind="ellipse"] [data-for~="fill"],
.pe-props[data-kind="highlight"] [data-for~="paint"],.pe-props[data-kind="whiteout"] [data-for~="paint"],
.pe-props[data-kind="image"] [data-for~="image"]{display:inline-flex}
.pe-props[data-kind="text"] [data-for~="color"],.pe-props[data-kind="draw"] [data-for~="color"],.pe-props[data-kind="mark"] [data-for~="color"],
.pe-props[data-kind="line"] [data-for~="color"],.pe-props[data-kind="arrow"] [data-for~="color"],.pe-props[data-kind="rect"] [data-for~="color"],
.pe-props[data-kind="ellipse"] [data-for~="color"],.pe-props[data-kind="highlight"] [data-for~="color"],.pe-props[data-kind="whiteout"] [data-for~="color"]{display:inline-flex}
.pe-props[data-selected="false"] .pe-prop-actions{display:none}

.pe-hint{margin:8px 2px 10px;color:var(--tools-muted);font-size:.86rem}
.pe-hint kbd{padding:1px 5px;border:1px solid var(--tools-border);border-radius:5px;background:var(--tools-soft);font:inherit;font-size:.78rem}

.pe-pages{position:relative;height:min(78vh,1100px);overflow:auto;padding:18px 16px 40px;border:1px solid var(--tools-border);border-radius:16px;background:#ecebf2;overscroll-behavior:contain}
.pe-page{width:max-content;max-width:none;margin:0 auto 22px}
.pe-page-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;color:var(--tools-muted);font-size:.8rem;font-weight:700}
.pe-page-actions{display:flex;gap:3px}
.pe-page-actions button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--tools-muted);cursor:pointer}
.pe-page-actions button:hover:not(:disabled){border-color:var(--tools-border);background:#fff;color:var(--tools-ink)}
.pe-page-actions button:disabled{opacity:.3;cursor:default}
.pe-sheet{position:relative;background:#fff;box-shadow:0 1px 3px rgba(19,18,37,.12),0 10px 28px rgba(19,18,37,.1)}
.pe-sheet canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.pe-layer{position:absolute;inset:0;touch-action:pan-x pan-y;cursor:crosshair;-webkit-user-select:none;user-select:none}
.pe-app[data-tool="select"] .pe-layer,.pe-app[data-tool="edittext"] .pe-layer{cursor:default}
.pe-app[data-tool="text"] .pe-layer,.pe-app[data-tool="date"] .pe-layer{cursor:text}
.pe-app:not([data-tool="select"]):not([data-tool="edittext"]) .pe-layer{touch-action:none}

.pe-obj{position:absolute;box-sizing:border-box;touch-action:none}
.pe-app[data-tool="select"] .pe-obj,.pe-app[data-tool="edittext"] .pe-obj{cursor:move}
.pe-text{padding:0;white-space:pre;outline:none;-webkit-user-select:none;user-select:none}
.pe-text.is-editing{cursor:text;-webkit-user-select:text;user-select:text;outline:1.5px solid var(--tools-purple);outline-offset:2px;background:rgba(242,239,255,.35)}
.pe-text:empty::before{content:"Type here";color:#9a98ad}
.pe-image img{display:block;width:100%;height:100%;pointer-events:none}
.pe-highlight{mix-blend-mode:multiply}
.pe-ellipse{border-radius:50%}
.pe-line,.pe-arrow,.pe-draw{pointer-events:none}
.pe-line svg,.pe-arrow svg,.pe-draw svg{display:block;overflow:visible}
.pe-hit{pointer-events:stroke}
.pe-obj.is-selected{outline:1.5px dashed var(--tools-purple);outline-offset:3px}
.pe-line.is-selected,.pe-arrow.is-selected{outline:none}
.pe-handle{position:absolute;right:-9px;bottom:-9px;width:14px;height:14px;border:2px solid #fff;border-radius:50%;background:var(--tools-purple);box-shadow:0 1px 4px rgba(19,18,37,.35);cursor:nwse-resize;pointer-events:auto;touch-action:none}
.pe-handle::after{content:"";position:absolute;inset:-10px}
.pe-handle-point{right:auto;bottom:auto;transform:translate(-50%,-50%);cursor:move}

.pe-textrun{position:absolute;padding:0;border:0;border-radius:3px;background:transparent;cursor:text;outline:1px dashed rgba(91,64,232,.35)}
.pe-textrun:hover,.pe-textrun:focus-visible{background:rgba(91,64,232,.12);outline:1.5px solid var(--tools-purple)}

.pe-dialog{width:min(620px,calc(100% - 24px));padding:0;border:1px solid var(--tools-border);border-radius:18px;color:var(--tools-ink);box-shadow:0 30px 80px rgba(19,18,37,.28)}
.pe-dialog::backdrop{background:rgba(19,18,37,.45)}
.pe-dialog-inner{padding:22px}
.pe-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.pe-dialog h2{margin:0;font-size:1.25rem}
.pe-sign-tabs{display:inline-flex;gap:4px;margin-bottom:12px;padding:4px;border-radius:10px;background:var(--tools-soft)}
.pe-sign-tabs button{padding:7px 16px;border:0;border-radius:8px;background:transparent;font:inherit;font-weight:700;cursor:pointer}
.pe-sign-tabs button[aria-selected="true"]{background:#fff;color:var(--tools-purple-dark);box-shadow:0 1px 3px rgba(19,18,37,.12)}
.pe-sign-pad{display:block;width:100%;height:auto;aspect-ratio:14/5;border:1px dashed #c9c5dc;border-radius:12px;background:#fff;touch-action:none;cursor:crosshair}
.pe-sign-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.pe-sign-type{display:grid;gap:10px}
.pe-sign-type input{min-height:84px;padding:6px 14px;border:1px dashed #c9c5dc;border-radius:12px;font-size:2.4rem}
.pe-sign-type select{height:40px;padding:0 10px;border:1px solid var(--tools-border);border-radius:9px;font:inherit}
.pe-sign-inks{display:inline-flex;align-items:center;gap:8px;color:var(--tools-muted);font-size:.84rem}
.pe-sign-inks button{width:26px;height:26px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--tools-border);cursor:pointer}
.pe-sign-inks button[aria-pressed="true"]{box-shadow:0 0 0 2px var(--tools-purple)}
.pe-dialog footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:18px}
.pe-dialog footer .tool-btn{width:auto}

.pe-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:8px auto 64px}
.pe-why article{padding:18px;border:1px solid var(--tools-border);border-radius:14px;background:#fff}
.pe-why i{color:var(--tools-purple);font-size:1.3rem}
.pe-why h3{margin:8px 0 4px;font-size:1rem}
.pe-why p{margin:0;color:var(--tools-muted);font-size:.9rem;line-height:1.5}
.pe-compare{width:100%;margin:12px 0 4px;border-collapse:collapse;font-size:.92rem}
.pe-compare th,.pe-compare td{padding:10px 12px;border-bottom:1px solid var(--tools-border);text-align:left;vertical-align:top}
.pe-compare th{color:var(--tools-muted);font-size:.8rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}

@media (max-width:820px){
  .pe-why{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pe-pages{height:70vh;padding:12px 8px 30px}
  .pe-tool{min-width:60px;min-height:54px;font-size:.7rem}
  .pe-prop-actions{margin-left:0}
}
@media (max-width:520px){
  .pe-why{grid-template-columns:1fr}
  .pe-topbar{align-items:stretch}
  .pe-actions{width:100%}
  .pe-actions .tool-btn{flex:1}
  .pe-compare{font-size:.84rem}
  .pe-compare th,.pe-compare td{padding:8px 6px}
}
