*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:Microsoft YaHei,SimHei,sans-serif;background-color:#f5f5f5;min-height:100vh;width:100%;overflow-x:hidden}#app{width:100%;min-height:100vh}.container{max-width:100%;margin:0 auto;padding:8px}.header{text-align:center;margin-bottom:16px;padding:14px;background:linear-gradient(135deg,#4a90d9,#2563eb);color:#fff;border-radius:8px;box-shadow:0 4px 15px #2563eb4d;width:100%;max-width:100%}.header h1{font-size:18px;font-weight:600;margin-bottom:8px}.header p{font-size:12px;opacity:.9}.main-content{display:grid;grid-template-columns:1fr;gap:12px}.card{background:#fff;border-radius:8px;box-shadow:0 2px 12px #00000014;padding:14px;width:100%;max-width:100%}.card-title{font-size:15px;font-weight:600;color:#1e293b;margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid #e2e8f0;display:flex;align-items:center;gap:8px}.card-title:before{content:"";width:4px;height:16px;background:#2563eb;border-radius:2px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:500;color:#334155;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:2px solid #e2e8f0;border-radius:6px;font-size:14px;font-family:inherit;transition:all .3s ease;background-color:#f8fafc}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;background-color:#fff;box-shadow:0 0 0 3px #2563eb1a}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr;gap:12px}.form-section{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{font-size:14px;font-weight:600;color:#2563eb;margin-bottom:12px}.signature-area{border:2px dashed #cbd5e1;border-radius:6px;background-color:#fafafa;transition:all .3s ease}.signature-area:hover{border-color:#2563eb;background-color:#f0f9ff}.signature-canvas{width:100%;min-height:150px;cursor:crosshair}.signature-controls{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.btn{padding:8px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:10px 20px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2563eb66}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#f1f5f9;color:#475569}.btn-secondary:hover{background:#e2e8f0}.btn-danger{background:#fee2e2;color:#dc2626}.btn-danger:hover{background:#fecaca}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn.w-full{width:100%;justify-content:center}.preview-section{grid-column:1}.preview-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:14px;max-width:100%;width:100%;margin:0;overflow-x:auto}.preview-content h2{text-align:center;font-size:18px;font-weight:700;margin-bottom:16px;color:#1e293b}.preview-content .agreement-text{font-size:14px;line-height:1.7;color:#334155;text-align:left}.preview-content .agreement-text p{margin-bottom:12px}.preview-content .agreement-text span.fill-blank{text-decoration:underline;text-underline-offset:2px;padding:0 2px;font-weight:500;color:#1e293b}.preview-content table{font-size:12px;width:100%;border-collapse:collapse}.preview-content tr{page-break-inside:avoid}.preview-content th,.preview-content td{border:1px solid #ddd;padding:4px 6px;text-align:left;vertical-align:top;word-break:break-all;white-space:normal;font-size:12px}.preview-content th{background-color:#fff;font-weight:600}.preview-content h2,.preview-content h3{page-break-after:avoid}.preview-content .signature-block{margin-top:30px;display:flex;flex-direction:column;gap:25px;align-items:flex-start}.preview-content .signature-block .signature-item{text-align:left;width:100%}.preview-content .signature-block .signature-label{font-size:13px;color:#64748b;margin-bottom:8px}.preview-content .signature-block .signature-preview{width:140px;height:50px;border-bottom:2px solid #334155;display:flex;align-items:flex-end;justify-content:center}.preview-content .signature-block .signature-preview img{max-width:120px;max-height:40px;object-fit:contain}.preview-content .signature-block .date{font-size:13px;color:#64748b;margin-top:8px}.save-section{grid-column:1;text-align:center;margin-top:12px}.save-section .btn{padding:12px 30px;font-size:14px}.toast{position:fixed;top:20px;right:20px;padding:12px 18px;border-radius:6px;color:#fff;font-size:13px;font-weight:500;z-index:1000;animation:slideIn .3s ease}.toast-success{background:linear-gradient(135deg,#10b981,#059669)}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.agreement-preview{background:#fff;border-radius:6px;padding:14px;max-height:500px;overflow-y:auto;overflow-x:auto;box-shadow:0 2px 8px #0000000f}.agreement-preview h3{font-size:15px;font-weight:600;color:#1e293b;margin-bottom:12px}.agreement-preview p{font-size:14px;line-height:1.7;color:#475569;margin-bottom:10px}.agreement-preview .preview-blank{text-decoration:underline;font-weight:500;color:#2563eb}.mt-4{margin-top:12px}@media (min-width: 600px){.container{max-width:1200px;padding:20px}.header{padding:20px;margin-bottom:30px;border-radius:12px}.header h1{font-size:28px}.header p{font-size:14px}.main-content{grid-template-columns:1fr 1fr;gap:24px}.card{padding:24px;border-radius:12px}.card-title{font-size:18px;margin-bottom:20px;padding-bottom:12px}.card-title:before{height:20px}.form-group{margin-bottom:20px}.form-group label{font-size:14px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{padding:12px 16px;border-radius:8px}.form-row{grid-template-columns:1fr 1fr;gap:16px}.form-section{margin-bottom:24px;padding-bottom:20px}.form-section h3{font-size:16px;margin-bottom:16px}.signature-area{border-radius:8px}.signature-canvas{min-height:200px}.signature-controls{gap:12px;margin-top:16px}.btn{padding:10px 20px;font-size:14px;border-radius:8px}.btn-primary{padding:10px 20px}.preview-section{grid-column:1 / -1}.preview-content{padding:40px;max-width:800px;margin:0 auto;overflow-x:visible}.preview-content h2{font-size:24px;margin-bottom:30px}.preview-content .agreement-text{font-size:16px;line-height:1.8;text-align:justify}.preview-content .agreement-text p{margin-bottom:16px}.preview-content .agreement-text span.fill-blank{text-underline-offset:4px;padding:0 4px}.preview-content table{font-size:14px;min-width:auto}.preview-content th,.preview-content td{padding:8px;font-size:14px;white-space:normal}.preview-content .signature-block{margin-top:60px;flex-direction:row;justify-content:space-between;align-items:flex-end}.preview-content .signature-block .signature-item{text-align:center;width:auto}.preview-content .signature-block .signature-preview{width:200px;height:80px}.preview-content .signature-block .signature-preview img{max-width:180px;max-height:70px}.preview-content .signature-block .signature-label,.preview-content .signature-block .date{font-size:14px}.agreement-preview{padding:20px;max-height:400px;border-radius:8px}.agreement-preview h3{font-size:16px;margin-bottom:16px}.agreement-preview p{font-size:14px;line-height:1.6;margin-bottom:12px}.save-section{grid-column:1 / -1;margin-top:0}.save-section .btn{padding:14px 40px;font-size:16px}.toast{padding:16px 24px;font-size:14px;border-radius:8px}}@media print{body *{visibility:hidden}.preview-content,.preview-content *{visibility:visible}.preview-content{position:absolute;left:0;top:0;width:100%;margin:0;padding:20px;box-shadow:none;border:none}}
