:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}:root{--surface-page: #f5f6f8;--surface-card: #ffffff;--surface-chrome: #e8eef4;--surface-bar: #f0f4f8;--text-primary: #1a1a1a;--text-secondary: #4a4a4a;--text-hero: #0d2d5c;--text-disabled: #9a9ea2;--accent: #1a4d8c;--accent-dark: #0d2d5c;--accent-hover: #2563a8;--accent-esign: #4338ca;--border: #d0d4d8;--border-light: #e0e4e8;--topbar-start: #1a4d8c;--topbar-end: #0d2d5c;--font-sans: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--text-portal-title: 30px;--text-module-title: 26px;--text-card-title: 16px;--text-section: 14px;--text-body: 13px;--text-small: 12px;--space-page-h: 48px;--space-page-v: 40px;--space-card-pad: 28px;--space-card-gap: 24px;--space-section: 44px;--radius: 4px;--radius-card: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--surface-page);line-height:1.5}.login-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--topbar-start) 0%,var(--topbar-end) 50%,var(--surface-page) 50%);padding:40px 24px}.login-card{position:relative;width:100%;max-width:400px;background-color:var(--surface-card);border-radius:var(--radius-card);box-shadow:0 8px 32px #0000001f;padding:40px;border:1px solid var(--border-light);transition:box-shadow .2s ease}.login-card:focus-within{box-shadow:0 12px 40px #00000024}.login-card__brand{text-align:center;margin-bottom:28px}.login-card__logo{max-width:180px;height:40px;width:auto;object-fit:contain;margin-bottom:16px;display:block;margin-left:auto;margin-right:auto}.login-card__title{font-size:var(--text-module-title);font-weight:700;color:var(--text-hero);margin:0 0 8px}.login-card__subtitle{font-size:var(--text-body);color:var(--text-secondary);margin:0}.input-group{margin-bottom:20px}.input-group label{display:block;font-size:var(--text-body);font-weight:500;color:var(--text-primary);margin-bottom:6px}.input{width:100%;padding:8px 12px;min-height:40px;font-size:var(--text-body);font-family:inherit;color:var(--text-primary);background-color:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1a4d8c33}.input::placeholder{color:var(--text-disabled)}.select{width:100%;min-width:160px;padding:8px 12px;min-height:40px;font-size:var(--text-body);font-family:inherit;color:var(--text-primary);background-color:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.select:focus,.select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1a4d8c33}.btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;min-height:36px;font-size:var(--text-body);font-family:inherit;border-radius:var(--radius);border:1px solid var(--border);background-color:var(--surface-chrome);color:var(--text-primary);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.btn:hover:not(:disabled){background-color:#d8e0e8;border-color:#b0b8c0}.btn:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1a4d8c40}.btn:disabled{background-color:#f0f2f4;color:var(--text-disabled);cursor:not-allowed}.btn--primary{background-color:var(--accent);color:#fff;border-color:var(--accent-dark)}.btn--primary:hover:not(:disabled){background-color:var(--accent-hover)}.btn--primary:focus-visible{border-color:var(--accent-dark);box-shadow:0 0 0 2px #fff6}.btn--primary:disabled{background-color:#9a9ea2;border-color:#9a9ea2}.alert{padding:12px 16px;border-radius:var(--radius);font-size:var(--text-body);margin-bottom:20px}.alert--error{background-color:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.app-shell{min-height:100vh;display:flex;flex-direction:column;background-color:var(--surface-page)}.app-header{background:linear-gradient(180deg,var(--topbar-start) 0%,var(--topbar-end) 100%);min-height:48px;display:flex;align-items:center;gap:24px;padding:0 24px;flex-shrink:0}.app-logo{font-size:1rem;font-weight:700;color:#fff;text-decoration:none}.app-nav{display:flex;gap:4px}.app-nav a{color:#ffffffe6;text-decoration:none;font-size:var(--text-body);padding:6px 12px;border-radius:var(--radius);transition:background-color .15s ease}.app-nav a:hover{background-color:#fff3;color:#fff}.app-nav a.active{background-color:#ffffff40;font-weight:600}.app-user{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:var(--text-small);color:#fffc}.app-user button{background:transparent;border:none;color:#fff;padding:6px 12px;font-size:var(--text-body);cursor:pointer;border-radius:var(--radius);transition:background-color .15s ease}.app-user button:hover{background-color:#fff3}.app-main{flex:1;padding:var(--space-page-v) var(--space-page-h);overflow:auto}.envelope-list-page{max-width:1060px;margin:0 auto}.env-section{margin-bottom:32px}.env-section-header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.env-section-header h2{font-size:var(--text-module-title);color:var(--text-hero);margin:0}.env-section-count{background:var(--accent);color:#fff;font-size:11px;font-weight:700;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center}.env-section--pending{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #f59e0b40;border-radius:var(--radius-card);padding:20px}.env-section--pending .env-section-count{background:#d97706}.env-pending-cards{display:flex;flex-direction:column;gap:10px}.env-pending-card{display:block;background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius);padding:14px 16px;text-decoration:none;color:var(--text-primary);transition:box-shadow .15s,border-color .15s}.env-pending-card:hover{border-color:var(--accent);box-shadow:0 2px 10px #00000014}.env-pending-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.env-pending-subject{font-weight:600;font-size:var(--text-body)}.env-pending-meta{font-size:var(--text-small);color:var(--text-secondary);margin-bottom:8px}.env-pending-flow{display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin-bottom:10px}.flow-step{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-small);color:var(--text-disabled)}.flow-step.done{color:#059669}.flow-step.declined{color:#dc2626}.flow-step.current{color:var(--accent);font-weight:600}.flow-arrow{color:var(--text-disabled);font-size:12px;margin:0 2px}.flow-name{white-space:nowrap}.env-pending-action{display:inline-block;background:var(--accent);color:#fff;font-weight:600;font-size:var(--text-small);padding:6px 16px;border-radius:var(--radius)}.env-flow-inline{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.flow-step-inline{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--text-disabled)}.flow-step-inline.done{color:#059669}.flow-step-inline.declined{color:#dc2626}.flow-step-inline.current{color:var(--accent);font-weight:600}.flow-arrow-sm{color:var(--text-disabled);font-size:11px;margin:0 1px}.flow-name-sm{white-space:nowrap}.flow-wait{font-size:10px;color:#d97706;font-weight:500}.btn-remind{display:inline-block;padding:2px 8px;border:1px solid var(--accent);border-radius:3px;background:transparent;color:var(--accent);font-size:10px;font-weight:600;cursor:pointer;margin-left:4px}.btn-remind:hover{background:var(--accent);color:#fff}.alert--success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:10px 16px;border-radius:var(--radius);font-size:var(--text-body)}.envelope-list-empty{background:var(--surface-card);border:1px dashed var(--border);border-radius:var(--radius-card);padding:48px 24px;text-align:center;color:var(--text-secondary)}.envelope-table-wrap{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-card);overflow:hidden}.envelope-table{width:100%;border-collapse:collapse;font-size:var(--text-body)}.envelope-table th{text-align:left;font-weight:600;padding:10px 16px;border-bottom:2px solid var(--border-light);color:var(--text-hero);font-size:var(--text-small);text-transform:uppercase;letter-spacing:.03em}.envelope-table td{padding:10px 16px;border-bottom:1px solid var(--border-light);vertical-align:middle}.envelope-table tbody tr:hover{background:#f8fafc}.env-subject{font-weight:500}.env-date{color:var(--text-secondary);font-size:var(--text-small);white-space:nowrap}.btn--sm{padding:4px 10px;min-height:28px;font-size:var(--text-small)}.badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:var(--text-small);font-weight:600;letter-spacing:.02em}.badge--draft{background:#e0e7ff;color:#3730a3}.badge--sent{background:#dbeafe;color:#1e40af}.badge--pending{background:#fef3c7;color:#92400e}.badge--signed{background:#d1fae5;color:#065f46}.badge--declined{background:#fee2e2;color:#991b1b}.envelope-page{display:flex;flex-direction:column;gap:16px;max-width:1400px;margin:0 auto}.envelope-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.envelope-header-left{display:flex;align-items:center;gap:12px}.envelope-header-left h2{font-size:var(--text-card-title);color:var(--text-hero)}.envelope-header-right{display:flex;align-items:center;gap:12px}.envelope-id{font-size:var(--text-small);color:var(--text-secondary);font-family:monospace}.envelope-workspace{display:grid;grid-template-columns:auto 1fr 280px;gap:16px;min-height:600px}.envelope-workspace:not(:has(.field-toolbox)){grid-template-columns:1fr 280px}.field-toolbox{width:180px;background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-card);padding:16px;align-self:start;position:sticky;top:16px}.field-toolbox h3{font-size:var(--text-body);font-weight:600;color:var(--text-hero);margin-bottom:12px}.toolbox-signer-select{margin-bottom:14px}.toolbox-signer-select label{display:block;font-size:var(--text-small);color:var(--text-secondary);margin-bottom:4px}.toolbox-signer-select .select{font-size:var(--text-small);min-height:32px;padding:4px 8px}.toolbox-fields{display:flex;flex-direction:column;gap:6px}.toolbox-field-chip{display:flex;align-items:center;gap:6px;padding:8px 10px;border:2px dashed var(--border);border-radius:var(--radius);font-size:var(--text-small);font-weight:500;cursor:grab;background:#fafbfc;transition:border-color .15s,background .15s;-webkit-user-select:none;user-select:none}.toolbox-field-chip:hover{background:#f0f4ff;border-style:solid}.toolbox-field-chip:active{cursor:grabbing}.toolbox-chip-size{margin-left:auto;font-size:10px;color:var(--text-disabled);font-weight:400}.toolbox-hint{margin-top:12px;font-size:var(--text-small);color:var(--text-disabled);text-align:center}.toolbox-align-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--border-light)}.toolbox-align-section h4{margin:0 0 8px;font-size:var(--text-small);font-weight:600;color:var(--text-secondary)}.toolbox-align-row{display:flex;gap:4px;margin-bottom:4px}.align-btn{display:flex;align-items:center;justify-content:center;width:32px;height:28px;border:1px solid var(--border-light);border-radius:4px;background:var(--surface-card);color:var(--text-secondary);cursor:pointer;transition:all .12s ease}.align-btn:hover:not(:disabled){background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.align-btn:disabled{opacity:.35;cursor:default}.document-viewer-wrap{display:flex;flex-direction:column;gap:8px;min-width:0}.doc-page-nav{display:flex;align-items:center;justify-content:center;gap:12px;font-size:var(--text-body);color:var(--text-secondary)}.doc-viewer-container{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-card);overflow:hidden;position:relative}.doc-page-wrapper{position:relative}.doc-page-wrapper .react-pdf__Page{display:block}.doc-page-wrapper .react-pdf__Page__textContent{pointer-events:none!important}.field-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:10;pointer-events:auto}.doc-viewer-empty{display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary)}.field-placer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.placed-field{position:absolute;border:2px solid;border-radius:3px;display:flex;align-items:center;justify-content:center;cursor:move;transition:box-shadow .1s;overflow:hidden;z-index:2}.placed-field:hover{box-shadow:0 2px 8px #00000026}.placed-field.dragging{opacity:.7;cursor:grabbing}.placed-field.resizing{cursor:se-resize}.placed-field.readonly{cursor:default}.placed-field.selected{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 3px #1a4d8c26}.placed-field.actionable{cursor:pointer;border-style:dashed;animation:field-pulse 1.8s ease-in-out infinite}.placed-field.actionable:hover{border-style:solid;box-shadow:0 2px 12px #0003;transform:scale(1.02)}.placed-field.completed{border-style:solid;opacity:.85}@keyframes field-pulse{0%,to{opacity:.7}50%{opacity:1}}.placed-field-label{font-size:10px;font-weight:600;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.placed-field-action-label{font-size:11px;font-weight:600;pointer-events:none;white-space:nowrap;letter-spacing:.02em}.placed-field-date-value,.placed-field-text-value{font-size:11px;font-weight:500;color:var(--text-primary);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:calc(100% - 8px)}.placed-field-check-value{font-size:16px;font-weight:700;color:#059669;pointer-events:none}.placed-field-sig-img{position:absolute;top:2px;right:2px;bottom:2px;left:2px;width:calc(100% - 4px);height:calc(100% - 4px);object-fit:contain;pointer-events:none}.placed-field-remove{position:absolute;top:-8px;right:-8px;width:18px;height:18px;border-radius:50%;border:none;background:#dc2626;color:#fff;font-size:12px;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0}.placed-field:hover .placed-field-remove{display:flex}.placed-field-resize{position:absolute;bottom:0;right:0;width:10px;height:10px;cursor:se-resize;background:linear-gradient(135deg,transparent 50%,rgba(0,0,0,.3) 50%)}.placed-field-required{color:#dc2626;font-weight:700;margin-left:2px}.placed-field-req-toggle{position:absolute;top:-8px;left:-8px;width:18px;height:18px;border-radius:50%;border:1px solid var(--border-light);background:var(--surface-card);color:var(--text-disabled);font-size:11px;font-weight:700;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0}.placed-field-req-toggle.is-required{background:#dc2626;border-color:#dc2626;color:#fff}.placed-field:hover .placed-field-req-toggle{display:flex}.signer-panel{background:var(--surface-card);border:1px solid var(--border-light);border-radius:var(--radius-card);padding:16px;align-self:start;position:sticky;top:16px}.signer-panel h3{font-size:var(--text-body);font-weight:600;margin-bottom:12px;color:var(--text-hero)}.signer-list{display:flex;flex-direction:column;gap:10px}.signer-card{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:var(--radius);background:var(--surface-page);position:relative}.signer-card--current{background:#eff6ff;border:1px solid #bfdbfe}.signer-card--signed{opacity:.75}.signer-card--declined{opacity:.75;background:#fef2f2}.signer-step-indicator{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:24px;padding-top:2px}.step-num{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:2px solid;font-size:11px;font-weight:700}.step-done{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#059669;color:#fff;font-size:13px;font-weight:700}.step-declined{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#dc2626;color:#fff;font-size:13px;font-weight:700}.step-line{width:2px;flex:1;min-height:20px;background:var(--border-light);margin-top:4px}.step-line--done{background:#059669}.signer-info{flex:1;min-width:0}.signer-name{font-weight:500;font-size:var(--text-body)}.signer-role{font-size:var(--text-small);color:var(--text-secondary)}.signer-status{margin-top:4px}.signer-timestamp{font-size:11px;color:var(--text-disabled);display:block;margin-top:2px}.signer-decline-reason{font-size:11px;color:#b91c1c;display:block;margin-top:2px}.signer-remind-btn{margin-top:6px}.signing-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:8px}.signing-actions h4{font-size:var(--text-body);font-weight:600;color:var(--text-hero)}.signing-hint{font-size:var(--text-small);color:var(--text-secondary)}.signing-checklist{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:4px}.signing-checklist-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;background:var(--surface-bar);font-size:var(--text-small)}.signing-checklist-item.completed{opacity:.6}.checklist-icon{font-size:14px;font-weight:700;flex-shrink:0}.checklist-icon--pending{color:#d97706}.checklist-icon--done{color:#059669}.signing-checklist-item .btn--sm{margin-left:auto;flex-shrink:0}.signing-blocked-hint{font-size:var(--text-small);color:#dc2626;font-weight:500;margin:8px 0}.signing-field-btn{width:100%;font-size:var(--text-small)}.signing-complete-banner{margin-top:16px;padding:12px;background:#d1fae5;color:#065f46;border-radius:var(--radius);font-weight:600;font-size:var(--text-body);text-align:center}.envelope-actions{display:flex;gap:12px;justify-content:flex-end;align-items:center;padding:12px 0;border-top:1px solid var(--border-light)}.field-count{margin-right:auto;font-size:var(--text-small);color:var(--text-secondary)}.btn-sign{padding:8px 20px;width:100%;background:#16a34a;color:#fff;border:none;border-radius:var(--radius);font-weight:600;font-size:var(--text-body);cursor:pointer}.btn-sign:hover{background:#15803d}.btn-sign:disabled{background:#9ca3af;cursor:not-allowed}.btn-decline{padding:8px 20px;width:100%;background:transparent;color:#dc2626;border:1px solid #dc2626;border-radius:var(--radius);font-weight:600;font-size:var(--text-body);cursor:pointer}.btn-decline:hover{background:#fef2f2}.btn-decline:disabled{opacity:.5;cursor:not-allowed}.btn-link,.btn--link{background:none;border:none;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:var(--text-body)}.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary);font-size:var(--text-body)}.sig-capture-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:24px}.sig-capture-dialog{background:var(--surface-card);border-radius:var(--radius-card);box-shadow:0 12px 40px #0003;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.sig-capture-header{padding:24px 24px 12px}.sig-capture-header h3{font-size:var(--text-card-title);color:var(--text-hero);margin-bottom:4px}.sig-capture-header p{font-size:var(--text-body);color:var(--text-secondary)}.sig-capture-tabs{display:flex;border-bottom:1px solid var(--border-light);padding:0 24px}.sig-tab{padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;font-size:var(--text-body);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s}.sig-tab:hover{color:var(--text-primary)}.sig-tab.active{color:var(--accent-esign);border-bottom-color:var(--accent-esign)}.sig-capture-body{padding:20px 24px}.sig-draw-area{position:relative}.sig-canvas{width:100%;height:160px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;cursor:crosshair;touch-action:none}.sig-clear{position:absolute;top:8px;right:8px;font-size:var(--text-small);color:var(--text-secondary);background:none;border:none;cursor:pointer;text-decoration:underline}.sig-type-area{display:flex;flex-direction:column;gap:12px}.sig-type-input{font-size:18px}.sig-font-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sig-font-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:2px solid var(--border-light);border-radius:var(--radius);background:#fff;cursor:pointer;transition:border-color .15s}.sig-font-btn:hover{border-color:var(--accent-esign)}.sig-font-btn.active{border-color:var(--accent-esign);background:#f0f0ff}.sig-font-btn small{font-size:10px;color:var(--text-secondary);font-family:var(--font-sans)}.sig-type-preview{font-size:42px;padding:16px;text-align:center;border:1px solid var(--border-light);border-radius:var(--radius);background:#fff;color:var(--text-primary);min-height:80px;display:flex;align-items:center;justify-content:center}.sig-upload-area{display:flex;justify-content:center}.sig-upload-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;min-height:140px;border:2px dashed var(--border);border-radius:var(--radius-card);padding:24px;cursor:pointer;transition:border-color .15s,background .15s;text-align:center;color:var(--text-secondary)}.sig-upload-dropzone:hover{border-color:var(--accent-esign);background:#fafaff}.sig-upload-dropzone small{font-size:var(--text-small);color:var(--text-disabled)}.sig-capture-footer{display:flex;gap:12px;justify-content:flex-end;padding:12px 24px 20px}.audit-dialog{background:var(--surface-card);border-radius:var(--radius-card);box-shadow:0 12px 40px #0003;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column}.audit-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-light)}.audit-dialog-header h3{font-size:var(--text-card-title);color:var(--text-hero)}.audit-dialog-body{overflow-y:auto;padding:16px 20px}.audit-entry{display:grid;grid-template-columns:auto 1fr auto;gap:8px 12px;padding:8px 0;border-bottom:1px solid var(--border-light);font-size:var(--text-small);align-items:baseline}.audit-entry:last-child{border-bottom:none}.audit-action{font-weight:600;color:var(--accent-esign);text-transform:uppercase;letter-spacing:.03em}.audit-actor{color:var(--text-secondary);font-family:monospace}.audit-time{color:var(--text-disabled);white-space:nowrap}.audit-details{grid-column:1 / -1;color:var(--text-secondary);font-style:italic}.signer-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.signer-panel-header h3{margin-bottom:0}.signer-empty{text-align:center;padding:16px 8px;color:var(--text-disabled);font-size:var(--text-small)}.signer-remove-btn{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--surface-card);color:#dc2626;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:opacity .15s;padding:0;line-height:1}.signer-card:hover .signer-remove-btn{opacity:1}.signer-remove-btn:hover{background:#fef2f2;border-color:#dc2626}.add-signer-dialog{background:var(--surface-card);border-radius:var(--radius-card);box-shadow:0 12px 40px #0003;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.add-signer-header{padding:24px 24px 12px}.add-signer-header h3{font-size:var(--text-card-title);color:var(--text-hero);margin-bottom:4px}.add-signer-header p{font-size:var(--text-body);color:var(--text-secondary)}.add-signer-body{padding:8px 24px 16px}.add-signer-footer{display:flex;gap:12px;justify-content:flex-end;padding:12px 24px 20px}.signer-realm-tabs{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.signer-realm-tab{flex:1;padding:8px 12px;border:none;background:var(--surface-card);font-size:var(--text-small);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;text-align:center}.signer-realm-tab:not(:last-child){border-right:1px solid var(--border)}.signer-realm-tab:hover{background:var(--surface-chrome)}.signer-realm-tab.active{background:var(--accent-esign);color:#fff}.signer-list-group{display:flex;flex-direction:column}.signer-list-group label{display:flex;align-items:baseline;justify-content:space-between}.signer-count{font-weight:400;font-size:var(--text-small);color:var(--text-disabled)}.signer-user-list{margin-top:8px;border:1px solid var(--border);border-radius:var(--radius);max-height:240px;min-height:120px;overflow-y:auto;background:var(--surface-card)}.signer-user-list-empty{display:flex;align-items:center;justify-content:center;min-height:80px;color:var(--text-disabled);font-size:var(--text-body)}.signer-user-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 12px;border:none;border-bottom:1px solid var(--border-light);background:none;text-align:left;cursor:pointer;transition:background .1s;gap:8px}.signer-user-item:last-child{border-bottom:none}.signer-user-item:hover{background:var(--surface-chrome)}.signer-user-item.selected{background:#eef2ff;border-left:3px solid var(--accent-esign);padding-left:9px}.signer-user-name{font-size:var(--text-body);font-weight:500;color:var(--text-primary)}.signer-user-email{font-size:var(--text-small);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-signer-dialog--tall{max-width:540px}.input-hint{display:block;margin-top:4px;font-size:var(--text-small);color:var(--text-disabled);line-height:1.4}.access-code-result{text-align:center}.access-code-result p{margin-bottom:12px;font-size:var(--text-body)}.access-code-box{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;margin:16px 0;background:var(--surface-page);border:2px dashed var(--accent-esign);border-radius:var(--radius-card)}.access-code-box code{font-size:18px;font-weight:600;letter-spacing:.05em;color:var(--accent-esign);font-family:Consolas,SF Mono,monospace;-webkit-user-select:all;user-select:all}.access-code-note{font-size:var(--text-small);color:var(--text-disabled);margin-top:8px}@media (prefers-reduced-motion: reduce){.login-card,.btn,.input,.select,.app-nav a,.app-user button{transition:none}}
