.contract-page{max-width:700px;margin:0 auto}.contract-header{text-align:center;margin-bottom:40px}.contract-header h1{margin:0 0 16px}.contract-header p{color:var(--color-gray-800);margin:0;font-size:16px}.contract-terms{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);max-height:400px;margin-bottom:32px;padding:32px;overflow-y:auto}.contract-terms-header{text-align:center;border-bottom:1px solid var(--color-gray-200);margin-bottom:24px;padding-bottom:16px}.contract-terms-header h2{margin:0 0 8px;font-size:24px}.contract-subtitle{color:var(--color-gray-600);margin:0;font-size:14px}.contract-intro{color:var(--color-gray-800);margin:16px 0;font-size:14px;line-height:1.6}.contract-booking-details{background:var(--color-white);border-radius:var(--radius-sm);margin-bottom:24px;padding:16px}.contract-detail-row{border-bottom-color:var(--color-gray-100)}.contract-detail-row:last-child{border-bottom:none}.contract-detail-label{color:var(--color-gray-800);font-size:14px}.contract-detail-value{font-size:14px;font-weight:400}.contract-sections{margin-top:24px}.contract-section-item{margin-bottom:20px}.contract-section-item h3{text-transform:uppercase;margin:0 0 8px;font-size:16px;font-weight:500}.contract-section-item p{color:var(--color-gray-800);margin:0 0 8px;font-size:14px;line-height:1.6}.contract-section-item p:last-child{margin-bottom:0}.signature-section{margin-bottom:24px}.signature-section h3{margin:0 0 16px;font-size:18px}.signature-mode-toggle{gap:8px;margin-bottom:16px;display:flex}.signature-mode-btn{font-family:var(--font-primary);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);padding:8px 16px;font-size:14px}.signature-mode-btn:hover{border-color:var(--color-accent)}.signature-mode-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-white)}.signature-pad-wrapper{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);background:var(--color-white);overflow:hidden}.signature-canvas{touch-action:none;width:100%;display:block}.signature-pad-controls{background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.signature-status.captured{color:var(--color-success);font-weight:400}.signature-clear-btn{font-family:var(--font-primary);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);padding:6px 12px;font-size:13px}.signature-clear-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.typed-signature-wrapper{border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);background:var(--color-white);overflow:hidden}.typed-signature-input{width:100%;font-family:var(--font-primary);box-sizing:border-box;border:none;padding:16px;font-size:16px}.typed-signature-input:focus{outline:none}.typed-signature-preview{background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);padding:16px}.signature-preview-label{color:var(--color-gray-600);margin-bottom:8px;font-size:12px;display:block}.signature-preview-text{color:var(--color-text-dark);font-family:Brush Script MT,cursive;font-size:32px}.contract-agreement-note{color:var(--color-text-light);margin:0 0 16px;font-size:14px}.contract-sign-btn{width:100%;padding:16px;font-size:16px}.contract-success{text-align:center;padding:40px 20px}.contract-success-icon,.contract-signed-icon{background:var(--color-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;font-size:40px;display:flex}.contract-success h2{margin:0 0 16px;font-size:28px}.contract-success p{color:var(--color-gray-800);margin:0 0 24px;font-size:16px}.contract-success .book-button{display:inline-block}.contract-success .contract-success-note{color:var(--color-gray-600);margin-top:24px;font-size:14px}.contract-signed{text-align:center;padding:40px 20px}.contract-signed h1{margin:0 0 16px;font-size:28px}.contract-signed p{color:var(--color-gray-800);margin:0 0 24px;font-size:16px}.contract-signed .book-button{margin-bottom:24px}.contract-signed-note{color:var(--color-gray-600);font-size:14px}.contract-error{padding:40px 20px}
