/* Pixel Print Co PDF Editor (assets/js/pdf-tools/pdf-editor-v1.js) */
.ppt-app--editor{ max-width: 1440px; }
.ppe{ --ppe-bg:#eef0f3; --ppe-line:#e1e3e8; --ppe-ink:#1d2327; --ppe-soft:#646970; --ppe-acc:var(--pixel-magenta,#E31C79); font-family: var(--font-body, Inter, system-ui, sans-serif); color: var(--ppe-ink); }
.ppe *{ box-sizing: border-box; }

/* drop zone */
.ppe-drop{ border: 2px dashed #c9ccd3; border-radius: 18px; background: #fff; padding: 56px 20px; text-align: center; transition: border-color .2s, background .2s; }
.ppe-drop.is-over{ border-color: var(--ppe-acc); background: #fff6fa; }
.ppe-drop-in{ display:flex; flex-direction:column; align-items:center; gap:12px; color: var(--ppe-soft); }
.ppe-drop-in strong{ font: 700 1.25rem/1.3 var(--font-display, sans-serif); color: var(--ppe-ink); }
.ppe-drop-in svg{ color: var(--ppe-acc); }

/* frame */
.ppe-app{ position: relative; display:flex; flex-direction:column; height: min(88vh, 980px); min-height: 560px; border:1px solid var(--ppe-line); border-radius: 16px; overflow:hidden; background: var(--ppe-bg); box-shadow: 0 20px 50px -24px rgba(11,11,15,.35); }
.ppe-app.is-busy::after{ content:""; position:absolute; inset:0; background: rgba(255,255,255,.45); cursor: progress; z-index: 50; }
.ppe-bar{ flex:0 0 auto; display:flex; align-items:center; gap:4px; padding:6px 8px; background:#fff; border-bottom:1px solid var(--ppe-line); }
.ppe-bar--top{ gap:6px; }
.ppe-bar--tools{ overflow-x:auto; scrollbar-width: thin; gap:2px; padding:4px 6px; }
.ppe-sp{ flex:1 1 auto; }
.ppe-file{ font-weight:600; font-size:.88rem; max-width: 220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding: 0 6px; }
.ppe-ib{ all:unset; box-sizing:border-box; display:inline-grid; place-items:center; width:34px; height:34px; border-radius:8px; color: var(--ppe-ink); cursor:pointer; }
.ppe-ib:hover{ background:#f0f1f4; } .ppe-ib:disabled{ opacity:.35; cursor:default; background:none; }
.ppe-ib:focus-visible, .ppe-tool:focus-visible{ outline:2px solid var(--ppe-acc); outline-offset:1px; }
.ppe-nav, .ppe-zoom{ display:flex; align-items:center; gap:2px; }
.ppe-pg{ width: 52px; height: 30px; text-align:center; border:1px solid var(--ppe-line); border-radius:6px; font-size:.85rem; }
.ppe-pgn{ font-size:.85rem; color: var(--ppe-soft); padding: 0 4px; }
.ppe-zsel{ height:30px; border:1px solid var(--ppe-line); border-radius:6px; font-size:.82rem; padding:0 4px; background:#fff; }
.ppe-save{ gap:6px; white-space:nowrap; }
.ppe-tool{ all:unset; flex:0 0 auto; box-sizing:border-box; display:inline-flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; min-width:58px; height:50px; padding:4px 6px; border-radius:9px; cursor:pointer; color: var(--ppe-ink); }
.ppe-tool span{ font-size:10.5px; line-height:1.1; white-space:nowrap; color: var(--ppe-soft); }
.ppe-tool:hover{ background:#f3f4f6; }
.ppe-tool.is-on{ background: rgba(227,28,121,.10); color: var(--ppe-acc); }
.ppe-tool.is-on span{ color: var(--ppe-acc); font-weight:600; }
.ppe-sep{ width:1px; align-self:stretch; margin: 6px 4px; background: var(--ppe-line); flex: 0 0 1px; }

/* properties bar */
.ppe-props{ flex:0 0 auto; display:flex; flex-wrap:wrap; align-items:center; gap:8px; min-height:42px; padding:5px 12px; background:#fafbfc; border-bottom:1px solid var(--ppe-line); font-size:.82rem; }
.ppe-hint{ color: var(--ppe-soft); }
.ppe-lab{ color: var(--ppe-soft); font-size:.78rem; }
.ppe-props select, .ppe-num{ height:30px; border:1px solid var(--ppe-line); border-radius:6px; background:#fff; font-size:.82rem; padding: 0 6px; }
.ppe-num{ width:62px; }
.ppe-tg{ all:unset; box-sizing:border-box; display:inline-flex; align-items:center; gap:5px; height:30px; padding:0 10px; border:1px solid var(--ppe-line); border-radius:6px; background:#fff; cursor:pointer; font-size:.82rem; color: var(--ppe-ink); }
.ppe-tg:hover{ border-color:#c3c4c7; } .ppe-tg.is-on{ background: var(--ppe-ink); color:#fff; border-color: var(--ppe-ink); }
.ppe-danger{ color:#b32d2e; } .ppe-danger:hover{ border-color:#b32d2e; }
.ppe-sw{ display:inline-flex; align-items:center; gap:4px; }
.ppe-sw button{ all:unset; width:20px; height:20px; border-radius:50%; background: var(--c); box-shadow: inset 0 0 0 1px rgba(0,0,0,.18); cursor:pointer; }
.ppe-sw button[data-v="none"]{ background: linear-gradient(135deg, #fff 45%, #d63638 45%, #d63638 55%, #fff 55%); }
.ppe-sw button.is-on{ box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--ppe-ink); }
.ppe-cp{ position:relative; width:22px; height:22px; border-radius:50%; background: conic-gradient(red, yellow, lime, aqua, blue, magenta, red); cursor:pointer; overflow:hidden; }
.ppe-cp input{ position:absolute; inset:0; opacity:0; cursor:pointer; }
.ppe-rng{ display:inline-flex; align-items:center; gap:6px; color: var(--ppe-soft); } .ppe-rng input{ width:90px; }
.ppe-chk{ display:inline-flex; align-items:center; gap:6px; }
.ppe-stamps{ display:flex; flex-wrap:wrap; gap:6px; }
.ppe-stamps button{ all:unset; cursor:pointer; padding:3px 8px; border:2px solid var(--c); color: var(--c); border-radius:5px; font: 700 .7rem/1.2 Helvetica, Arial, sans-serif; letter-spacing:.04em; opacity:.6; }
.ppe-stamps button.is-on{ opacity:1; box-shadow: 0 0 0 2px #fff, 0 0 0 3px var(--c); }

/* search */
.ppe-find{ position:absolute; z-index:30; top:52px; right:12px; display:flex; align-items:center; gap:4px; padding:6px; background:#fff; border:1px solid var(--ppe-line); border-radius:10px; box-shadow: 0 12px 30px rgba(0,0,0,.15); }
.ppe-find input{ width:220px; height:32px; border:1px solid var(--ppe-line); border-radius:6px; padding: 0 8px; }
.ppe-find-n{ font-size:.78rem; color: var(--ppe-soft); min-width:52px; text-align:center; }

/* body */
.ppe-body{ flex:1 1 auto; display:flex; min-height:0; }
.ppe-side{ flex:0 0 172px; display:flex; flex-direction:column; background:#f7f8fa; border-right:1px solid var(--ppe-line); min-height:0; }
.ppe-app.no-side .ppe-side{ display:none; }
.ppe-thumbs{ flex:1 1 auto; overflow-y:auto; padding:12px 10px; display:flex; flex-direction:column; align-items:center; gap:12px; }
.ppe-thumb{ position:relative; padding:4px; border-radius:8px; cursor:pointer; border:2px solid transparent; }
.ppe-thumb canvas{ display:block; box-shadow: 0 1px 4px rgba(0,0,0,.2); background:#fff; }
.ppe-thumb.is-cur{ border-color: var(--ppe-acc); }
.ppe-thumb-n{ display:block; text-align:center; font-size:.72rem; color: var(--ppe-soft); margin-top:3px; }
.ppe-thumb-acts{ position:absolute; top:6px; left:50%; transform:translateX(-50%); display:none; gap:2px; padding:3px; background: rgba(11,11,15,.85); border-radius:7px; }
.ppe-thumb:hover .ppe-thumb-acts, .ppe-thumb:focus-within .ppe-thumb-acts{ display:flex; }
.ppe-thumb-acts button{ all:unset; display:grid; place-items:center; width:22px; height:22px; border-radius:5px; color:#fff; cursor:pointer; }
.ppe-thumb-acts button:hover{ background: rgba(255,255,255,.2); }
.ppe-add{ all:unset; box-sizing:border-box; display:flex; align-items:center; justify-content:center; gap:6px; margin:8px; padding:8px; border:1px dashed #c3c4c7; border-radius:8px; font-size:.8rem; cursor:pointer; color: var(--ppe-soft); }
.ppe-add:hover{ border-color: var(--ppe-acc); color: var(--ppe-acc); }
.ppe-scroll{ flex:1 1 auto; overflow:auto; position:relative; }
.ppe-pages{ display:flex; flex-direction:column; align-items:center; gap:18px; padding:18px 24px 60px; min-width: min-content; }
.ppe-page{ position:relative; background:#fff; box-shadow: 0 2px 10px rgba(0,0,0,.18); flex: 0 0 auto; }
.ppe-canvas{ position:absolute; inset:0; display:block; }
.ppe-pnum{ position:absolute; right:-2px; bottom:-18px; font-size:.7rem; color: var(--ppe-soft); }

/* pdf.js text layer (selection, search) */
.ppe .textLayer{ position:absolute; text-align:initial; inset:0; overflow:clip; opacity:1; line-height:1; -webkit-text-size-adjust:none; text-size-adjust:none; forced-color-adjust:none; transform-origin:0 0; caret-color:CanvasText; z-index:1;
  --min-font-size:1; --text-scale-factor: calc(var(--total-scale-factor) * var(--min-font-size)); --min-font-size-inv: calc(1 / var(--min-font-size)); }
.ppe .textLayer :is(span, br){ color:transparent; position:absolute; white-space:pre; cursor:text; transform-origin:0% 0%; }
.ppe .textLayer > :not(.markedContent), .ppe .textLayer .markedContent span:not(.markedContent){ z-index:1; --font-height:0; font-size: calc(var(--text-scale-factor) * var(--font-height)); --scale-x:1; --rotate:0deg; transform: rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv)); }
.ppe .textLayer .markedContent{ display:contents; }
.ppe .textLayer ::selection{ background: rgba(46,111,242,.30); }
.ppe .textLayer br::selection{ background: transparent; }
.ppe .textLayer .endOfContent{ display:block; position:absolute; inset:100% 0 0; z-index:0; cursor:default; user-select:none; }
.ppe .textLayer[data-main-rotation="90"]{ transform: rotate(90deg) translateY(-100%); }
.ppe .textLayer[data-main-rotation="180"]{ transform: rotate(180deg) translate(-100%, -100%); }
.ppe .textLayer[data-main-rotation="270"]{ transform: rotate(270deg) translateX(-100%); }
.ppe .textLayer .ppe-hit-t{ background: rgba(255,200,0,.45); border-radius:2px; }
.ppe .textLayer .ppe-hit--cur{ background: rgba(255,122,26,.7); }

/* form fields */
.ppe-forms{ position:absolute; inset:0; z-index:3; pointer-events:none; }
.ppe-field{ position:absolute; pointer-events:auto; margin:0; border:1px solid rgba(46,111,242,.45); background: rgba(235,241,255,.92); border-radius:2px; padding: 0 3px; color:#111; font-family: Helvetica, Arial, sans-serif; }
.ppe-field:focus{ outline:2px solid #2E6FF2; background:#fff; }
textarea.ppe-field{ resize:none; padding:2px 3px; line-height:1.2; }
.ppe-field--check, .ppe-field--radio{ accent-color:#2E6FF2; background:transparent; border:0; }

/* drawn objects */
.ppe-layer{ position:absolute; inset:0; z-index:4; pointer-events:none; }
.ppe-svg{ position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.ppe-o{ position:absolute; pointer-events:auto; }
.ppe-o--text{ white-space:pre-wrap; word-break:break-word; outline:none; cursor:move; }
.ppe-o--text.is-editing{ cursor:text; outline:1px dashed #2E6FF2; background: rgba(255,255,255,.6); }
.ppe-o--text:empty::before{ content:"Type here"; color:#9aa0a6; }
.ppe-o--image img, .ppe-o--sign img{ width:100%; height:100%; display:block; pointer-events:none; user-select:none; }
.ppe-o--stamp{ display:grid; place-items:center; border:2px solid; border-radius:6px; font-family: Helvetica, Arial, sans-serif; font-weight:700; letter-spacing:.03em; white-space:nowrap; overflow:hidden; background: rgba(255,255,255,.15); }
.ppe-o--note{ width:24px; height:24px; display:grid; place-items:center; cursor:pointer; filter: drop-shadow(0 1px 1px rgba(0,0,0,.35)); }
.ppe-o--note svg{ fill: currentColor; stroke:#5c4400; }
.ppe-hit{ pointer-events:none; }
.ppe-app[data-tool="select"] .ppe-hit{ pointer-events: visiblePainted; cursor:move; }
.ppe-app[data-tool="select"] .ppe-svg g .ppe-hit{ pointer-events: stroke; }
/* drawing tools take the whole page */
.ppe-app:is([data-tool="text"],[data-tool="pen"],[data-tool="marker"],[data-tool="rect"],[data-tool="ellipse"],[data-tool="line"],[data-tool="arrow"],[data-tool="note"],[data-tool="stamp"],[data-tool="image"],[data-tool="sign"],[data-tool="whiteout"],[data-tool="hand"],[data-tool="edittext"]) .ppe-layer{ pointer-events:auto; }
.ppe-app:is([data-tool="pen"],[data-tool="marker"],[data-tool="rect"],[data-tool="ellipse"],[data-tool="line"],[data-tool="arrow"],[data-tool="whiteout"]) .ppe-layer{ cursor: crosshair; touch-action:none; }
.ppe-app[data-tool="text"] .ppe-layer{ cursor:text; }
.ppe-app[data-tool="edittext"] .ppe-layer{ cursor: text; }
.ppe-app[data-tool="hand"] .ppe-layer{ cursor: grab; touch-action:none; }
.ppe-app:is([data-tool="note"],[data-tool="stamp"],[data-tool="image"],[data-tool="sign"]) .ppe-layer{ cursor: copy; }
/* boxes stay clickable in every tool except the free-drawing ones (those draw over everything) */
.ppe-app:is([data-tool="pen"],[data-tool="marker"],[data-tool="rect"],[data-tool="ellipse"],[data-tool="line"],[data-tool="arrow"],[data-tool="whiteout"],[data-tool="hand"]) .ppe-o{ pointer-events:none; }
.ppe-app:not([data-tool="select"]) .ppe-o{ cursor:move; }
.ppe-o--text.is-editing{ pointer-events:auto !important; cursor:text !important; }
.ppe-o{ touch-action:none; }
.ppe-app:is([data-tool="highlight"],[data-tool="underline"],[data-tool="strike"]) .textLayer span{ cursor: text; }
.ppe-app:is([data-tool="highlight"],[data-tool="underline"],[data-tool="strike"]) .ppe-forms{ display:none; }

/* selection box */
.ppe-selbox{ position:absolute; border:1.5px solid #2E6FF2; border-radius:3px; pointer-events:auto; cursor:move; touch-action:none; }
.ppe-selbox.is-edit{ pointer-events:none; border-style:dashed; }
.ppe-selbox.is-edit .ppe-hd, .ppe-selbox.is-edit .ppe-mini{ pointer-events:auto; }
.ppe-mini .ppe-grip{ cursor:grab; touch-action:none; }
.ppe-hd{ position:absolute; touch-action:none; width:12px; height:12px; background:#fff; border:1.5px solid #2E6FF2; border-radius:3px; }
.ppe-hd--nw{ left:-6px; top:-6px; cursor:nwse-resize; } .ppe-hd--n{ left:calc(50% - 6px); top:-6px; cursor:ns-resize; } .ppe-hd--ne{ right:-6px; top:-6px; cursor:nesw-resize; }
.ppe-hd--e{ right:-6px; top:calc(50% - 6px); cursor:ew-resize; } .ppe-hd--se{ right:-6px; bottom:-6px; cursor:nwse-resize; } .ppe-hd--s{ left:calc(50% - 6px); bottom:-6px; cursor:ns-resize; }
.ppe-hd--sw{ left:-6px; bottom:-6px; cursor:nesw-resize; } .ppe-hd--w{ left:-6px; top:calc(50% - 6px); cursor:ew-resize; }
.ppe-hd--p0, .ppe-hd--p1{ border-radius:50%; cursor:move; }
.ppe-mini{ position:absolute; top:-38px; right:-4px; display:flex; gap:2px; padding:3px; background:#0B0B0F; border-radius:8px; box-shadow: 0 6px 16px rgba(0,0,0,.25); }
.ppe-mini button{ all:unset; display:grid; place-items:center; width:26px; height:26px; border-radius:6px; color:#fff; cursor:pointer; }
.ppe-mini button:hover{ background: rgba(255,255,255,.18); }

/* note popup */
.ppe-notepop{ position:absolute; z-index:20; width:230px; padding:8px; background:#FFF8D6; border:1px solid #E9D88A; border-radius:10px; box-shadow: 0 12px 30px rgba(0,0,0,.2); pointer-events:auto; }
.ppe-notepop textarea{ width:100%; border:1px solid #E9D88A; border-radius:6px; padding:6px; font: 13px/1.4 system-ui, sans-serif; resize:vertical; background:#fffdf2; }
.ppe-notepop > div{ display:flex; align-items:center; gap:6px; margin-top:6px; }

/* modal (signature) */
.ppe-modal{ position:fixed; inset:0; z-index:100000; display:grid; place-items:center; padding:16px; background: rgba(11,11,15,.5); }
.ppe-modal-in{ width:min(560px, 100%); background:#fff; border-radius:16px; padding:16px; box-shadow: 0 30px 80px rgba(0,0,0,.35); font-family: var(--font-body, system-ui, sans-serif); color:#1d2327; }
.ppe-modal-head, .ppe-modal-foot{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ppe-modal-foot{ margin-top:12px; justify-content:flex-end; }
.ppe-tabs{ display:flex; gap:4px; margin:10px 0; padding:3px; background:#f0f1f4; border-radius:9px; }
.ppe-tabs button{ all:unset; flex:1; text-align:center; padding:7px; border-radius:7px; cursor:pointer; font-size:.86rem; }
.ppe-tabs button.is-on{ background:#fff; box-shadow: 0 1px 3px rgba(0,0,0,.12); font-weight:600; }
.ppe-sigpad, .ppe-sigprev{ width:100%; height:auto; aspect-ratio: 1000 / 320; border:1px dashed #c3c4c7; border-radius:10px; background:#fff; touch-action:none; cursor: crosshair; }
.ppe-sigprev{ cursor:default; margin-top:8px; }
.ppe-sigrow{ display:flex; align-items:center; justify-content:space-between; margin-top:8px; }
.ppe-sigtxt{ width:100%; height:40px; border:1px solid #c3c4c7; border-radius:8px; padding: 0 10px; font-size:1rem; }
.ppe-sigfonts{ display:grid; gap:6px; margin-top:8px; }
.ppe-sigfonts button{ all:unset; padding:10px 12px; border:1px solid #e1e3e8; border-radius:8px; font-size:1.9rem; line-height:1.2; cursor:pointer; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.ppe-sigfonts button.is-on{ border-color:#2E6FF2; box-shadow: 0 0 0 2px rgba(46,111,242,.25); }
.ppe-remember{ display:flex; align-items:center; gap:6px; margin-top:10px; font-size:.85rem; color:#646970; }

/* toast */
.ppe-toast{ position:absolute; left:50%; bottom:18px; transform: translate(-50%, 20px); z-index:60; max-width: calc(100% - 32px); padding:10px 16px; background:#0B0B0F; color:#fff; border-radius:10px; font-size:.86rem; opacity:0; pointer-events:none; transition: opacity .2s, transform .2s; }
.ppe-toast.is-on{ opacity:1; transform: translate(-50%, 0); }
.ppe-toast.is-bad{ background:#b32d2e; }

/* phones */
@media (max-width: 760px){
  .ppe-app{ height: calc(100vh - 120px); min-height: 480px; border-radius: 12px; }
  .ppe-file, .ppe-zoom .ppe-zsel, .ppe-pgn{ display:none; }
  .ppe-side{ position:absolute; z-index:25; top:0; bottom:0; left:0; box-shadow: 8px 0 24px rgba(0,0,0,.2); }
  .ppe-save span{ display:none; }
  .ppe-bar--top{ gap:2px; padding:4px; }
  .ppe-bar--top [data-a="prev"], .ppe-bar--top [data-a="next"], .ppe-bar--top [data-a="open"]{ display:none; }
  .ppe-pg{ width:44px; }
  .ppe-ib{ width:32px; }
  .ppe-save{ padding: 0 10px; }
  .ppe-tool{ min-width:60px; max-width:68px; height:54px; }
  .ppe-tool span{ white-space:normal; text-align:center; font-size:9.5px; }
  .ppe-pages{ padding: 12px 10px 60px; }
  .ppe-find{ left:8px; right:8px; } .ppe-find input{ flex:1; width:auto; }
}
@media print{ .ppe-app{ display:none; } }

/* font picker */
.ppe-fontbtn{ all:unset; box-sizing:border-box; display:inline-flex; align-items:center; gap:6px; height:30px; max-width:190px; padding:0 8px 0 10px; border:1px solid #d7d9de; border-radius:8px; background:#fff; color:#111; cursor:pointer; font-size:14px; flex:0 0 auto; }
.ppe-fontbtn span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ppe-fontbtn:hover, .ppe-fontbtn:focus-visible{ border-color:#2E6FF2; }
.ppe-fontpop{ position:absolute; z-index:70; width:340px; max-width:calc(100% - 16px); background:#fff; color:#111; border:1px solid #e3e5e8; border-radius:14px; box-shadow:0 18px 50px rgba(0,0,0,.22); display:flex; flex-direction:column; max-height:min(470px, 70vh); overflow:hidden; text-align:left; }
.ppe-fp-top{ padding:10px; display:grid; gap:8px; border-bottom:1px solid #eef0f2; }
.ppe-fp-q, .ppe-fp-lang{ width:100%; box-sizing:border-box; height:34px; padding:0 10px; border:1px solid #d7d9de; border-radius:8px; font-size:14px; background:#fff; color:#111; }
.ppe-fp-q:focus, .ppe-fp-lang:focus{ outline:2px solid rgba(46,111,242,.35); border-color:#2E6FF2; }
.ppe-fp-cats{ display:flex; gap:4px; overflow-x:auto; scrollbar-width:none; }
.ppe-fp-cats button{ all:unset; flex:0 0 auto; padding:4px 10px; border-radius:999px; background:#f1f2f4; font-size:12.5px; cursor:pointer; }
.ppe-fp-cats button.is-on{ background:#0B0B0F; color:#fff; }
.ppe-fp-list{ overflow-y:auto; padding:4px; flex:1 1 auto; overscroll-behavior:contain; }
.ppe-fp-h{ padding:8px 8px 4px; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:#80868b; }
.ppe-fp-row{ all:unset; box-sizing:border-box; display:grid; grid-template-columns: 1fr auto; grid-template-areas:"n t" "s t"; align-items:center; column-gap:8px; width:100%; padding:7px 10px; border-radius:8px; cursor:pointer; }
.ppe-fp-row:hover, .ppe-fp-row:focus-visible{ background:#f3f6ff; }
.ppe-fp-row.is-on{ background:#e8efff; box-shadow: inset 3px 0 0 #2E6FF2; }
.ppe-fp-name{ grid-area:n; font-size:18px; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ppe-fp-smp{ grid-area:s; font-size:16px; line-height:1.5; color:#3c4043; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.ppe-fp-tag{ grid-area:t; font-size:11px; color:#80868b; font-family: Helvetica, Arial, sans-serif; }
.ppe-fp-none{ padding:16px; color:#80868b; font-size:14px; }
.ppe-fp-foot{ margin:0; padding:8px 12px; font-size:11.5px; line-height:1.45; color:#80868b; border-top:1px solid #eef0f2; }
@media (max-width:600px){ .ppe-fontpop{ position:fixed; left:8px !important; right:8px; top:auto !important; bottom:8px; width:auto; max-height:72vh; } }

/* ===== PDF Editor guide (SEO content under the tool) ===== */
.ppe-seo{ max-width: 1080px; margin: 56px auto 8px; color: var(--ink, #0B0B0F); }
.ppe-seo h2{ font: 700 clamp(1.3rem, 2.6vw, 1.75rem)/1.2 var(--font-display, sans-serif); letter-spacing: -.02em; margin: 52px 0 18px; }
.ppe-seo h3{ font: 600 1.02rem/1.3 var(--font-display, sans-serif); margin: 0 0 6px; }
.ppe-seo p{ margin: 0; line-height: 1.6; color: var(--ink-soft, #3c3c44); }
.ppe-seo-head{ text-align: center; max-width: 760px; margin: 0 auto; }
.ppe-seo-head h2{ margin-top: 0; font-size: clamp(1.5rem, 3.4vw, 2.2rem); }
.ppe-seo-pills{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.ppe-seo-pills li{ padding: 6px 12px; border: 1px solid var(--paper-line, #E4E0D6); border-radius: 999px; background: #fff; font: 600 .82rem/1 var(--font-display, sans-serif); }
.ppe-seo-pills li::before{ content: "\2713"; margin-right: 6px; color: #1e7a34; }
.ppe-seo-feat{ display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.ppe-seo-feat article{ padding: 18px; border: 1px solid var(--paper-line, #E4E0D6); border-radius: 14px; background: #fff; }
.ppe-seo-feat article:nth-child(3){ border-color: #6E2FF2; box-shadow: 0 0 0 3px rgba(110,47,242,.08); }
.ppe-seo-steps{ counter-reset: s; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.ppe-seo-steps li{ counter-increment: s; position: relative; padding: 52px 18px 18px; border-radius: 14px; background: var(--paper-dim, #F1EFE9); }
.ppe-seo-steps li::before{ content: counter(s); position: absolute; left: 18px; top: 16px; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--ink, #0B0B0F); color: #fff; font: 700 .9rem/1 var(--font-display, sans-serif); }
.ppe-seo-split{ display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.ppe-seo-split p + p{ margin-top: 14px; }
.ppe-seo-langs{ display: flex; flex-wrap: wrap; gap: 6px; }
.ppe-seo-langs span{ padding: 4px 10px; border-radius: 8px; background: #fff; border: 1px solid var(--paper-line, #E4E0D6); font-size: .9rem; color: var(--ink, #0B0B0F); }
.ppe-seo-tablewrap{ overflow-x: auto; border: 1px solid var(--paper-line, #E4E0D6); border-radius: 14px; background: #fff; }
.ppe-seo-table{ width: 100%; border-collapse: collapse; font-size: .93rem; min-width: 520px; }
.ppe-seo-table th, .ppe-seo-table td{ padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--paper-line, #E4E0D6); }
.ppe-seo-table tbody tr:last-child > *{ border-bottom: 0; }
.ppe-seo-table thead th{ font: 600 .86rem/1.2 var(--font-display, sans-serif); background: var(--paper-dim, #F1EFE9); }
.ppe-seo-table tbody th{ font-weight: 500; }
.ppe-seo-table td.is-us{ font-weight: 600; color: #1e7a34; }
.ppe-seo-faq{ display: grid; gap: 10px; }
.ppe-seo-faq details{ border: 1px solid var(--paper-line, #E4E0D6); border-radius: 12px; background: #fff; padding: 0 18px; }
.ppe-seo-faq summary{ list-style: none; cursor: pointer; padding: 16px 28px 16px 0; position: relative; }
.ppe-seo-faq summary::-webkit-details-marker{ display: none; }
.ppe-seo-faq summary::after{ content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font: 400 1.4rem/1 var(--font-display, sans-serif); color: var(--ink-soft, #3c3c44); }
.ppe-seo-faq details[open] summary::after{ content: "\2212"; }
.ppe-seo-faq summary h3{ margin: 0; display: inline; }
.ppe-seo-faq details p{ padding: 0 0 16px; }
[dir="rtl"] .ppe-seo-faq summary{ padding: 16px 0 16px 28px; }
[dir="rtl"] .ppe-seo-faq summary::after{ right: auto; left: 0; }
[dir="rtl"] .ppe-seo-table th, [dir="rtl"] .ppe-seo-table td{ text-align: right; }
[dir="rtl"] .ppe-seo-pills li::before{ margin: 0 0 0 6px; }
@media (max-width: 700px){ .ppe-seo-split{ grid-template-columns: 1fr; } .ppe-seo{ margin-top: 40px; } .ppe-seo h2{ margin-top: 40px; } }

/* reviews */
.ppe-rev{ margin-top: 8px; }
.ppe-rev-sum{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:1rem; }
.ppe-stars{ color:#d9d6ce; letter-spacing:1px; font-size:1.15rem; } .ppe-stars .on{ color:#F5A623; }
.ppe-rev-list{ display:grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap:12px; margin:16px 0; }
.ppe-rev-item{ margin:0; padding:16px; border:1px solid var(--paper-line, #E4E0D6); border-radius:14px; background:#fff; }
.ppe-rev-item p{ margin:8px 0; color: var(--ink, #0B0B0F); }
.ppe-rev-item footer{ font-size:.82rem; color: var(--ink-soft, #45454f); }
.ppe-rev-form{ display:grid; gap:10px; max-width:560px; margin-top:16px; padding:18px; border:1px solid var(--paper-line, #E4E0D6); border-radius:14px; background:#fff; }
.ppe-rev-form input[type=text], .ppe-rev-form textarea{ width:100%; box-sizing:border-box; padding:10px 12px; border:1px solid var(--paper-line, #E4E0D6); border-radius:10px; font:inherit; background:#fff; }
.ppe-rev-form .ppc-btn{ justify-self:start; }
.ppe-rev-form.is-sent input, .ppe-rev-form.is-sent textarea, .ppe-rev-form.is-sent fieldset, .ppe-rev-form.is-sent button{ display:none; }
.ppe-rev-fs{ border:0; margin:0; padding:0; }
.ppe-rev-fs legend{ font-weight:600; margin-bottom:4px; padding:0; }
.ppe-rev-stars{ display:inline-flex; flex-direction:row-reverse; gap:2px; }
.ppe-rev-stars input{ position:absolute; opacity:0; pointer-events:none; }
.ppe-rev-stars label{ font-size:2rem; line-height:1; color:#d9d6ce; cursor:pointer; transition: transform .1s; }
.ppe-rev-stars label:hover, .ppe-rev-stars label:hover ~ label, .ppe-rev-stars input:checked ~ label{ color:#F5A623; }
.ppe-rev-stars input:focus-visible + label{ outline:2px solid #2E6FF2; border-radius:4px; }
.ppe-rev-msg{ margin:0; font-weight:600; color:#1e7a34; }
.ppe-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; }
.ppe-rate{ position:absolute; left:50%; bottom:64px; transform:translateX(-50%); z-index:61; display:flex; align-items:center; gap:10px; padding:10px 12px 10px 16px; background:#0B0B0F; color:#fff; border-radius:12px; box-shadow:0 14px 30px rgba(0,0,0,.3); font-size:.9rem; white-space:nowrap; max-width:calc(100% - 24px); animation: ppeRateIn .3s ease; }
.ppe-rate-stars a{ color:#F5A623; text-decoration:none; font-size:1.3rem; padding:0 1px; }
.ppe-rate-stars:hover a{ color:#F5A623; } .ppe-rate-stars a:hover ~ a{ color:#6b6b72; }
.ppe-rate-x{ all:unset; cursor:pointer; padding:0 4px; font-size:1.2rem; opacity:.7; }
@keyframes ppeRateIn{ from{ opacity:0; transform:translate(-50%, 10px); } }
@media (max-width:600px){ .ppe-rate{ white-space:normal; flex-wrap:wrap; justify-content:center; text-align:center; } }
.ppe-seo-head p + p{ margin-top: 12px; }
.ppe-seo-pills--left{ justify-content:flex-start; margin-top:0; }
.ppe-seo-tips{ margin:0; padding-left:1.2em; display:grid; gap:8px; line-height:1.55; color: var(--ink-soft, #45454f); }
[dir="rtl"] .ppe-seo-tips{ padding-left:0; padding-right:1.2em; }
.ppe-seo-more{ display:inline-block; margin-top:14px; font-weight:600; }
.ppe-seo-uses{ display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.ppe-seo-uses a{ display:inline-block; padding:9px 14px; border-radius:10px; background: var(--ink, #0B0B0F); color:#fff; text-decoration:none; font: 600 .9rem/1 var(--font-display, sans-serif); }
.ppe-seo-uses a:hover{ background: #2E6FF2; }
/* phones: the PDF never slides sideways with the page; two-finger pinch zooms the PDF itself */
.ppe-scroll{ overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-x pan-y; }
.ppe-pages{ will-change: auto; }
@media (max-width: 760px){
  .ppe-app{ height: calc(100dvh - 90px); max-width: 100%; }
}
@supports ( overflow: clip ){ html, body{ overflow-x: clip; } }
