:root{--accent-color:#059669;--accent-gradient:linear-gradient(135deg, #059669 0%, #10b981 100%);--accent-bg-soft:#0596691f}.pdf-viewport-stage{touch-action:pan-x pan-y;background-color:#4b5563;border-radius:1rem;justify-content:center;align-items:flex-start;min-height:860px;max-height:none;padding:2.5rem 1.5rem 3.5rem;display:flex;position:relative;overflow:auto;box-shadow:inset 0 2px 12px #0006}.dark .pdf-viewport-stage,[data-theme=dark] .pdf-viewport-stage{background-color:#1a1d23}@media (width<=640px){.pdf-viewport-stage{min-height:520px;padding:1rem .5rem}}.pdf-page-container{transform-origin:top;background-color:#fff;border-radius:6px;margin:0 auto;transition:transform .15s ease-out;position:relative;box-shadow:0 10px 30px -5px #0000004d,0 0 0 1px #ffffff14}.pdf-render-canvas{pointer-events:none;border-radius:6px;display:block}.pdf-drawing-canvas{z-index:10;cursor:crosshair;border-radius:6px;width:100%;height:100%;position:absolute;top:0;left:0}.pdf-drawing-canvas.mode-select{cursor:default}.pdf-drawing-canvas.mode-text{cursor:text}.pdf-drawing-canvas.mode-hand{cursor:grab}.pdf-drawing-canvas.mode-hand:active{cursor:grabbing}.pdf-elements-layer{z-index:20;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.pdf-annotation-item{pointer-events:auto;user-select:none;cursor:move;box-sizing:border-box;transition:box-shadow .15s;position:absolute}.pdf-annotation-item.selected{outline-offset:3px;outline:2px dashed #059669;box-shadow:0 0 0 4px #05966926}.pdf-annotation-item .delete-btn{color:#fff;cursor:pointer;z-index:30;background-color:#ef4444;border:1.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:none;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 6px #0000004d}.pdf-annotation-item.selected .delete-btn,.pdf-annotation-item:hover .delete-btn{display:flex}.pdf-text-box{word-break:break-word;white-space:pre-wrap;background:0 0;outline:none;min-width:32px;min-height:20px;padding:2px 4px}.pdf-text-box:focus{background:#fffffff2;border-radius:4px;box-shadow:0 0 0 2px #059669;color:#111827!important}.tool-btn{color:currentColor;opacity:.8;cursor:pointer;border:1px solid #0000;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-width:48px;min-height:44px;padding:.5rem .75rem;font-size:.65rem;font-weight:600;transition:all .15s;display:flex}.tool-btn:hover{opacity:1;background-color:#ffffff14}.tool-btn.active{opacity:1;background-color:var(--accent-bg-soft);color:#10b981;border-color:#10b98159;box-shadow:0 0 12px -2px #10b98140}.color-swatch-btn{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:26px;height:26px;transition:transform .15s,border-color .15s}.color-swatch-btn:hover{transform:scale(1.15)}.color-swatch-btn.active{border-color:#fff;transform:scale(1.18);box-shadow:0 0 0 2px #059669}.thumbnail-strip{scrollbar-width:thin;flex-direction:column;gap:.75rem;max-height:860px;padding:.5rem;display:flex;overflow-y:auto}@media (width<=768px){.thumbnail-strip{flex-direction:row;width:100%;max-height:120px;overflow:auto hidden}}.thumbnail-item{cursor:pointer;background-color:#0003;border:2px solid #0000;border-radius:.5rem;flex-direction:column;align-items:center;gap:4px;padding:4px;transition:all .15s;display:flex;position:relative}.thumbnail-item:hover{border-color:#ffffff4d;transform:translateY(-2px)}.thumbnail-item.active{background-color:#10b9811a;border-color:#10b981;box-shadow:0 0 12px #10b9814d}.thumbnail-canvas{background:#fff;border-radius:3px;width:70px;height:auto;display:block;box-shadow:0 2px 4px #0003}.pdf-stamp-approved{color:#10b981;text-transform:uppercase;letter-spacing:.1em;background:#10b98114;border:3px solid #10b981;border-radius:6px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:900;transform:rotate(-8deg)}.pdf-stamp-confidential{color:#ef4444;text-transform:uppercase;letter-spacing:.1em;background:#ef444414;border:3px solid #ef4444;border-radius:6px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:900;transform:rotate(-12deg)}.pdf-stamp-draft{color:#f59e0b;text-transform:uppercase;letter-spacing:.1em;background:#f59e0b14;border:3px solid #f59e0b;border-radius:6px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:900;transform:rotate(-6deg)}.pdf-stamp-final{color:#3b82f6;text-transform:uppercase;letter-spacing:.1em;background:#3b82f614;border:3px solid #3b82f6;border-radius:6px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:900;transform:rotate(5deg)}.pdf-stamp-void{color:#6b7280;text-transform:uppercase;letter-spacing:.1em;background:#6b728014;border:3px solid #6b7280;border-radius:6px;padding:4px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:900;transform:rotate(-15deg)}.signature-modal-backdrop{backdrop-filter:blur(4px);z-index:100;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.signature-modal-backdrop.hidden,.signature-modal-backdrop[hidden]{display:none!important}.pdf-text-detect-layer{z-index:25;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.pdf-text-detect-layer.active{pointer-events:auto}.pdf-detect-line{pointer-events:auto;cursor:pointer;box-sizing:border-box;user-select:none;border:1px dashed #0000;border-radius:3px;transition:background-color .12s,border-color .12s;position:absolute}.pdf-text-detect-layer.active .pdf-detect-line:hover{background-color:#3b82f61f;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.pdf-detect-line.is-modified{background-color:#fff;border:1px solid #10b981;box-shadow:0 1px 3px #0000001a;color:#111827!important}.pdf-detect-line.is-deleted{opacity:.7;background-color:#fee2e2b3;text-decoration:line-through;color:#dc2626!important;border:1px dashed #ef4444!important}.pdf-detect-line.selected{z-index:35;background-color:#fffffffa;box-shadow:0 0 0 3px #2563eb33,0 8px 20px #00000026;border:2px solid #2563eb!important}.pdf-drag-handle{color:#fff;cursor:grab;z-index:40;background-color:#2563eb;border-radius:4px;justify-content:center;align-items:center;width:20px;height:22px;display:flex;position:absolute;top:50%;left:-24px;transform:translateY(-50%);box-shadow:0 2px 6px #0003}.pdf-drag-handle:active{cursor:grabbing}.pdf-resize-handle{cursor:ew-resize;z-index:40;opacity:.85;background-color:#2563eb;border-radius:3px;width:10px;transition:opacity .12s;position:absolute;top:0;bottom:0;right:-5px}.pdf-resize-handle:hover{opacity:1}.pdf-line-delete-btn{color:#fff;cursor:pointer;z-index:45;background-color:#ef4444;border:1.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:13px;font-weight:700;display:flex;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 6px #00000040}.pdf-line-delete-btn:hover{background-color:#dc2626;transform:scale(1.1)}.pdf-floating-text-toolbar{z-index:50;white-space:nowrap;color:#111827;background:#fff;border:1px solid #0000001f;border-radius:8px;align-items:center;gap:6px;padding:4px 6px;font-size:12px;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 10px 25px -5px #00000040,0 0 0 1px #0000000d}.pdf-floating-text-toolbar select{color:#111827;cursor:pointer;background:#f9fafb;border:1px solid #d1d5db;border-radius:4px;height:26px;padding:0 4px;font-size:11px;font-weight:600}.pdf-floating-text-toolbar button{color:#1f2937;cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 6px;font-size:11px;font-weight:700;transition:all .12s;display:flex}.pdf-floating-text-toolbar button:hover{background:#e5e7eb}.pdf-floating-text-toolbar button.active{color:#fff;background:#2563eb;border-color:#2563eb}.pdf-detect-input{width:100%;height:100%;font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;color:inherit;box-sizing:border-box;background:#fff;border:none;outline:none;padding:0 4px;display:block}
