.cas-wrap{max-width:920px;margin:24px auto;padding:0 12px}
.cas-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 6px 18px rgba(0,0,0,.05);padding:18px}
.cas-header{margin-bottom:14px}
.cas-title{margin:0 0 6px;font-size:22px}
.cas-subtitle{margin:0;color:#555}
.cas-row{margin:10px 0 16px}
.cas-select{width:100%;max-width:520px}
.cas-form .cas-section{margin:16px 0;padding:14px;border:1px solid #edf2f7;border-radius:12px;background:#fafafa}
.cas-section h3{margin:0 0 12px;font-size:16px}
.cas-field{margin:10px 0}
.cas-input{width:100%;max-width:640px;padding:10px;border:1px solid #d1d5db;border-radius:10px;background:#fff}
.cas-radio-group{display:flex;flex-direction:column;gap:8px}
.cas-radio{display:flex;gap:10px;align-items:flex-start}
.cas-checkbox{display:flex;gap:10px;align-items:flex-start}
.cas-req{color:#b91c1c}
.cas-help{margin-top:6px;color:#6b7280;font-size:12px}
.cas-agreement-box{max-height:260px;overflow:auto;padding:12px;border:1px solid #d1d5db;border-radius:10px;background:#fff;line-height:1.35}
.cas-sig-wrap{border:1px dashed #cbd5e1;border-radius:12px;padding:10px;background:#fff}
.cas-sig-canvas{width:100%;height:200px;display:block;border-radius:10px;background:#fff;touch-action:none}
.cas-sig-actions{margin-top:8px}
.cas-actions{display:flex;gap:12px;align-items:center;margin-top:16px}
.cas-status{color:#111827}
.cas-status.cas-status-error{color:#b91c1c}
.cas-error .cas-input{border-color:#b91c1c;box-shadow:0 0 0 1px #b91c1c inset}
.cas-error-msg{color:#b91c1c;font-size:12px;margin-top:6px}
.cas-hp{position:absolute;left:-10000px;top:-10000px;height:1px;width:1px;opacity:0}
