#app{height:100%;background-color:#f5f5f5}*{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.page-container{min-height:100vh;background-color:#fff;padding:16px}.text-center{text-align:center}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.full-width{width:100%}.title[data-v-09e38ffc]{font-size:24px;color:#333;margin-bottom:8px;font-weight:600}.subtitle[data-v-09e38ffc]{font-size:14px;color:#666;margin-bottom:32px}.feature-grid[data-v-09e38ffc]{margin-bottom:32px}.info-section[data-v-09e38ffc]{margin-top:24px}.permission-guide .guide-content[data-v-7dc84cd1]{padding:20px;max-height:70vh;overflow-y:auto}.permission-guide .guide-section[data-v-7dc84cd1]{margin-bottom:24px}.permission-guide .guide-section h3[data-v-7dc84cd1]{font-size:16px;color:#333;margin-bottom:12px;font-weight:600}.permission-guide .guide-steps .step[data-v-7dc84cd1]{display:flex;align-items:flex-start;margin-bottom:16px}.permission-guide .guide-steps .step .step-number[data-v-7dc84cd1]{width:24px;height:24px;background-color:#07c160;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;margin-right:12px;flex-shrink:0}.permission-guide .guide-steps .step .step-content[data-v-7dc84cd1]{flex:1}.permission-guide .guide-steps .step .step-content p[data-v-7dc84cd1]{margin:4px 0;font-size:14px;color:#666;line-height:1.5}.permission-guide .guide-steps .step .step-content p strong[data-v-7dc84cd1]{color:#333}.permission-guide .environment-requirements .requirement[data-v-7dc84cd1]{display:flex;align-items:center;margin-bottom:8px;font-size:14px;color:#666}.permission-guide .environment-requirements .requirement .van-icon[data-v-7dc84cd1]{margin-right:8px;font-size:16px}.permission-guide .solutions .solution-item[data-v-7dc84cd1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:12px;background-color:#f5f5f5;border-radius:8px}.permission-guide .solutions .solution-item p[data-v-7dc84cd1]{margin:0;font-size:14px;color:#666;flex:1;margin-right:12px}.permission-guide .solutions .solution-item p strong[data-v-7dc84cd1]{color:#333}.scanner-container[data-v-224cc6b7]{padding:16px}.permission-warning[data-v-224cc6b7]{display:flex;align-items:center;padding:12px;background-color:#fff7e6;border:1px solid #ffd591;border-radius:8px;margin-bottom:16px}.permission-warning .warning-text[data-v-224cc6b7]{margin-left:8px;font-size:14px;color:#fa8c16;flex:1}.qr-reader[data-v-224cc6b7]{width:100%;height:300px;border:2px solid #07c160;border-radius:8px;margin-bottom:16px;background-color:#000;position:relative;overflow:hidden}.scanner-controls[data-v-224cc6b7]{margin-bottom:24px}.result-section[data-v-224cc6b7]{background-color:#f5f5f5;padding:16px;border-radius:8px}.action-buttons[data-v-224cc6b7]{margin-top:16px}.signature-container[data-v-4b45bdfb]{padding:16px}.canvas-section[data-v-4b45bdfb],.info-section[data-v-4b45bdfb]{margin-bottom:24px}.canvas-wrapper[data-v-4b45bdfb]{border:2px solid #ebedf0;border-radius:8px;overflow:hidden;background-color:#fff}.signature-canvas[data-v-4b45bdfb]{width:100%;height:200px;display:block;touch-action:none;cursor:crosshair}.controls-section[data-v-4b45bdfb]{margin-bottom:24px}.color-picker[data-v-4b45bdfb]{display:flex;align-items:center;margin-bottom:16px}.color-picker .label[data-v-4b45bdfb]{font-size:14px;color:#333;margin-right:12px}.color-picker .color-options[data-v-4b45bdfb]{display:flex;gap:8px}.color-picker .color-option[data-v-4b45bdfb]{width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.1);cursor:pointer}.color-picker .color-option.active[data-v-4b45bdfb]{border-color:#07c160;box-shadow:0 0 0 2px #07c160}.button-group[data-v-4b45bdfb]{display:flex;gap:12px;justify-content:center}.button-group .control-btn[data-v-4b45bdfb]{flex:1;max-width:120px}.preview-section[data-v-4b45bdfb]{background-color:#f5f5f5;padding:16px;border-radius:8px}.preview-wrapper[data-v-4b45bdfb]{text-align:center;margin-bottom:16px}.signature-preview[data-v-4b45bdfb]{max-width:100%;height:100px;border:1px solid #ebedf0;border-radius:4px;background-color:#fff}.preview-actions[data-v-4b45bdfb]{margin-top:16px}