:root{--crm-primary:#1d4ed8;--crm-primary-dark:#173ea8;--crm-soft:#eef4ff;--crm-border:#d9e2f2;--crm-text:#172033;--crm-muted:#667085;--crm-success:#ecfdf5;--crm-success-border:#10b981}.crm-shell{max-width:1040px;margin:24px auto;padding:0 16px;color:var(--crm-text);font-family:inherit}.crm-box{max-width:820px;margin:22px auto;padding:28px;border:1px solid var(--crm-border);border-radius:22px;background:#fff;box-shadow:0 16px 40px rgba(29,78,216,.08)}.crm-login-box{background:linear-gradient(180deg,#fff,#f8fbff)}.crm-box h2,.crm-shell h2{margin-top:0;color:#111827;letter-spacing:-.02em}.crm-form label,.crm-box label{display:block;margin:14px 0;font-weight:600;color:#344054}.crm-form input,.crm-form select,.crm-box input,.crm-box select{width:100%;max-width:620px;padding:12px 14px;border:1px solid #ccd5e1;border-radius:12px;background:#fff;color:#111827;box-sizing:border-box}.crm-form input:focus,.crm-form select:focus,.crm-box input:focus,.crm-box select:focus{outline:2px solid rgba(29,78,216,.18);border-color:var(--crm-primary)}.crm-button,.crm-box button,.crm-form button{display:inline-block;margin-top:12px;padding:12px 18px;border:0;border-radius:999px;background:var(--crm-primary);color:#fff;text-decoration:none;cursor:pointer;font-weight:700;box-shadow:0 8px 18px rgba(29,78,216,.18);transition:.15s ease}.crm-button:hover,.crm-box button:hover,.crm-form button:hover{background:var(--crm-primary-dark);color:#fff;transform:translateY(-1px)}.crm-button-secondary{background:#0f172a}.crm-button-light{background:#fff;color:var(--crm-primary);border:1px solid var(--crm-border);box-shadow:none}.crm-button-light:hover{background:var(--crm-soft);color:var(--crm-primary)}.crm-success{padding:14px 16px;margin:14px 0;background:var(--crm-success);border:1px solid var(--crm-success-border);border-radius:14px;color:#065f46}.crm-error{color:#b91c1c}.crm-error-box{padding:14px 16px;margin:14px 0;background:#fff1f2;border:1px solid #fb7185;border-radius:14px;color:#9f1239}.crm-result-card{margin-top:16px;padding:18px;border-radius:16px;background:var(--crm-soft);border:1px solid var(--crm-border);line-height:1.8}.crm-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px auto 22px;padding:24px;border-radius:24px;background:linear-gradient(135deg,#1d4ed8,#60a5fa);color:#fff;box-shadow:0 16px 36px rgba(29,78,216,.18)}.crm-dashboard-head h2{margin:0;color:#fff}.crm-dashboard-head p{margin:6px 0 0;color:#eaf1ff}.crm-card{margin:20px auto;padding:24px;border:1px solid var(--crm-border);border-radius:24px;background:#fff;box-shadow:0 16px 40px rgba(15,23,42,.07)}.crm-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.crm-card-title h3{margin:0}.crm-status{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--crm-soft);color:var(--crm-primary);font-weight:700;font-size:.92em}.crm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.crm-stats div{padding:14px;border-radius:16px;background:#f8fafc;border:1px solid #edf2f7}.crm-stats span{display:block;color:var(--crm-muted);font-size:.9em;margin-bottom:5px}.crm-stats strong{display:block;color:#111827}.crm-contract-toolbar{margin:14px 0}.crm-contract-wrap{margin-top:18px;overflow:auto}.crm-contract{max-width:900px;margin:0 auto;padding:38px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111;line-height:1.65;font-family:Georgia,'Times New Roman',serif}.crm-contract h1{text-align:center;text-transform:uppercase;letter-spacing:.04em;margin:0 0 28px}.crm-contract h2{font-size:1.08rem;margin-top:28px;padding-bottom:6px;border-bottom:1px solid #e5e7eb;color:#111}.crm-contract ul{margin-left:22px}.crm-signatures{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:34px}.crm-signature-block{min-height:110px;padding:18px;border:1px solid #d1d5db;border-radius:10px;background:#fafafa}.crm-sign-placeholder{display:inline-block;margin-top:25px;color:#777}.crm-signed-image{display:block;max-width:260px;max-height:120px;margin-top:10px}.crm-signature{display:block;width:100%;max-width:620px;height:auto;border:2px dashed #94a3b8;border-radius:18px;background:#fff;touch-action:none;box-shadow:inset 0 0 0 5px #f8fafc}.crm-sign-form{margin-top:22px;padding:20px;border:1px solid var(--crm-border);border-radius:20px;background:#f8fbff}.crm-help{padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--crm-border);color:#475467}@media(max-width:700px){.crm-dashboard-head,.crm-card-title{display:block}.crm-signatures{grid-template-columns:1fr}.crm-box,.crm-card{padding:20px}.crm-contract{padding:24px}}@media print{body *{visibility:hidden}.crm-contract,.crm-contract *{visibility:visible}.crm-contract{position:absolute;left:0;top:0;width:100%;max-width:none;border:0;border-radius:0;box-shadow:none}.crm-sign-form,.crm-button,.crm-contract-toolbar,.crm-dashboard-head,.crm-success,.crm-error-box{display:none!important}}

/* v1.0.3 improved request and borrower document UI */
.crm-muted{color:var(--crm-muted);font-size:1.02em}.crm-form-section{margin:24px 0;padding:22px;border:1px solid var(--crm-border);border-radius:22px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 12px 32px rgba(15,23,42,.045)}.crm-form-section h3{margin:0 0 14px;color:#1f3767;letter-spacing:-.02em}.crm-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.crm-grid-2 label{margin:0}.crm-form label small{display:block;margin:6px 0;color:var(--crm-muted);font-weight:400}.crm-check{display:flex!important;align-items:center;gap:10px;padding:13px 16px;border:1px solid var(--crm-border);border-radius:14px;background:#fff}.crm-check input{width:auto!important;max-width:none!important}.crm-wizard-form input,.crm-wizard-form select,.crm-doc-form input,.crm-doc-form select{max-width:none;background:#f8fbff;min-height:52px}.crm-insurance-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.crm-option-card{position:relative;display:block!important;margin:0!important;padding:22px;border:2px solid var(--crm-border);border-radius:22px;background:#fff;cursor:pointer;transition:.15s ease;min-height:190px}.crm-option-card input{position:absolute;opacity:0;pointer-events:none}.crm-option-card:hover,.crm-option-card.is-selected{border-color:#1f3767;box-shadow:0 12px 24px rgba(29,78,216,.10);transform:translateY(-1px)}.crm-option-title{display:block;font-size:1.2em;font-weight:800;margin-bottom:16px;color:#172033}.crm-option-card strong{font-size:2em;color:#1f3767}.crm-option-card ul{margin:14px 0 0;padding-left:20px}.crm-option-card li{margin:6px 0}.crm-muted-line{color:#a3a3a3}.crm-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:6px 12px;border-radius:999px;background:#1f3767;color:#fff;font-size:.82em;font-weight:800}.crm-info{padding:13px 16px;border:1px solid #b7c8e8;border-radius:14px;background:#eef4ff;color:#1f3767;font-weight:700}.crm-id-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.crm-id-card{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;margin:0!important;padding:18px 10px;border:1px solid var(--crm-border);border-radius:20px;background:#fff;cursor:pointer;min-height:118px;transition:.15s ease}.crm-id-card input{position:absolute;opacity:0;pointer-events:none}.crm-id-card span{font-size:28px;line-height:1}.crm-id-card strong{font-size:1.03em;color:#172033}.crm-id-card small{margin:0!important}.crm-id-card:hover,.crm-id-card.is-selected{border:3px solid #0f1f3a;box-shadow:0 10px 22px rgba(15,31,58,.10)}.crm-id-upload{padding:26px;border:2px dashed #b8c7df;border-radius:18px;background:#f5f8fc;text-align:center;color:#2d3e5f;font-weight:800}.crm-id-passport label,.crm-id-double label{margin:0!important}.crm-id-double{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.crm-id-double[style*="display:none"]{display:none!important}.crm-id-passport[style*="display:none"]{display:none!important}.crm-id-empty[style*="display:none"]{display:none!important}@media(max-width:780px){.crm-grid-2,.crm-insurance-cards,.crm-id-double{grid-template-columns:1fr}.crm-id-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.crm-id-options{grid-template-columns:1fr}}

/* v1.0.4 bank details block */
.crm-bank-box{margin:18px 0;padding:20px;border:1px solid var(--crm-border);border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 10px 24px rgba(15,23,42,.04)}
.crm-bank-box h3{margin:0 0 14px;color:#1f3767}.crm-bank-box label{margin:14px 0}.crm-bank-check{align-items:flex-start}.crm-bank-check small{display:block;margin-top:5px;color:var(--crm-muted);font-weight:400}
