.signature-field{padding:20px;background:#f8faff;border:1px solid var(--line)}.signature-preview{width:min(600px,100%);aspect-ratio:2/1;background:#fff;border:2px dashed #bdc9dc;display:grid;place-items:center;color:var(--muted);overflow:hidden}.signature-preview img{width:100%;height:100%;object-fit:contain}.signature-modal{position:fixed;inset:0;display:grid;place-items:center;background:rgba(4,12,38,.72);backdrop-filter:blur(5px);z-index:200;opacity:0;visibility:hidden;transition:.25s;padding:18px}.signature-modal.open{opacity:1;visibility:visible}.signature-dialog{width:min(760px,100%);background:#fff;padding:25px;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.signature-head{display:flex;align-items:flex-start;justify-content:space-between}.signature-head h2{margin:4px 0;color:#082a8f}.signature-head button{border:0;background:#eef2fa;width:42px;height:42px;border-radius:50%;color:#082a8f;font-size:1.15rem}.signature-dialog canvas{display:block;width:100%;aspect-ratio:2/1;border:2px solid #aebbd0;background:#fff;touch-action:none;cursor:crosshair}.signature-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}@media(max-width:600px){.signature-dialog{padding:18px}.signature-actions .btn{flex:1}}
.member-photo-preview{width:180px;aspect-ratio:1;background:#fff;border:1px dashed #a8b3c5;display:grid;place-items:center;overflow:hidden;margin-bottom:8px;color:#697386}.member-photo-preview img{width:100%;height:100%;object-fit:cover}.photo-crop-stage{height:min(55vh,480px);background:#eef2f8}.photo-crop-stage img{display:block;max-width:100%}
.signature-preview,.signature-dialog canvas{background-color:#fff;background-image:linear-gradient(45deg,#eef1f5 25%,transparent 25%),linear-gradient(-45deg,#eef1f5 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eef1f5 75%),linear-gradient(-45deg,transparent 75%,#eef1f5 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.signature-preview img{background:transparent}
