: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{color-scheme:light;--font: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--navy-950: #0c1e3a;--navy-900: #122849;--navy-800: #1a365d;--navy-700: #234876;--teal-600: #0d9488;--teal-500: #14b8a6;--blue-600: #2563eb;--blue-500: #3b82f6;--bg: #f4f7fb;--bg-elevated: #ffffff;--surface: #ffffff;--surface-muted: #f8fafc;--text: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e2e8f0;--border-strong: #cbd5e1;--primary: var(--blue-600);--primary-hover: #1d4ed8;--accent: var(--teal-500);--accent-soft: #ccfbf1;--danger: #dc2626;--danger-soft: #fef2f2;--success: #059669;--success-soft: #ecfdf5;--warning: #d97706;--warning-soft: #fffbeb;--radius-sm: 10px;--radius: 14px;--radius-lg: 20px;--radius-xl: 24px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow: 0 4px 24px rgba(15, 23, 42, .06);--shadow-lg: 0 12px 40px rgba(15, 23, 42, .1);--shadow-header: 0 1px 0 rgba(255, 255, 255, .08);font-family:var(--font);line-height:1.5;font-weight:400;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(37,99,235,.08),transparent),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(20,184,166,.06),transparent),var(--bg)}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;line-height:1.2;letter-spacing:-.02em}.app-shell{min-height:100vh;max-width:520px;margin:0 auto;padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}.app-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;background:linear-gradient(135deg,var(--navy-950) 0%,var(--navy-800) 100%);color:#fff;box-shadow:var(--shadow-header),var(--shadow)}.brand{display:flex;align-items:center;gap:.75rem}.brand-text{display:flex;flex-direction:column;gap:.1rem}.brand-name{font-size:1.05rem;font-weight:800;letter-spacing:-.03em}.brand-tagline{font-size:.7rem;font-weight:500;color:#ffffff8c;letter-spacing:.02em}.header-actions{display:flex;align-items:center;gap:.5rem}.user-chip{display:flex;align-items:center;gap:.5rem;padding:.25rem .6rem .25rem .25rem;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:999px}.user-avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--teal-500),var(--blue-500));font-size:.65rem;font-weight:700;color:#fff}.user-name{font-size:.8rem;font-weight:600;color:#ffffffe6}.icon-btn{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#ffffff0f;color:#fffc;cursor:pointer;transition:background .15s,color .15s}.icon-btn:hover{background:#ffffff24;color:#fff}.page-hero{padding:1.5rem 1.25rem .5rem}.page-title{font-size:1.625rem;font-weight:800;color:var(--text)}.page-subtitle{margin:.35rem 0 0;font-size:.9rem;color:var(--text-secondary)}.app-main{display:grid;gap:1rem;padding:.75rem 1.25rem 1.25rem}.bottom-nav{position:fixed;left:50%;transform:translate(-50%);bottom:calc(.75rem + env(safe-area-inset-bottom));z-index:50;display:flex;gap:.35rem;padding:.4rem;width:min(calc(100% - 2rem),320px);background:#ffffffeb;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(226,232,240,.8);border-radius:999px;box-shadow:var(--shadow-lg)}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem .5rem;border-radius:999px;font-size:.68rem;font-weight:600;color:var(--text-muted);transition:all .2s ease}.nav-item svg{opacity:.7;transition:opacity .2s}.nav-item.active{background:linear-gradient(135deg,var(--navy-900),var(--navy-700));color:#fff;box-shadow:0 4px 12px #0c1e3a40}.nav-item.active svg{opacity:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}.card-elevated{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.card-header h2{font-size:1.05rem;font-weight:700}.stack{display:grid;gap:1rem}.stack-sm{display:grid;gap:.65rem}.auth-screen{min-height:100vh;display:flex;flex-direction:column;padding:1.25rem}.auth-screen--centered{justify-content:center;align-items:center}.auth-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2rem;padding-top:2rem}.auth-brand h1{margin-top:1rem;font-size:1.75rem;font-weight:800;color:var(--navy-950)}.auth-brand p{margin:.5rem 0 0;color:var(--text-secondary);font-size:.95rem;max-width:280px}.auth-card{width:min(100%,400px);margin:0 auto}.auth-features{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:2rem;width:min(100%,400px);margin-inline:auto}.auth-feature{text-align:center;padding:.85rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:.72rem;font-weight:600;color:var(--text-secondary)}.auth-feature-icon{display:block;margin:0 auto .4rem;color:var(--primary)}.auth-site-link{display:block;margin-top:1.5rem;text-align:center;font-size:.85rem;font-weight:650;color:var(--text-secondary)}.sign-screen{background:var(--bg)}.sign-screen .sign-card{width:min(100%,800px);margin:0 auto}label{display:grid;gap:.4rem;font-weight:600;font-size:.875rem;color:var(--text)}.label-hint{font-weight:400;font-size:.8rem;color:var(--text-muted)}.checkbox-row{display:flex;align-items:flex-start;gap:.65rem}.checkbox-row input[type=checkbox]{width:auto;margin-top:.15rem}.checkbox-row .label-hint{display:block;margin-top:.2rem}input{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.8rem 1rem;font:inherit;font-size:.95rem;color:var(--text);background:var(--surface);transition:border-color .15s,box-shadow .15s}input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}input::placeholder{color:var(--text-muted)}.input-otp{text-align:center;font-size:1.25rem;font-weight:700;letter-spacing:.3em;font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;border-radius:var(--radius-sm);padding:.85rem 1.25rem;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .1s,box-shadow .15s,background .15s}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--blue-600),var(--teal-600));color:#fff;box-shadow:0 4px 14px #2563eb4d}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #2563eb59}.btn-secondary{background:var(--surface-muted);color:var(--text);border:1.5px solid var(--border)}.btn-ghost{background:transparent;color:var(--text-secondary);padding:.5rem .75rem;font-weight:600}.btn-block{width:100%}.eyebrow{margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:700;color:var(--accent)}.muted{color:var(--text-secondary)}.small{font-size:.85rem}.alert{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;border-radius:var(--radius);font-size:.875rem;line-height:1.45}.alert-warning{background:var(--warning-soft);border:1px solid #fde68a;color:#92400e}.alert-warning a{color:var(--warning);font-weight:700;text-decoration:underline;text-underline-offset:2px}.alert-success{background:var(--success-soft);border:1px solid #a7f3d0;color:#065f46}.alert-error{background:var(--danger-soft);border:1px solid #fecaca;color:#991b1b}.license-issue-banner{position:sticky;top:0;z-index:80;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .85rem;padding:.7rem 1.25rem;background:#fef3c7;border-bottom:1px solid #fde68a;color:#92400e;font-size:.875rem;line-height:1.4}.license-issue-banner a{font-weight:700;color:var(--warning);text-underline-offset:2px}.admin-app{display:flex;flex-direction:column;min-height:100vh}.admin-app>.admin-shell{flex:1;min-height:0}.error{color:var(--danger);margin:0;font-size:.875rem}.success{color:var(--success);margin:0;font-size:.875rem}.doc-list{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}.doc-item{display:flex;align-items:center;gap:.875rem;padding:1rem 1.125rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .15s,border-color .15s}.doc-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.doc-icon{flex-shrink:0;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#ecfeff);color:var(--primary)}.doc-body{flex:1;min-width:0}.doc-body strong{display:block;font-size:.95rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{display:flex;align-items:center;gap:.5rem;margin-top:.2rem;font-size:.8rem;color:var(--text-muted)}.badge{flex-shrink:0;font-size:.68rem;font-weight:700;padding:.3rem .65rem;border-radius:999px;letter-spacing:.03em;text-transform:uppercase}.badge-inprogress{background:#dbeafe;color:#1e40af}.badge-completed{background:#d1fae5;color:#065f46}.badge-draft{background:#f1f5f9;color:#475569}.badge-cancelled{background:#fee2e2;color:#991b1b}.empty-state{text-align:center;padding:2.5rem 1.5rem;background:var(--surface);border:1.5px dashed var(--border);border-radius:var(--radius-lg)}.empty-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,#eff6ff,#f0fdfa);color:var(--primary)}.empty-state h3{font-size:1rem;font-weight:700;margin-bottom:.35rem}.security-status{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:var(--radius);background:var(--surface-muted);border:1px solid var(--border)}.security-status.enabled{background:var(--success-soft);border-color:#a7f3d0}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.security-status.enabled .status-dot{background:var(--success);box-shadow:0 0 0 3px #05966933}.qr-wrapper{display:grid;place-items:center;padding:1.25rem;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius)}.qr-code{width:180px;height:180px;border-radius:var(--radius-sm)}.secret-key{display:block;padding:.75rem 1rem;background:var(--navy-950);color:#e2e8f0;border-radius:var(--radius-sm);font-family:ui-monospace,monospace;font-size:.8rem;word-break:break-all;text-align:center}.sign-progress{display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;background:var(--accent-soft);border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;color:#0f766e}.sign-progress:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal-500);animation:pulse 2s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.signature-area{border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:repeating-linear-gradient(0deg,transparent,transparent 27px,#f1f5f9 27px,#f1f5f9 28px);overflow:hidden}.signature-pad{display:block;width:100%;height:140px;background:transparent;touch-action:none;cursor:crosshair}.signature-hint{padding:.5rem .75rem;font-size:.75rem;color:var(--text-muted);text-align:center;border-top:1px dashed var(--border);background:var(--surface-muted)}.doc-preview{width:100%;min-height:240px;border:1px solid var(--border);border-radius:var(--radius);background:#f8fafc}.pdf-signer{display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);border-radius:var(--radius);background:#f8fafc;overflow:hidden}.pdf-signer-loading{padding:2rem;text-align:center;color:var(--text-muted);font-size:.9rem}.pdf-signer-page{position:relative;border-bottom:1px solid var(--border);display:flex;justify-content:center;padding:.5rem 0}.pdf-signer-canvas-wrap{position:relative;display:inline-block;max-width:100%;line-height:0}.pdf-signer-canvas-wrap canvas{display:block;max-width:100%;height:auto}.pdf-signer-page:last-child{border-bottom:0}.pdf-signer-pagination{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;z-index:1}.pdf-signer-viewport{min-height:0;overflow-y:auto;overflow-x:hidden}.pdf-signer-pagination .btn{flex-shrink:0;padding:.4rem .75rem;font-size:.8rem}.pdf-signer-pagination-status{display:grid;gap:.15rem;text-align:center;font-size:.85rem;font-weight:600;color:var(--text);flex:1;min-width:0}.pdf-signer-signed-pages{font-size:.75rem;font-weight:500;color:var(--text-muted)}.pdf-signer-hint{margin:0;padding:.65rem 1rem;font-size:.8rem;color:var(--text-muted);text-align:center;background:var(--surface-muted);border-top:1px solid var(--border);flex-shrink:0}.signature-overlay{position:absolute;border:2px dashed var(--primary);background:#2563eb0f;cursor:move;touch-action:none;z-index:2}.signature-overlay--locked{cursor:default;pointer-events:none}.signature-overlay--box{display:flex;align-items:center;justify-content:center}.signature-overlay-label{font-size:.75rem;font-weight:700;color:var(--primary);pointer-events:none;text-align:center;padding:.15rem}.signature-overlay img{width:100%;height:100%;object-fit:contain;pointer-events:none}.signature-overlay-resize{position:absolute;right:-6px;bottom:-6px;width:14px;height:14px;background:var(--primary);border:2px solid #fff;border-radius:3px;cursor:nwse-resize}.signature-source-tabs{display:flex;gap:.5rem;margin-bottom:.75rem}.signature-source-tab{flex:1;padding:.6rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:.85rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.signature-source-tab:hover:not(:disabled){border-color:var(--border-strong)}.signature-source-tab.active{border-color:var(--primary);background:#2563eb0f;color:var(--primary)}.signature-source-tab:disabled{opacity:.5;cursor:not-allowed}.saved-signature-preview{border:1.5px dashed var(--border-strong);border-radius:var(--radius);padding:1rem;background:var(--surface-muted);text-align:center}.saved-signature-preview img{max-width:100%;max-height:120px;object-fit:contain}.checkbox-label{display:flex!important;align-items:center;gap:.5rem;margin-top:.75rem;font-weight:500;font-size:.85rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;accent-color:var(--primary)}.signature-upload-drop{display:grid;gap:.35rem;place-items:center;padding:1.5rem 1rem;border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-muted);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.signature-upload-drop:hover:not(.disabled){border-color:var(--primary);background:#2563eb0a}.signature-upload-drop.disabled{opacity:.5;cursor:not-allowed}.signature-upload-drop input{display:none}.signature-upload-icon{width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:#0f766e;font-size:1.25rem;font-weight:700}.signature-upload-title{font-weight:700;font-size:.9rem;color:var(--text)}.signature-upload-hint{font-size:.8rem;color:var(--text-muted)}.signature-slot-count{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;background:var(--surface-muted);font-size:.8rem;font-weight:600;color:var(--text-secondary)}.saved-signature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.saved-signature-card{display:grid;gap:.5rem;padding:.75rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;text-align:center;font:inherit;font-size:.8rem;font-weight:600;color:var(--text-secondary);transition:border-color .15s,box-shadow .15s}.saved-signature-card:hover{border-color:var(--border-strong)}.saved-signature-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f;color:var(--primary)}.saved-signature-card img{width:100%;height:72px;object-fit:contain}.saved-signature-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn-sm{padding:.5rem .85rem;font-size:.8rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:40vh;color:var(--text-secondary)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:768px){.app-shell{max-width:680px}.page-title{font-size:1.875rem}.bottom-nav{width:min(100% - 2rem,360px)}.admin-hub-grid{grid-template-columns:repeat(2,1fr)}.admin-menu-btn{display:none}}@media(min-width:1200px){.admin-hub-grid{grid-template-columns:repeat(3,1fr)}}.admin-shell{display:flex;min-height:100vh;background:var(--bg)}.admin-main{flex:1;min-width:0;display:flex;flex-direction:column;transition:margin-left .25s ease}.admin-sidebar{position:sticky;top:0;align-self:flex-start;z-index:40;width:260px;min-width:260px;height:100vh;height:100dvh;flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--navy-950) 0%,var(--navy-900) 100%);color:#fff;box-shadow:var(--shadow-lg)}.admin-sidebar:not(.open){width:0;min-width:0;overflow:hidden;box-shadow:none}.admin-sidebar-header{padding:1.25rem 1.25rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}.admin-sidebar-title{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73}.admin-sidebar-nav{flex:1;overflow-y:auto;padding:.75rem .65rem;display:flex;flex-direction:column;gap:.2rem}.admin-sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.7rem .85rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;color:#ffffffb3;text-decoration:none;transition:background .15s,color .15s}.admin-sidebar-link svg{width:18px;height:18px;flex-shrink:0;opacity:.8}.admin-sidebar-link:hover{background:#ffffff14;color:#fff}.admin-sidebar-link.active{background:#2563eb59;color:#fff;box-shadow:inset 3px 0 0 var(--teal-500)}.admin-sidebar-link.active svg{opacity:1}.admin-sidebar-footer{padding:1rem 1.25rem calc(1rem + env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.08)}.admin-sidebar-exit{display:block;padding:.65rem .85rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;color:#ffffffbf;text-decoration:none;transition:background .15s}.admin-sidebar-exit:hover{background:#ffffff14;color:#fff}.admin-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1.25rem;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.admin-topbar-left{display:flex;align-items:center;gap:.75rem}.admin-menu-btn{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.brand--compact .brand-name{font-size:.95rem;font-weight:800;color:var(--navy-950)}.brand--compact .admin-badge{background:var(--accent-soft);color:#0f766e}.user-chip--light{background:var(--surface-muted);border-color:var(--border)}.user-name--dark{color:var(--text)!important}.icon-btn--light{border-color:var(--border);background:var(--surface);color:var(--text-secondary)}.icon-btn--light:hover{background:var(--surface-muted);color:var(--text)}.admin-page-header{padding:1.25rem 1.25rem .5rem}.admin-page-content{flex:1;padding:.75rem 1.25rem 2rem;display:grid;gap:1rem}.admin-badge{display:inline-block;margin-top:.15rem;padding:.15rem .5rem;border-radius:999px;background:#14b8a640;color:#99f6e4;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;width:fit-content}.back-link{display:inline-block;margin-bottom:.5rem;padding:0;border:0;background:none;font:inherit;font-size:.85rem;font-weight:600;color:var(--primary);cursor:pointer}.admin-hub-grid{display:grid;gap:.75rem}.admin-hub-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.125rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration:none;transition:box-shadow .15s,border-color .15s,transform .1s}.admin-hub-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-1px)}.admin-hub-card strong{display:block;font-size:.95rem;margin-bottom:.15rem}.admin-hub-icon{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;border-radius:12px}.admin-split{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1.25rem;align-items:start}.admin-split-form{position:sticky;top:1rem}.admin-split--wide-form{grid-template-columns:minmax(320px,440px) minmax(0,1fr)}.admin-split-list-card{padding:0;overflow:hidden}.admin-split-list-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.125rem;border-bottom:1px solid var(--border)}.admin-split-list-header h2{margin:0;font-size:1rem;font-weight:700}.admin-split-list-toolbar{padding:.75rem 1.125rem;border-bottom:1px solid var(--border);background:var(--surface-muted)}.admin-split-list-body{min-height:200px}.admin-table tbody tr.is-active{background:#2563eb0f}.admin-table tbody tr.is-active td{border-bottom-color:#2563eb26}.badge-admin{background:#ede9fe;color:#5b21b6}.badge-signer{background:#dbeafe;color:#1e40af}.badge-normal{background:#f1f5f9;color:#475569}.table-user-name{display:flex;flex-direction:column;gap:.1rem}.table-user-name strong{font-weight:600}.table-role-badges{display:flex;flex-wrap:wrap;gap:.35rem}.table-actions{display:flex;gap:.35rem;justify-content:flex-end;white-space:nowrap}@media(max-width:960px){.admin-split{grid-template-columns:1fr}.admin-split-form{position:static}}.admin-list{list-style:none;padding:0;margin:0;display:grid;gap:.65rem}.admin-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1.125rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.admin-list-actions{display:flex;flex-direction:column;gap:.35rem;flex-shrink:0}.btn-sm{padding:.45rem .75rem;font-size:.8rem}select{width:100%;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.8rem 1rem;font:inherit;font-size:.95rem;color:var(--text);background:var(--surface)}select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-row .checkbox-label{margin-top:1.65rem;align-self:start}.company-logo-row{display:flex;align-items:center;gap:1rem}.company-logo-preview{width:80px;height:80px;display:grid;place-items:center;border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--surface-muted);overflow:hidden}.company-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.checkbox-list{display:grid;gap:.5rem;max-height:200px;overflow-y:auto;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted)}.checkbox-item{display:flex;align-items:center;gap:.6rem;font-weight:500;font-size:.875rem;cursor:pointer}.checkbox-item input[type=checkbox]{width:auto;accent-color:var(--primary)}.workflow-steps{display:grid;gap:.75rem}.workflow-step-card{display:grid;gap:.75rem;padding:1rem;background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius)}.filter-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.filter-panel-header h2{font-size:1rem;font-weight:700}.filter-count{font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:999px;background:var(--accent-soft);color:#0f766e}.filter-actions{display:flex;gap:.5rem;flex-wrap:wrap}.loading-state--compact{min-height:120px}.empty-state--compact{padding:2rem 1rem}.admin-table-wrap{overflow-x:auto;margin:0 -.25rem}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th{text-align:left;padding:.65rem .75rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.admin-table td{padding:.85rem .75rem;border-bottom:1px solid var(--border);vertical-align:middle}.admin-table tbody tr:hover{background:var(--surface-muted)}.admin-table tbody tr:last-child td{border-bottom:0}.table-doc-title{display:flex;align-items:center;gap:.5rem;min-width:140px}.table-doc-title svg{flex-shrink:0;width:16px;height:16px;color:var(--primary)}.table-doc-title strong{font-weight:600}.doc-item--link{text-decoration:none;color:inherit;display:flex;align-items:center;gap:.875rem;width:100%}.progress-timeline{list-style:none;padding:0;margin:0;display:grid;gap:0}.progress-step{display:flex;gap:1rem;border-left:2px solid var(--border);margin-left:.65rem;padding:.85rem 0 .85rem 1.25rem;position:relative}.progress-step:last-child{border-left-color:transparent}.progress-step-marker{position:absolute;left:-.45rem;top:1.1rem;width:10px;height:10px;border-radius:50%;background:var(--border-strong);border:2px solid var(--surface)}.progress-step.current .progress-step-marker{background:var(--primary);box-shadow:0 0 0 3px #2563eb33}.progress-step.complete .progress-step-marker{background:var(--success)}.progress-step-body{flex:1;display:grid;gap:.35rem}.progress-signers{list-style:none;padding:0;margin:.35rem 0 0;display:grid;gap:.35rem}.progress-signers li{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;font-size:.85rem}.progress-signer-main{display:grid;gap:.12rem;min-width:0;flex:1}.progress-signer-signed-at{line-height:1.25}.badge-signed{background:#d1fae5;color:#065f46}.badge-notified{background:#dbeafe;color:#1e40af}.badge-pending{background:#f1f5f9;color:#475569}.badge-expired,.badge-rejected{background:#fee2e2;color:#991b1b}.sign-actions{display:flex;flex-wrap:wrap;gap:.75rem}.sign-actions .btn{flex:1;min-width:7rem}.doc-item-row{display:flex;flex-direction:column;gap:.5rem}.doc-item-sign{margin:0 .75rem .75rem;align-self:stretch;text-align:center}.doc-detail-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-danger{background:#fef2f2;color:#b91c1c;border:1.5px solid #fecaca}.btn-danger:hover:not(:disabled){background:#fee2e2}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card{width:min(100%,420px);padding:1.5rem;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);display:grid;gap:1.25rem}.modal-header{display:grid;gap:.5rem}.modal-title{margin:0;font-size:1.15rem;font-weight:800;color:var(--text)}.modal-description{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.modal-field{display:grid;gap:.4rem}.modal-textarea{width:100%;min-height:5.5rem;resize:vertical;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:.8rem 1rem;font:inherit;font-size:.95rem;color:var(--text);background:var(--surface)}.modal-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1f}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-actions .btn{min-width:7rem}.modal-card--wide{width:min(100%,460px)}.modal-user-preview{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised, #f8fafc)}.modal-user-preview-main{display:grid;gap:.15rem;min-width:0}.modal-user-preview-main strong{font-size:.95rem}.modal-info-box{padding:.9rem 1rem;border-radius:var(--radius-sm);background:#f0f9ff;border:1.5px solid #bae6fd}.modal-info-title{margin:0 0 .5rem;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0369a1}.modal-info-list{margin:0;padding-left:1.1rem;display:grid;gap:.35rem;font-size:.88rem;color:var(--text-secondary);line-height:1.45}.modal-info-box--warning{background:#fffbeb;border-color:#fde68a}.modal-info-box--warning .modal-info-title{color:#b45309}.modal-info-box--success{background:#f0fdf4;border-color:#bbf7d0}.modal-info-box--success .modal-info-title{color:#15803d}.btn-danger-text{color:#b91c1c}.btn-danger-text:hover:not(:disabled){color:#991b1b;background:#fee2e2}.table-link{color:var(--primary);text-decoration:none;font-weight:600}.table-link:hover{text-decoration:underline}.signer-shell{min-height:100vh}.signer-shell--sign{height:100vh;height:100dvh;overflow:hidden}.signer-shell--sign .signer-main{min-height:0;overflow:hidden}.signer-badge{display:inline-block;margin-top:.15rem;padding:.15rem .5rem;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;width:fit-content}.requester-badge{display:inline-block;margin-top:.15rem;padding:.15rem .5rem;border-radius:999px;background:#f3e8ff;color:#7c3aed;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;width:fit-content}.signer-sign-content{flex:1;min-height:0;padding:0;display:flex;flex-direction:column;overflow:hidden}.sign-desktop{display:grid;grid-template-columns:minmax(0,1fr) 400px;flex:1;min-height:0;overflow:hidden}.sign-desktop-doc{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:1.25rem 1.5rem;background:linear-gradient(180deg,#e2e8f0,#f1f5f9)}.sign-desktop-doc-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-shrink:0}.sign-desktop-title{font-size:1.35rem;font-weight:800;color:var(--text);margin-top:.25rem}.sign-desktop-panel{display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:1.25rem 1.5rem 2rem;background:var(--surface);border-left:1px solid var(--border);box-shadow:-4px 0 24px #0f172a0a}.sign-form-panel{display:grid;gap:1rem}.sign-panel-hint{margin:0;padding:.65rem .85rem;border-radius:var(--radius-sm);background:var(--surface-muted);border:1px dashed var(--border)}.pdf-signer--expanded{flex:1;min-height:0;border-radius:var(--radius-lg);box-shadow:var(--shadow)}.pdf-signer--expanded .pdf-signer-viewport{flex:1}.pdf-signer--expanded .pdf-signer-page{padding:.75rem 0}.pdf-signer--expanded .pdf-signer-canvas-wrap{box-shadow:0 4px 24px #0f172a1f}.doc-browser{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:1rem;align-items:start;min-height:calc(100vh - 220px)}.doc-browser-tree{padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 220px)}.doc-browser-results{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - 220px)}.doc-browser-results-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.doc-browser-results-header h2{margin:0;font-size:1.05rem;font-weight:700}.doc-browser-results .admin-table-wrap{flex:1;overflow:auto;padding:0 .25rem}.doc-browser-results .loading-state,.doc-browser-results .empty-state{flex:1;padding:2rem 1.25rem}.doc-explorer-tree{display:flex;flex-direction:column;min-height:0;flex:1}.doc-explorer-tree-header{padding:.85rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.doc-explorer-tree-header h2{margin:0;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.doc-explorer-tree-search{margin-top:.65rem;display:grid;gap:.35rem}.doc-explorer-tree-search-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.doc-explorer-tree-search-row{display:flex;gap:.35rem;align-items:stretch}.doc-explorer-tree-search-row input{flex:1;min-width:0;padding:.45rem .55rem;font-size:.85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.doc-explorer-tree-search-row .btn-sm{padding:.45rem .65rem;font-size:.78rem;white-space:nowrap}.doc-explorer-scope{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;margin-top:.65rem;padding:.2rem;border-radius:var(--radius-sm);background:var(--surface-muted)}.doc-explorer-scope button{border:0;border-radius:calc(var(--radius-sm) - 2px);padding:.4rem .5rem;background:transparent;color:var(--text-muted);font:inherit;font-size:.75rem;font-weight:650;cursor:pointer}.doc-explorer-scope button.active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm)}.tree-root,.tree-children{list-style:none;margin:0;padding:0}.tree-root{overflow-y:auto;flex:1;padding:.5rem 0}.tree-children{margin-left:.65rem;border-left:1px solid var(--border)}.tree-branch{margin:0}.tree-node-row{display:flex;align-items:stretch;min-height:2rem}.tree-expand-btn,.tree-expand-spacer{flex-shrink:0;width:1.75rem}.tree-expand-btn{display:grid;place-items:center;border:0;background:none;color:var(--text-muted);cursor:pointer;padding:0}.tree-expand-btn:hover{color:var(--text)}.tree-chevron{transition:transform .15s ease}.tree-chevron.open{transform:rotate(90deg)}.tree-node{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0;padding:.45rem .75rem .45rem 0;border:0;background:none;font:inherit;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-align:left;cursor:pointer;border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:background .15s,color .15s}.tree-node--root{padding-left:.75rem;width:100%;border-radius:var(--radius-sm)}.tree-node:hover{background:var(--surface-muted);color:var(--text)}.tree-node.active{background:#eff6ff;color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}.tree-node-icon{flex-shrink:0;display:grid;place-items:center;width:1.25rem;color:inherit;opacity:.75}.tree-node-icon svg{width:16px;height:16px}.tree-node.active .tree-node-icon{opacity:1}.tree-node-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-loading,.tree-empty{padding:.35rem .75rem .35rem 2.5rem;font-size:.8rem}.tree-node--pending.active{background:#fff7ed;color:#c2410c;box-shadow:inset 3px 0 #f97316}.tree-node-badge{margin-left:auto;flex-shrink:0;min-width:1.25rem;padding:.1rem .4rem;border-radius:999px;background:#f97316;color:#fff;font-size:.68rem;font-weight:700;text-align:center}.tree-node.active .tree-node-badge{background:#ea580c}.doc-row-pending{background:#fffbeb}.doc-row-pending:hover{background:#fef3c7}.filter-bar-inline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.5rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.filter-bar-inline select{flex:1 1 140px;min-width:0;max-width:200px;padding:.5rem .65rem;font-size:.875rem}.filter-bar-inline-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.filter-panel--desktop{padding:1.25rem 1.5rem}.filter-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.table-actions{text-align:right;white-space:nowrap}.table-actions .btn{min-width:4.5rem}.doc-detail-desktop{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,2fr);gap:1rem;align-items:start}.doc-detail-sidebar{display:grid;gap:1rem;align-content:start}.doc-detail-panel{padding:1.25rem}.doc-detail-panel .signing-progress{padding-top:0;border-top:0}.doc-detail-meta-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.doc-detail-title{margin:.25rem 0 0;font-size:1.15rem;font-weight:800;line-height:1.3}.doc-detail-facts{display:grid;gap:.75rem;margin:0;font-size:.875rem}.doc-detail-facts div{display:grid;gap:.2rem}.doc-detail-facts dt{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.doc-detail-facts dd{margin:0;font-weight:600;color:var(--text)}.doc-detail-preview{display:flex;flex-direction:column;min-height:calc(100vh - 220px);padding:0;overflow:hidden}.doc-detail-preview-header{padding:.85rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.doc-detail-preview-header h3{margin:0;font-size:.95rem;font-weight:700}.doc-detail-preview .pdf-viewer,.doc-detail-preview .pdf-signer{flex:1;min-height:0;overflow-y:auto;border:0;border-radius:0}.doc-detail-no-preview{padding:1.25rem}.doc-detail-desktop-error,.doc-detail-desktop-back{grid-column:1 / -1}.signing-progress{display:grid;gap:.75rem;padding-top:.5rem;border-top:1px solid var(--border)}.signing-progress-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.signing-progress-header h3{margin:0;font-size:.95rem;font-weight:700}.signing-progress--compact .progress-step{padding:.6rem 0 .6rem 1rem}.signing-progress--compact .progress-step-body strong{font-size:.875rem}.signing-progress--compact .progress-signers li{font-size:.78rem;flex-wrap:wrap}.signer-shell:has(.request-desktop){height:100vh;height:100dvh;overflow:hidden}.signer-shell:has(.request-desktop) .signer-main{min-height:0;overflow:hidden}.signer-shell:has(.request-desktop) .admin-page-header{padding:.75rem 1.25rem .25rem}.admin-page-content:has(.request-desktop){min-height:0;overflow:hidden;padding-bottom:.75rem}.request-desktop{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,2fr);gap:1rem;align-items:stretch;height:100%;min-height:0}.request-desktop-form{padding:1.25rem;height:100%;min-height:0;overflow-y:auto}.request-desktop-form-header{display:grid;gap:.35rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.request-desktop-form-header h2{margin:0;font-size:1.15rem;font-weight:800}.request-form--compact .btn-block{margin-top:.25rem}.request-desktop-preview{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;overflow:hidden}.request-desktop-preview-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.request-desktop-preview-header h3{margin:0;font-size:.95rem;font-weight:700}.request-desktop-preview .pdf-viewer,.request-desktop-preview .pdf-signer{flex:1;min-height:0;overflow-y:auto;border:0;border-radius:0}.request-preview-empty{flex:1;display:grid;place-items:center;padding:3rem 1.5rem;background:var(--surface-muted);text-align:center}.request-stamp{padding-top:1rem;border-top:1px solid var(--border)}.request-stamp .eyebrow{margin-bottom:.2rem}.request-form .pdf-signer{max-height:28rem}@media(min-width:1024px){.signer-sidebar.admin-sidebar:not(.open){width:0;min-width:0;overflow:hidden;box-shadow:none}.signer-sidebar.admin-sidebar.open{width:240px;min-width:240px}}.logs-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:end}.logs-toolbar label{margin:0;min-width:160px}.logs-search{flex:1;min-width:220px}.log-message{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-detail{padding:.5rem .25rem .75rem}.log-detail p{margin:0 0 .5rem}.log-exception{margin:.35rem 0 .85rem;padding:.75rem;background:var(--surface-muted);border-radius:8px;font-size:.75rem;line-height:1.45;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.logs-pager{display:flex;justify-content:space-between;align-items:center;gap:1rem}.logs-pager-actions{display:flex;align-items:center;gap:.5rem}.license-current-card{padding:.85rem 1.1rem;gap:.55rem}.license-current-card .card-header{margin-bottom:0;align-items:center}.license-current-card .eyebrow{margin-bottom:.15rem}.license-current-card h2{font-size:1rem}.license-usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.35rem .85rem}.license-usage-grid p{margin:0 0 .1rem;line-height:1.2}.license-usage-grid strong{font-size:.92rem;line-height:1.2}.license-product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;align-items:start}.license-product-card{display:flex;flex-direction:column;gap:.35rem;padding:.7rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.license-product-card.current{border-color:var(--primary, #1d4ed8)}.license-product-card .card-header{margin-bottom:0;align-items:center}.license-product-card p{margin:0;line-height:1.3}.license-product-facts{margin:0;padding-left:1.05rem;color:var(--muted);font-size:.8rem;line-height:1.35}.license-product-card .btn{margin-top:.25rem;padding:.5rem .85rem;font-size:.82rem}.license-price-options{display:flex;gap:.35rem}.license-price-option{position:relative;flex:1;display:flex;align-items:center;justify-content:center;margin:0;padding:.35rem .45rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--text);font-size:.75rem;font-weight:700;line-height:1.2;text-align:center;cursor:pointer}.license-price-option input{position:absolute;opacity:0;pointer-events:none}.license-price-option.selected{border-color:var(--primary, #1d4ed8);background:var(--surface);box-shadow:0 0 0 1px var(--primary, #1d4ed8)}.license-price-single{margin:0;color:var(--text);font-size:.8rem;font-weight:700}.price-grid-amount{margin:0;font-size:1.15rem;font-weight:800;letter-spacing:-.03em;color:var(--navy-900)}.onboarding-shell{min-height:100vh;background:var(--bg)}.onboarding-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border)}.onboarding-main{max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.wizard-steps{display:flex;gap:.5rem;margin:1.25rem 0 1rem;padding:0;list-style:none}.wizard-step{flex:1}.wizard-step button{width:100%;display:flex;align-items:center;justify-content:center;gap:.45rem;margin:0;padding:.55rem .7rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-secondary);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}.wizard-step.current button{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.wizard-step.done button{border-color:var(--success);color:var(--success)}.wizard-step button:disabled{cursor:default;opacity:.55}.wizard-step-index{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--surface-muted);font-size:.75rem}.onboarding-actions{display:flex;flex-wrap:wrap;gap:.6rem}@media(max-width:640px){.wizard-steps{flex-direction:column}}
