/**
 * Enrich Onboarding — front-end wizard styles.
 *
 * Design tokens, typography, spacing, colours and animations are
 * preserved from the original reference HTML. All selectors are
 * scoped under .eo-wrap and prefixed "eo-" so the plugin never
 * collides with the active theme's styles.
 */

.eo-wrap, .eo-wrap * { box-sizing: border-box; }

.eo-wrap {
	--eo-green-900:#2f4a1f; --eo-green-700:#4a7a2c; --eo-green-600:#6aa03e; --eo-green-500:#7cae4c;
	--eo-green-100:#eef4e6; --eo-green-050:#f6f9f1;
	--eo-ink:#1d2417; --eo-muted:#6d7766; --eo-line:#dfe6d4; --eo-white:#fff; --eo-err:#b23b3b;
	--eo-radius:15px; 

	font-family:'Rethink sans',sans-serif;
	color:var(--eo-ink);
	background:radial-gradient(1200px 500px at 80% -10%,#eaf2df 0,transparent 60%),radial-gradient(900px 600px at -10% 110%,#e6efd9 0,transparent 55%),#fbfdf8;
	line-height:1.6;
	width:100%;
	max-width:900px;
	margin:0 auto;
	padding:15px;border-radius: 20px;
}

.eo-brand{display:none;align-items:center;gap:14px;margin-bottom:22px}
.eo-brand .eo-tree{width:46px;height:46px;flex:none;border-radius:12px;background:var(--eo-green-100);display:grid;place-items:center;color:var(--eo-green-700)}
.eo-brand h1{font-family:'Playfair Display',serif;font-weight:600;font-size:25px;color:var(--eo-green-900);line-height:1;margin:0}
.eo-brand span{display:block;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--eo-muted);margin-top:4px;font-weight:500}

.eo-card{background:var(--eo-white);border:1px solid var(--eo-line);border-radius:var(--eo-radius);box-shadow:var(--eo-shadow);overflow:hidden}
.eo-card-head{background:linear-gradient(120deg,var(--eo-green-700),var(--eo-green-600));color:#fff;padding:24px 30px}
.eo-card-head .eo-eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;opacity:.85;font-weight:500}
.eo-card-head h2{font-family:'Playfair Display',serif;font-weight:500;font-size:23px;margin:4px 0 0}

.eo-steps{display:flex;gap:5px;padding:16px 30px 0}
.eo-steps .eo-bar{flex:1;height:4px;border-radius:99px;background:var(--eo-green-100);overflow:hidden}
.eo-steps .eo-bar i{display:block;height:100%;width:0;background:var(--eo-green-600);transition:width .4s}
.eo-steps .eo-bar.eo-done i{width:100%}
.eo-steps .eo-bar.eo-active i{width:55%}
.eo-step-label{padding:10px 30px 0;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--eo-green-700);font-weight:600}

.eo-body{padding:22px 30px 28px}
.eo-panel{display:none;animation:eo-fade .35s}
.eo-panel.eo-active{display:block}
@keyframes eo-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.eo-lead{font-family:'Playfair Display',serif;font-size:19px;color:var(--eo-green-900);margin-bottom:3px;font-weight:500}
.eo-lead.eo-mt{margin-top:26px}
.eo-sub{color:var(--eo-muted);font-size:13.5px;margin-bottom:18px}

.eo-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.eo-field{margin-bottom:16px}
.eo-field.full{grid-column:1/-1}
.eo-field>label{display:block;font-weight:500;font-size:13.5px;margin-bottom:6px}
.eo-field .eo-hint{font-size:12px;color:var(--eo-muted);font-weight:400}

/* Required-field marker.
   Driven off the same data-eo-required attributes the validator uses,
   so every required field is marked automatically — including the
   Financial Profiling, Investment Knowledge and Risk Profiling blocks
   that are generated in JS, and nominee cards cloned at runtime.
   aria-hidden is not possible from CSS, so the asterisk is decorative
   only; each field still carries its own visible error message. */
.eo-field[data-eo-required]>label::after,
.eo-qblock[data-eo-required]>label::after,
.eo-krow[data-eo-required]>.eo-asset::after,
.eo-docslot[data-eo-required-doc]>label::after{
	content:" *";
	color:var(--eo-err);
	font-weight:600;
}

.eo-wrap input[type=text],
.eo-wrap input[type=email],
.eo-wrap input[type=tel],
.eo-wrap input[type=date],
.eo-wrap input[type=number],
.eo-wrap textarea,
.eo-wrap select{
	width:100%;padding:11px 13px;border:1px solid var(--eo-line);border-radius:9px;font-family:inherit;font-size:14.5px;
	color:var(--eo-ink);background:#fff;transition:border .2s,box-shadow .2s;
}
.eo-wrap textarea{resize:vertical;min-height:62px}
.eo-wrap input:focus,.eo-wrap textarea:focus,.eo-wrap select:focus{outline:none;border-color:var(--eo-green-500);background:#fff}
.eo-wrap input[readonly]{background:#eef1ea;color:var(--eo-muted)}

.eo-choices{display:flex;flex-wrap:wrap;gap:9px}
.eo-choice{position:relative;flex:1 1 auto;min-width:120px}
.eo-choice input{position:absolute;opacity:0;inset:0;cursor:pointer}
.eo-choice span{display:block;text-align:center;padding:11px 13px;border:1px solid var(--eo-line);border-radius:9px;font-size:13.5px;background:#fff;transition:.18s;cursor:pointer}
.eo-choice input:checked+span{border-color:var(--eo-green-600);background:var(--eo-green-050);box-shadow:0 0 0 2px rgba(124,174,76,.25);font-weight:500;color:var(--eo-green-900)}

.eo-ifsc-row{display:flex;gap:8px}
.eo-ifsc-row input{flex:1}
.eo-ifsc-row .eo-btn{flex:none;padding:11px 16px;font-size:13px}

.eo-qblock{margin-bottom:20px}
.eo-qblock>label{display:block;font-weight:500;font-size:14px;margin-bottom:8px}
.eo-opttable{display:flex;flex-direction:column;gap:7px}
.eo-opt{position:relative}
.eo-opt input{position:absolute;opacity:0;inset:0;cursor:pointer}
.eo-opt span{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border:1px solid var(--eo-line);border-radius:9px;font-size:13.5px;background:#fff;cursor:pointer;transition:.15s}
.eo-opt input:checked+span{border-color:var(--eo-green-600);background:var(--eo-green-050);box-shadow:0 0 0 2px rgba(124,174,76,.22);font-weight:500;color:var(--eo-green-900)}

.eo-live{margin-top:22px;border-top:1px solid var(--eo-line);padding-top:18px;text-align:center}
.eo-cat{display:inline-block;margin-top:8px;padding:8px 22px;border-radius:99px;font-weight:600;letter-spacing:.5px;background:var(--eo-green-100);color:var(--eo-green-900)}

.eo-terms{border:1px solid var(--eo-line);border-radius:10px;background:var(--eo-green-050);padding:6px 4px;max-height:280px;overflow-y:auto}
.eo-terms ol{margin:0;padding:10px 22px}
.eo-terms li{font-size:13px;color:#3a4533;margin-bottom:11px;line-height:1.55}

.eo-ack{display:flex;gap:11px;align-items:flex-start;margin-top:16px;padding:13px 15px;border:1px solid var(--eo-line);border-radius:10px;background:#fff}
.eo-ack input{margin-top:3px;width:18px;height:18px;accent-color:var(--eo-green-600);flex:none}
.eo-ack label{font-size:13.5px;cursor:pointer}

.eo-drop{border:2px dashed var(--eo-line);border-radius:12px;padding:24px;text-align:center;background:var(--eo-green-050);cursor:pointer;transition:.2s}
.eo-drop:hover,.eo-drop.eo-over{border-color:var(--eo-green-500);background:var(--eo-green-100)}
.eo-drop .eo-ico{font-size:26px;color:var(--eo-green-600)}
.eo-drop p{margin-top:5px;font-size:13.5px}
.eo-drop small{color:var(--eo-muted)}
.eo-docslot{margin-bottom:16px}
.eo-docslot>label{display:block;font-weight:500;font-size:14px;margin-bottom:7px}
.eo-filelist{margin-top:11px;display:flex;flex-direction:column;gap:7px}
.eo-fileitem{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--eo-line);border-radius:9px;font-size:13px;background:#fff}
.eo-fileitem .eo-nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eo-fileitem .eo-sz{color:var(--eo-muted);font-size:12px}
.eo-fileitem .eo-rm{cursor:pointer;color:var(--eo-err);font-weight:600;border:none;background:none;font-size:16px}

.eo-review{border:1px solid var(--eo-line);border-radius:10px;overflow:hidden;margin-bottom:8px}
.eo-review .eo-r-section{border-bottom:1px solid var(--eo-line)}
.eo-review .eo-r-section:last-child{border-bottom:none}
.eo-review .eo-r-title{background:var(--eo-green-050);padding:9px 16px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--eo-green-700);font-weight:600}
.eo-review .eo-r-row{display:flex;justify-content:space-between;gap:14px;padding:9px 16px;font-size:13.5px;border-top:1px solid #eef1e8}
.eo-review .eo-r-row:first-of-type{border-top:none}
.eo-review .eo-r-label{color:var(--eo-muted)}
.eo-review .eo-r-value{font-weight:500;text-align:right}

.eo-err-msg{color:var(--eo-err);font-size:12.5px;margin-top:5px;display:none}
.eo-field.eo-invalid .eo-err-msg,.eo-qblock.eo-invalid .eo-err-msg,.eo-ack.eo-invalid .eo-err-msg{display:block}
.eo-field.eo-invalid input,.eo-field.eo-invalid select,.eo-field.eo-invalid textarea{border-color:var(--eo-err)}
.eo-ack.eo-invalid{border-color:var(--eo-err)}

.eo-notice{margin-top:14px;font-size:13px;padding:12px 14px;border-radius:9px;background:#fffbe9;border:1px solid #f0e4b8;color:#6a5b1e}
.eo-notice.eo-notice-error{background:#fdecec;border-color:#f2c4c4;color:#8a2f2f}
.eo-notice.eo-notice-success{background:var(--eo-green-050);border-color:var(--eo-line);color:var(--eo-green-900)}

.eo-nav{display:flex;justify-content:space-between;align-items:center;padding:18px 30px;border-top:1px solid var(--eo-line);background:var(--eo-green-050)}
.eo-btn{font-family:inherit;font-size:14.5px;font-weight:500;padding:11px 24px;border-radius:9px;cursor:pointer;border:1px solid transparent;transition:.2s}
.eo-btn:disabled{opacity:.6;cursor:not-allowed}
.eo-btn-ghost{background:transparent;color:var(--eo-green-700);border-color:var(--eo-line)}
.eo-btn-ghost:hover{background:#fff}
.eo-btn-ghost.eo-hide{visibility:hidden}
.eo-btn-primary{background:var(--eo-green-700);color:#fff}
.eo-btn-primary:hover{background:var(--eo-green-900)}

.eo-result{text-align:center;padding:18px 6px 4px}
.eo-result-icon{width:56px;height:56px;line-height:56px;border-radius:50%;background:var(--eo-green-100);color:var(--eo-green-700);font-size:26px;margin:0 auto;font-weight:700}
.eo-ref-num{font-family:'Playfair Display',serif;font-size:26px;color:var(--eo-green-900);margin-top:4px}
.eo-cat-desc{max-width:460px;margin:14px auto 0;color:var(--eo-muted);font-size:13.5px;line-height:1.6;text-align:left}
.eo-cat-desc p{margin:0 0 12px}
.eo-cat-desc p:last-child{margin-bottom:0}

.eo-footnote{text-align:center;color:var(--eo-muted);font-size:12px;margin-top:16px !important}

/* ---------- Investment Knowledge table (Step 4B) ---------- */
.eo-ktable{border:1px solid var(--eo-line);border-radius:10px;overflow:hidden;margin-bottom:8px}
.eo-krow{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 16px;border-top:1px solid #eef1e8;font-size:13.5px}
.eo-krow:first-child{border-top:none}
.eo-krow-head{background:var(--eo-green-050);font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--eo-green-700);font-weight:600}
.eo-asset{flex:1}
.eo-kyn{display:flex;gap:18px;flex:none}
.eo-kyn label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px}
.eo-krow-head .eo-kyn label{cursor:default}
.eo-kyn input{accent-color:var(--eo-green-600);width:16px;height:16px}

/* ---------- Nominee repeatable cards (Step 2) ---------- */
.eo-nominee-card{border:1px solid var(--eo-line);border-radius:12px;padding:16px 18px;margin-bottom:16px;background:var(--eo-green-050)}
.eo-nominee-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.eo-nominee-title{font-family:'Playfair Display',serif;font-size:15px;color:var(--eo-green-900);font-weight:600}
.eo-nominee-remove{border:none;background:#fff;color:var(--eo-err);width:26px;height:26px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;border:1px solid var(--eo-line)}
.eo-nominee-remove:hover{background:#fdecec;border-color:#f2c4c4}
.eo-bank-card{border:1px solid var(--eo-line);border-radius:12px;padding:16px 18px;margin-bottom:16px;background:var(--eo-green-050)}
.eo-bank-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.eo-bank-title{font-family:'Playfair Display',serif;font-size:15px;color:var(--eo-green-900);font-weight:600}
.eo-bank-remove{border:none;background:#fff;color:var(--eo-err);width:26px;height:26px;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;border:1px solid var(--eo-line)}
.eo-bank-remove:hover{background:#fdecec;border-color:#f2c4c4}
.eo-bank-card .eo-field>label{color:var(--eo-ink)}
.eo-bank-card input,.eo-bank-card select{background:#fff}
.eo-terms-heading{margin:16px 0 6px;font-family:'Playfair Display',serif;font-size:14px;color:var(--eo-green-900)}
.eo-terms-heading:first-child{margin-top:0}
.eo-nominee-card .eo-field>label{color:var(--eo-ink)}
.eo-nominee-card .eo-drop,.eo-nominee-card input,.eo-nominee-card select,.eo-nominee-card textarea{background:#fff}
.eo-nominee-minor{margin-top:6px;padding-top:12px;border-top:1px dashed var(--eo-line)}
.eo-minor-note{margin-bottom:10px;color:var(--eo-green-700);font-weight:500}

/* ---------- Risk Deviation Declaration (Step 5) ---------- */
.eo-decl-cat{display:inline-block;padding:4px 14px;border-radius:99px;font-weight:600;background:var(--eo-green-100);color:var(--eo-green-900)}
.eo-decl{border:1px solid var(--eo-line);border-radius:10px;background:var(--eo-green-050);padding:16px 18px;margin-top:14px}
.eo-decl .eo-dhead{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.eo-decl .eo-dhead input{width:18px;height:18px;accent-color:var(--eo-green-600)}
.eo-decl p{font-size:13px;color:#3a4533;line-height:1.6;margin:0}
.eo-decl.eo-invalid{border-color:var(--eo-err)}
.eo-decl.eo-invalid #eoRiskDeviationErr{display:block}

@media(max-width:560px){
	.eo-grid2{grid-template-columns:1fr}
	.eo-card-head,.eo-body,.eo-nav,.eo-steps,.eo-step-label{padding-left:16px;padding-right:16px}
	.eo-choice{min-width:calc(50% - 5px)}
	.eo-review .eo-r-row{flex-direction:column;gap:2px}
	.eo-review .eo-r-value{text-align:left}
	.eo-krow{flex-direction:column;align-items:flex-start;gap:8px}
	.eo-krow-head{display:none}
}
button.eo-nominee-remove {
    padding: 6px !important;
    font-size: 20px !important;
    background: var(--e-global-color-accent);
    display: inline-block;
    color: #fff;line-height: 8px !important;
}