*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#2c3e3f;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fafbfb;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.page{flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;padding:40px 24px;display:flex}.brand{color:#8b9d9f;margin-bottom:8px;font-size:24px;font-weight:600}.page-title{color:#2c3e3f;margin-bottom:24px;font-size:20px;font-weight:600}.form-group{margin-bottom:20px}.form-group label{color:#6b7c7d;margin-bottom:6px;font-size:14px;font-weight:500;display:block}.form-group input:not([type=checkbox]),.form-group select,.form-group textarea{color:#2c3e3f;background:#f5f7f8;border:1px solid #e5ebec;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:16px;transition:border-color .2s}.form-group input:not([type=checkbox]):focus,.form-group select:focus,.form-group textarea:focus{border-color:#8b9d9f}.form-group textarea{resize:vertical;min-height:80px}.checkbox-group{flex-direction:column;gap:10px;display:flex}.form-group .checkbox-label{cursor:pointer;align-items:flex-start;gap:16px;margin-bottom:0;font-size:15px;font-weight:400;display:flex}.form-group .checkbox-label input[type=checkbox]{accent-color:#8b9d9f;width:16px;min-width:16px;height:16px;margin-top:3px}.signature-block{border-top:1px solid #e3e8e8;margin-top:20px;padding-top:16px}.signature-script{color:#2c3e3f;border-bottom:1px solid #c8d2d2;min-height:36px;padding:0 4px 6px;font-family:Dancing Script,cursive;font-size:28px;font-weight:600}.signature-caption{color:#9badb0;margin-bottom:12px;padding:4px 4px 0;font-size:13px}.signature-row{align-items:baseline;gap:12px;padding:6px 0;display:flex}.signature-label{color:#9badb0;min-width:96px;font-size:13px}.signature-value{color:#2c3e3f;font-size:15px;font-weight:500}.consent-text{color:#6b7c7d;margin-bottom:24px;font-size:14px;line-height:1.6}.consent-text p{margin-bottom:12px}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;padding:14px 28px;font-family:inherit;font-size:16px;font-weight:500;transition:background-color .2s,opacity .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background-color:#8b9d9f}.btn-primary:hover:not(:disabled){background-color:#7a8c8e}.scan-prompt{color:#2c3e3f;margin-top:16px;font-size:18px;font-weight:500;line-height:1.5}.error-text{color:#c87c7c;margin-top:8px;font-size:14px}.step-indicator{color:#9badb0;margin-bottom:16px;font-size:13px}.success-icon{margin-bottom:16px;font-size:48px}.center-text{text-align:center}.spacer{flex:1}.questionnaire-form{flex-direction:column;gap:1.5rem;display:flex}.questionnaire-form .form-group{border:none;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.questionnaire-form fieldset.form-group legend{margin-bottom:.5rem;padding:0;font-weight:600}.questionnaire-form .radio-row,.questionnaire-form .checkbox-row{cursor:pointer;align-items:flex-start;gap:.5rem;padding:.375rem 0;font-weight:400;display:flex}.questionnaire-form .checkbox-row:has(input:disabled){opacity:.4;cursor:not-allowed}.questionnaire-form .radio-row input[type=radio],.questionnaire-form .checkbox-row input[type=checkbox]{width:auto;font-size:inherit;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin:.25rem 0 0;padding:0}.questionnaire-form .radio-label{display:inline-block}.questionnaire-form .radio-description{color:#6b7280;font-weight:400}.questionnaire-form .required-marker{color:#b91c1c}.questionnaire-form .helper-text{color:#6b7280;margin:.25rem 0 0;font-size:.85rem}
