/*! PDF Edit (c) 2026 pdfedit.com — All rights reserved. Source files are MIT/Apache-licensed third-party libraries plus original work. Copying, redistribution, or derivative works require attribution. Contact: hello@pdfedit.com */
.ov{position:absolute;box-sizing:border-box;pointer-events:auto;user-select:none;outline:none;transition:box-shadow var(--transition-fast)}.ov:hover{box-shadow:0 0 0 1.5px var(--primary)}.ov.ov--selected{box-shadow:0 0 0 2px var(--primary)}.ov.ov--locked{cursor:not-allowed;opacity:.5;outline:1.5px dashed var(--text-muted);outline-offset:1px;pointer-events:none}.ov.ov--locked:hover{box-shadow:none}.ov.ov--hidden{display:none!important}.ov.ov--non-selectable{pointer-events:none!important;cursor:default}.ov.ov--non-selectable:hover{box-shadow:none}.object-import-tool__preview{position:absolute;display:none;border:2px dashed color-mix(in srgb,var(--primary) 78%,transparent);background:color-mix(in srgb,var(--primary) 8%,transparent);border-radius:4px;pointer-events:none;z-index:99997}.object-import-outline{position:absolute;appearance:none;border:2px solid color-mix(in srgb,var(--primary) 80%,transparent);background:color-mix(in srgb,var(--primary) 8%,transparent);border-radius:6px;box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 14%,transparent),0 6px 18px #0f172a1f;cursor:pointer;z-index:99996;padding:0}.object-import-outline:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 22%,transparent),0 10px 24px #0f172a29}.object-import-loading{position:absolute;left:12px;top:12px;z-index:99998;padding:8px 12px;border-radius:999px;background:#0f172aeb;color:#fff;font:600 12px/1.2 var(--font, system-ui, sans-serif);box-shadow:0 10px 24px #0f172a38;pointer-events:none}.ov-text{overflow:hidden;word-break:break-word;white-space:pre-wrap;cursor:text;line-height:normal;text-rendering:geometricPrecision;font-kerning:normal;font-synthesis:none;text-overflow:clip;isolation:isolate}.ov-text.ov--selected{box-shadow:none}.ov-text[contenteditable=true]{outline:none;cursor:text;user-select:text;-webkit-user-select:text}.ov-text--native-editing{overflow:visible;outline:none;user-select:text;-webkit-user-select:text}.ov-text.ov--selected:after,.ov-text[contenteditable=true]:after,.ov-text--native-editing:after{content:"";position:absolute;inset:-1px;border:1.5px solid var(--primary);border-radius:1px;pointer-events:none;z-index:4}.ov-text__imported-cover{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.ov-text__imported-cover-line{position:absolute;pointer-events:none}.ov-text__native-content{position:absolute;inset:0;overflow:visible;pointer-events:none;z-index:1}.ov-text__native-edit-visual{position:absolute;inset:0;overflow:visible;pointer-events:none;z-index:2}.ov-text__native-edit-input{position:absolute;inset:0;z-index:1;outline:none;border:0;background:transparent;color:transparent!important;caret-color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:0 transparent!important;text-shadow:none!important;white-space:pre;overflow:hidden;text-rendering:geometricPrecision;font-kerning:normal;font-synthesis:none;pointer-events:none;cursor:text;user-select:text;-webkit-user-select:text}.ov-text__native-edit-caret{position:absolute;width:1.5px;min-height:10px;background:var(--ov-native-caret-color, currentColor);pointer-events:none;z-index:3;display:none;animation:ov-native-caret-blink 1s steps(1,end) infinite}@keyframes ov-native-caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}.ov-text__native-edit-input::selection,.ov-text__native-edit-input *::selection{background:transparent;color:transparent;-webkit-text-fill-color:transparent}.ov-text .box__char{position:absolute;display:block;white-space:pre;line-height:1;pointer-events:none;text-rendering:geometricPrecision;font-kerning:normal;font-synthesis:none}.ov-text a{color:#1d4ed8;text-decoration:underline;text-underline-offset:1.5px;cursor:pointer}.ov-text[contenteditable=true] a{cursor:text}.ov-image{overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:move}.ov-image img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}.ov-shape{overflow:visible;cursor:move}.ov-shape svg{display:block}.ov-drawing{overflow:visible;cursor:move}.ov-drawing svg{display:block}.ov-annotation{display:block;overflow:visible;cursor:default;background:transparent;box-shadow:none;border-radius:0}.ov-annotation__dot{position:absolute;border:none;border-radius:999px;background:#facc15;box-shadow:0 0 0 1px #78350f33,0 2px 6px #0000002e;cursor:move;pointer-events:auto;z-index:1}.ov-annotation__dot:hover{transform:scale(1.08)}.ov-annotation__connector{position:absolute;pointer-events:none;overflow:visible;opacity:.98;z-index:0}.ov-annotation__connector-path{filter:drop-shadow(0 0 .35px rgba(120,53,15,.35))}.ov-annotation__badge{position:absolute;width:28px;height:28px;border:1px solid rgba(120,53,15,.25);border-radius:8px;background:#facc15;color:#78350f;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #00000024;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast);pointer-events:auto;z-index:2}.ov-annotation__badge:hover{transform:translateY(-1px);box-shadow:0 8px 18px #00000029}.ov-annotation__badge svg{width:16px;height:16px;pointer-events:none}.ov-annotation__preview{position:absolute;min-height:38px;width:164px;padding:8px 12px;border:1px solid rgba(148,163,184,.28);border-radius:14px;background:#fffbebf5;color:#5b4a1a;font:600 12px/1.35 var(--font);text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;box-shadow:0 8px 20px #0f172a1f;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);pointer-events:auto;z-index:2}.ov-annotation__preview:hover{transform:translateY(-1px);box-shadow:0 12px 24px #0f172a29;border-color:#facc157a}.ov-annotation__preview--empty{color:#78716ceb;font-weight:500}.ov-annotation__panel{position:absolute;top:calc(100% + 10px);left:0;width:260px;max-width:min(260px,calc(100vw - 24px));max-height:min(320px,calc(100vh - 24px));display:none;overflow:auto;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 18px 40px #0003;z-index:20}.ov-annotation--open .ov-annotation__panel{display:block}.ov-annotation__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.ov-annotation__title{font-size:12px;font-weight:700;color:var(--text)}.ov-annotation__close{width:24px;height:24px;border:none;border-radius:999px;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ov-annotation__close:hover{background:var(--surface-2);color:var(--text)}.ov-annotation__meta{font-size:11px;color:var(--text-muted);margin-bottom:10px}.ov-annotation__textarea,.ov-annotation__author,.ov-annotation__body{width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-family:var(--font);font-size:12px;box-sizing:border-box}.ov-annotation__textarea{min-height:110px;resize:vertical;padding:10px 12px;margin-bottom:8px}.ov-annotation__textarea:focus,.ov-annotation__author:focus{outline:none;border-color:var(--border);box-shadow:none}.ov-annotation__author{height:34px;padding:0 12px}.ov-annotation__body{min-height:78px;padding:10px 12px;white-space:pre-wrap;line-height:1.45}.ov-annotation--imported{cursor:pointer}.ov-annotation.ov--non-selectable.ov-annotation--imported{pointer-events:auto!important;cursor:pointer}.ov-annotation--readonly .ov-annotation__badge{filter:saturate(.92)}.ov-annotation--readonly .ov-annotation__preview{filter:saturate(.95)}.ov-annotation--open .ov-annotation__badge{box-shadow:0 0 0 2px #facc1561,0 10px 24px #0000002e}.ov-annotation--open .ov-annotation__preview{border-color:#facc1585;box-shadow:0 0 0 2px #facc1538,0 14px 28px #0f172a2e}.ov-annotation--compact .ov-annotation__connector{display:none;pointer-events:none}.ov-annotation--compact .ov-annotation__dot{opacity:.18}.ov-annotation--readonly .ov-annotation__dot,.ov-annotation--readonly .ov-annotation__connector,.ov-annotation--readonly .ov-annotation__badge,.ov-annotation--readonly .ov-annotation__preview{filter:saturate(.92)}@media print{.ov-annotation,.ov-annotation__panel{display:none!important}}.ov-stamp{display:flex;align-items:center;justify-content:center;cursor:move;overflow:visible}.ov-stamp__label{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:Impact,Arial Black,sans-serif;font-weight:700;letter-spacing:3px;text-transform:uppercase;user-select:none;pointer-events:none}.ov-watermark{display:flex;align-items:center;justify-content:center;overflow:visible}.ov-watermark__label{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:Helvetica,Arial,sans-serif;font-weight:700;white-space:nowrap;user-select:none;pointer-events:none}.ov-link{background:#3b82f62e;border:1.5px dashed rgba(59,130,246,.45);cursor:pointer;transition:background var(--transition-fast)}.ov-link:hover{background:#3b82f64d;box-shadow:0 0 0 1.5px #3b82f699}.ov-link.ov-link--imported{display:none;pointer-events:none!important}.page-viewport__wrapper--links-visible .ov-link.ov-link--imported{display:block;background:#1d4ed81a;border:none;cursor:pointer;pointer-events:auto!important;transition:background var(--transition-fast)}.page-viewport__wrapper--links-visible .ov-link.ov-link--imported:hover{background:#1d4ed838;box-shadow:none}.ov-form{display:flex;align-items:center;cursor:move}.ov-form__input{box-sizing:border-box;font-family:inherit;font-size:13px;border:1.5px solid var(--form-color, rgba(148, 163, 184, .55));border-radius:var(--radius-sm);background:#fffffff5;color:#1f2937;padding:2px 6px;outline:none;transition:border-color var(--transition-fast)}.ov-form__input:focus{border-color:var(--form-color, #2563eb);background:#fff;box-shadow:0 0 0 2px var(--form-color-glow, rgba(37, 99, 235, .18))}.ov-form__input::placeholder{color:#1f293773}.ov-form__input[type=checkbox]{width:16px;height:16px;padding:0;margin:auto;background:#fffffff5;accent-color:var(--form-color, #94a3b8);cursor:pointer}.ov-form select.ov-form__input option{background:#fff;color:#1f2937}.ov-form select.ov-form__input{padding:2px 4px;cursor:pointer}.ov-form textarea.ov-form__input{resize:none}.ov-form select.ov-form__input[multiple]{height:100%;overflow-y:auto;cursor:default}.ov-form.ov-form--imported{outline:1.5px dashed rgba(234,179,8,.55);outline-offset:-1.5px;cursor:default}.ov-form.ov-form--imported .ov-form__input{background:#fefce8eb}.ov-form.ov-form--imported .ov-form__input:focus{background:#fff;border-color:#2563eb}.ov-form.ov-form--imported .ov-form__input[disabled]{cursor:not-allowed;opacity:.7;background:#fefce880}.handle-container{position:absolute;top:0;left:0;pointer-events:none;z-index:999999}.selection-box{position:absolute;border:1.5px dashed var(--primary);pointer-events:none;box-sizing:border-box}.handle{position:absolute;width:8px;height:8px;background:var(--primary);border:1.5px solid var(--primary-fg);box-sizing:border-box;pointer-events:auto;transform:translate(-50%,-50%);z-index:1;transition:transform .1s ease}.handle:hover{transform:translate(-50%,-50%) scale(1.25)}.handle-resize{border-radius:2px}.handle-rotate{border-radius:50%;cursor:grab;width:18px!important;height:18px!important;background:var(--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 4v6h-6'/%3E%3Cpath d='M20.49 15a9 9 0 1 1-2.12-9.36L23 10'/%3E%3C/svg%3E") center/11px no-repeat;border:2px solid var(--primary-fg)}.handle-move{width:16px!important;height:16px!important;border-radius:999px;cursor:move;background:color-mix(in srgb,var(--primary) 82%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='m8 7 4-4 4 4'/%3E%3Cpath d='m8 17 4 4 4-4'/%3E%3Cpath d='m7 8-4 4 4 4'/%3E%3Cpath d='m17 8 4 4-4 4'/%3E%3C/svg%3E") center/10px no-repeat;border:2px solid var(--primary-fg);box-shadow:0 1px 4px #0000002e}.handle-move:hover{transform:translate(-50%,-50%) scale(1.16)}.handle-rotate:hover{transform:translate(-50%,-50%) scale(1.2)}.handle-rotate:active{cursor:grabbing}.handle-rotate-stem{position:absolute;width:1px;background:var(--primary);pointer-events:none;opacity:.6}.handle[data-handle=nw]{cursor:nw-resize}.handle[data-handle=n]{cursor:n-resize}.handle[data-handle=ne]{cursor:ne-resize}.handle[data-handle=e]{cursor:e-resize}.handle[data-handle=se]{cursor:se-resize}.handle[data-handle=s]{cursor:s-resize}.handle[data-handle=sw]{cursor:sw-resize}.handle[data-handle=w]{cursor:w-resize}.link-popover{position:fixed;z-index:100000;display:flex;align-items:center;gap:4px;padding:4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #00000026;font-size:12px;font-family:var(--font)}.link-popover__url{display:inline-block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1d4ed8;text-decoration:underline;padding:4px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.link-popover__url:hover{text-decoration-thickness:2px}.link-popover__btn{padding:4px 8px;background:transparent;border:none;border-radius:4px;color:var(--text);cursor:pointer;font-family:var(--font);font-size:12px}.link-popover__btn:hover{background:var(--surface-2)}
