
.praxi-form{max-width:980px;margin:24px auto;padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#fafafa;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.praxi-form h2{margin-top:18px}
.praxi-form .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.praxi-form label{display:flex;flex-direction:column;font-size:14px;gap:6px}
.praxi-form input, .praxi-form select, .praxi-form textarea{padding:10px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px;background:#fff}
.praxi-form fieldset{border:1px solid #cbd5e1;padding:10px;border-radius:8px;background:#fff}
.praxi-form legend{font-weight:600;padding:0 6px}
.praxi-form .actions{margin-top:16px;display:flex;gap:10px}
.praxi-form button{padding:10px 16px;border-radius:9999px;border:1px solid #2563eb;background:#3b82f6;color:#fff;cursor:pointer}
.praxi-form button:hover{filter:brightness(0.95)}
.hidden{display:none!important}
.signature-wrap{margin-top:8px}
#sigpad{border:2px dashed #9ca3af;border-radius:8px;background:#fff;touch-action:none}
fieldset.consent{margin-top:16px}
.checkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.checkrow{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.checkrow>span{flex:1}
.inline-side{display:flex;align-items:center;gap:8px;margin:6px 8px 0}
fieldset.subgroup{margin-top:10px}
fieldset.subgroup legend{font-size:15px}
