:root{--canvas:#f5f4ef;--surface:#fff;--surface-soft:#f8f8f5;--ink:#171916;--ink-muted:#686c65;--line:#dedfd9;--line-strong:#b9bcb3;--accent:#287d57;--accent-soft:#e7f3ec;--danger:#b0443c;--danger-soft:#faecea;--white:#fff;--text-display:clamp(2rem, 5vw, 3.5rem);--text-title:1.25rem;--text-body:1rem;--text-small:.875rem;--text-label:.75rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-control:.625rem;--radius-card:.875rem;--radius-panel:1.5rem;color-scheme:light;background:var(--canvas);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:20rem}body{min-height:100dvh;font-size:var(--text-body);margin:0;line-height:1.55}button,input{font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,.signature-card:has(input:focus-visible){outline:.1875rem solid var(--accent);outline-offset:.125rem}[hidden]{display:none!important}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;display:block}.topbar{width:min(100% - var(--space-8), 70rem);min-height:var(--space-16);justify-content:space-between;align-items:center;gap:var(--space-4);margin-inline:auto;display:flex}.brand{align-items:center;gap:var(--space-3);color:var(--ink);font-weight:700;text-decoration:none;display:inline-flex}.brand svg{width:var(--space-8);height:var(--space-8)}.brand svg rect{fill:var(--ink);stroke:none}.brand svg path{stroke:var(--white);stroke-width:1.75px}.brand svg path:last-child{stroke:var(--accent)}.privacy{align-items:center;gap:var(--space-2);color:var(--ink-muted);font-size:var(--text-small);display:inline-flex}.privacy svg{width:var(--space-5);height:var(--space-5)}main{width:min(100% - var(--space-8), 70rem);margin:var(--space-10) auto var(--space-16);gap:var(--space-12);grid-template-columns:20rem minmax(0,1fr);align-items:start;display:grid}.intro{top:var(--space-8);position:sticky}.eyebrow{margin:0 0 var(--space-3);color:var(--accent);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;font-weight:700}h1{max-width:10ch;font-size:var(--text-display);letter-spacing:-.04em;margin:0;font-weight:600;line-height:1.02}.intro-copy{max-width:32rem;margin:var(--space-6) 0;color:var(--ink-muted)}.coordinate-note{gap:var(--space-3);padding-top:var(--space-5);border-top:.0625rem solid var(--line);color:var(--ink-muted);font-size:var(--text-small);display:flex}.coordinate-note svg{width:var(--space-6);height:var(--space-6);color:var(--accent);flex:none}.workspace{border:.0625rem solid var(--line);border-radius:var(--radius-panel);background:var(--surface);min-width:0;overflow:hidden;box-shadow:0 1.25rem 3.75rem #17191614}.step{padding:var(--space-8)}.step-heading{grid-template-columns:var(--space-8) minmax(0, 1fr) auto;align-items:start;gap:var(--space-4);display:grid}.step-number{width:var(--space-8);height:var(--space-8);background:var(--ink);color:var(--white);font-size:var(--text-small);border-radius:50%;place-items:center;font-weight:700;display:grid}h2{font-size:var(--text-title);margin:0;line-height:1.3}.step-heading p,.results-content>p{margin:var(--space-1) 0 0;color:var(--ink-muted);font-size:var(--text-small)}.text-button,.cancel-button{min-height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border:0}.text-button{justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-control);font-size:var(--text-small);font-weight:600;display:inline-flex}.text-button:hover{background:var(--surface-soft)}.text-button svg{width:var(--space-5);height:var(--space-5)}.signature-grid{margin-top:var(--space-6);gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.signature-card{min-width:0;padding:var(--space-3);border:.0625rem solid var(--line);border-radius:var(--radius-card);background:var(--surface);cursor:pointer;transition:transform .15s ease-out,border-color .15s ease-out,background-color .15s ease-out;position:relative}.signature-card:hover{border-color:var(--line-strong)}.signature-card:active{transform:scale(.98)}.signature-card:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.signature-card input{opacity:0;pointer-events:none;position:absolute}.signature-preview{border-radius:var(--radius-control);background:var(--surface);place-items:center;height:4.5rem;display:grid;overflow:hidden}.signature-preview img{width:100%;height:100%;padding:var(--space-2);object-fit:contain}.signature-name{margin-top:var(--space-2);padding-right:var(--space-6);font-size:var(--text-small);text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.signature-check{right:var(--space-3);bottom:var(--space-3);width:var(--space-5);height:var(--space-5);background:var(--accent);color:var(--white);border-radius:50%;place-items:center;display:none;position:absolute}.signature-check svg{width:var(--space-3);height:var(--space-3);stroke-width:2.5px}.signature-card:has(input:checked) .signature-check{display:grid}.signature-skeleton{border-radius:var(--radius-card);background:var(--surface-soft);opacity:.8;height:7.5rem}.empty-message,.error-message{padding:var(--space-5);border-radius:var(--radius-card);font-size:var(--text-small);grid-column:1/-1;margin:0}.empty-message{background:var(--surface-soft);color:var(--ink-muted)}.error-message{background:var(--danger-soft);color:var(--danger)}.signature-form{margin-top:var(--space-5);padding:var(--space-5);align-items:end;gap:var(--space-3);border-radius:var(--radius-card);background:var(--surface-soft);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;display:grid}.field{gap:var(--space-2);display:grid}.field label{font-size:var(--text-label);font-weight:700}.field-help{color:var(--ink-muted);font-size:var(--text-label);line-height:1.45}.field input{min-width:0;min-height:2.75rem;padding:0 var(--space-3);border:.0625rem solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink)}.field input[type=file]{padding:var(--space-2);font-size:var(--text-small)}.divider{height:.0625rem;margin-inline:var(--space-8);background:var(--line)}.dropzone{margin-top:var(--space-6);min-height:11rem;padding:var(--space-6);border:.0625rem dashed var(--line-strong);border-radius:var(--radius-card);background:var(--surface-soft);color:var(--ink-muted);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;transition:transform .15s ease-out,border-color .15s ease-out,background-color .15s ease-out;display:flex}.dropzone:hover,.dropzone[data-dragging=true]{border-color:var(--accent);background:var(--accent-soft)}.dropzone[data-dragging=true]{transform:scale(1.01)}.dropzone input{opacity:0;width:.0625rem;height:.0625rem;position:absolute}.dropzone strong{margin-top:var(--space-3);color:var(--ink)}.dropzone>span:last-child{font-size:var(--text-small)}.upload-icon{width:var(--space-10);height:var(--space-10);border:.0625rem solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);place-items:center;display:grid}.upload-icon svg{width:var(--space-6);height:var(--space-6)}.file-list,.result-list{margin:var(--space-4) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.file-list li,.result-list li{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border:.0625rem solid var(--line);border-radius:var(--radius-control);display:flex}.pdf-icon{padding:var(--space-1) var(--space-2);border-radius:var(--space-1);background:var(--danger-soft);color:var(--danger);font-size:var(--text-label);flex:none;font-weight:800}.file-details,.result-list li>span{flex:1;min-width:0;display:grid}.file-details strong,.result-list strong{font-size:var(--text-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-details span,.result-list span span{color:var(--ink-muted);font-size:var(--text-label)}.remove-button{border-radius:var(--radius-control);width:2.75rem;height:2.75rem;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.remove-button:hover{background:var(--danger-soft);color:var(--danger)}.remove-button svg{width:var(--space-5);height:var(--space-5)}.action-area{padding:var(--space-5) var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-5);border-top:.0625rem solid var(--line);background:var(--surface-soft);display:flex}.action-buttons{justify-content:flex-end;align-items:center;gap:var(--space-3);flex:none;display:flex}.status{color:var(--ink-muted);font-size:var(--text-small)}.status[data-kind=error]{color:var(--danger)}.status[data-kind=success]{color:var(--accent)}.primary-button,.secondary-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.75rem;padding:0 var(--space-5);border-radius:var(--radius-control);font-size:var(--text-small);cursor:pointer;font-weight:700;text-decoration:none;transition:transform .15s ease-out,opacity .15s ease-out,background-color .15s ease-out;display:inline-flex}.primary-button{border:.0625rem solid var(--ink);background:var(--ink);color:var(--white);flex:none}.primary-button:hover:not(:disabled){opacity:.88}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:scale(.98)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.4}.primary-button svg,.secondary-button svg{width:var(--space-5);height:var(--space-5)}.sign-action[data-loading=true] svg{border:.125rem solid;border-right-color:#0000;border-radius:50%;animation:.7s linear infinite spin}.sign-action[data-loading=true] svg path{display:none}.secondary-button{border:.0625rem solid var(--line-strong);background:var(--surface);color:var(--ink)}.secondary-button:hover:not(:disabled){background:var(--surface-soft)}.cancel-button{padding-inline:var(--space-3);font-size:var(--text-small);cursor:pointer}.results{padding:var(--space-8);gap:var(--space-5);border-top:.0625rem solid var(--line);background:var(--accent-soft);display:flex}.success-mark{width:var(--space-10);height:var(--space-10);background:var(--accent);color:var(--white);border-radius:50%;flex:none;place-items:center;display:grid}.success-mark svg{width:var(--space-6);height:var(--space-6);stroke-width:2.5px}.results-content{flex:1;min-width:0}.result-list li{background:var(--surface)}.result-list a{min-height:2.75rem;color:var(--accent);font-size:var(--text-small);align-items:center;font-weight:700;display:inline-flex}.zip-button{margin-top:var(--space-4)}footer{width:min(100% - var(--space-8), 70rem);margin:0 auto var(--space-8);padding-top:var(--space-5);justify-content:space-between;gap:var(--space-4);border-top:.0625rem solid var(--line);color:var(--ink-muted);font-size:var(--text-label);display:flex}footer span:first-child{color:var(--ink);font-weight:700}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=56rem){main{gap:var(--space-8);margin-top:var(--space-6);grid-template-columns:1fr}.intro{position:static}h1{max-width:14ch}.coordinate-note{max-width:32rem}.signature-form{grid-template-columns:1fr 1fr}}@media (width<=40rem){.topbar,main,footer{width:min(100% - var(--space-6), 70rem)}.privacy span{display:none}main{margin-bottom:var(--space-8)}.workspace{border-radius:var(--radius-card)}.step,.results{padding:var(--space-5)}.divider{margin-inline:var(--space-5)}.step-heading{grid-template-columns:var(--space-8) minmax(0, 1fr)}.text-button{grid-column:2;justify-self:start;padding-inline:0}.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.signature-form{grid-template-columns:1fr}.action-area{padding:var(--space-5);flex-direction:column;align-items:stretch}.action-buttons{flex-direction:column-reverse;align-items:stretch;width:100%}.sign-action{width:100%}.results,footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
