:root{color-scheme:light;--bg: #f7f8fa;--surface: #ffffff;--surface-alt: #f1f3f7;--text: #1a1f2b;--muted: #5b6472;--accent: #4f46e5;--accent-hover: #4338ca;--accent-active: #3730a3;--accent-soft: #eef0fe;--accent-bright: #6366f1;--border: #e2e5ec;--success: #0f7a52;--danger: #b42318;--well: #0e1116;--radius: 16px;--radius-sm: 10px;--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px -16px rgba(16, 24, 40, .1);--font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.app-shell{display:flex;flex-direction:column;height:100svh;max-width:480px;margin-inline:auto;background:var(--bg)}.app-top{flex-shrink:0;position:sticky;top:0;z-index:20;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;min-width:0}.logo-mark{width:28px;height:28px;flex-shrink:0}.brand-copy{display:flex;flex-direction:column;line-height:1.1;min-width:0}.brand-copy strong{font-size:15px;font-weight:600;letter-spacing:-.01em}.brand-copy span{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.secure-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:600;white-space:nowrap}.secure-chip.is-issue{background:#fdeceb;color:var(--danger)}.step-counter{font-size:12px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.stepper{flex-shrink:0;position:sticky;top:56px;z-index:19;padding:10px 20px 12px;background:var(--bg)}.stepper-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.stepper-tracks{display:flex;gap:6px}.track{flex:1;height:3px;border-radius:2px;background:var(--border);transition:background .24s cubic-bezier(.22,.61,.36,1)}.track.is-complete{background:var(--accent)}.track.is-active{background:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:inset 0 -1.5px 0 0 var(--accent)}.eyebrow{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}h1,.display{margin:0;font-weight:600;letter-spacing:-.01em;color:var(--text)}h1{font-size:22px;line-height:1.2}.display{font-size:clamp(26px,7vw,30px);line-height:1.12;letter-spacing:-.015em}h1:focus,.display:focus{outline:none}.lead{margin:12px 0 0;font-size:16px;font-weight:500;color:var(--text);max-width:36ch}.micro-label{margin:22px 0 8px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.stage{flex:1;min-height:0;display:flex;justify-content:center;padding:16px 16px 0}.card{flex:1;min-height:0;width:100%;max-width:480px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;box-shadow:var(--shadow-card);overflow:hidden;animation:cardIn .18s ease-out}.card-head{flex-shrink:0;display:flex;align-items:flex-start;gap:12px;padding:20px 20px 4px}.card-head h1{margin-top:2px}.back-btn{flex-shrink:0;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.back-btn:disabled{opacity:.4;cursor:default}.card-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 20px 20px;display:flex;flex-direction:column;background:linear-gradient(var(--surface) 30%,rgba(255,255,255,0)) center top,linear-gradient(rgba(255,255,255,0),var(--surface) 70%) center bottom,radial-gradient(farthest-side at 50% 0,rgba(16,24,40,.14),transparent) center top,radial-gradient(farthest-side at 50% 100%,rgba(16,24,40,.14),transparent) center bottom;background-repeat:no-repeat;background-size:100% 44px,100% 44px,100% 14px,100% 14px;background-attachment:local,local,scroll,scroll}.capture-card .camera-well{margin-block:auto;flex-shrink:0;max-height:min(62svh,540px)}.app-foot{flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}.foot-status{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);min-height:18px}.foot-status.is-saved{color:var(--success);font-weight:600}.foot-status.is-error{color:var(--danger);font-weight:600}.consent-line{margin:0;font-size:13px;color:var(--muted);text-align:center}.trust-bar{margin:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;color:var(--muted);text-align:center}.trust-bar svg{flex-shrink:0;color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;width:100%;padding:0 18px;border:1px solid transparent;border-radius:12px;font-size:16px;font-weight:600;letter-spacing:-.005em;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{background:var(--accent-active)}.btn-primary:disabled{background:var(--accent-soft);color:#4d5494;cursor:default}.btn-ghost{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-ghost:hover{background:var(--surface-alt)}.btn-ghost.on-dark{background:#ffffff1a;border-color:#ffffff47;color:#fff;width:auto;min-height:44px}.btn-ghost.on-dark:hover{background:#ffffff2e}.btn:disabled{cursor:default}.text-link{align-self:flex-start;margin-top:18px;padding:8px 0;border:none;background:none;color:var(--accent);font-size:14px;font-weight:600;cursor:pointer}.text-link:hover{color:var(--accent-hover);text-decoration:underline}.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.disclosure-list{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.disclosure-row{display:flex;align-items:flex-start;gap:12px;font-size:15px;color:var(--text)}.disclosure-icon{flex-shrink:0;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--accent-soft);color:var(--accent)}.sheet-scrim{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;background:#10182873;animation:fade .16s ease-out}.trust-sheet{width:100%;max-width:480px;background:var(--surface);border-radius:18px 18px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;animation:sheetUp .22s cubic-bezier(.22,.61,.36,1)}.trust-sheet-row{display:flex;gap:12px;align-items:flex-start}.trust-sheet-icon{flex-shrink:0;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:var(--accent-soft);color:var(--accent)}.trust-sheet-row strong{display:block;font-size:14px;font-weight:600}.trust-sheet-row p{margin:2px 0 0;font-size:14px;color:var(--muted)}.readiness-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.readiness-row{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:12px}.readiness-icon{flex-shrink:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-alt);color:var(--muted)}.readiness-row strong{font-size:15px;font-weight:600}.readiness-row p{margin:2px 0 0;font-size:13px;color:var(--muted)}.tip-strip{display:flex;align-items:flex-start;gap:8px;margin:14px 0 0;padding:12px 14px;border-radius:10px;background:var(--surface-alt);font-size:13px;color:var(--muted)}.tip-strip svg{flex-shrink:0;color:var(--accent)}.guide-preview{display:flex;align-items:center;justify-content:center;height:clamp(110px,16vh,150px);flex-shrink:0;margin:4px 0;border-radius:12px;background:var(--surface-alt);position:relative}.guide-art{height:92%;width:auto;max-width:94%}.prep-tips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.prep-tip{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:10px;background:var(--surface-alt);font-size:14px}.prep-tip svg{flex-shrink:0;margin-top:1px;color:var(--accent)}.inline-error{display:flex;gap:8px;align-items:flex-start;margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#fdeceb;color:var(--danger);font-size:14px}.inline-error svg{flex-shrink:0;margin-top:1px}.camera-well{position:relative;width:100%;border-radius:12px;overflow:hidden;background:var(--well);aspect-ratio:4 / 5}.camera-well.is-face{aspect-ratio:3 / 4}.camera-well video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.camera-well video.mirror-video{transform:scaleX(-1)}.review-frozen{position:absolute;inset:0;background:var(--well)}.review-frozen img{width:100%;height:100%;object-fit:contain}.camera-well.is-review{box-shadow:inset 0 0 0 2px var(--accent)}.scanner-overlay{position:absolute;inset:0;pointer-events:none}.doc-guide{position:absolute;top:50%;left:50%;width:86%;aspect-ratio:1.586;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.4);border-radius:10px;box-shadow:0 0 0 999px #080b1080}.doc-guide.is-locked{border-color:var(--accent-bright)}.doc-guide.is-holding{border-color:var(--accent-bright);box-shadow:0 0 0 999px #080b1080,0 0 18px #6366f18c}.scan-sweep{position:absolute;inset:0;border-radius:8px;overflow:hidden;pointer-events:none;transition:opacity .24s ease}.scan-sweep:before{content:"";position:absolute;left:4%;right:4%;top:0;height:36%;background:linear-gradient(180deg,#818cf800,#818cf81f 36%,#a5b4fc80,#818cf81f 64%,#818cf800);animation:scanSweep 3s ease-in-out infinite;will-change:transform}.doc-guide.is-locked .scan-sweep,.doc-guide.is-holding .scan-sweep{opacity:0}.doc-corner{position:absolute;width:26px;height:26px;border:3px solid rgba(255,255,255,.55);transition:border-color .18s ease,filter .18s ease}.doc-corner.tl{top:-2px;left:-2px;border-right:none;border-bottom:none;border-radius:8px 0 0}.doc-corner.tr{top:-2px;right:-2px;border-left:none;border-bottom:none;border-radius:0 8px 0 0}.doc-corner.br{bottom:-2px;right:-2px;border-left:none;border-top:none;border-radius:0 0 8px}.doc-corner.bl{bottom:-2px;left:-2px;border-right:none;border-top:none;border-radius:0 0 0 8px}.doc-corner.is-ready{border-color:var(--accent-bright);filter:drop-shadow(0 0 6px rgba(99,102,241,.5))}.hold-ring{position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border:2px solid rgba(99,102,241,.35);border-top-color:var(--accent-bright);border-radius:50%;animation:spin .7s linear infinite}.detected-quad{position:absolute;inset:0;width:100%;height:100%}.detected-quad polygon{fill:#6366f11a;stroke:var(--accent-bright);stroke-width:.6;vector-effect:non-scaling-stroke;transition:fill .18s ease}.detected-quad polygon.is-locked{fill:#6366f138}.face-guide{position:absolute;top:50%;left:50%;width:64%;aspect-ratio:1;transform:translate(-50%,-50%);transition:transform .22s ease}.face-guide.is-locked{transform:translate(-50%,-50%) scale(1.03)}.face-guide.is-locked .ring-base{stroke:var(--accent-bright);filter:drop-shadow(0 0 8px rgba(99,102,241,.45))}.face-guide:before,.face-guide:after{content:"";position:absolute;inset:5%;border-radius:50%;border:2px solid rgba(140,150,250,.7);opacity:0;animation:faceRipple 3s ease-out infinite;pointer-events:none}.face-guide:after{animation-delay:1.5s}.face-guide.is-locked:before,.face-guide.is-locked:after{animation:none;opacity:0}.face-progress-ring{width:100%;height:100%}.face-progress-ring .ring-base{fill:none;stroke:#ffffff47;stroke-width:3}.face-progress-ring .ring-arc{fill:none;stroke:#ffffff4d;stroke-width:4;stroke-linecap:round;transition:stroke .22s ease}.face-progress-ring .ring-arc.done{stroke:var(--accent-bright)}.face-progress-ring .ring-center{stroke:#ffffff4d;stroke-width:3;stroke-linecap:round;transition:stroke .22s ease}.face-progress-ring .ring-center.done{stroke:var(--accent-bright)}.face-progress-ring.is-complete .ring-arc.done,.face-progress-ring.is-complete .ring-center.done{stroke:#34d399}.pose-prompt{position:absolute;top:16px;left:50%;transform:translate(-50%);width:max-content;max-width:90%;text-align:center;display:flex;flex-direction:column;gap:2px}.pose-prompt{padding:6px 14px;border-radius:12px;background:#080b108c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.pose-prompt span{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#ffffffbf;text-shadow:0 1px 4px rgba(0,0,0,.5)}.pose-prompt strong{font-size:15px;font-weight:600;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5)}.coach-pill{position:absolute;bottom:14px;left:50%;transform:translate(-50%);max-width:88%;padding:7px 14px;border-radius:999px;background:#080b10b8;color:#fff;font-size:13px;font-weight:500;text-align:center;line-height:1.35;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.coach-pill.is-locked{background:var(--accent)}.capture-flash{position:absolute;inset:0;background:#fff;animation:captureFlash .22s ease-out;pointer-events:none}.cam-toggle{position:absolute;top:12px;right:12px;display:flex;padding:3px;border-radius:999px;background:#080b108c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cam-toggle button{border:none;background:none;color:#ffffffb3;font-size:13px;font-weight:600;min-height:38px;padding:8px 16px;border-radius:999px;cursor:pointer}.cam-toggle button.is-active{background:#fff;color:var(--text)}.cam-toggle button:disabled{opacity:.5;cursor:default}.well-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;gap:8px;padding:20px;overflow-y:auto;text-align:center;color:#fff;background:var(--well)}.well-message strong{font-size:16px;font-weight:600}.well-message p{margin:0;max-width:30ch;font-size:13px;color:#ffffffb3}.well-message .btn{margin-top:6px}.privacy-line{margin:12px 0 0;font-size:12px;color:var(--muted);text-align:center}.success-card .card-body{align-items:center;text-align:center}.success-mark{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--accent);margin-bottom:14px;animation:pop .2s ease-out}.success-card .lead{max-width:40ch}.receipt-panel{width:100%;margin-top:22px;border:1px solid var(--border);border-radius:12px;overflow:hidden;text-align:left}.receipt-head{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--surface-alt);font-size:14px;font-weight:600;color:var(--text)}.receipt-list{list-style:none;margin:0;padding:4px 0}.receipt-row{display:flex;align-items:center;gap:10px;padding:9px 14px;font-size:14px}.receipt-tick{flex-shrink:0;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.receipt-label{flex:1;color:var(--text)}.receipt-time{font-family:var(--mono);font-size:11px;letter-spacing:.02em;color:var(--muted);font-variant-numeric:tabular-nums}.session-line{margin:0;padding:10px 14px;border-top:1px solid var(--border);font-family:var(--mono);font-size:11px;color:var(--muted);word-break:break-all}.retention-strip{display:flex;align-items:flex-start;gap:8px;width:100%;margin:16px 0 0;padding:12px 14px;border-radius:10px;background:var(--surface-alt);font-size:13px;color:var(--muted);text-align:left}.retention-strip svg{flex-shrink:0;margin-top:1px;color:var(--accent)}.support-link{font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.support-link:hover{text-decoration:underline}.support-link.on-dark{margin-top:4px;color:#ffffffd9;text-decoration:underline;text-underline-offset:3px}.completion-strip{display:flex;align-items:flex-start;gap:8px;width:100%;margin:14px 0 0;padding:11px 14px;border-radius:10px;font-size:13px;text-align:left}.completion-strip.is-pending{background:var(--surface-alt);color:var(--muted)}.completion-strip.is-error{background:#fdeceb;color:var(--danger)}.completion-strip svg{flex-shrink:0;margin-top:2px}.inline-link{display:inline;padding:0;border:none;background:none;color:inherit;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.copy-btn{margin-left:auto;display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:4px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:12px;font-weight:600;cursor:pointer}.copy-btn:hover{background:var(--surface-alt)}.foot-link{align-self:center;margin-top:0;padding:6px 0}.camera-well.is-flashing{box-shadow:inset 0 0 0 2px var(--accent-bright)}.spin{animation:spin .8s linear infinite}@keyframes scanSweep{0%{transform:translateY(-105%)}50%{transform:translateY(290%)}to{transform:translateY(-105%)}}@keyframes faceRipple{0%{transform:scale(.96);opacity:0}10%{opacity:.75}65%{transform:scale(1.24);opacity:0}to{transform:scale(1.24);opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes captureFlash{0%{opacity:0}40%{opacity:.85}to{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:768px){.stage{padding:28px 20px 0}.card{border-radius:var(--radius);margin-bottom:20px}.camera-well.is-document{aspect-ratio:16 / 10;min-height:340px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(prefers-contrast:more){:root{--muted: #434a57;--border: #c7ccdb}}.app-shell.is-agreement{max-width:560px}.agreement-head{flex-direction:column;align-items:stretch;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--border)}.agreement-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.field-pill{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;margin-top:2px;padding:5px 10px;border-radius:999px;background:#fff7e6;color:#8a5a00;font-size:12px;font-weight:600;white-space:nowrap}.field-pill.is-done{background:#e8f6ef;color:var(--success)}.agreement-sender{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.agreement-sender svg{flex-shrink:0;color:var(--accent)}.read-progress{height:3px;border-radius:2px;background:var(--border);overflow:hidden}.read-progress span{display:block;height:100%;width:0;background:var(--accent);border-radius:2px;transition:width .12s linear}.agreement-body{background:var(--surface-alt);padding:16px}.doc-paper{--font-doc: "Charter", "Bitstream Charter", "Iowan Old Style", Georgia, "Times New Roman", serif;background:#fff;border:1px solid var(--border);border-radius:6px;box-shadow:0 1px 2px #1018280d,0 12px 32px -24px #10182840;padding:28px 22px 24px;font-family:var(--font-doc);font-size:15px;line-height:1.62;color:#20242e}.doc-paper p{margin:0 0 12px}.doc-header{text-align:center;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--border)}.doc-mark{margin:0 0 10px!important;font-family:var(--font);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.doc-title{margin:0;font-family:var(--font-doc);font-size:22px;font-weight:700;letter-spacing:.01em;color:#181c26}.doc-effective{margin:6px 0 0!important;font-size:13.5px;font-style:italic;color:var(--muted)}.doc-paper h3{margin:24px 0 8px;font-family:var(--font);font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--accent-active);display:flex;gap:8px;align-items:baseline}.doc-paper h3 span{color:var(--accent);font-variant-numeric:tabular-nums}.doc-paper h4{margin:16px 0 6px;font-family:var(--font);font-size:13px;font-weight:600;color:#3c4354}.doc-list{margin:0 0 12px;padding-left:20px}.doc-list li{margin-bottom:9px}.doc-callout{display:flex;gap:8px;align-items:flex-start;margin:14px 0!important;padding:10px 12px;border-radius:8px;background:var(--accent-soft);font-family:var(--font);font-size:13px;color:var(--accent-active)}.doc-callout svg{flex-shrink:0;margin-top:2px}.doc-exhibit-head{margin-top:30px!important;padding-top:18px;border-top:1px solid var(--border)}.exhibit-field{display:block;margin:4px 0 18px}.exhibit-label{display:block;margin-bottom:5px;font-family:var(--font);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.exhibit-field input{width:100%;min-height:42px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-family:var(--font-doc);font-size:15px;color:var(--text)}.exhibit-field input:disabled{background:var(--surface-alt);color:#3c4354}.doc-witness{margin-top:20px!important;font-weight:600}.sig-grid{display:grid;grid-template-columns:1fr;gap:18px;margin:18px 0 8px}.sig-party{position:relative;padding:14px 14px 12px;border:1px solid var(--border);border-radius:10px;background:#fcfcfe}.sig-party.is-pending{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 0 0 3px var(--accent-soft)}.sig-party.is-signed{border-color:color-mix(in srgb,var(--success) 35%,var(--border));background:#fbfdfc}.sig-role{margin:0 0 10px!important;font-family:var(--font);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.sig-script{margin:0!important;min-height:46px;display:flex;align-items:flex-end;font-size:34px;line-height:1.1;color:#1e2a78}.sig-drawn{display:block;max-height:64px;max-width:100%}.sig-rule{height:1px;background:#20242e;margin:6px 0 8px}.sig-meta{margin:0!important;font-family:var(--font);font-size:13px;line-height:1.45;color:var(--text)}.sig-stamp{margin:8px 0 0!important;display:flex;align-items:center;gap:5px;font-family:var(--mono);font-size:11px;color:var(--success)}.sig-change{position:absolute;top:10px;right:12px;border:none;background:none;padding:4px 6px;font-family:var(--font);font-size:12px;font-weight:600;color:var(--accent);cursor:pointer}.sign-flag{display:inline-flex;align-items:center;gap:7px;min-height:46px;padding:0 18px;margin-bottom:2px;border:none;border-radius:8px 8px 8px 2px;background:var(--accent);color:#fff;font-family:var(--font);font-size:15px;font-weight:600;cursor:pointer;animation:signFlagPulse 2.2s ease-in-out infinite}.sign-flag:hover{background:var(--accent-hover)}@keyframes signFlagPulse{0%,to{box-shadow:0 0 #4f46e559}50%{box-shadow:0 0 0 8px #4f46e500}}.doc-foot{margin-top:22px;padding-top:12px;border-top:1px solid var(--border);font-family:var(--font);font-size:11px;text-align:center;color:var(--muted)}.signature-sheet{gap:14px;max-width:480px}.signature-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.signature-sheet-head .eyebrow{margin-bottom:2px}.signature-signing-as{margin:0;font-size:14px;color:var(--muted)}.sheet-close{flex-shrink:0;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--muted);cursor:pointer}.signature-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:10px;background:var(--surface-alt)}.signature-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border:none;border-radius:8px;background:transparent;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer}.signature-tab.is-active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #10182814}.signature-preview{min-height:86px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:10px;background:#fcfcfe;font-size:42px;color:#1e2a78}.font-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.font-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer}.font-option.is-active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.font-sample{font-size:20px;line-height:1.2;color:#1e2a78;white-space:nowrap;overflow:hidden;max-width:100%}.font-name{font-size:11px;font-weight:600;color:var(--muted)}.signature-draw-pane{display:flex;flex-direction:column}.pad-wrap{position:relative}.signature-pad{display:block;width:100%;height:170px;border:1px dashed var(--border);border-radius:10px;background:#fcfcfe;touch-action:none;cursor:crosshair}.pad-baseline{position:absolute;left:16px;right:16px;bottom:38px;height:1px;background:var(--border);pointer-events:none}.pad-clear{align-self:flex-end;margin-top:6px;display:inline-flex;align-items:center;gap:5px}.pad-clear:disabled{color:var(--muted);cursor:default;text-decoration:none}.signature-legal{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted)}.signed-banner{display:flex;align-items:center;gap:7px;margin:0 0 14px;padding:9px 12px;border-radius:9px;background:#e8f6ef;color:var(--success);font-size:13px;font-weight:600}@media(min-width:768px){.doc-paper{padding:44px 48px 32px;font-size:15.5px}.sig-grid{grid-template-columns:1fr 1fr}.app-shell.is-agreement .card{margin-bottom:20px}}.code-gate{justify-content:center}.code-gate-icon{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px;border-radius:13px;background:var(--accent-soft);color:var(--accent)}.code-field{display:block;margin-top:22px}.code-input-row{display:flex;align-items:stretch;gap:8px}.code-prefix{display:inline-flex;align-items:center;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt);font-family:var(--mono);font-size:18px;font-weight:600;color:var(--muted)}.code-input-row input{flex:1;min-width:0;min-height:52px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-family:var(--mono);font-size:20px;font-weight:600;letter-spacing:.22em;color:var(--text);text-transform:uppercase}.code-input-row input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.code-help{margin:14px 0 0;font-size:13px;color:var(--muted)}.code-gate .inline-error{margin-top:14px}.invite-chip{margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--surface-alt);border:1px solid var(--border);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--muted)}.device-handoff{display:none}.qr-tile{flex-shrink:0;display:inline-flex;padding:8px;border-radius:10px;background:#fff;border:1px solid var(--border)}@media(min-width:900px){.device-handoff{display:flex;align-items:center;gap:16px;margin-top:20px;padding:14px 16px;border:1px dashed var(--border);border-radius:12px;background:var(--surface-alt);text-align:left}.device-handoff-copy strong{display:flex;align-items:center;gap:6px;font-size:14px}.device-handoff-copy strong svg{color:var(--accent)}.device-handoff-copy p{margin:4px 0 6px;font-size:13px;line-height:1.45;color:var(--muted)}.handoff-code{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--accent-active)}.device-handoff.on-dark{background:#ffffff14;border-color:#ffffff47;max-width:420px}.device-handoff.on-dark .qr-tile{border-color:transparent}.device-handoff.on-dark .device-handoff-copy strong{color:#fff}.device-handoff.on-dark .device-handoff-copy p{color:#ffffffc7}.device-handoff.on-dark .handoff-code{color:#c7cbff}.app-shell{max-width:720px}.app-shell.is-agreement{max-width:920px}.card{max-width:none}.card-head{padding:26px 30px 6px}.card-body{padding:18px 30px 26px}.app-foot{padding-left:30px;padding-right:30px}.camera-well.is-face{max-width:440px;margin-inline:auto}.camera-well.is-document{max-width:640px;margin-inline:auto}.app-foot .btn,.app-foot .review-actions{width:100%;max-width:480px;margin-inline:auto}.app-foot .review-actions .btn{max-width:none}.app-foot .foot-status,.app-foot .consent-line,.app-foot .trust-bar{justify-content:center;text-align:center}}.camera-well.is-status{aspect-ratio:auto;min-height:300px;display:flex}.camera-well.is-status .well-message{position:static;inset:auto;flex:1}@media(max-width:899px){.app-top{height:48px}.stepper{top:48px;padding:6px 20px 8px}.stepper-head{margin-bottom:5px}.stage{padding-top:8px}.card-head{padding-top:12px}.card-body{padding-top:12px;padding-bottom:14px}.app-foot{gap:8px;padding-top:11px;padding-bottom:calc(11px + env(safe-area-inset-bottom))}.capture-card .camera-well.is-document:not(.is-status),.capture-card .camera-well.is-face:not(.is-status){flex:0 1 auto;min-height:0;margin-block:auto;max-height:min(64svh,560px)}.privacy-line{margin-top:6px}}
