#sp-tool-app .sp-tool-btn,#sp-tool-app .sp-tool-circle-btn,#sp-tool-app .sp-tool-doc-item,#sp-tool-app .sp-tool-dropzone,#sp-tool-app .sp-tool-tab,#sp-tool-app .sp-tool-upload-box{-webkit-tap-highlight-color:transparent}#sp-tool-app,#sp-tool-app *,#sp-tool-app ::after,#sp-tool-app ::before{box-sizing:border-box}#sp-tool-app{--sp-tool-primary:#4f46e5;--sp-tool-primary-hover:#3730a3;--sp-tool-bg:#ffffff;--sp-tool-bg-alt:#f3f4f6;--sp-tool-border:#d1d5db;--sp-tool-text-main:#111827;--sp-tool-text-light:#4b5563;--sp-tool-success:#10b981;--sp-tool-danger:#dc2626;--sp-tool-radius:12px;--sp-tool-shadow:0 4px 10px rgba(0, 0, 0, 0.08);--sp-tool-transition:0.25s cubic-bezier(0.4, 0, 0.2, 1);font-family:inherit;color:var(--sp-tool-text-main);background-color:var(--sp-tool-bg);border:1px solid var(--sp-tool-border);border-radius:calc(var(--sp-tool-radius) + 4px);box-shadow:var(--sp-tool-shadow);padding:2.5rem;margin:0 auto;width:100%;max-width:100vw;position:relative;overflow:hidden;overflow-wrap:break-word}#sp-tool-app .sp-tool-toast{position:absolute;top:-100px;left:50%;transform:translateX(-50%);background-color:var(--sp-tool-danger);color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;z-index:9999;transition:top .4s cubic-bezier(.68, -.55, .265, 1.55);box-shadow:0 4px 12px rgba(239,68,68,.4);pointer-events:none;display:flex;align-items:center;gap:.5rem;width:max-content;max-width:calc(100% - 2rem)}#sp-tool-app .sp-tool-toast.sp-tool-toast-show{top:20px}#sp-tool-app .sp-tool-toast.sp-tool-toast-success{background-color:var(--sp-tool-success);box-shadow:0 4px 12px rgba(16,185,129,.4)}#sp-tool-app .sp-tool-header{text-align:center;margin-bottom:2rem}#sp-tool-app .sp-tool-title{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;color:var(--sp-tool-primary);letter-spacing:-.02em}#sp-tool-app .sp-tool-subtitle{font-size:1.1rem;color:var(--sp-tool-text-light);margin:0}#sp-tool-app .sp-tool-view{display:none;animation:.3s ease-out forwards sp-tool-fade-in}#sp-tool-app .sp-tool-tab-content.sp-tool-active,#sp-tool-app .sp-tool-view-active{display:block}@keyframes sp-tool-fade-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}#sp-tool-app .sp-tool-dropzone{border:2px dashed #9ca3af;border-radius:var(--sp-tool-radius);padding:4rem 2rem;text-align:center;background-color:#f8fafc;transition:all var(--sp-tool-transition);cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px}#sp-tool-app .sp-tool-dropzone.sp-tool-drag-active{background-color:rgba(79,70,229,.04);border-color:var(--sp-tool-primary)}#sp-tool-app .sp-tool-upload-icon{color:var(--sp-tool-primary);margin-bottom:1.25rem;background:rgba(79,70,229,.1);padding:1.25rem;border-radius:50%;transition:transform .2s}#sp-tool-app .sp-tool-upload-text{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}#sp-tool-app .sp-tool-upload-subtext{font-size:.95rem;color:var(--sp-tool-text-light);margin:0}#sp-tool-app .sp-tool-meta-text,#sp-tool-app .sp-tool-tab{font-size:.85rem;white-space:nowrap;text-overflow:ellipsis;min-width:0}#sp-tool-app .sp-tool-file-input,#sp-tool-app .sp-tool-upload-box input[type=file]{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer;z-index:10}#sp-tool-app .sp-tool-setup-layout{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;align-items:start;min-width:0;width:100%}@media (max-width:800px){#sp-tool-app .sp-tool-setup-layout{grid-template-columns:1fr;gap:1rem}}#sp-tool-app .sp-tool-panel{background-color:var(--sp-tool-bg);border-radius:var(--sp-tool-radius);border:1px solid var(--sp-tool-border);display:flex;flex-direction:column;min-height:429px;min-width:0;max-width:100%}#sp-tool-app .sp-tool-panel-header{padding:1rem 1.25rem;border-bottom:1px solid var(--sp-tool-border);background-color:var(--sp-tool-bg-alt);font-weight:600;display:flex;justify-content:space-between;align-items:center;height:64px}#sp-tool-app .sp-tool-circle-btn{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .2s;position:relative;padding:0;background-color:var(--sp-tool-success);box-shadow:0 2px 6px rgba(16,185,129,.4);margin-left:auto;flex-shrink:0}#sp-tool-app .sp-tool-circle-btn svg{width:18px;height:18px;stroke:white;stroke-width:2.5}#sp-tool-app .sp-tool-circle-btn:active{transform:scale(.92);box-shadow:none}#sp-tool-app .sp-tool-circle-btn input[type=file]{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer;border-radius:50%}#sp-tool-app .sp-tool-doc-list{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1.25rem;background:var(--sp-tool-bg);border-bottom:1px solid var(--sp-tool-border);max-height:140px;overflow-y:auto}#sp-tool-app .sp-tool-doc-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;min-height:44px;background:var(--sp-tool-bg-alt);border:1px solid var(--sp-tool-border);border-radius:6px;cursor:pointer;transition:.2s;min-width:0}#sp-tool-app .sp-tool-doc-item.active{border-color:var(--sp-tool-primary);background:rgba(79,70,229,.05)}#sp-tool-app .sp-tool-meta-text{font-weight:500;color:var(--sp-tool-text-light);display:block;flex:1;overflow:hidden;padding-right:10px}#sp-tool-app .sp-tool-doc-item-remove{background:0 0;border:none;color:var(--sp-tool-danger);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s;flex-shrink:0}#sp-tool-app .sp-tool-doc-item-remove svg{width:18px;height:18px}#sp-tool-app .sp-tool-panel-body{padding:1.25rem;flex-grow:1;display:flex;flex-direction:column;min-width:0}#sp-tool-app .sp-tool-tabs{display:flex;gap:.25rem;background-color:var(--sp-tool-bg-alt);padding:.25rem;border-radius:8px;margin-bottom:1.25rem}#sp-tool-app .sp-tool-tab{flex:1;text-align:center;padding:.75rem .25rem;font-weight:600;cursor:pointer;border:none;background:0 0;color:var(--sp-tool-text-light);border-radius:6px;transition:.2s;font-family:inherit;overflow:hidden}#sp-tool-app .sp-tool-tab.sp-tool-active{background-color:var(--sp-tool-bg);color:var(--sp-tool-primary);box-shadow:0 1px 3px rgba(0,0,0,.1)}#sp-tool-app .sp-tool-tab-content{display:none;min-height:180px;min-width:0}#sp-tool-app .sp-tool-draw-container{border:1px solid var(--sp-tool-border);border-radius:8px;background-color:#fafafa;margin-bottom:1rem;position:relative;overflow:hidden;min-width:0;width:100%}#sp-tool-app .sp-tool-draw-canvas{width:100%;height:160px;display:block;touch-action:none;cursor:crosshair}#sp-tool-app .sp-tool-btn-clear{position:absolute;top:.5rem;right:.5rem;background:#e5e7eb;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer;color:var(--sp-tool-text-main);transition:background .2s}#sp-tool-app .sp-tool-input-text{width:100%;padding:1rem;border:1px solid var(--sp-tool-border);border-radius:8px;font-size:1rem;font-family:inherit;margin-bottom:1rem;color:var(--sp-tool-text-main);transition:border-color .2s,box-shadow .2s}#sp-tool-app .sp-tool-input-text:focus{outline:0;border-color:var(--sp-tool-primary);box-shadow:0 0 0 3px rgba(79,70,229,.1)}#sp-tool-app .sp-tool-upload-box{border:1px dashed var(--sp-tool-border);border-radius:8px;padding:1.5rem 1rem;text-align:center;background-color:var(--sp-tool-bg-alt);margin-bottom:1rem;position:relative;cursor:pointer;min-height:160px;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}#sp-tool-app .sp-tool-img-preview{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;background:#fff;z-index:5;display:none}#sp-tool-app .sp-tool-action-area{position:relative;margin-top:auto;padding-top:1.5rem;display:flex;flex-direction:column;min-width:0}#sp-tool-app .sp-tool-btn{font-family:inherit;border-radius:8px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all var(--sp-tool-transition);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;width:100%;text-decoration:none;min-height:48px;user-select:none;outline:0}#sp-tool-app .sp-tool-btn:active:not(:disabled){transform:scale(.97);box-shadow:none}#sp-tool-app .sp-tool-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}#sp-tool-app .sp-tool-btn-primary{background-color:var(--sp-tool-primary);color:#fff;box-shadow:0 4px 12px rgba(79,70,229,.25)}#sp-tool-app .sp-tool-btn-outline{background-color:transparent;color:var(--sp-tool-text-main);border:1px solid var(--sp-tool-border)}@media (hover:hover) and (pointer:fine){#sp-tool-app .sp-tool-dropzone:hover{background-color:rgba(79,70,229,.04);border-color:var(--sp-tool-primary)}#sp-tool-app .sp-tool-dropzone:hover .sp-tool-upload-icon{transform:translateY(-5px)}#sp-tool-app .sp-tool-circle-btn:hover{background-color:#047857}#sp-tool-app .sp-tool-doc-item:hover{border-color:#9ca3af}#sp-tool-app .sp-tool-doc-item-remove:hover{background:#fee2e2}#sp-tool-app .sp-tool-tab:hover{color:var(--sp-tool-text-main)}#sp-tool-app .sp-tool-btn-clear:hover{background:#d1d5db}#sp-tool-app .sp-tool-btn-primary:hover:not(:disabled){background-color:var(--sp-tool-primary-hover);box-shadow:0 6px 16px rgba(79,70,229,.35)}#sp-tool-app .sp-tool-btn-outline:hover:not(:disabled){background-color:var(--sp-tool-bg-alt)}}#sp-tool-app .sp-tool-sign-btn-container{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4, 0, .2, 1),opacity .3s,margin-top .4s;margin-top:0;width:100%}#sp-tool-app .sp-tool-sign-btn-container.sp-tool-expanded{max-height:80px;opacity:1;margin-top:1rem}#sp-tool-app .sp-tool-preview-wrapper{position:relative;background-color:#9ca3af;padding:1.5rem;border-radius:0 0 var(--sp-tool-radius) var(--sp-tool-radius);overflow:auto;display:flex;justify-content:center;align-items:flex-start;flex-grow:1;min-height:300px;width:100%;max-width:100%;min-width:0}@media (max-width:640px){#sp-tool-app{padding:1rem;border-radius:0;border-left:none;border-right:none}#sp-tool-app .sp-tool-title{font-size:1.75rem}#sp-tool-app .sp-tool-subtitle{font-size:.95rem}#sp-tool-app .sp-tool-dropzone{padding:2.5rem 1rem;min-height:280px}#sp-tool-app .sp-tool-doc-list,#sp-tool-app .sp-tool-panel-header{padding:.75rem 1rem}#sp-tool-app .sp-tool-panel-body,#sp-tool-app .sp-tool-preview-wrapper{padding:1rem}}#sp-tool-app .sp-tool-pdf-container{position:relative;box-shadow:0 4px 12px rgba(0,0,0,.2);margin:0 auto}#sp-tool-app .sp-tool-pdf-canvas{display:block;width:100%;height:auto;background-color:#fff}#sp-tool-app .sp-tool-sig-overlay{position:absolute;top:20px;left:20px;min-width:80px;min-height:40px;border:2px dashed var(--sp-tool-primary);background-color:rgba(79,70,229,.05);cursor:move;display:none;touch-action:none;z-index:50}#sp-tool-app .sp-tool-sig-img{width:100%;height:100%;display:block;pointer-events:none;object-fit:contain}#sp-tool-app .sp-tool-resize-handle{position:absolute;right:-12px;bottom:-12px;width:26px;height:26px;background-color:var(--sp-tool-primary);border-radius:50%;border:2px solid #fff;cursor:se-resize;z-index:60;box-shadow:0 2px 4px rgba(0,0,0,.2)}#sp-tool-app .sp-tool-btn-remove-sig{position:absolute;top:-14px;right:-14px;width:28px;height:28px;background-color:var(--sp-tool-danger);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;font-weight:700;z-index:60;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.2)}#sp-tool-app .sp-tool-status-box{text-align:center;padding:4rem 1rem;max-width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center;min-height:350px;justify-content:center;min-width:0}#sp-tool-app .sp-tool-spinner{width:56px;height:56px;border:4px solid var(--sp-tool-border);border-top:4px solid var(--sp-tool-primary);border-radius:50%;animation:1s linear infinite sp-tool-spin;margin:0 auto 1.5rem}@keyframes sp-tool-spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}#sp-tool-app .sp-tool-status-text{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;color:var(--sp-tool-text-main)}#sp-tool-app .sp-tool-success-icon{color:var(--sp-tool-success);background:rgba(16,185,129,.1);width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}#sp-tool-app .sp-tool-actions-row{display:flex;flex-direction:column;gap:1rem;justify-content:center;margin-top:2.5rem;width:100%}@media (min-width:640px){#sp-tool-app .sp-tool-actions-row{flex-direction:row;flex-wrap:wrap}#sp-tool-app .sp-tool-actions-row .sp-tool-btn{width:auto;padding:.875rem 1.5rem}}