/* Tekservix PDF editor */
.pe-hero{padding:28px 0 22px}.pe-hero h1{font-size:clamp(1.55rem,2.8vw,2.1rem)}
.pe-app{--pe-bar:56px}
.pe-start{max-width:860px;margin:22px auto 40px;padding:0 16px}
.pe-drop{border:2px dashed var(--tx-line-2);border-radius:18px;padding:46px 20px;text-align:center;cursor:pointer;background:var(--tx-surface);color:var(--tx-muted);transition:.15s}
.pe-drop:hover,.pe-drop.is-over{border-color:var(--tx-brand);background:rgba(79,70,229,.05)}
.pe-drop b{display:block;font-size:1.12rem;color:var(--tx-ink);margin:8px 0 4px}
.pe-drop .tx-btn{margin-top:14px}
.pe-shell{display:grid;grid-template-rows:auto auto 1fr;height:calc(100vh - 64px);min-height:560px;border-top:1px solid var(--tx-line);background:#EEF0F6}
.pe-top{display:flex;align-items:center;gap:4px;padding:6px 10px;background:var(--tx-surface);border-bottom:1px solid var(--tx-line);overflow-x:auto;scrollbar-width:thin}
.pe-tool{display:inline-flex;flex-direction:column;align-items:center;gap:2px;min-width:58px;padding:6px 8px;border:0;border-radius:10px;background:none;color:var(--tx-ink-2);font:600 .72rem/1.1 var(--tx-font);cursor:pointer;white-space:nowrap;position:relative}
.pe-tool svg{width:20px;height:20px}
.pe-tool:hover{background:var(--tx-surface-2)}
.pe-tool[aria-pressed="true"]{background:var(--tx-brand-50,#EEF0FF);color:var(--tx-brand)}
.pe-tool:disabled{opacity:.35;cursor:default}
.pe-sep{width:1px;align-self:stretch;background:var(--tx-line);margin:4px 6px}
.pe-grow{flex:1}
.pe-menu{position:absolute;top:100%;left:0;z-index:40;min-width:180px;background:var(--tx-surface);border:1px solid var(--tx-line);border-radius:12px;box-shadow:var(--tx-sh-lg);padding:6px;display:grid;gap:2px}
.pe-menu button{display:flex;align-items:center;gap:8px;border:0;background:none;padding:8px 10px;border-radius:8px;font:500 .86rem var(--tx-font);color:var(--tx-ink);cursor:pointer;text-align:left}
.pe-menu button:hover{background:var(--tx-surface-2)}
.pe-props{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--tx-surface);border-bottom:1px solid var(--tx-line);min-height:44px;flex-wrap:wrap;font-size:.84rem}
.pe-props:empty{display:none}
.pe-props label{display:inline-flex;align-items:center;gap:6px;color:var(--tx-muted)}
.pe-props select,.pe-props input[type=number]{height:30px;border:1px solid var(--tx-line);border-radius:8px;padding:0 6px;font:inherit;background:var(--tx-surface);color:var(--tx-ink)}
.pe-props input[type=number]{width:64px}
.pe-props input[type=color]{width:30px;height:30px;border:1px solid var(--tx-line);border-radius:8px;padding:2px;background:#fff;cursor:pointer}
.pe-props .pe-tg{height:30px;min-width:30px;border:1px solid var(--tx-line);border-radius:8px;background:var(--tx-surface);font:700 .84rem var(--tx-font);cursor:pointer;color:var(--tx-ink)}
.pe-props .pe-tg[aria-pressed="true"]{background:var(--tx-brand);border-color:var(--tx-brand);color:#fff}
.pe-body{display:grid;grid-template-columns:168px minmax(0,1fr);min-height:0}
.pe-side{overflow-y:auto;background:var(--tx-surface);border-right:1px solid var(--tx-line);padding:10px;display:grid;gap:10px;align-content:start}
.pe-thumb{position:relative;border:2px solid transparent;border-radius:8px;cursor:grab;background:#fff;box-shadow:0 1px 4px rgba(11,16,32,.12)}
.pe-thumb.is-cur{border-color:var(--tx-brand)}
.pe-thumb.is-drag{opacity:.4}
.pe-thumb canvas{display:block;width:100%;border-radius:6px}
.pe-thumb small{position:absolute;bottom:4px;left:6px;font:700 .7rem var(--tx-font);background:rgba(11,16,32,.65);color:#fff;border-radius:6px;padding:1px 6px}
.pe-thumb .pe-ta{position:absolute;top:4px;right:4px;display:none;gap:2px}
.pe-thumb:hover .pe-ta{display:flex}
.pe-ta button{width:24px;height:24px;border:0;border-radius:6px;background:rgba(11,16,32,.72);color:#fff;cursor:pointer;display:grid;place-items:center}
.pe-ta svg{width:14px;height:14px}
.pe-addpage{border:1px dashed var(--tx-line-2);border-radius:8px;background:none;padding:10px;color:var(--tx-muted);font:600 .8rem var(--tx-font);cursor:pointer}
.pe-view{overflow:auto;padding:24px 16px 80px;position:relative}
.pe-pages{display:grid;gap:22px;justify-content:center}
.pe-page{position:relative;background:#fff;box-shadow:0 4px 18px rgba(11,16,32,.16);user-select:none;-webkit-user-select:none}
.pe-page>canvas{position:absolute;inset:0;width:100%;height:100%}
.pe-layer{position:absolute;inset:0;pointer-events:none}
.pe-layer>*{pointer-events:auto}.pe-layer>.cover,.pe-layer>.pe-rubber{pointer-events:none}
.pe-crosshair .pe-page{cursor:crosshair}
.pe-txl{position:absolute;inset:0;pointer-events:none}
.pe-mode-text .pe-txl,.pe-mode-annot .pe-txl{pointer-events:auto}
.pe-ti{position:absolute;cursor:text;border-radius:2px}
.pe-mode-text .pe-ti:hover{outline:1.5px dashed #6366F1;background:rgba(99,102,241,.08)}
.pe-mode-annot .pe-ti{cursor:text}
.pe-o{position:absolute;box-sizing:border-box}
.pe-o.is-sel{outline:1.5px solid #4F46E5;outline-offset:1px}
.pe-o.t{cursor:move;white-space:pre-wrap;word-break:break-word;line-height:1.2;padding:0;min-width:8px}
.pe-o.t .pe-tx{outline:none;cursor:text;min-height:1em}
.pe-o.cover{pointer-events:none}
.pe-o.img{cursor:move}.pe-o.img img{width:100%;height:100%;display:block;pointer-events:none;user-select:none}
.pe-o.shape{cursor:move}.pe-o.shape svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.pe-o.link{cursor:move;border:1.5px dashed #2563EB;background:rgba(37,99,235,.08)}
.pe-o.link span{position:absolute;left:0;bottom:100%;font:600 10px/1.4 var(--tx-font);background:#2563EB;color:#fff;padding:0 5px;border-radius:4px 4px 0 0;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.pe-o.field{cursor:move;border:1.5px solid #7C3AED;background:rgba(124,58,237,.08);display:flex;align-items:center;padding:0 4px;font:500 11px var(--tx-font);color:#5B21B6}
.pe-form{position:absolute;box-sizing:border-box;border:1px solid rgba(37,99,235,.55);background:rgba(219,234,254,.55);font:12px Helvetica,Arial,sans-serif;padding:0 3px;color:#0B1020}
.pe-form:focus{outline:2px solid #2563EB;background:#fff}
input.pe-form[type=checkbox]{margin:0;accent-color:#2563EB;background:none;border:0}
.pe-h{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid #4F46E5;border-radius:3px;z-index:3}
.pe-h[data-h=nw]{left:-6px;top:-6px;cursor:nwse-resize}.pe-h[data-h=ne]{right:-6px;top:-6px;cursor:nesw-resize}
.pe-h[data-h=sw]{left:-6px;bottom:-6px;cursor:nesw-resize}.pe-h[data-h=se]{right:-6px;bottom:-6px;cursor:nwse-resize}
.pe-h[data-h=e]{right:-6px;top:calc(50% - 5px);cursor:ew-resize}.pe-h[data-h=w]{left:-6px;top:calc(50% - 5px);cursor:ew-resize}
.pe-del{position:absolute;top:-30px;right:-4px;display:flex;gap:2px;z-index:4}
.pe-del button{height:24px;min-width:24px;padding:0 6px;border:0;border-radius:6px;background:#0B1020;color:#fff;cursor:pointer;font:600 11px var(--tx-font);display:inline-flex;align-items:center;gap:4px}
.pe-del svg{width:13px;height:13px}
.pe-rubber{position:absolute;border:1.5px dashed #4F46E5;background:rgba(79,70,229,.08);pointer-events:none}
.pe-crosshair .pe-layer{cursor:crosshair}
.pe-zoom{display:inline-flex;align-items:center;gap:4px;font:600 .8rem var(--tx-font);color:var(--tx-muted)}
.pe-zoom button{width:30px;height:30px;border:1px solid var(--tx-line);border-radius:8px;background:var(--tx-surface);cursor:pointer;font:700 1rem var(--tx-font);color:var(--tx-ink)}
.pe-hint{position:sticky;top:0;z-index:5;margin:-14px auto 12px;width:max-content;max-width:100%;background:#0B1020;color:#fff;font:500 .8rem var(--tx-font);padding:6px 12px;border-radius:999px;opacity:.9}
.pe-hint:empty{display:none}
@media (max-width:820px){
  .pe-body{grid-template-columns:1fr}.pe-side{display:none}
  .pe-shell{height:calc(100vh - 56px)}
  .pe-tool{min-width:50px;font-size:.66rem}
}
