/* ─── EDITOR ─── */
#editorPage{display:none;position:fixed;inset:0;background:var(--paper);z-index:200;flex-direction:column}
#editorPage.show{display:flex}
.editor-topbar{background:var(--ink);color:#fff;padding:0 20px;height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}
.editor-topbar h2{font-size:15px;font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}
.editor-toolbar{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#fff;border-bottom:1px solid var(--border);flex-wrap:wrap;flex-shrink:0}
.tool-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:'Heebo',sans-serif;transition:all .18s;color:var(--ink)}
.tool-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}
.tool-sep{width:1px;height:32px;background:var(--border);margin:0 4px}
.editor-body{flex:1;display:flex;overflow:hidden}
.editor-canvas-wrap{flex:1;overflow:auto;padding:20px;display:flex;justify-content:center;background:var(--paper-warm);position:relative}
.doc-page-container{position:relative;display:inline-block;box-shadow:var(--shadow-lg)}
.doc-page-container canvas{display:block}
.field-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}
.field-item{position:absolute;border:2.5px solid var(--accent);background:rgba(37,99,235,.08);border-radius:6px;cursor:move;pointer-events:all;display:flex;align-items:center;justify-content:center;user-select:none;transition:box-shadow .15s}
.field-item:hover{box-shadow:0 0 0 3px rgba(37,99,235,.25)}
.field-item.selected{border-color:var(--danger);box-shadow:0 0 0 3px rgba(220,38,38,.2)}
.field-label{font-size:11px;font-weight:700;color:var(--accent);pointer-events:none;text-align:center;padding:2px 4px;background:rgba(255,255,255,.9);border-radius:4px;white-space:nowrap}
.field-item.sig-field{border-color:#7c3aed;background:rgba(124,58,237,.08)}
.field-item.sig-field .field-label{color:#7c3aed}
.resize-handle{position:absolute;bottom:-5px;left:-5px;width:12px;height:12px;background:var(--accent);border-radius:3px;cursor:se-resize;pointer-events:all}
.field-item.sig-field .resize-handle{background:#7c3aed}
.field-delete-btn{position:absolute;top:-10px;right:-10px;width:20px;height:20px;background:var(--danger);color:#fff;border-radius:50%;font-size:12px;display:none;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;border:none}
.field-item:hover .field-delete-btn,.field-item.selected .field-delete-btn{display:flex}
.editor-props{width:270px;background:#fff;border-right:1px solid var(--border);overflow-y:auto;padding:16px;flex-shrink:0}
.props-title{font-size:14px;font-weight:700;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.prop-group{margin-bottom:16px}
.prop-label{font-size:12px;font-weight:600;color:var(--ink-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}
.prop-input{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:'Heebo',sans-serif;font-size:14px;outline:none;transition:border .2s}
.prop-input:focus{border-color:var(--accent)}
.recipient-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--paper);border:1.5px solid var(--border);border-radius:var(--radius-sm);margin-bottom:8px}
.recipient-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
