:root{
  --cp-primary:#a577ff;--cp-primary-dark:#a577ff;--cp-primary-soft:#fff1f0;
  --cp-ink:#172033;--cp-muted:#667085;--cp-line:#e6eaf0;--cp-bg:#f4f7fb;
  --cp-success:#15803d;--cp-warning:#b45309;--cp-danger:#b42318;
  --cp-radius:20px;--cp-shadow:0 22px 60px rgba(23,32,51,.10)
}
*{box-sizing:border-box}
body{background:var(--cp-bg);color:var(--cp-ink)}
.page-wrapper{overflow:visible;background:var(--cp-bg)}
.cashpe-v4-header{height:70px;background:#fff;border-bottom:1px solid var(--cp-line);position:relative;z-index:20}
.cashpe-v4-header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.cashpe-v4-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.cashpe-v4-brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--cp-primary),#ff776f);color:#fff;font-size:21px;font-weight:900;box-shadow:0 8px 18px rgba(239,75,69,.24)}
.cashpe-v4-brand-name{font-size:25px;font-weight:900;letter-spacing:-.04em;color:var(--cp-ink)}
.cashpe-v4-secure{display:flex;align-items:center;gap:8px;color:#475467;font-weight:700;font-size:13px;background:#f8fafc;border:1px solid var(--cp-line);padding:9px 13px;border-radius:999px}
.cashpe-v4-secure i{color:var(--cp-success)}
.cashpe-v4-hero{background:radial-gradient(circle at 15% 20%,rgba(239,75,69,.13),transparent 34%),linear-gradient(135deg,#fff 0%,#fff8f7 100%);border-bottom:1px solid #f1dedd}
.cashpe-v4-hero-inner{padding:30px 15px 26px;display:flex;justify-content:space-between;gap:30px;align-items:flex-end}
.cashpe-v4-kicker{display:inline-flex;color:var(--cp-primary-dark);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:8px}
.cashpe-v4-hero h1{margin:0;color:var(--cp-ink);font-size:34px;line-height:1.12;letter-spacing:-.035em}
.cashpe-v4-hero p{margin:9px 0 0;max-width:690px;color:var(--cp-muted);font-size:15px}
.cashpe-v4-trust-row{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.cashpe-v4-trust-row span{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border-radius:999px;background:#fff;border:1px solid #f1dcda;color:#475467;font-size:12px;font-weight:800;white-space:nowrap}
.cashpe-v4-trust-row i{color:var(--cp-primary)}
.cashpe-v2-section{padding:34px 0 80px;background:var(--cp-bg)}
.cashpe-v4-layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,820px);gap:26px;align-items:start;justify-content:center}
.cashpe-v4-side{position:sticky;top:24px;padding:31px 28px;border-radius:24px;background:linear-gradient(155deg,#182238,#26334d);color:#fff;box-shadow:0 24px 55px rgba(20,30,50,.18);overflow:hidden}
.cashpe-v4-side:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-95px;bottom:-100px;background:rgba(239,75,69,.20)}
.cashpe-v4-side-label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#ffb5b1;font-weight:900}
.cashpe-v4-side h2{margin:12px 0 10px;color:#fff;font-size:26px;line-height:1.2;letter-spacing:-.03em}
.cashpe-v4-side>p{color:#cbd5e1;font-size:14px;line-height:1.65;margin-bottom:24px}
.cashpe-v4-side-list{display:grid;gap:18px;position:relative;z-index:1}
.cashpe-v4-side-list>div{display:flex;gap:12px;align-items:flex-start}
.cashpe-v4-side-list i{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:9px;background:rgba(255,255,255,.12);color:#86efac;font-size:12px}
.cashpe-v4-side-list span{display:grid}.cashpe-v4-side-list strong{font-size:14px}.cashpe-v4-side-list small{color:#aebbd0;margin-top:3px;line-height:1.4}
.cashpe-v4-side-note{position:relative;z-index:1;margin-top:25px;padding:14px;border-radius:14px;background:rgba(255,255,255,.08);color:#cbd5e1;font-size:12px;line-height:1.55}
.cashpe-v4-side-note i{color:#fda4af;margin-right:6px}
.cashpe-wizard-shell{max-width:none;margin:0;background:#fff;border:1px solid var(--cp-line);border-radius:24px;box-shadow:var(--cp-shadow);overflow:hidden}
.cashpe-wizard-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:27px 30px 17px}
.cashpe-eyebrow{display:inline-block;color:var(--thm-base);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
.cashpe-wizard-top h2{margin:0;color:var(--cp-ink);font-size:27px;line-height:1.2;letter-spacing:-.025em}.cashpe-wizard-top p{margin:7px 0 0;color:var(--cp-muted);font-size:14px}
.cashpe-step-counter{white-space:nowrap;background:var(--cp-primary-soft);color:var(--cp-primary-dark);font-weight:900;padding:8px 13px;border-radius:999px;font-size:13px}
.cashpe-progress-track{height:5px;background:#edf0f5}.cashpe-progress-track>div{height:100%;width:25%;background:linear-gradient(90deg,var(--thm-base),#ff806f);transition:width .3s ease}
.cashpe-step-list{display:grid;grid-template-columns:repeat(4,1fr);padding:16px 26px 7px;gap:8px}.cashpe-step-list button{display:flex;align-items:center;justify-content:center;gap:8px;color:#98a2b3;font-weight:800}.cashpe-step-list button span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f2f4f7;border:1px solid #e4e7ec;font-size:12px}.cashpe-step-list button.active{color:var(--cp-ink)}.cashpe-step-list button.active span{background:var(--thm-base);border-color:var(--thm-base);color:#fff}.cashpe-step-list button.completed span{background:#e9f8ef;border-color:#a6dfb9;color:var(--cp-success)}.cashpe-step-list em{font-style:normal;font-size:12px}
#applyNowV2Form{padding:8px 30px 30px}.cashpe-form-step{display:none}.cashpe-form-step.active{display:block;animation:cpFade .28s ease}.cp-step-intro{padding:14px 0 17px}.cp-step-intro span{font-size:11px;font-weight:900;color:var(--thm-base);text-transform:uppercase;letter-spacing:.09em}.cp-step-intro h3{margin:5px 0;color:var(--cp-ink);font-size:22px;letter-spacing:-.02em}.cp-step-intro p{margin:0;color:var(--cp-muted);font-size:14px}
.cp-section-card{border:1px solid var(--cp-line);border-radius:18px;padding:22px;margin-bottom:16px;background:#fff}.cp-section-title{font-weight:900;color:var(--cp-ink);font-size:16px;margin-bottom:18px;padding-bottom:11px;border-bottom:1px solid var(--cp-line)}
.form-group{margin-bottom:18px}.form-group label{display:block;font-weight:800;color:#344054;margin-bottom:7px;font-size:13px}.form-control{height:52px;border:1px solid #d5dae3;border-radius:12px;padding:12px 14px;color:var(--cp-ink);background:#fff;box-shadow:none;font-size:14px}.form-control:hover{border-color:#b8c0cc}.form-control:focus{border-color:var(--thm-base);box-shadow:0 0 0 4px rgba(239,75,69,.10)}select.form-control{appearance:auto}.star{color:var(--thm-base)}.cashpe-hint,.cashpe-optional{display:block;color:var(--cp-muted);font-size:11px;margin-top:6px}.field-error{display:none;color:var(--cp-danger);font-size:12px;margin-top:6px}.field-error.show{display:block}.form-control.is-invalid{border-color:var(--cp-danger);box-shadow:0 0 0 3px rgba(180,35,24,.08)}
.cp-money-field,.cashpe-amount-wrap{position:relative}.cp-money-field:before,.cashpe-amount-wrap>span{content:'₹';position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2;font-weight:900;color:#475467}.cp-money-field .form-control,.cashpe-amount-wrap .form-control{padding-left:35px}.cashpe-range-line{display:flex;justify-content:space-between;color:#98a2b3;font-size:11px;margin-top:7px}input[type=range]{width:100%;accent-color:var(--thm-base)}
.cashpe-focused-card,.cashpe-location-card{max-width:620px;margin:0 auto;text-align:center;padding:5px 0}.cashpe-icon-circle{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:var(--cp-primary-soft);color:var(--thm-base);font-size:21px;margin:0 auto 13px}.cashpe-focused-card h3,.cashpe-location-card h3{color:var(--cp-ink);margin:0 0 6px;font-size:20px}.cashpe-focused-card p,.cashpe-location-card p{color:var(--cp-muted);font-size:13px;margin-bottom:0}.cashpe-mobile-control{text-align:left;margin-top:19px}.cashpe-inline-action{display:flex;gap:9px}.cashpe-inline-action .form-control{flex:1}
.thm-btn,.cashpe-secondary-btn{min-height:50px;border:0;padding:16px 40px;font-weight:900;cursor:pointer;font-size:14px}
.thm-btn{background:linear-gradient(135deg,var(--thm-base),#a577ff);color:#fff;box-shadow:0 9px 20px rgba(239,75,69,.22)}
.thm-btn:hover{background:linear-gradient(135deg,var(--thm-black),var(--thm-black));transform:translateY(-1px)}.thm-btn:disabled{opacity:.52;cursor:not-allowed;box-shadow:none;transform:none}.cashpe-secondary-btn{background:#f2f4f7;color:#344054}.cashpe-full-btn{width:100%}.cashpe-text-btn{border:0;background:transparent;color:var(--thm-base);font-weight:900}.otp-sent{background:#eaf8ef!important;color:var(--cp-success)!important;box-shadow:none!important}.cashpe-otp-box{margin-top:16px;text-align:left;background:linear-gradient(180deg,#f8fafc,#f4f7fb);padding:17px;border:1px solid #e4e8ef;border-radius:15px}.cashpe-otp-input{text-align:center;letter-spacing:.50em;font-size:20px;font-weight:800}.cashpe-otp-actions{display:flex;justify-content:space-between;align-items:center;margin:8px 0 13px;color:var(--cp-muted);font-size:11px}.cashpe-success-card{margin-top:15px;background:#ecfdf3;color:var(--cp-success);padding:14px;border-radius:12px;font-weight:800}.cashpe-success-card i{margin-right:7px}
.cashpe-location-status{display:flex;gap:9px;align-items:flex-start;text-align:left;margin-top:15px;padding:13px;border-radius:12px;font-size:13px}.cashpe-location-status.warning{background:#fffaeb;color:var(--cp-warning)}.cashpe-location-status.success{background:#ecfdf3;color:var(--cp-success)}.cashpe-location-status.error{background:#fef3f2;color:var(--cp-danger)}.cashpe-location-help{margin-top:11px;text-align:left;background:#fef3f2;padding:13px;border-radius:12px;color:var(--cp-danger);font-size:13px}.cashpe-readonly-location{display:flex;gap:9px;background:#f7f8fb;padding:13px;border-radius:12px;color:var(--cp-muted);font-size:13px}
.cashpe-review-card{background:#f7f8fb;padding:18px;border-radius:15px}.cashpe-review-card h3{color:var(--cp-ink);font-size:17px}.cashpe-review-card ul{list-style:none;padding:0;margin:12px 0 0}.cashpe-review-card li{margin:9px 0;color:#475467;font-size:13px}.cashpe-review-card .fa-check-circle{color:var(--cp-success)}.cashpe-review-card .fa-times-circle{color:var(--cp-danger)}.cashpe-consent-list{display:grid;gap:11px;margin-top:15px}.cashpe-consent-list label,.cashpe-toggle-row{display:flex!important;gap:9px;align-items:flex-start;font-weight:500!important;font-size:13px;line-height:1.5}.cashpe-consent-list input,.cashpe-toggle-row input{margin-top:4px}.cashpe-sprint-note{margin-top:15px;padding:13px;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:12px}
.cashpe-wizard-actions{display:flex;justify-content:space-between;gap:11px;padding-top:14px;position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-top:1px solid var(--cp-line);margin-top:7px;padding-bottom:4px;z-index:8}.cashpe-wizard-actions #nextStepBtn,.cashpe-wizard-actions #saveApplicationBtn{margin-left:auto}.cashpe-message{display:none;margin:10px 30px 0;padding:12px 15px;border-radius:12px;font-weight:800;font-size:13px}.cashpe-message.show{display:block}.cashpe-message.success{background:#ecfdf3;color:var(--cp-success)}.cashpe-message.error{background:#fef3f2;color:var(--cp-danger)}.cashpe-message.info{background:#eff8ff;color:#175cd3}
.cashpe-loading{pointer-events:none;opacity:.72}@keyframes cpFade{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.page-wrapper>.site-footer,.scroll-to-top{display:none!important}
@media(max-width:991px){.cashpe-v4-layout{grid-template-columns:1fr;max-width:820px;margin:0 auto}.cashpe-v4-side{position:relative;top:auto;padding:22px 24px}.cashpe-v4-side-list{grid-template-columns:repeat(3,1fr)}.cashpe-v4-side-note{display:none}.cashpe-v4-hero-inner{align-items:flex-start;flex-direction:column}.cashpe-v4-trust-row{justify-content:flex-start}}
@media(max-width:767px){body{background:#fff}.cashpe-v4-header{height:60px}.cashpe-v4-header-inner{padding-left:16px;padding-right:16px}.cashpe-v4-brand-mark{width:34px;height:34px;border-radius:10px;font-size:18px}.cashpe-v4-brand-name{font-size:22px}.cashpe-v4-secure{padding:7px 9px;font-size:11px}.cashpe-v4-hero-inner{padding:21px 16px 18px;gap:15px}.cashpe-v4-hero h1{font-size:27px}.cashpe-v4-hero p{font-size:13px}.cashpe-v4-trust-row{gap:6px}.cashpe-v4-trust-row span{padding:7px 9px;font-size:10px}.cashpe-v2-section{padding:16px 0 48px;background:#fff}.cashpe-v4-layout{display:block}.cashpe-v4-side{display:none}.cashpe-wizard-shell{border-radius:0;border-left:0;border-right:0;box-shadow:none}.cashpe-wizard-top{padding:20px 16px 13px}.cashpe-wizard-top h2{font-size:22px}.cashpe-wizard-top p{font-size:12px}.cashpe-step-counter{font-size:11px;padding:7px 9px}.cashpe-step-list{padding:13px 8px 4px;gap:1px}.cashpe-step-list button{flex-direction:column;gap:3px}.cashpe-step-list em{font-size:10px}#applyNowV2Form{padding:7px 14px 22px}.cp-step-intro{padding:12px 1px 14px}.cp-step-intro h3{font-size:20px}.cp-section-card{padding:17px 13px;border-radius:15px}.cashpe-inline-action{flex-direction:column}.cashpe-inline-action .thm-btn{width:100%}.cashpe-wizard-actions{margin-left:-14px;margin-right:-14px;padding:12px 14px 8px;bottom:0;box-shadow:0 -10px 25px rgba(23,32,51,.06)}.cashpe-wizard-actions button{flex:1}.cashpe-message{margin:8px 14px 0}.form-control{height:51px}.cashpe-otp-box{padding:15px 12px}}

/* ============================================================
   REQUIRED PAGE-LOAD LOCATION GATE
   Build: 2026-09-01 / V4.1
   ============================================================ */
body.cashpe-page-location-required{
  overflow:hidden!important;
}
body.cashpe-page-location-required .page-wrapper{
  pointer-events:none;
  user-select:none;
}
.cp-page-location-gate{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(15,23,42,.78);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.cp-page-location-gate[hidden]{
  display:none!important;
}
.cp-page-location-dialog{
  width:100%;
  max-width:460px;
  max-height:calc(100vh - 44px);
  overflow:auto;
  text-align:center;
  background:#fff;
  border:1px solid rgba(255,255,255,.7);
  border-radius:24px;
  padding:30px 30px 26px;
  box-shadow:0 28px 90px rgba(15,23,42,.34);
}
.cp-page-location-brand{
  display:flex;
  justify-content:center;
  margin-bottom:20px;
}
.cp-page-location-brand img{
  width:auto;
  height:42px;
  object-fit:contain;
}
.cp-page-location-icon{
  width:68px;
  height:68px;
  margin:0 auto 14px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:linear-gradient(145deg,#f4efff,#fff);
  color:var(--cp-primary);
  font-size:27px;
  box-shadow:inset 0 0 0 1px #e9ddff;
}
.cp-page-location-kicker{
  display:inline-block;
  margin-bottom:7px;
  color:var(--cp-primary-dark);
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cp-page-location-dialog h2{
  margin:0;
  color:#172033;
  font-size:25px;
  line-height:1.22;
  letter-spacing:-.025em;
}
.cp-page-location-dialog>p{
  margin:10px auto 0;
  max-width:390px;
  color:#667085;
  font-size:14px;
  line-height:1.6;
}
.cp-page-location-progress{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:20px 0 0;
  padding:12px 14px;
  border-radius:12px;
  background:#f8fafc;
  color:#475467;
  font-size:13px;
  font-weight:800;
}
.cp-page-location-progress.success{
  background:#ecfdf3;
  color:#15803d;
}
.cp-page-location-progress.error{
  background:#fef3f2;
  color:#b42318;
}
.cp-page-location-progress.warning{
  background:#fffaeb;
  color:#b45309;
}
.cp-page-location-button{
  width:100%;
  margin-top:14px;
  border-radius:12px;
}
.cp-page-location-help{
  margin-top:13px;
  padding:13px 14px;
  text-align:left;
  border-radius:12px;
  background:#fef3f2;
  color:#b42318;
  font-size:12px;
  line-height:1.5;
}
.cp-page-location-help strong,
.cp-page-location-help span{
  display:block;
}
.cp-page-location-help span{
  margin-top:3px;
  color:#7a271a;
}
.cp-page-location-secure{
  margin-top:17px;
  color:#667085;
  font-size:11px;
  line-height:1.5;
}
.cp-page-location-secure i{
  color:#15803d;
  margin-right:5px;
}
.cp-page-location-dialog>small{
  display:block;
  margin-top:7px;
  color:#98a2b3;
  font-size:10px;
  line-height:1.45;
}
.cp-page-location-gate.cp-location-approved .cp-page-location-icon{
  background:#ecfdf3;
  color:#15803d;
  box-shadow:inset 0 0 0 1px #bbefcf;
}

@media(max-width:767px){
  .cp-page-location-gate{
    padding:14px;
    align-items:center;
  }
  .cp-page-location-dialog{
    max-height:calc(100vh - 28px);
    padding:26px 18px 22px;
    border-radius:20px;
  }
  .cp-page-location-brand{
    margin-bottom:16px;
  }
  .cp-page-location-icon{
    width:60px;
    height:60px;
    border-radius:19px;
    font-size:24px;
  }
  .cp-page-location-dialog h2{
    font-size:22px;
  }
  .cp-page-location-dialog>p{
    font-size:13px;
  }
}


/* ============================================================
   V4.3 COMPACT APPLICATION UI
   Step 1: compact mobile verification
   Step 3: location is hidden after Step-1 verification; fallback only
   ============================================================ */
.cashpe-form-step[data-step="1"] .cp-step-intro,
.cashpe-form-step[data-step="3"] .cp-step-intro{
  padding:10px 0 12px;
}
.cashpe-form-step[data-step="1"] .cp-section-card,
.cashpe-form-step[data-step="3"] .cp-section-card{
  padding:18px 20px;
  margin-bottom:12px;
}
.cashpe-form-step[data-step="1"] .form-group,
.cashpe-form-step[data-step="3"] .form-group{
  margin-bottom:13px;
}
.cashpe-form-step[data-step="1"] .form-control,
.cashpe-form-step[data-step="3"] .form-control{
  height:48px;
}

.cp-mobile-verification-card{
  padding:16px 18px!important;
}
.cp-mobile-verify-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}
.cp-mobile-verify-head .cp-section-title{
  border:0;
  padding:0;
  margin:0;
  font-size:15px;
}
.cp-mobile-verify-head p{
  margin:3px 0 0;
  color:var(--cp-muted);
  font-size:11.5px;
  line-height:1.45;
}
.cp-secure-mini{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 9px;
  border-radius:999px;
  background:#ecfdf3;
  color:var(--cp-success);
  font-size:10.5px;
  font-weight:900;
  white-space:nowrap;
}
.cp-mobile-verification-card .cashpe-mobile-control{
  margin:0;
}
.cp-mobile-verification-card .cashpe-mobile-control label{
  margin-bottom:5px;
}
.cp-mobile-verification-card .cashpe-inline-action{
  gap:8px;
}
.cp-mobile-verification-card .cashpe-inline-action .thm-btn{
  min-width:132px;
  min-height:48px;
  padding:12px 20px;
  border-radius:10px;
}
.cp-mobile-verification-card .cashpe-success-compact{
  display:inline-flex;
  align-items:center;
  width:auto;
  margin-top:9px;
  padding:7px 11px;
  border-radius:999px;
  font-size:11.5px;
}
.cp-mobile-verification-card .cashpe-otp-compact{
  margin-top:10px;
  padding:12px;
}
.cp-otp-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 145px;
  gap:10px;
  align-items:end;
}
.cp-otp-field label{
  display:block;
  font-weight:800;
  color:#344054;
  margin-bottom:5px;
  font-size:12px;
}
.cp-mobile-verification-card .cashpe-otp-input{
  height:46px;
}
.cp-mobile-verification-card #verifyOtpBtn{
  min-height:46px;
  padding:11px 16px;
  border-radius:10px;
}
.cp-mobile-verification-card .cashpe-otp-actions{
  margin:7px 0 0;
}

#step3LocationSection[hidden]{
  display:none!important;
}
.cp-location-fallback{
  border-color:#fedf89!important;
  background:#fffdf5!important;
}
.cp-location-fallback .cashpe-location-card{
  max-width:none;
  display:grid;
  grid-template-columns:auto 1fr auto;
  grid-template-areas:
    "icon title action"
    "icon copy action"
    "status status status";
  align-items:center;
  gap:2px 12px;
  text-align:left;
  padding:0;
}
.cp-location-fallback .cashpe-icon-circle{
  grid-area:icon;
  width:42px;
  height:42px;
  border-radius:12px;
  margin:0;
  font-size:17px;
}
.cp-location-fallback .cashpe-location-card h3{
  grid-area:title;
  margin:0;
  font-size:15px;
}
.cp-location-fallback .cashpe-location-card>p{
  grid-area:copy;
  font-size:11.5px;
  margin:2px 0 0;
}
.cp-location-fallback #captureLocationBtn{
  grid-area:action;
  min-height:44px;
  padding:11px 16px;
}
.cp-location-fallback .cashpe-location-status,
.cp-location-fallback .cashpe-location-help{
  grid-area:status;
  margin-top:9px;
}
.cp-contact-residence-card .cp-section-title{
  margin-bottom:14px;
  padding-bottom:9px;
}
.cp-contact-residence-card .cashpe-readonly-location{
  padding:10px 12px;
  font-size:11.5px;
}

@media(max-width:767px){
  .cashpe-form-step[data-step="1"] .cp-section-card,
  .cashpe-form-step[data-step="3"] .cp-section-card{
    padding:14px 12px;
    margin-bottom:10px;
  }
  .cp-mobile-verify-head{
    gap:8px;
    margin-bottom:10px;
  }
  .cp-mobile-verify-head p{
    font-size:10.8px;
  }
  .cp-secure-mini{
    padding:5px 7px;
    font-size:9.5px;
  }
  .cp-mobile-verification-card .cashpe-inline-action{
    flex-direction:row;
  }
  .cp-mobile-verification-card .cashpe-inline-action .thm-btn{
    width:auto;
    min-width:105px;
    padding:11px 12px;
  }
  .cp-otp-row{
    grid-template-columns:1fr;
  }
  .cp-mobile-verification-card #verifyOtpBtn{
    width:100%;
  }
  .cp-location-fallback .cashpe-location-card{
    grid-template-columns:42px 1fr;
    grid-template-areas:
      "icon title"
      "icon copy"
      "action action"
      "status status";
  }
  .cp-location-fallback #captureLocationBtn{
    width:100%;
    margin-top:9px;
  }
}

/* ============================================================
   V4.6 LOCATION PERMISSION RECOVERY UX
   Build: 2026-09-04 / stable trusted-control recovery
   - Friendly first permission screen
   - Chrome 144+ <geolocation> recovery after "Never allow"
   - Manual fallback for Safari / Firefox / older Chromium
   ============================================================ */
.cp-page-location-dialog{
  max-width:500px;
}
.cp-page-location-benefits{
  display:grid;
  gap:8px;
  margin:18px 0 0;
  text-align:left;
}
.cp-page-location-benefits>div{
  display:flex;
  align-items:flex-start;
  gap:11px;
  padding:10px 12px;
  border:1px solid #edf0f5;
  border-radius:12px;
  background:#fbfcfe;
}
.cp-page-location-benefits i{
  display:grid;
  place-items:center;
  flex:0 0 30px;
  width:30px;
  height:30px;
  margin-top:1px;
  border-radius:9px;
  background:#f3edff;
  color:#7b3ff2;
  font-size:13px;
}
.cp-page-location-benefits span{
  display:grid;
  gap:2px;
}
.cp-page-location-benefits strong{
  color:#344054;
  font-size:12px;
  line-height:1.35;
}
.cp-page-location-benefits small{
  color:#7b8495;
  font-size:10.5px;
  line-height:1.4;
}
.cp-geo-recovery-wrap{
  margin-top:14px;
  padding:15px;
  border:1px solid #e8ddff;
  border-radius:14px;
  background:linear-gradient(180deg,#faf8ff 0%,#f7f3ff 100%);
}
.cp-geo-recovery-wrap[hidden]{
  display:none!important;
}
.cp-geo-recovery-copy{
  display:grid;
  gap:4px;
  margin-bottom:12px;
  text-align:left;
}
.cp-geo-recovery-copy strong{
  color:#4b2b82;
  font-size:13px;
}
.cp-geo-recovery-copy span{
  color:#667085;
  font-size:11.5px;
  line-height:1.45;
}
/*
 * IMPORTANT: do not directly style the browser-owned <geolocation> element.
 * Chrome applies activation blockers when the trusted control is distorted,
 * clipped, moved or styled outside its safety constraints. The surrounding
 * CashPe card carries the brand styling; Chrome owns the actual permission
 * button so it remains reliable.
 */

.cp-page-location-gate.cp-trusted-geo-mode{
  /* A backdrop blur can make Chrome treat a powerful-feature control as
     visually distorted. Use a clean solid scrim while the trusted button is
     active. */
  align-items:flex-start;
  overflow-y:auto;
  padding-top:34px;
  padding-bottom:34px;
  background:rgba(15,23,42,.88);
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.cp-page-location-gate.cp-trusted-geo-mode .cp-page-location-dialog{
  max-height:none;
  overflow:visible;
}
.cp-page-location-gate.cp-trusted-geo-mode .cp-geo-recovery-wrap{
  text-align:center;
}
.cp-trusted-geo-status{
  min-height:42px;
  margin-top:12px;
  padding:10px 11px;
  border-radius:10px;
  background:#f8fafc;
  color:#667085;
  font-size:11.5px;
  line-height:1.45;
  text-align:left;
}
.cp-trusted-geo-status i{
  margin-right:6px;
}
.cp-trusted-geo-status.is-ready{
  background:#ecfdf3;
  color:#067647;
}
.cp-trusted-geo-status.is-waiting{
  background:#f5f3ff;
  color:#5f3dc4;
}
.cp-trusted-geo-status.is-warning{
  background:#fffaf0;
  color:#9a5b08;
}
.cp-trusted-geo-status.is-error{
  background:#fef3f2;
  color:#b42318;
}
.cp-legacy-geo-button{
  width:100%;
  margin:0;
  border-radius:12px;
}
.cp-page-location-check{
  width:100%;
  margin-top:10px;
  border:1px solid #e3e7ee;
  border-radius:12px;
  background:#fff;
  color:#475467;
  box-shadow:none;
}
.cp-page-location-check:hover{
  background:#f8fafc;
  color:#344054;
  transform:none;
}
.cp-location-help-toggle{
  width:100%;
  margin-top:9px;
  padding:9px 8px;
  border:0;
  background:transparent;
  color:#6d3bd1;
  font-size:11.5px;
  font-weight:800;
  cursor:pointer;
}
.cp-location-help-toggle:hover{
  text-decoration:underline;
}
.cp-page-location-help{
  background:#fffaf0;
  border:1px solid #f6d9a6;
  color:#7c4a03;
}
.cp-page-location-help strong{
  color:#7c4a03;
}
.cp-page-location-help ol{
  margin:8px 0 0 18px;
  padding:0;
  color:#805412;
}
.cp-page-location-help li{
  margin:5px 0;
  padding-left:2px;
}
.cp-page-location-gate.cp-location-denied .cp-page-location-icon{
  background:#fff8e8;
  color:#b7791f;
  box-shadow:inset 0 0 0 1px #f4d9a6;
}
.cp-page-location-gate.cp-location-denied .cp-page-location-benefits{
  display:none;
}
.cp-page-location-gate.cp-location-denied .cp-page-location-progress{
  background:#fffaf0;
  color:#9a5b08;
}
.cp-page-location-gate.cp-location-approved .cp-page-location-benefits,
.cp-page-location-gate.cp-location-approved .cp-geo-recovery-wrap,
.cp-page-location-gate.cp-location-approved .cp-page-location-check,
.cp-page-location-gate.cp-location-approved .cp-location-help-toggle,
.cp-page-location-gate.cp-location-approved .cp-page-location-help{
  display:none!important;
}
@media(max-width:767px){
  .cp-page-location-dialog{
    max-width:480px;
  }
  .cp-page-location-benefits{
    gap:6px;
    margin-top:14px;
  }
  .cp-page-location-benefits>div{
    padding:9px 10px;
  }
  .cp-geo-recovery-wrap{
    padding:13px;
  }
}

/* ============================================================
   V4.7 COMPACT LOCATION CONSENT UX
   Build: 2026-09-04 / direct first consent + compact recovery
   ============================================================ */
.cp-page-location-dialog{
  max-width:420px;
  padding:22px 22px 18px;
  border-radius:20px;
}
.cp-page-location-brand{
  margin-bottom:10px;
}
.cp-page-location-brand img{
  height:32px;
}
.cp-page-location-icon{
  width:52px;
  height:52px;
  margin:0 auto 10px;
  border-radius:17px;
  font-size:21px;
}
.cp-page-location-kicker{
  margin-bottom:5px;
  font-size:9.5px;
  letter-spacing:.11em;
}
.cp-page-location-dialog h2{
  font-size:22px;
  line-height:1.2;
}
.cp-page-location-dialog>p{
  margin-top:7px;
  max-width:340px;
  font-size:12.5px;
  line-height:1.45;
}
.cp-page-location-progress{
  margin-top:12px;
  padding:9px 10px;
  border-radius:10px;
  font-size:11.5px;
  line-height:1.35;
}
.cp-geo-recovery-wrap{
  margin-top:10px;
  padding:10px 11px;
  border-radius:12px;
}
.cp-geo-recovery-copy{
  gap:2px;
  margin-bottom:8px;
}
.cp-geo-recovery-copy strong{
  font-size:12px;
}
.cp-geo-recovery-copy span{
  font-size:10.5px;
  line-height:1.35;
}
.cp-trusted-geo-status{
  min-height:0;
  margin-top:8px;
  padding:8px 9px;
  border-radius:9px;
  font-size:10.5px;
  line-height:1.35;
}
.cp-page-location-check{
  margin-top:8px;
  min-height:42px;
  font-size:12px;
}
.cp-location-help-toggle{
  margin-top:5px;
  padding:7px 6px;
  font-size:10.5px;
}
.cp-page-location-help{
  margin-top:7px;
  padding:10px 11px;
  font-size:10.5px;
  line-height:1.4;
}
.cp-page-location-help ol{
  margin-top:6px;
}
.cp-page-location-help li{
  margin:3px 0;
}
.cp-page-location-secure{
  margin-top:11px;
  font-size:10px;
}
.cp-page-location-dialog>small{
  margin-top:4px;
  font-size:9px;
}

/* Keep Chrome's browser-owned geolocation control stable and undistorted. */
.cp-page-location-gate.cp-trusted-geo-mode{
  align-items:center;
  overflow:visible;
  padding:12px;
  background:rgba(15,23,42,.88);
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.cp-page-location-gate.cp-trusted-geo-mode .cp-page-location-dialog{
  max-height:none;
  overflow:visible;
}

@media(max-width:767px){
  .cp-page-location-gate{
    padding:10px;
  }
  .cp-page-location-dialog{
    width:100%;
    max-width:390px;
    max-height:calc(100dvh - 20px);
    padding:16px 14px 14px;
    border-radius:18px;
  }
  .cp-page-location-brand{
    margin-bottom:8px;
  }
  .cp-page-location-brand img{
    height:28px;
  }
  .cp-page-location-icon{
    width:44px;
    height:44px;
    margin-bottom:8px;
    border-radius:14px;
    font-size:18px;
  }
  .cp-page-location-kicker{
    margin-bottom:4px;
    font-size:8.5px;
  }
  .cp-page-location-dialog h2{
    font-size:19px;
  }
  .cp-page-location-dialog>p{
    margin-top:5px;
    font-size:11.5px;
    line-height:1.4;
  }
  .cp-page-location-benefits{
    display:none!important;
  }
  .cp-page-location-progress{
    margin-top:9px;
    padding:8px 9px;
    font-size:10.5px;
  }
  .cp-geo-recovery-wrap{
    margin-top:8px;
    padding:9px;
  }
  .cp-geo-recovery-copy{
    margin-bottom:6px;
  }
  .cp-trusted-geo-status{
    margin-top:6px;
    padding:7px 8px;
    font-size:10px;
  }
  .cp-page-location-secure{
    margin-top:8px;
    font-size:9.5px;
  }
  .cp-page-location-dialog>small{
    display:none;
  }
  .cp-page-location-gate.cp-trusted-geo-mode{
    align-items:center;
    padding:10px;
    overflow:visible;
  }
  .cp-page-location-gate.cp-trusted-geo-mode .cp-page-location-dialog{
    max-height:none;
    overflow:visible;
  }
}

@media(max-width:380px), (max-height:680px){
  .cp-page-location-dialog{
    padding:13px 12px 12px;
  }
  .cp-page-location-brand img{
    height:25px;
  }
  .cp-page-location-icon{
    width:40px;
    height:40px;
    margin-bottom:6px;
  }
  .cp-page-location-dialog h2{
    font-size:18px;
  }
  .cp-page-location-progress,
  .cp-geo-recovery-wrap{
    margin-top:7px;
  }
  .cp-page-location-secure{
    margin-top:6px;
  }
}

/* ============================================================
   V4.8 OTP + compact profile UX
   Build: 2026-09-04 / auto-advance OTP + residence profile
   ============================================================ */
.cashpe-wizard-actions[hidden]{display:none!important}
.cashpe-otp-compact{padding:14px 15px;margin-top:12px}
.cp-otp-sent-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px;padding-bottom:10px;border-bottom:1px solid #e5e9f0;color:#475467;font-size:12px}
.cp-otp-sent-bar i{color:var(--thm-base);margin-right:5px}.cp-otp-sent-bar strong{color:#1d2939}.cp-change-mobile-btn{white-space:nowrap;font-size:11px;padding:4px 0}
.cp-otp-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.cp-otp-field label{display:block;font-weight:800;color:#344054;margin-bottom:6px;font-size:12px}.cp-otp-row #verifyOtpBtn{min-width:128px;height:52px;padding:0 18px}.cp-otp-continue-note{display:block;text-align:center;color:#667085;font-size:10.5px;margin-top:5px}.cp-otp-continue-note i{color:#159455;margin-right:4px}
#mobile_number[readonly]{background:#f8fafc;color:#475467;cursor:not-allowed}
.cashpe-success-compact{margin-top:10px;padding:10px 12px;font-size:12px}
.cashpe-optional-inline{display:inline-flex;align-items:center;margin-left:5px;padding:2px 6px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:9px;font-weight:700;vertical-align:middle}
.cp-compact-grid .form-group,.cp-employment-card .form-group,.cp-contact-residence-card .form-group{margin-bottom:13px}
.cp-employment-card .cp-section-title,.cp-contact-residence-card .cp-section-title{margin-bottom:14px}
.cp-inline-toggle{display:flex!important;align-items:center;gap:7px;min-height:21px;margin:0 0 7px!important;font-weight:600!important;font-size:11px!important;color:#667085!important}.cp-inline-toggle input{margin:0}
.cp-residence-doc-hint{display:flex;align-items:flex-start;gap:9px;margin-top:-1px;padding:10px 12px;border:1px solid #e5ddff;background:#faf8ff;border-radius:11px;color:#5f5472;font-size:11px;line-height:1.4}.cp-residence-doc-hint i{color:#7c3aed;margin-top:2px}.cp-residence-doc-hint strong{color:#42325f}
#monthlyRentWrap[hidden],#residenceDocumentHint[hidden]{display:none!important}

@media(max-width:767px){
  .cashpe-otp-compact{padding:12px 11px}.cp-otp-sent-bar{gap:8px;font-size:11px}.cp-otp-row{grid-template-columns:1fr}.cp-otp-row #verifyOtpBtn{width:100%;height:48px}.cashpe-otp-input{height:48px}.cp-change-mobile-btn{font-size:10.5px}
  .cp-section-card{margin-bottom:12px}.cp-employment-card .form-group,.cp-contact-residence-card .form-group,.cp-compact-grid .form-group{margin-bottom:11px}.cp-employment-card .form-control,.cp-contact-residence-card .form-control{height:48px}.cp-employment-card,.cp-contact-residence-card{padding-top:14px;padding-bottom:12px}.cp-residence-doc-hint{font-size:10.5px;padding:9px 10px}
}

@media(max-width:380px){
  .cp-otp-sent-bar{align-items:flex-start;flex-direction:column}.cp-change-mobile-btn{align-self:flex-start}.cashpe-otp-actions{font-size:10px}.cashpe-otp-actions button{font-size:10.5px}
}

/* ============================================================
   V4.9 COMPACT WIZARD UI
   Build: 2026-09-04 / reduced vertical space, same functionality
   ============================================================ */

/* --- Compact public hero / trust area --- */
.page-header{padding-bottom:38px!important}
.page-header .container{padding-top:38px!important;padding-bottom:34px!important}
.page-header .container h1{font-size:42px!important;line-height:1.08!important;margin-top:14px!important;margin-bottom:8px!important}
.apply-hero-subtitle{font-size:14px!important;line-height:1.35!important}
.loan-highlights-row{bottom:-20px!important;gap:8px!important;padding:9px 16px!important;max-width:1040px!important}
.loan-highlights-row span{font-size:13px!important;gap:8px!important;padding-right:12px!important}
.loan-eligibility-wrap{margin-top:28px!important}
.loan-eligibility{font-size:12px!important;padding:7px 13px!important;line-height:1.3!important}

/* --- Overall application shell --- */
.cashpe-v2-section{padding:22px 0 52px!important}
.cashpe-v4-layout{grid-template-columns:minmax(230px,285px) minmax(0,820px)!important;gap:18px!important}
.cashpe-v4-side{top:18px!important;padding:23px 22px!important;border-radius:20px!important}
.cashpe-v4-side-label{font-size:9.5px!important}
.cashpe-v4-side h2{font-size:22px!important;margin:8px 0 7px!important;line-height:1.15!important}
.cashpe-v4-side>p{font-size:12px!important;line-height:1.45!important;margin-bottom:16px!important}
.cashpe-v4-side-list{gap:12px!important}
.cashpe-v4-side-list>div{gap:9px!important}
.cashpe-v4-side-list i{flex-basis:24px!important;height:24px!important;border-radius:7px!important;font-size:10px!important}
.cashpe-v4-side-list strong{font-size:12px!important}.cashpe-v4-side-list small{font-size:10.5px!important;margin-top:1px!important;line-height:1.3!important}
.cashpe-v4-side-note{margin-top:16px!important;padding:10px!important;font-size:10.5px!important;line-height:1.4!important}

.cashpe-wizard-shell{border-radius:20px!important}
.cashpe-wizard-top{padding:17px 22px 10px!important;align-items:center!important}
.cashpe-eyebrow{font-size:9.5px!important;letter-spacing:.1em!important;margin-bottom:3px!important}
.cashpe-wizard-top h2{font-size:22px!important;line-height:1.15!important}
.cashpe-wizard-top p{font-size:11.5px!important;margin-top:3px!important;line-height:1.35!important}
.cashpe-step-counter{font-size:10.5px!important;padding:6px 9px!important}
.cashpe-progress-track{height:4px!important}
.cashpe-step-list{padding:9px 18px 4px!important;gap:4px!important}
.cashpe-step-list button{gap:5px!important;font-size:11px!important}
.cashpe-step-list button span{width:23px!important;height:23px!important;font-size:10px!important}
.cashpe-step-list em{font-size:10.5px!important}

/* Step title is already shown in wizard header; remove duplicate title block. */
.cp-step-intro{display:none!important}

#applyNowV2Form{padding:7px 20px 18px!important}
.cp-section-card{padding:14px 16px!important;margin-bottom:10px!important;border-radius:14px!important}
.cp-section-title{font-size:13.5px!important;margin-bottom:10px!important;padding-bottom:7px!important}
.form-group{margin-bottom:10px!important}
.form-group label{font-size:11.5px!important;margin-bottom:4px!important;line-height:1.25!important}
.form-control{height:44px!important;border-radius:9px!important;padding:9px 11px!important;font-size:13px!important}
.cashpe-hint,.cashpe-optional{font-size:9.5px!important;margin-top:4px!important}
.field-error{font-size:10.5px!important;margin-top:4px!important;line-height:1.25!important}
.cashpe-optional-inline{font-size:8.5px!important;padding:1px 5px!important}
.cashpe-amount-wrap>span,.cp-money-field:before{left:12px!important;font-size:12px!important}
.cp-money-field .form-control,.cashpe-amount-wrap .form-control{padding-left:29px!important}

/* OTP / buttons */
.thm-btn,.cashpe-secondary-btn{min-height:44px!important;padding:11px 24px!important;font-size:12.5px!important}
.cp-mobile-verification-card{padding:13px 15px!important}
.cp-mobile-verify-head{margin-bottom:8px!important}
.cp-mobile-verify-head .cp-section-title{font-size:13.5px!important}
.cp-mobile-verify-head p{font-size:10.5px!important;line-height:1.35!important}
.cp-mobile-verification-card .cashpe-inline-action .thm-btn{min-height:44px!important;padding:10px 16px!important}
.cashpe-otp-compact{padding:10px 12px!important;margin-top:8px!important}
.cp-otp-sent-bar{margin-bottom:8px!important;padding-bottom:7px!important;font-size:10.5px!important}
.cp-otp-field label{font-size:10.5px!important;margin-bottom:4px!important}
.cp-otp-row #verifyOtpBtn{height:44px!important;min-width:116px!important;padding:0 14px!important}
.cashpe-otp-actions{margin:5px 0 0!important;font-size:10px!important}
.cp-otp-continue-note{font-size:9.5px!important;margin-top:3px!important}
.cashpe-success-compact{margin-top:7px!important;padding:7px 10px!important;font-size:10.5px!important}

/* Step 2 / Step 3 compact cards */
.cp-compact-grid .form-group,.cp-employment-card .form-group,.cp-contact-residence-card .form-group{margin-bottom:9px!important}
.cp-employment-card .cp-section-title,.cp-contact-residence-card .cp-section-title{margin-bottom:9px!important}
.cp-inline-toggle{min-height:18px!important;margin-bottom:4px!important;font-size:10px!important}
.cp-residence-doc-hint{margin-top:0!important;padding:7px 9px!important;border-radius:9px!important;font-size:9.8px!important;line-height:1.3!important}
.cashpe-readonly-location{padding:8px 10px!important;font-size:10.5px!important;border-radius:9px!important}

/* Step 4 compact legal area without changing wording */
.cashpe-review-card{padding:12px!important;border-radius:11px!important}
.cashpe-review-card h3{font-size:13.5px!important;margin:0!important}
.cashpe-review-card ul{margin-top:7px!important}
.cashpe-review-card li{margin:5px 0!important;font-size:10.8px!important}
.cashpe-consent-list{gap:7px!important;margin-top:10px!important}
.cashpe-consent-list label,.cashpe-toggle-row{gap:7px!important;font-size:10.8px!important;line-height:1.35!important}
.cashpe-consent-list input,.cashpe-toggle-row input{margin-top:2px!important}
.cashpe-sprint-note{margin-top:10px!important;padding:8px 10px!important;font-size:10px!important;border-radius:9px!important}
.cashpe-wizard-actions{padding-top:9px!important;margin-top:4px!important;padding-bottom:2px!important}
.cashpe-message{margin:7px 20px 0!important;padding:8px 11px!important;border-radius:9px!important;font-size:11px!important}

/* --- Tablet / mobile: keep the form short and above-the-fold friendly --- */
@media(max-width:991px){
  .page-header{padding-bottom:0!important}
  .page-header .container{padding-top:28px!important;padding-bottom:26px!important}
  .page-header .container h1{font-size:30px!important;margin-top:10px!important;margin-bottom:6px!important}
  .apply-hero-subtitle{font-size:12.5px!important}
  .loan-highlights-row{position:relative!important;bottom:auto!important;margin:0 auto!important;width:100%!important;max-width:100%!important;border-radius:0!important;padding:8px 12px!important;justify-content:flex-start!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important}
  .loan-highlights-row::-webkit-scrollbar{display:none!important}
  .loan-highlights-row span{font-size:10.5px!important;flex:0 0 auto!important;padding-right:8px!important}
  .loan-eligibility-wrap{margin-top:10px!important;padding:0 12px!important}
  .loan-eligibility{font-size:10.5px!important;padding:6px 10px!important;text-align:center!important}
  .cashpe-v2-section{padding:10px 0 34px!important}
}

@media(max-width:767px){
  .page-header .container{padding-top:20px!important;padding-bottom:20px!important}
  .thm-breadcrumb{display:none!important}
  .page-header .container h1{font-size:25px!important;line-height:1.12!important;margin-top:0!important}
  .apply-hero-subtitle{font-size:11.5px!important;max-width:92%!important}

  .cashpe-wizard-top{padding:12px 13px 7px!important;gap:8px!important}
  .cashpe-eyebrow{font-size:8.5px!important;margin-bottom:2px!important}
  .cashpe-wizard-top h2{font-size:18px!important}
  .cashpe-wizard-top p{font-size:10.5px!important;margin-top:2px!important}
  .cashpe-step-counter{font-size:9.5px!important;padding:5px 7px!important}
  .cashpe-step-list{padding:7px 5px 3px!important}
  .cashpe-step-list button{gap:2px!important}
  .cashpe-step-list button span{width:21px!important;height:21px!important}
  .cashpe-step-list em{font-size:9px!important}

  #applyNowV2Form{padding:5px 10px 14px!important}
  .cp-section-card{padding:11px 10px!important;margin-bottom:8px!important;border-radius:12px!important}
  .cp-section-title{font-size:12.5px!important;margin-bottom:8px!important;padding-bottom:6px!important}
  .form-group{margin-bottom:8px!important}
  .form-group label{font-size:10.8px!important;margin-bottom:3px!important}
  .form-control{height:43px!important;font-size:12px!important;padding:8px 10px!important}
  .thm-btn,.cashpe-secondary-btn{min-height:43px!important;padding:10px 14px!important;font-size:12px!important}

  .cp-mobile-verification-card{padding:10px!important}
  .cp-mobile-verify-head{margin-bottom:7px!important}
  .cp-mobile-verify-head p{display:none!important}
  .cp-secure-mini{font-size:8.5px!important;padding:4px 6px!important}
  .cashpe-otp-compact{padding:9px!important}

  .cp-residence-doc-hint{font-size:9px!important;padding:6px 8px!important}
  .cashpe-readonly-location{font-size:9.5px!important;padding:7px 8px!important}
  .cashpe-consent-list label{font-size:10px!important}
  .cashpe-sprint-note{font-size:9.3px!important;padding:7px 8px!important}

  .cashpe-wizard-actions{margin-left:-10px!important;margin-right:-10px!important;padding:8px 10px 4px!important}
  .cashpe-message{margin:6px 10px 0!important}
}

@media(max-width:480px){
  .loan-eligibility{width:100%!important;justify-content:center!important;border-radius:12px!important}
  .cashpe-wizard-top p{max-width:230px!important}
  .cashpe-step-list em{font-size:8.5px!important}
}

/* =========================================================
   V5.0 SMART PROFILE CONTROLS
   ========================================================= */
.cp-bank-search-wrap {
  position: relative;
}
.cp-bank-search-wrap .form-control {
  padding-right: 36px;
}
.cp-bank-search-wrap > i {
  position: absolute;
  right: 13px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #8b5cf6;
  font-size: 12px;
}

.cp-salary-day-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: stretch;
}
.cp-salary-day-control .form-control {
  min-width: 0;
}
.cp-last-day-btn {
  border: 1px solid #d9dce7;
  background: #fff;
  color: #4b5563;
  border-radius: 7px;
  padding: 0 12px;
  min-height: 40px;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}
.cp-last-day-btn:hover,
.cp-last-day-btn:focus-visible {
  border-color: #9b63f6;
  color: #6d28d9;
  outline: none;
}
.cp-last-day-btn.active {
  border-color: #8b5cf6;
  background: #f4edff;
  color: #6d28d9;
  box-shadow: 0 0 0 2px rgba(139, 92, 246, .08);
}
.cp-salary-date-preview {
  display: block;
  min-height: 16px;
  margin-top: 4px;
  color: #7b8190;
  font-size: 10.5px;
  line-height: 1.25;
}
.cp-salary-date-preview.is-selected {
  color: #15803d;
  font-weight: 600;
}
.cp-full-date-picker {
  cursor: pointer;
}

@media (max-width: 767.98px) {
  .cp-salary-day-control {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
  }
  .cp-last-day-btn {
    min-height: 43px;
    padding: 0 11px;
    font-size: 12px;
  }
  .cp-salary-date-preview {
    font-size: 10px;
  }
}

/* =========================================================
   V6.1.8 DIGITAL SHORT-TERM TENURE CONSENT
   ========================================================= */
.cashpe-consent-list .cashpe-tenure-consent{
  background:#faf7ff;
  border:1px solid #eadfff;
  border-radius:10px;
  padding:8px 10px;
}
.cashpe-consent-list .cashpe-tenure-consent strong{
  color:#6f3df4;
  font-weight:800;
}
.cashpe-tenure-consent-note{
  display:block;
  margin:-1px 0 0 26px;
  color:#667085;
  font-size:10px;
  line-height:1.35;
}
@media(max-width:767px){
  .cashpe-consent-list .cashpe-tenure-consent{padding:7px 8px}
  .cashpe-tenure-consent-note{margin-left:23px;font-size:9px}
}
.cashpe-tenure-consent-error{margin:-4px 0 0 26px!important}


/* =========================================================
   V6.4 CONSENT ALIGNMENT + WORK EMAIL HINT
   ========================================================= */
.cp-field-hint{
  display:block;
  margin-top:5px;
  color:#667085;
  font-size:10.5px;
  line-height:1.35;
}
.cashpe-consent-list{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
}
.cashpe-consent-list .cashpe-consent-row,
.cashpe-consent-list .cashpe-tenure-consent{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  column-gap:9px!important;
  align-items:start!important;
  margin:0!important;
  padding:6px 8px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  font-size:10.8px!important;
  line-height:1.4!important;
  font-weight:500!important;
}
.cashpe-consent-list .cashpe-consent-row input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin:0!important;
  margin-top:1px!important;
  accent-color:#7c3aed;
}
.cashpe-consent-list .cashpe-consent-row span{
  min-width:0;
}
.cashpe-consent-list .cashpe-consent-row:has(input.is-invalid){
  border-color:#f04438!important;
  background:#fff4f3!important;
}
.cashpe-consent-list .cashpe-tenure-consent strong{
  color:#6f3df4;
  font-weight:800;
}
.cashpe-tenure-consent-error,
.cashpe-consent-group-error{
  margin:-3px 0 0 27px!important;
}
.cashpe-tenure-consent-note{
  margin:-2px 0 0 27px!important;
  font-size:9.8px!important;
  line-height:1.4!important;
}
@media(max-width:767px){
  .cashpe-consent-list .cashpe-consent-row,
  .cashpe-consent-list .cashpe-tenure-consent{
    grid-template-columns:18px minmax(0,1fr)!important;
    padding:6px 6px!important;
    font-size:10px!important;
  }
  .cp-field-hint{font-size:9.5px;}
  .cashpe-tenure-consent-note{margin-left:27px!important;font-size:9px!important;}
}

/* =========================================================
   V6.5 READABILITY PASS
   Build: 2026-09-17
   Purpose: improve customer-facing readability without changing
   the Apply Now information architecture or workflow.
   ========================================================= */

/* Left guidance panel */
.cashpe-v4-side-label{
  font-size:11px!important;
  line-height:1.35!important;
}
.cashpe-v4-side h2{
  font-size:24px!important;
  line-height:1.2!important;
}
.cashpe-v4-side>p{
  font-size:14px!important;
  line-height:1.6!important;
}
.cashpe-v4-side-list strong{
  font-size:14px!important;
  line-height:1.35!important;
}
.cashpe-v4-side-list small{
  font-size:12.5px!important;
  line-height:1.45!important;
}
.cashpe-v4-side-note{
  font-size:12.5px!important;
  line-height:1.5!important;
}

/* Wizard header and progress */
.cashpe-eyebrow{
  font-size:11px!important;
  line-height:1.3!important;
}
.cashpe-wizard-top h2{
  font-size:25px!important;
  line-height:1.2!important;
}
.cashpe-wizard-top p{
  font-size:14px!important;
  line-height:1.5!important;
  margin-top:5px!important;
}
.cashpe-step-counter{
  font-size:12.5px!important;
  line-height:1.2!important;
  padding:7px 11px!important;
}
.cashpe-step-list button{
  gap:6px!important;
  font-size:13px!important;
  line-height:1.3!important;
}
.cashpe-step-list button span{
  width:26px!important;
  height:26px!important;
  font-size:12px!important;
}
.cashpe-step-list em{
  font-size:12.5px!important;
  line-height:1.25!important;
}

/* Cards / section headings */
.cp-section-card{
  padding:17px 18px!important;
  margin-bottom:12px!important;
}
.cp-section-title,
.cp-mobile-verify-head .cp-section-title{
  font-size:16.5px!important;
  line-height:1.35!important;
  margin-bottom:12px!important;
  padding-bottom:9px!important;
}

/* Primary form typography */
.form-group{
  margin-bottom:13px!important;
}
.form-group label,
.cp-otp-field label{
  font-size:14px!important;
  line-height:1.35!important;
  margin-bottom:6px!important;
  font-weight:750!important;
}
.form-control{
  height:48px!important;
  padding:10px 12px!important;
  font-size:16px!important;
  line-height:1.35!important;
}
.form-control::placeholder{
  font-size:15px!important;
  color:#98a2b3!important;
}
.cashpe-hint,
.cashpe-optional,
.cp-field-hint{
  font-size:12.5px!important;
  line-height:1.45!important;
  margin-top:5px!important;
}
.field-error{
  font-size:12.5px!important;
  line-height:1.4!important;
  margin-top:5px!important;
}
.cashpe-optional-inline{
  font-size:10.5px!important;
  line-height:1.2!important;
  padding:2px 6px!important;
}
.cp-inline-toggle{
  font-size:12.5px!important;
  line-height:1.4!important;
  min-height:22px!important;
  margin-bottom:6px!important;
}

/* Salary / repayment-cycle control */
.cp-last-day-btn{
  min-height:48px!important;
  padding:0 14px!important;
  font-size:13.5px!important;
  line-height:1.3!important;
}
.cp-salary-date-preview{
  min-height:18px!important;
  margin-top:5px!important;
  font-size:12.5px!important;
  line-height:1.4!important;
}

/* Field-specific notices */
.cp-residence-doc-hint{
  padding:10px 12px!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
.cashpe-readonly-location,
.cashpe-location-status,
.cashpe-location-help{
  font-size:12.5px!important;
  line-height:1.45!important;
}

/* OTP area */
.cp-mobile-verify-head p{
  display:block!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
.cp-otp-sent-bar{
  font-size:12.5px!important;
  line-height:1.4!important;
}
.cp-change-mobile-btn{
  font-size:12px!important;
}
.cashpe-otp-actions{
  font-size:12px!important;
  line-height:1.4!important;
}
.cashpe-otp-actions button{
  font-size:12px!important;
}
.cp-otp-continue-note{
  font-size:11.5px!important;
  line-height:1.4!important;
}
.cashpe-success-compact{
  font-size:12.5px!important;
  line-height:1.45!important;
}

/* Buttons and form-level messages */
.thm-btn,
.cashpe-secondary-btn{
  min-height:48px!important;
  padding:12px 25px!important;
  font-size:14.5px!important;
  line-height:1.25!important;
}
.cashpe-message{
  font-size:13px!important;
  line-height:1.45!important;
  padding:10px 13px!important;
}

/* Application checks / review */
.cashpe-review-card{
  padding:15px!important;
}
.cashpe-review-card h3{
  font-size:16px!important;
  line-height:1.35!important;
}
.cashpe-review-card li{
  margin:7px 0!important;
  font-size:13.5px!important;
  line-height:1.45!important;
}

/* Consent rows: one visual rhythm for every consent */
.cashpe-consent-list{
  gap:8px!important;
  margin-top:12px!important;
}
.cashpe-consent-list .cashpe-consent-row,
.cashpe-consent-list .cashpe-tenure-consent{
  grid-template-columns:20px minmax(0,1fr)!important;
  column-gap:10px!important;
  padding:8px 9px!important;
  font-size:14px!important;
  line-height:1.5!important;
}
.cashpe-consent-list .cashpe-consent-row input[type="checkbox"]{
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  margin-top:1px!important;
}
.cashpe-tenure-consent-note{
  margin:-1px 0 0 30px!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
.cashpe-tenure-consent-error,
.cashpe-consent-group-error{
  margin:-2px 0 0 30px!important;
  font-size:12.5px!important;
  line-height:1.4!important;
}
.cashpe-sprint-note{
  font-size:12.5px!important;
  line-height:1.45!important;
  padding:10px 12px!important;
}

/* Tablet: retain comfortable density */
@media(max-width:991px){
  .cashpe-wizard-top h2{font-size:23px!important}
  .cashpe-wizard-top p{font-size:13.5px!important}
  .cashpe-step-list em{font-size:12px!important}
  .cp-section-title,.cp-mobile-verify-head .cp-section-title{font-size:16px!important}
  .form-group label,.cp-otp-field label{font-size:13.5px!important}
  .form-control{font-size:16px!important}
  .cashpe-hint,.cashpe-optional,.cp-field-hint{font-size:12.5px!important}
}

/* Mobile: 16px controls prevent browser zoom and remain easy to scan/tap. */
@media(max-width:767px){
  .cashpe-wizard-top{
    padding:14px 14px 9px!important;
  }
  .cashpe-eyebrow{
    font-size:10px!important;
  }
  .cashpe-wizard-top h2{
    font-size:21px!important;
    line-height:1.2!important;
  }
  .cashpe-wizard-top p{
    display:block!important;
    max-width:none!important;
    font-size:12.5px!important;
    line-height:1.45!important;
  }
  .cashpe-step-counter{
    font-size:11px!important;
    padding:6px 8px!important;
  }
  .cashpe-step-list{
    padding:8px 6px 4px!important;
  }
  .cashpe-step-list button{
    gap:3px!important;
  }
  .cashpe-step-list button span{
    width:23px!important;
    height:23px!important;
    font-size:10.5px!important;
  }
  .cashpe-step-list em{
    font-size:10.5px!important;
  }

  #applyNowV2Form{
    padding:6px 11px 15px!important;
  }
  .cp-section-card{
    padding:13px 12px!important;
    margin-bottom:10px!important;
  }
  .cp-section-title,
  .cp-mobile-verify-head .cp-section-title{
    font-size:15px!important;
    line-height:1.35!important;
    margin-bottom:10px!important;
    padding-bottom:7px!important;
  }
  .form-group{
    margin-bottom:11px!important;
  }
  .form-group label,
  .cp-otp-field label{
    font-size:13.5px!important;
    line-height:1.35!important;
    margin-bottom:5px!important;
  }
  .form-control{
    height:48px!important;
    padding:10px 11px!important;
    font-size:16px!important;
  }
  .form-control::placeholder{
    font-size:14px!important;
  }
  .cashpe-hint,
  .cashpe-optional,
  .cp-field-hint{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .field-error{
    font-size:12px!important;
    line-height:1.4!important;
  }
  .cashpe-optional-inline{
    font-size:10px!important;
  }
  .cp-inline-toggle{
    font-size:12px!important;
  }
  .cp-last-day-btn{
    min-height:48px!important;
    font-size:13px!important;
  }
  .cp-salary-date-preview{
    font-size:12px!important;
    line-height:1.4!important;
  }
  .cp-residence-doc-hint,
  .cashpe-readonly-location{
    font-size:12px!important;
    line-height:1.45!important;
  }
  .cp-mobile-verify-head p{
    display:block!important;
    font-size:12px!important;
  }
  .cp-otp-sent-bar{
    font-size:12px!important;
  }
  .cashpe-otp-actions,
  .cashpe-otp-actions button{
    font-size:11.5px!important;
  }
  .cp-otp-continue-note{
    font-size:11px!important;
  }
  .thm-btn,
  .cashpe-secondary-btn{
    min-height:48px!important;
    padding:11px 15px!important;
    font-size:14px!important;
  }
  .cashpe-review-card h3{
    font-size:15px!important;
  }
  .cashpe-review-card li{
    font-size:13px!important;
    line-height:1.45!important;
  }
  .cashpe-consent-list .cashpe-consent-row,
  .cashpe-consent-list .cashpe-tenure-consent{
    grid-template-columns:20px minmax(0,1fr)!important;
    column-gap:9px!important;
    padding:8px 7px!important;
    font-size:13.5px!important;
    line-height:1.5!important;
  }
  .cashpe-consent-list .cashpe-consent-row input[type="checkbox"]{
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
  }
  .cashpe-tenure-consent-note{
    margin-left:29px!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
  .cashpe-tenure-consent-error,
  .cashpe-consent-group-error{
    margin-left:29px!important;
    font-size:12px!important;
  }
  .cashpe-sprint-note{
    font-size:12px!important;
    line-height:1.45!important;
  }
}

@media(max-width:380px){
  .cashpe-step-list em{font-size:10px!important}
  .cashpe-consent-list .cashpe-consent-row,
  .cashpe-consent-list .cashpe-tenure-consent{font-size:13px!important}
}


/* =========================================================
   V6.8 — Premium saved-application modal only
   Scoped intentionally so the application form layout/UI is unchanged.
========================================================= */
@keyframes cpResumeBackdropIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes cpResumeCardIn {
  from { opacity: 0; transform: translateY(12px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.cp-premium-resume-overlay {
  animation: cpResumeBackdropIn .18s ease-out both;
}
.cp-premium-resume-card {
  animation: cpResumeCardIn .24s cubic-bezier(.2,.8,.2,1) both;
}
.cp-premium-resume-card .cp-start-new-link {
  transition: background-color .16s ease, color .16s ease;
}
.cp-premium-resume-card .cp-start-new-link:hover {
  background: #f8fafc !important;
  color: #111827 !important;
}
@media (prefers-reduced-motion: reduce) {
  .cp-premium-resume-overlay,
  .cp-premium-resume-card {
    animation: none !important;
  }
}
@media (max-width: 575.98px) {
  .cp-premium-resume-overlay { padding: 14px !important; }
  .cp-premium-resume-card { padding: 26px 20px 22px !important; border-radius: 22px !important; }
  .cp-premium-resume-card h3 { font-size: 26px !important; }
}


/* =========================================================
   V6.11 — Premium blocking business-rule alert
========================================================= */
@keyframes cpSubmitAlertIn {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}
.cashpe-submit-blocking-alert {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  margin: 0 0 14px;
  padding: 17px 18px;
  border: 1px solid #f3d2d2;
  border-radius: 16px;
  background: linear-gradient(180deg,#fffafa 0%,#fff 100%);
  box-shadow: 0 10px 28px rgba(127,29,29,.055);
  outline: none;
  animation: cpSubmitAlertIn .2s ease-out both;
}
.cashpe-submit-blocking-alert.is-business-block { border-left: 3px solid #ef4444; }
.cashpe-submit-blocking-alert:focus {
  box-shadow: 0 0 0 3px rgba(239,68,68,.09), 0 10px 28px rgba(127,29,29,.055);
}
.cashpe-submit-alert-icon {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #fff1f2;
  color: #dc2626;
  font-size: 17px;
  border: 1px solid #ffe4e6;
}
.cashpe-submit-alert-body h3 {
  margin: 1px 0 5px;
  color: #7f1d1d;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 800;
}
.cashpe-submit-alert-message {
  margin: 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.55;
}
.cashpe-submit-alert-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 12px;
}
.cashpe-submit-alert-meta-item {
  min-width: 150px;
  padding: 9px 12px;
  border-radius: 11px;
  background: #fff;
  border: 1px solid #eef2f7;
}
.cashpe-submit-alert-meta-item span {
  display: block;
  margin-bottom: 2px;
  color: #64748b;
  font-size: 11.5px;
  line-height: 1.3;
  font-weight: 700;
}
.cashpe-submit-alert-meta-item strong {
  display: block;
  color: #0f172a;
  font-size: 13.5px;
  line-height: 1.35;
  font-weight: 800;
}
.cashpe-submit-alert-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 13px;
}
.cashpe-submit-alert-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 15px;
  border-radius: 11px;
  background: linear-gradient(135deg,#8b5cf6 0%,#a855f7 100%);
  color: #fff !important;
  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: 0 9px 22px rgba(139,92,246,.18);
}
.cashpe-submit-alert-primary i { font-size: 11px; }
.cashpe-submit-alert-primary:hover { transform: translateY(-1px); box-shadow: 0 12px 25px rgba(139,92,246,.23); }
.cashpe-submit-alert-support {
  color: #475569 !important;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
#saveApplicationBtn.cashpe-submit-business-blocked {
  opacity: .58;
  cursor: not-allowed;
  box-shadow: none !important;
  filter: saturate(.65);
}
@media (max-width: 575.98px) {
  .cashpe-submit-blocking-alert {
    grid-template-columns: 38px minmax(0,1fr);
    gap: 11px;
    padding: 14px;
    border-radius: 14px;
  }
  .cashpe-submit-alert-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    font-size: 16px;
  }
  .cashpe-submit-alert-body h3 { font-size: 16px; }
  .cashpe-submit-alert-message { font-size: 13px; }
  .cashpe-submit-alert-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .cashpe-submit-alert-meta-item { min-width: 0; padding: 8px 10px; }
  .cashpe-submit-alert-actions { align-items: stretch; flex-direction: column; gap: 9px; }
  .cashpe-submit-alert-primary { width: 100%; }
  .cashpe-submit-alert-support { text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .cashpe-submit-blocking-alert { animation: none; }
  .cashpe-submit-alert-primary { transition: none; }
}


/* =========================================================
   V6.12 — Stage-aware customer routing alert tones
========================================================= */
.cashpe-submit-blocking-alert.is-status-block {
  border-color:#ddd6fe;
  border-left-color:#8b5cf6;
  background:linear-gradient(180deg,#fbfaff 0%,#fff 100%);
  box-shadow:0 10px 28px rgba(91,33,182,.055);
}
.cashpe-submit-blocking-alert.is-status-block:focus {
  box-shadow:0 0 0 3px rgba(139,92,246,.10),0 10px 28px rgba(91,33,182,.055);
}
.cashpe-submit-blocking-alert.is-status-block .cashpe-submit-alert-icon {
  background:#f5f3ff;
  color:#7c3aed;
  border-color:#ede9fe;
}
.cashpe-submit-blocking-alert.is-status-block .cashpe-submit-alert-body h3 { color:#312e81; }

.cashpe-submit-blocking-alert.is-warning-block {
  border-color:#fde3a7;
  border-left-color:#f59e0b;
  background:linear-gradient(180deg,#fffcf5 0%,#fff 100%);
  box-shadow:0 10px 28px rgba(146,64,14,.05);
}
.cashpe-submit-blocking-alert.is-warning-block:focus {
  box-shadow:0 0 0 3px rgba(245,158,11,.10),0 10px 28px rgba(146,64,14,.05);
}
.cashpe-submit-blocking-alert.is-warning-block .cashpe-submit-alert-icon {
  background:#fffbeb;
  color:#d97706;
  border-color:#fde68a;
}
.cashpe-submit-blocking-alert.is-warning-block .cashpe-submit-alert-body h3 { color:#92400e; }

.cashpe-submit-blocking-alert.is-danger-block {
  border-color:#f3d2d2;
  border-left-color:#ef4444;
}


/* ==============================================================
   CashPe Apply Now V6.13 — Employment Information readability
   Copy-only UI refinement plus extra breathing room between rows.
   No field order, workflow, validation rule, or business logic change.
   ============================================================== */
.cp-employment-card .cp-compact-grid{
  row-gap:6px;
}
.cp-employment-card .form-group{
  margin-bottom:18px!important;
}
.cp-employment-card .cp-salary-date-preview{
  margin-top:6px!important;
}

@media(max-width:767px){
  .cp-employment-card .cp-compact-grid{
    row-gap:3px;
  }
  .cp-employment-card .form-group{
    margin-bottom:15px!important;
  }
}

/* DOB UX: typed DD/MM/YYYY + native calendar, while birth_date remains ISO for backend compatibility. */
.cp-dob-input-wrap {
  position: relative;
}
.cp-dob-display {
  padding-right: 46px !important;
}
.cp-dob-calendar-btn {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #5f6775;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
}
.cp-dob-calendar-btn:hover,
.cp-dob-calendar-btn:focus {
  background: rgba(111, 76, 255, 0.08);
  color: #6f4cff;
  outline: none;
}
.cp-dob-native-picker {
  position: absolute;
  right: 8px;
  top: 50%;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-50%);
}


/* V4 current residential address enhancement */
.cp-residential-address {
    min-height: 74px;
    resize: vertical;
    line-height: 1.45;
}
.cashpe-field-help {
    display: block;
    margin-top: 6px;
    color: #7b8498;
    font-size: 12px;
    line-height: 1.4;
}

/* ==============================================================
   CashPe Apply Now V6.14 — Premium NBFC compact visual system
   Build: 2026-10-10
   Presentation only. No IDs, names, validation, JS hooks, workflow,
   endpoint or backend behavior is changed.
   ============================================================== */
:root{
  --cp-premium-ink:#172033;
  --cp-premium-muted:#667085;
  --cp-premium-line:#e4e9f2;
  --cp-premium-soft:#f7f8fc;
  --cp-premium-violet:#8b5cf6;
}

/* Keep the entire application journey typographically consistent. */
#applyNowV2Form,
.cashpe-wizard-shell,
.cashpe-wizard-shell button,
.cashpe-wizard-shell input,
.cashpe-wizard-shell select,
.cashpe-wizard-shell textarea{
  font-family:inherit!important;
}

.cashpe-wizard-shell .form-group label,
.cashpe-wizard-shell .cp-otp-field label{
  color:var(--cp-premium-ink)!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:700!important;
  margin-bottom:5px!important;
  letter-spacing:0!important;
}

.cashpe-wizard-shell .form-control{
  min-height:46px!important;
  height:46px!important;
  padding:10px 12px!important;
  border:1px solid #d8dee9!important;
  border-radius:10px!important;
  color:var(--cp-premium-ink)!important;
  background:#fff!important;
  font-size:14px!important;
  line-height:1.35!important;
  box-shadow:none!important;
}
.cashpe-wizard-shell textarea.form-control{
  height:auto!important;
  min-height:66px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
.cashpe-wizard-shell .form-control:focus{
  border-color:#a78bfa!important;
  box-shadow:0 0 0 3px rgba(139,92,246,.10)!important;
}
.cashpe-wizard-shell .form-control::placeholder{
  color:#98a2b3!important;
  font-size:13.5px!important;
}
.cashpe-wizard-shell select.form-control{
  padding-right:34px!important;
}
.cashpe-wizard-shell .field-error{
  margin-top:4px!important;
  font-size:10.5px!important;
  line-height:1.3!important;
}
.cashpe-wizard-shell .cashpe-field-help,
.cashpe-wizard-shell .cashpe-hint,
.cashpe-wizard-shell .cp-field-hint{
  margin-top:4px!important;
  color:#7b8498!important;
  font-size:10.5px!important;
  line-height:1.35!important;
}

/* Desktop: remove the tall marketing column and put the loan form first. */
@media(min-width:992px){
  .page-header{
    min-height:0!important;
    padding-bottom:28px!important;
  }
  .page-header>.container{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }
  .page-header .thm-breadcrumb{
    margin-bottom:7px!important;
    font-size:10px!important;
  }
  .page-header .container h1,
  .page-header #heroTitle{
    max-width:760px!important;
    margin:5px 0 5px!important;
    font-size:31px!important;
    line-height:1.08!important;
    letter-spacing:-.55px!important;
  }
  .page-header .apply-hero-subtitle,
  .page-header #heroSubtitle{
    max-width:760px!important;
    margin:0!important;
    font-size:12.5px!important;
    line-height:1.4!important;
  }
  .page-header .loan-highlights-row{
    bottom:-16px!important;
    width:min(900px,calc(100% - 40px))!important;
    max-width:900px!important;
    padding:7px 13px!important;
    border-radius:18px!important;
  }
  .page-header .loan-highlights-row span{
    font-size:11px!important;
    line-height:1.2!important;
  }
  .loan-eligibility-wrap{
    margin-top:20px!important;
  }
  .loan-eligibility-wrap .loan-eligibility{
    padding:5px 10px!important;
    font-size:10px!important;
    border-radius:999px!important;
    box-shadow:none!important;
  }

  section.cashpe-v2-section{
    padding:14px 0 38px!important;
    background:linear-gradient(180deg,#f7f8fc 0%,#fbfcfe 100%)!important;
  }
  section.cashpe-v2-section>.container{
    max-width:1060px!important;
  }
  section.cashpe-v2-section .cashpe-v4-layout{
    display:block!important;
    width:100%!important;
    max-width:980px!important;
    margin:0 auto!important;
  }
  section.cashpe-v2-section .cashpe-v4-side{
    display:none!important;
  }
  section.cashpe-v2-section .cashpe-wizard-shell{
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    border:1px solid #e3e8f1!important;
    border-radius:18px!important;
    box-shadow:0 16px 45px rgba(31,41,55,.08)!important;
    overflow:hidden!important;
  }

  .cashpe-wizard-top{
    padding:15px 20px 9px!important;
  }
  .cashpe-eyebrow{
    font-size:9.5px!important;
    letter-spacing:.09em!important;
  }
  .cashpe-wizard-top h2{
    margin-top:2px!important;
    font-size:22px!important;
    line-height:1.18!important;
    letter-spacing:-.3px!important;
  }
  .cashpe-wizard-top p{
    margin-top:3px!important;
    font-size:12px!important;
    line-height:1.4!important;
  }
  .cashpe-step-counter{
    padding:6px 9px!important;
    font-size:10.5px!important;
  }
  .cashpe-progress-track{
    height:3px!important;
  }
  .cashpe-step-list{
    padding:8px 20px 7px!important;
    border-bottom:1px solid #eef1f5!important;
  }
  .cashpe-step-list button{
    font-size:11px!important;
    gap:5px!important;
  }
  .cashpe-step-list button span{
    width:24px!important;
    height:24px!important;
    font-size:10.5px!important;
  }
  .cashpe-step-list em{
    font-size:11px!important;
  }

  #applyNowV2Form{
    padding:10px 20px 16px!important;
  }
  .cp-section-card{
    padding:13px 14px!important;
    margin-bottom:9px!important;
    border:1px solid #e5e9f1!important;
    border-radius:13px!important;
    box-shadow:none!important;
  }
  .cp-section-title,
  .cp-mobile-verify-head .cp-section-title{
    margin-bottom:9px!important;
    padding-bottom:7px!important;
    font-size:14.5px!important;
    line-height:1.3!important;
  }
  .form-group,
  .cp-employment-card .form-group,
  .cp-contact-residence-card .form-group,
  .cp-compact-grid .form-group{
    margin-bottom:9px!important;
  }
  .row.cp-compact-grid{
    margin-left:-7px!important;
    margin-right:-7px!important;
  }
  .row.cp-compact-grid>[class*="col-"]{
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .cp-residential-address{
    min-height:62px!important;
    resize:vertical!important;
  }
  .cashpe-readonly-location{
    margin-bottom:7px!important;
    padding:7px 9px!important;
    border-radius:9px!important;
    font-size:10.5px!important;
  }
  .cp-inline-toggle{
    min-height:20px!important;
    margin-bottom:4px!important;
    font-size:11px!important;
  }

  /* Button system shared by all four steps. */
  .cashpe-wizard-shell .thm-btn,
  .cashpe-wizard-shell .cashpe-secondary-btn{
    min-height:43px!important;
    padding:10px 20px!important;
    border-radius:9px!important;
    font-size:12px!important;
    font-weight:750!important;
  }
  .cashpe-wizard-actions{
    position:sticky!important;
    bottom:0!important;
    z-index:8!important;
    margin:3px -4px -2px!important;
    padding:10px 4px 2px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.82),#fff 34%)!important;
    border-top:1px solid #eef1f5!important;
    box-shadow:0 -8px 20px rgba(31,41,55,.035)!important;
  }

  /* Keep Step 3 especially compact without looking cramped. */
  .cashpe-form-step[data-step="3"] .cp-contact-residence-card{
    padding-bottom:10px!important;
  }
  .cashpe-form-step[data-step="3"] #state_city{
    margin-top:-1px!important;
  }

  /* Step 4 legal copy remains readable while following the same type scale. */
  .cashpe-review-card{
    padding:10px 11px!important;
  }
  .cashpe-review-card h3{
    font-size:13.5px!important;
  }
  .cashpe-review-card li,
  .cashpe-consent-list label,
  .cashpe-toggle-row{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .cashpe-consent-list{
    gap:6px!important;
    margin-top:8px!important;
  }
  .cashpe-consent-row{
    padding-top:5px!important;
    padding-bottom:5px!important;
  }
}

/* Tablet/mobile: retain the one-column journey but keep the same font hierarchy. */
@media(max-width:991px){
  .cashpe-wizard-shell .form-group label,
  .cashpe-wizard-shell .cp-otp-field label{
    font-size:12px!important;
  }
  .cashpe-wizard-shell .form-control{
    min-height:46px!important;
    height:46px!important;
    font-size:14px!important;
  }
  .cashpe-wizard-shell textarea.form-control{
    height:auto!important;
    min-height:64px!important;
  }
}

@media(max-width:767px){
  .cashpe-wizard-shell .form-group label,
  .cashpe-wizard-shell .cp-otp-field label{
    font-size:11.5px!important;
  }
  .cashpe-wizard-shell .form-control{
    min-height:45px!important;
    height:45px!important;
    font-size:13.5px!important;
  }
  .cashpe-wizard-shell .form-control::placeholder{
    font-size:13px!important;
  }
  .cashpe-wizard-shell textarea.form-control{
    min-height:66px!important;
  }
}

/* ==============================================================
   CashPe Apply Now V6.14.1 — Premium desktop layout with trust panel
   Build: 2026-10-10
   Restores the CashPe left trust panel while retaining the compact
   premium NBFC form system. Presentation-only override.
   ============================================================== */
@media(min-width:992px){
  section.cashpe-v2-section>.container{
    max-width:1180px!important;
  }

  section.cashpe-v2-section .cashpe-v4-layout{
    display:grid!important;
    grid-template-columns:minmax(220px,255px) minmax(0,820px)!important;
    gap:18px!important;
    align-items:start!important;
    justify-content:center!important;
    width:100%!important;
    max-width:1110px!important;
    margin:0 auto!important;
  }

  section.cashpe-v2-section .cashpe-v4-side{
    display:block!important;
    position:sticky!important;
    top:18px!important;
    padding:22px 19px!important;
    border-radius:18px!important;
    min-height:0!important;
    background:linear-gradient(155deg,#182238 0%,#24324c 100%)!important;
    box-shadow:0 16px 38px rgba(20,30,50,.14)!important;
  }
  section.cashpe-v2-section .cashpe-v4-side:after{
    width:170px!important;
    height:170px!important;
    right:-82px!important;
    bottom:-88px!important;
    opacity:.75!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-label{
    font-size:9px!important;
    line-height:1.25!important;
    letter-spacing:.11em!important;
  }
  section.cashpe-v2-section .cashpe-v4-side h2{
    margin:9px 0 8px!important;
    font-size:20px!important;
    line-height:1.18!important;
    letter-spacing:-.25px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side>p{
    margin:0 0 16px!important;
    color:#c9d3e2!important;
    font-size:11.5px!important;
    line-height:1.5!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list{
    gap:12px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list>div{
    gap:9px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list i{
    flex:0 0 24px!important;
    width:24px!important;
    height:24px!important;
    border-radius:7px!important;
    font-size:10px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list strong{
    font-size:11.5px!important;
    line-height:1.25!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list small{
    margin-top:2px!important;
    color:#afbdd0!important;
    font-size:10px!important;
    line-height:1.35!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-note{
    margin-top:16px!important;
    padding:10px 11px!important;
    border-radius:11px!important;
    font-size:9.8px!important;
    line-height:1.45!important;
  }

  section.cashpe-v2-section .cashpe-wizard-shell{
    width:100%!important;
    max-width:820px!important;
  }
}

/* Tablet: keep the reassurance content, but place it above the form. */
@media(min-width:768px) and (max-width:991px){
  section.cashpe-v2-section .cashpe-v4-side{
    display:block!important;
    position:relative!important;
    top:auto!important;
    margin-bottom:14px!important;
    padding:17px 18px!important;
    border-radius:16px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side h2{
    margin:7px 0 5px!important;
    font-size:19px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side>p{
    margin-bottom:12px!important;
    font-size:11.5px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-list{
    grid-template-columns:repeat(3,1fr)!important;
    gap:10px!important;
  }
  section.cashpe-v2-section .cashpe-v4-side-note{
    display:none!important;
  }
}

/* =========================================================
   V6.14 — Premium Step 3 compact layout + control alignment
   UI only: no application/business-rule changes.
========================================================= */
.cp-contact-residence-card .cp-contact-residence-grid > [class*="col-"]{
  min-width:0;
}
.cp-contact-residence-card .cp-pin-location-row,
.cp-contact-residence-card .cp-pin-resolved-row{
  margin-left:-8px;
  margin-right:-8px;
}
.cp-contact-residence-card .cp-pin-location-row > [class*="col-"],
.cp-contact-residence-card .cp-pin-resolved-row > [class*="col-"]{
  padding-left:8px;
  padding-right:8px;
}
.cp-contact-residence-card .cp-whatsapp-group .cp-inline-toggle{
  min-height:48px;
  margin:0;
  padding:0 12px;
  border:1px solid #d8dee9;
  border-radius:12px;
  background:#fff;
  display:flex;
  align-items:center;
  gap:8px;
}
.cp-contact-residence-card .cp-whatsapp-group .cp-inline-toggle input{
  margin:0;
  flex:0 0 auto;
}
.cp-contact-residence-card .cp-whatsapp-group .cp-inline-toggle span{
  font-size:13px;
  line-height:1.3;
  font-weight:700;
  color:#475467;
}
.cp-contact-residence-card .cp-residential-address{
  min-height:64px!important;
  height:64px!important;
  resize:vertical;
  padding-top:12px!important;
}
.cp-contact-residence-card .cp-readonly-field{
  background:#f8fafc!important;
  color:#26354d!important;
  border-color:#d9e1ec!important;
  cursor:default;
  font-weight:700;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.04);
}
.cp-contact-residence-card .cp-readonly-field:focus{
  border-color:#d9e1ec!important;
  box-shadow:none!important;
}
.cp-contact-residence-card .cashpe-field-help{
  display:block;
  margin-top:5px;
  color:#8a94a6;
  font-size:10.5px;
  line-height:1.35;
}

/* Currency prefix: reserve visual space so ₹ never overlaps the value. */
.cashpe-amount-wrap{
  position:relative;
}
.cashpe-amount-wrap > span{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  pointer-events:none;
  font-size:14px;
  line-height:1;
  font-weight:800;
  color:#667085;
}
.cashpe-amount-wrap > .form-control{
  padding-left:34px!important;
  padding-right:14px!important;
}

/* Native select arrow breathing room across the full Apply Now journey. */
.cashpe-application-shell select.form-control,
.cashpe-form-card select.form-control,
.cp-section-card select.form-control{
  padding-right:40px!important;
  background-position:right 13px center!important;
}

@media (min-width:992px){
  .cp-contact-residence-card .cp-contact-residence-grid{
    row-gap:2px;
  }
  .cp-contact-residence-card .form-group{
    margin-bottom:13px!important;
  }
}
@media (max-width:991.98px){
  .cp-contact-residence-card .cp-whatsapp-group .cp-inline-toggle{
    min-height:46px;
  }
}
@media (max-width:767.98px){
  .cp-contact-residence-card .cp-pin-location-row > [class*="col-"],
  .cp-contact-residence-card .cp-pin-resolved-row > [class*="col-"]{
    margin-bottom:0;
  }
  .cp-contact-residence-card .cp-residential-address{
    min-height:76px!important;
    height:76px!important;
  }
}

/* =========================================================
   2026-10-10 FINAL FIELD ALIGNMENT HOTFIX
   Fixes: currency prefix overlap + select arrow spacing
   ========================================================= */

/* Real money wrappers used by Apply Now */
.cashpe-application-shell .cp-money-field,
.cashpe-application-shell .cashpe-amount-wrap,
.cashpe-form-card .cp-money-field,
.cashpe-form-card .cashpe-amount-wrap,
.cp-section-card .cp-money-field,
.cp-section-card .cashpe-amount-wrap {
  position: relative !important;
  width: 100% !important;
}

.cashpe-application-shell .cp-money-field::before,
.cashpe-form-card .cp-money-field::before,
.cp-section-card .cp-money-field::before,
.cashpe-application-shell .cashpe-amount-wrap > span,
.cashpe-form-card .cashpe-amount-wrap > span,
.cp-section-card .cashpe-amount-wrap > span {
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 14px !important;
  height: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 18px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #667085 !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

.cashpe-application-shell .cp-money-field .form-control,
.cashpe-application-shell .cashpe-amount-wrap .form-control,
.cashpe-form-card .cp-money-field .form-control,
.cashpe-form-card .cashpe-amount-wrap .form-control,
.cp-section-card .cp-money-field .form-control,
.cp-section-card .cashpe-amount-wrap .form-control {
  padding-left: 42px !important;
  padding-right: 14px !important;
  text-indent: 0 !important;
}

/* Fully control select arrow instead of depending on browser native spacing. */
.cashpe-application-shell select.form-control,
.cashpe-form-card select.form-control,
.cp-section-card select.form-control,
section.cashpe-v2-section select.form-control {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  padding-left: 14px !important;
  padding-right: 46px !important;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23667085' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  background-size: 12px 8px !important;
}

.cashpe-application-shell select.form-control:focus,
.cashpe-form-card select.form-control:focus,
.cp-section-card select.form-control:focus,
section.cashpe-v2-section select.form-control:focus {
  background-position: right 16px center !important;
}

/* Keep read-only PIN-derived fields visually intentional. */
.cp-readonly-location,
input[readonly].cp-readonly-location {
  padding-left: 14px !important;
  padding-right: 14px !important;
}

@media (max-width: 767.98px) {
  .cashpe-application-shell .cp-money-field .form-control,
  .cashpe-application-shell .cashpe-amount-wrap .form-control,
  .cashpe-form-card .cp-money-field .form-control,
  .cashpe-form-card .cashpe-amount-wrap .form-control,
  .cp-section-card .cp-money-field .form-control,
  .cp-section-card .cashpe-amount-wrap .form-control {
    padding-left: 40px !important;
  }

  .cashpe-application-shell select.form-control,
  .cashpe-form-card select.form-control,
  .cp-section-card select.form-control,
  section.cashpe-v2-section select.form-control {
    padding-right: 44px !important;
    background-position: right 14px center !important;
  }
}
