.signature-container{width:100%;margin-top:1rem}.signature-canvas-wrapper{border:2px solid #ddd;border-radius:8px;background:#fff;overflow:hidden;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.signature-canvas{display:block;width:100%;height:200px;cursor:crosshair;touch-action:none}.signature-canvas-wrapper:focus-within{border-color:#667eea}.signature-actions{display:flex;align-items:center;gap:1rem;margin-top:.75rem}.signature-clear-btn{padding:.5rem 1rem;background:#e74c3c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.95rem;transition:background .2s}.signature-clear-btn:hover:not(:disabled){background:#c0392b}.signature-clear-btn:disabled{background:#ccc;cursor:not-allowed}.signature-required-hint{color:#e74c3c;font-size:.9rem}.questionnaire-container{min-height:100vh;background:#f5f5f5;padding-bottom:100px}.questionnaire-header{background:#fff;padding:2rem;box-shadow:0 2px 4px #0000001a;text-align:center}.questionnaire-header h1{color:#333;font-size:2rem;margin-bottom:.5rem}.patient-id{color:#666;font-size:1rem}.questionnaire-content{max-width:800px;margin:2rem auto;padding:0 2rem}.question-item{background:#fff;padding:1.5rem;margin-bottom:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.question-label{display:block;font-size:1.2rem;font-weight:600;color:#333;margin-bottom:.5rem}.required{color:#e74c3c;margin-left:.25rem}.question-description{color:#666;font-size:.95rem;margin-bottom:1rem}.question-input,.question-select{width:100%;padding:1rem;font-size:1.1rem;border:2px solid #ddd;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.question-input:focus,.question-select:focus{outline:none;border-color:#667eea}.question-checkbox,.question-radio{width:24px;height:24px;margin-right:.75rem;cursor:pointer}.options-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.option-label{display:flex;align-items:center;padding:1rem;background:#f9f9f9;border-radius:8px;cursor:pointer;font-size:1.1rem;transition:background .2s}.option-label:hover{background:#f0f0f0}.section{margin:2rem 0}.section-header{font-size:1.3rem;font-weight:600;color:#667eea;padding:1rem;background:#f0f4ff;border-radius:8px;margin-bottom:1rem}.questionnaire-footer{text-align:center;padding:1.5rem;margin-top:2rem}.submit-btn{padding:1.25rem 3rem;font-size:1.3rem;background:#27ae60;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;min-width:200px;transition:background .2s}.submit-btn:hover:not(:disabled){background:#229954}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.loading,.error{text-align:center;padding:3rem;font-size:1.2rem;color:#666}.error{color:#e74c3c}.success-message{text-align:center;padding:4rem 2rem;background:#fff;margin:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.success-message h1{color:#27ae60;font-size:2.5rem;margin-bottom:1rem}.success-message p{color:#666;font-size:1.2rem}.error-page{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.5rem;color:#666}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:manipulation}#root{width:100%;min-height:100vh}
