/* eConsular Core components — matched to app.econsularkl.gov.bd (dark + light). Uses theme variables with fallbacks. */
html:not([data-lang="bn"]) .ec-bn{display:none!important}
html[data-lang="bn"] .ec-en{display:none!important}
:root{--ecc-g:var(--ec-primary,#10b981);--ecc-gt:var(--ec-green-t,#34d399);--ecc-bg:var(--ec-bg,#0a100e);--ecc-card:var(--ec-surface,#0e1529);--ecc-card2:var(--ec-surface-2,#141d36);--ecc-in:var(--ec-input,#030712);--ecc-tx:var(--ec-text,#f1f5f9);--ecc-mu:var(--ec-muted,#94a3b8);--ecc-bd:var(--ec-border,rgba(148,163,184,.16));
--ecc-head:var(--ec-head,#fff);--ecc-sh:var(--ec-shadow,none);--ecc-btn:linear-gradient(135deg,#43a58c,#2f8d76);--ecc-act:linear-gradient(135deg,#43a58c,#2f8d76);--ecc-pat:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22140%22 height=%22140%22 viewBox=%220 0 140 140%22 fill=%22none%22 stroke=%22%2334d399%22 stroke-opacity=%22.065%22 stroke-width=%221.2%22%3E%3Ccircle cx=%2270%22 cy=%2270%22 r=%2214%22/%3E%3Ccircle cx=%2270%22 cy=%2270%22 r=%225%22/%3E%3Cpath d=%22M70 40c10 8 10 22 0 30-10-8-10-22 0-30zM70 100c10-8 10-22 0-30-10 8-10 22 0 30zM40 70c8-10 22-10 30 0-8 10-22 10-30 0zM100 70c-8-10-22-10-30 0 8 10 22 10 30 0z%22/%3E%3Cpath d=%22M0 0c14 6 20 20 14 34M140 0c-14 6-20 20-14 34M0 140c14-6 20-20 14-34M140 140c-14-6-20-20-14-34%22/%3E%3Cpath d=%22M70 0v18M70 122v18M0 70h18M122 70h18%22/%3E%3Ccircle cx=%220%22 cy=%220%22 r=%224%22/%3E%3Ccircle cx=%22140%22 cy=%220%22 r=%224%22/%3E%3Ccircle cx=%220%22 cy=%22140%22 r=%224%22/%3E%3Ccircle cx=%22140%22 cy=%22140%22 r=%224%22/%3E%3C/svg%3E");--ecc-eyebg:rgba(16,185,129,.08);--ecc-eybd:rgba(52,211,153,.28);--ecc-tagbg:rgba(16,185,129,.1);--ecc-icbg:rgba(16,185,129,.08);--ecc-icbd:rgba(52,211,153,.28)}
html[data-theme="light"]{--ecc-btn:linear-gradient(135deg,#10a37c,#059669);--ecc-act:linear-gradient(135deg,#10a37c,#059669);--ecc-pat:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22140%22 height=%22140%22 viewBox=%220 0 140 140%22 fill=%22none%22 stroke=%22%2364748b%22 stroke-opacity=%22.065%22 stroke-width=%221.2%22%3E%3Ccircle cx=%2270%22 cy=%2270%22 r=%2214%22/%3E%3Ccircle cx=%2270%22 cy=%2270%22 r=%225%22/%3E%3Cpath d=%22M70 40c10 8 10 22 0 30-10-8-10-22 0-30zM70 100c10-8 10-22 0-30-10 8-10 22 0 30zM40 70c8-10 22-10 30 0-8 10-22 10-30 0zM100 70c-8-10-22-10-30 0 8 10 22 10 30 0z%22/%3E%3Cpath d=%22M0 0c14 6 20 20 14 34M140 0c-14 6-20 20-14 34M0 140c14-6 20-20 14-34M140 140c-14-6-20-20-14-34%22/%3E%3Cpath d=%22M70 0v18M70 122v18M0 70h18M122 70h18%22/%3E%3Ccircle cx=%220%22 cy=%220%22 r=%224%22/%3E%3Ccircle cx=%22140%22 cy=%220%22 r=%224%22/%3E%3Ccircle cx=%220%22 cy=%22140%22 r=%224%22/%3E%3Ccircle cx=%22140%22 cy=%22140%22 r=%224%22/%3E%3C/svg%3E");--ecc-eyebg:#fff;--ecc-eybd:rgba(16,185,129,.18);--ecc-tagbg:rgba(16,185,129,.1);--ecc-icbg:rgba(16,185,129,.1);--ecc-icbd:rgba(16,185,129,.12)}
.ecc-wrap{max-width:var(--ec-wrap,1280px);margin-inline:auto;padding-inline:var(--ec-pad,30px);width:100%}
.ecc-i{flex:none;vertical-align:middle}
.ecc-hp{position:absolute!important;left:-9999px;opacity:0;height:0;width:0;pointer-events:none}
[hidden]{display:none!important}

/* eyebrow pills / section headings */
.ecc-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ecc-eybd);background:var(--ecc-eyebg);color:var(--ecc-gt);padding:8px 16px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;box-shadow:var(--ecc-sh)}
html[data-lang="bn"] .ecc-eyebrow{letter-spacing:.02em;text-transform:none;font-size:.8rem}
.ecc-head{text-align:center;margin:0 auto 44px;max-width:760px}
.ecc-head h2{font-size:clamp(2rem,4.2vw,2.85rem);margin:.5em 0 .35em;color:var(--ecc-head);letter-spacing:-.035em}
.ecc-head p{color:var(--ecc-mu);margin:0 auto;font-size:1.08rem;line-height:1.65}
.ecc-head--left{text-align:left;margin-inline:0}
.ecc-head--left p{margin-inline:0}

/* buttons */
.ecc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;border-radius:999px;font:inherit;font-weight:700;border:1px solid transparent;cursor:pointer;text-decoration:none;line-height:1.2;color:#fff;transition:filter .18s,transform .18s,border-color .18s,background .18s,box-shadow .18s}
.ecc-btn:hover{text-decoration:none;filter:brightness(1.08);transform:translateY(-1px)}
.ecc-btn .ecc-i{transition:transform .18s}
.ecc-btn:hover .ecc-i{transform:translateX(3px)}
.ecc-btn--dark{background:#0b1126;border-color:rgba(255,255,255,.08);color:#fff}
.ecc-btn--glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.14);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ecc-btn--glass:hover{background:rgba(255,255,255,.16)}
html[data-theme="light"] .ecc-btn--dark{background:#fff;color:#0f172a;border-color:transparent;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.ecc-btn--green{background:var(--ecc-btn);box-shadow:0 8px 24px rgba(16,185,129,.22);border-radius:16px}
.ecc-btn--deep{background:#065f46;border-color:rgba(16,185,129,.3)}
.ecc-btn--ghost{background:transparent;border-color:var(--ecc-bd);color:var(--ecc-tx)}
.ecc-btn--block{width:100%;padding-block:16px}

/* hero — stays dark green in light mode, as in the original */
.ecc-hero{position:relative;overflow:hidden;display:flex;align-items:center;min-height:calc(100vh - 76px);padding:80px 0 90px;color:#f1f5f9;background:radial-gradient(1000px 560px at 8% 105%,rgba(16,185,129,.28),transparent 70%),linear-gradient(180deg,#0b2b23 0%,#0c3a2d 45%,#13503f 100%)}
.ecc-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:60%;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 1400 520%22 fill=%22none%22%3E%3Cg stroke=%22%2386efac%22 stroke-opacity=%22.17%22 stroke-width=%221%22%3E%3Cpath d=%22M0.0 16.0 L124.9 4.3 L236.8 -13.7 L332.5 -11.6 L421.0 7.5 L517.0 15.6 L629.2 0.9 L754.2 -15.2 L879.0 -9.0 L990.6 10.4 L1086.0 14.5 L1174.5 -2.6 L1270.7 -15.9 L1383.2 -5.9 M21.8 104.5 L119.0 84.1 L207.7 73.7 L302.1 86.7 L412.5 102.5 L536.6 96.9 L662.2 77.1 L775.6 71.8 L872.6 88.4 L961.2 102.9 L1055.9 94.5 L1166.5 76.3 L1290.8 76.2 L1416.3 95.8 M-5.6 187.3 L87.5 167.1 L195.9 168.6 L319.1 185.9 L445.2 190.6 L560.4 173.5 L659.0 158.0 L747.9 165.7 L841.2 185.1 L950.0 188.0 L1073.3 171.2 L1199.3 161.0 L1314.3 174.6 L1412.6 195.2 M-20.4 268.7 L101.5 256.9 L228.1 268.4 L345.0 280.8 L445.4 271.5 L534.6 250.5 L626.8 246.1 L733.6 263.2 L855.7 276.3 L982.3 266.7 L1098.9 250.0 L1198.9 253.2 L1288.1 275.1 L1380.5 288.2 M10.9 354.0 L129.4 353.9 L231.5 368.3 L321.4 368.6 L412.6 348.5 L517.5 332.6 L638.3 341.0 L765.0 359.2 L883.3 360.0 L985.1 342.8 L1074.9 334.8 L1166.2 351.1 L1271.4 372.5 L1392.5 373.7 M17.6 446.4 L108.2 455.3 L198.5 463.4 L301.5 449.5 L420.9 426.5 L547.7 422.2 L667.5 438.7 L771.2 449.3 L861.7 437.7 L952.1 421.6 L1055.5 427.2 L1175.1 450.4 L1301.9 463.1 L1421.5 454.2 M-15.4 545.8 L85.8 556.0 L203.6 551.1 L330.3 527.1 L451.5 510.2 L557.1 518.1 L648.5 534.2 L738.2 531.9 L839.7 513.5 L957.7 507.0 L1084.5 524.9 L1205.5 546.0 L1310.7 546.4 L1402.0 534.6 M0.0 16.0 L21.8 104.5 L-5.6 187.3 L-20.4 268.7 L10.9 354.0 L17.6 446.4 L-15.4 545.8 M124.9 4.3 L119.0 84.1 L87.5 167.1 L101.5 256.9 L129.4 353.9 L108.2 455.3 L85.8 556.0 M236.8 -13.7 L207.7 73.7 L195.9 168.6 L228.1 268.4 L231.5 368.3 L198.5 463.4 L203.6 551.1 M332.5 -11.6 L302.1 86.7 L319.1 185.9 L345.0 280.8 L321.4 368.6 L301.5 449.5 L330.3 527.1 M421.0 7.5 L412.5 102.5 L445.2 190.6 L445.4 271.5 L412.6 348.5 L420.9 426.5 L451.5 510.2 M517.0 15.6 L536.6 96.9 L560.4 173.5 L534.6 250.5 L517.5 332.6 L547.7 422.2 L557.1 518.1 M629.2 0.9 L662.2 77.1 L659.0 158.0 L626.8 246.1 L638.3 341.0 L667.5 438.7 L648.5 534.2 M754.2 -15.2 L775.6 71.8 L747.9 165.7 L733.6 263.2 L765.0 359.2 L771.2 449.3 L738.2 531.9 M879.0 -9.0 L872.6 88.4 L841.2 185.1 L855.7 276.3 L883.3 360.0 L861.7 437.7 L839.7 513.5 M990.6 10.4 L961.2 102.9 L950.0 188.0 L982.3 266.7 L985.1 342.8 L952.1 421.6 L957.7 507.0 M1086.0 14.5 L1055.9 94.5 L1073.3 171.2 L1098.9 250.0 L1074.9 334.8 L1055.5 427.2 L1084.5 524.9 M1174.5 -2.6 L1166.5 76.3 L1199.3 161.0 L1198.9 253.2 L1166.2 351.1 L1175.1 450.4 L1205.5 546.0 M1270.7 -15.9 L1290.8 76.2 L1314.3 174.6 L1288.1 275.1 L1271.4 372.5 L1301.9 463.1 L1310.7 546.4 M1383.2 -5.9 L1416.3 95.8 L1412.6 195.2 L1380.5 288.2 L1392.5 373.7 L1421.5 454.2 L1402.0 534.6%22/%3E%3C/g%3E%3Cg fill=%22%23a7f3d0%22 fill-opacity=%22.5%22%3E%3Ccircle cx=%22124.9%22 cy=%224.3%22 r=%222.4%22/%3E%3Ccircle cx=%22236.8%22 cy=%22-13.7%22 r=%222.4%22/%3E%3Ccircle cx=%22332.5%22 cy=%22-11.6%22 r=%222.4%22/%3E%3Ccircle cx=%22517.0%22 cy=%2215.6%22 r=%222.4%22/%3E%3Ccircle cx=%22629.2%22 cy=%220.9%22 r=%222.4%22/%3E%3Ccircle cx=%22754.2%22 cy=%22-15.2%22 r=%222.4%22/%3E%3Ccircle cx=%22990.6%22 cy=%2210.4%22 r=%222.4%22/%3E%3Ccircle cx=%221086.0%22 cy=%2214.5%22 r=%222.4%22/%3E%3Ccircle cx=%221174.5%22 cy=%22-2.6%22 r=%222.4%22/%3E%3Ccircle cx=%221383.2%22 cy=%22-5.9%22 r=%222.4%22/%3E%3Ccircle cx=%2221.8%22 cy=%22104.5%22 r=%222.4%22/%3E%3Ccircle cx=%22207.7%22 cy=%2273.7%22 r=%222.4%22/%3E%3Ccircle cx=%22302.1%22 cy=%2286.7%22 r=%222.4%22/%3E%3Ccircle cx=%22412.5%22 cy=%22102.5%22 r=%222.4%22/%3E%3Ccircle cx=%22662.2%22 cy=%2277.1%22 r=%222.4%22/%3E%3Ccircle cx=%22775.6%22 cy=%2271.8%22 r=%222.4%22/%3E%3Ccircle cx=%22872.6%22 cy=%2288.4%22 r=%222.4%22/%3E%3Ccircle cx=%221055.9%22 cy=%2294.5%22 r=%222.4%22/%3E%3Ccircle cx=%221166.5%22 cy=%2276.3%22 r=%222.4%22/%3E%3Ccircle cx=%221290.8%22 cy=%2276.2%22 r=%222.4%22/%3E%3Ccircle cx=%22-5.6%22 cy=%22187.3%22 r=%222.4%22/%3E%3Ccircle cx=%2287.5%22 cy=%22167.1%22 r=%222.4%22/%3E%3Ccircle cx=%22319.1%22 cy=%22185.9%22 r=%222.4%22/%3E%3Ccircle cx=%22445.2%22 cy=%22190.6%22 r=%222.4%22/%3E%3Ccircle cx=%22560.4%22 cy=%22173.5%22 r=%222.4%22/%3E%3Ccircle cx=%22747.9%22 cy=%22165.7%22 r=%222.4%22/%3E%3Ccircle cx=%22841.2%22 cy=%22185.1%22 r=%222.4%22/%3E%3Ccircle cx=%22950.0%22 cy=%22188.0%22 r=%222.4%22/%3E%3Ccircle cx=%221199.3%22 cy=%22161.0%22 r=%222.4%22/%3E%3Ccircle cx=%221314.3%22 cy=%22174.6%22 r=%222.4%22/%3E%3Ccircle cx=%221412.6%22 cy=%22195.2%22 r=%222.4%22/%3E%3Ccircle cx=%22-20.4%22 cy=%22268.7%22 r=%222.4%22/%3E%3Ccircle cx=%22101.5%22 cy=%22256.9%22 r=%222.4%22/%3E%3Ccircle cx=%22228.1%22 cy=%22268.4%22 r=%222.4%22/%3E%3Ccircle cx=%22445.4%22 cy=%22271.5%22 r=%222.4%22/%3E%3Ccircle cx=%22534.6%22 cy=%22250.5%22 r=%222.4%22/%3E%3Ccircle cx=%22626.8%22 cy=%22246.1%22 r=%222.4%22/%3E%3Ccircle cx=%22855.7%22 cy=%22276.3%22 r=%222.4%22/%3E%3Ccircle cx=%22982.3%22 cy=%22266.7%22 r=%222.4%22/%3E%3Ccircle cx=%221098.9%22 cy=%22250.0%22 r=%222.4%22/%3E%3Ccircle cx=%221288.1%22 cy=%22275.1%22 r=%222.4%22/%3E%3Ccircle cx=%221380.5%22 cy=%22288.2%22 r=%222.4%22/%3E%3Ccircle cx=%22129.4%22 cy=%22353.9%22 r=%222.4%22/%3E%3Ccircle cx=%22231.5%22 cy=%22368.3%22 r=%222.4%22/%3E%3Ccircle cx=%22321.4%22 cy=%22368.6%22 r=%222.4%22/%3E%3Ccircle cx=%22517.5%22 cy=%22332.6%22 r=%222.4%22/%3E%3Ccircle cx=%22638.3%22 cy=%22341.0%22 r=%222.4%22/%3E%3Ccircle cx=%22765.0%22 cy=%22359.2%22 r=%222.4%22/%3E%3Ccircle cx=%22985.1%22 cy=%22342.8%22 r=%222.4%22/%3E%3Ccircle cx=%221074.9%22 cy=%22334.8%22 r=%222.4%22/%3E%3Ccircle cx=%221166.2%22 cy=%22351.1%22 r=%222.4%22/%3E%3Ccircle cx=%221392.5%22 cy=%22373.7%22 r=%222.4%22/%3E%3Ccircle cx=%2217.6%22 cy=%22446.4%22 r=%222.4%22/%3E%3Ccircle cx=%22198.5%22 cy=%22463.4%22 r=%222.4%22/%3E%3Ccircle cx=%22301.5%22 cy=%22449.5%22 r=%222.4%22/%3E%3Ccircle cx=%22420.9%22 cy=%22426.5%22 r=%222.4%22/%3E%3Ccircle cx=%22667.5%22 cy=%22438.7%22 r=%222.4%22/%3E%3Ccircle cx=%22771.2%22 cy=%22449.3%22 r=%222.4%22/%3E%3Ccircle cx=%22861.7%22 cy=%22437.7%22 r=%222.4%22/%3E%3Ccircle cx=%221055.5%22 cy=%22427.2%22 r=%222.4%22/%3E%3Ccircle cx=%221175.1%22 cy=%22450.4%22 r=%222.4%22/%3E%3Ccircle cx=%221301.9%22 cy=%22463.1%22 r=%222.4%22/%3E%3Ccircle cx=%22-15.4%22 cy=%22545.8%22 r=%222.4%22/%3E%3Ccircle cx=%2285.8%22 cy=%22556.0%22 r=%222.4%22/%3E%3Ccircle cx=%22330.3%22 cy=%22527.1%22 r=%222.4%22/%3E%3Ccircle cx=%22451.5%22 cy=%22510.2%22 r=%222.4%22/%3E%3Ccircle cx=%22557.1%22 cy=%22518.1%22 r=%222.4%22/%3E%3Ccircle cx=%22738.2%22 cy=%22531.9%22 r=%222.4%22/%3E%3Ccircle cx=%22839.7%22 cy=%22513.5%22 r=%222.4%22/%3E%3Ccircle cx=%22957.7%22 cy=%22507.0%22 r=%222.4%22/%3E%3Ccircle cx=%221205.5%22 cy=%22546.0%22 r=%222.4%22/%3E%3Ccircle cx=%221310.7%22 cy=%22546.4%22 r=%222.4%22/%3E%3Ccircle cx=%221402.0%22 cy=%22534.6%22 r=%222.4%22/%3E%3C/g%3E%3C/svg%3E") center top/cover no-repeat;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 90%);mask-image:linear-gradient(180deg,#000 0%,transparent 90%)}
.ecc-hero>.ecc-wrap{position:relative;z-index:1}
.ecc-hero__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:56px;align-items:center}
.ecc-hero__side{min-width:0}
.ecc-hero__main{display:flex;flex-direction:column;align-items:flex-start}
.ecc-eyebrow--dot{background:rgba(0,0,0,.2);border-color:rgba(255,255,255,.1);color:#a7d8c3;box-shadow:none;font-size:.66rem}
.ecc-eyebrow--dot i{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399}
.ecc-welcome{margin:48px 0 10px;font-size:1.28rem;font-weight:500;color:rgba(167,216,195,.9)}
.ecc-hero h1{font-size:clamp(2.6rem,5.2vw,4.1rem);line-height:1.08;margin:0 0 26px;color:#fff;letter-spacing:-.045em;font-weight:800}
.ecc-hero h1 .ecc-grad{background:linear-gradient(90deg,#74e0a2 0%,#5fd8bf 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;padding-bottom:.08em}
.ecc-hero__text{font-size:1.2rem;line-height:1.7;max-width:36em;color:rgba(226,240,234,.78);margin:0}
.ecc-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:44px}
.ecc-actions .ecc-btn{padding:17px 30px;font-size:1rem}

/* notice board */
.ecc-notices{background:#0e1530;border:1px solid rgba(148,163,184,.14);border-radius:32px;box-shadow:0 30px 80px rgba(0,0,0,.4);color:#f1f5f9;overflow:hidden}
html[data-theme="light"] .ecc-notices{background:#f8fafb;border-color:rgba(255,255,255,.6);color:#0f172a}
.ecc-notices__top{display:flex;align-items:center;gap:16px;padding:24px 24px 20px;border-bottom:1px solid rgba(148,163,184,.14)}
html[data-theme="light"] .ecc-notices__top{border-color:rgba(15,23,42,.06)}
.ecc-notices__ic{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#34d399,#0f9f78);color:#fff;box-shadow:0 8px 20px rgba(16,185,129,.35)}
.ecc-notices h2{margin:0;font-size:1.4rem;flex:1;letter-spacing:-.03em;color:inherit}
.ecc-live{display:inline-flex;align-items:center;gap:7px;color:#34d399;background:rgba(16,185,129,.12);padding:7px 14px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
html[data-theme="light"] .ecc-live{color:#059669;background:rgba(16,185,129,.12)}
.ecc-live i{width:6px;height:6px;border-radius:50%;background:currentColor;animation:ecc-pulse 1.6s infinite}
@keyframes ecc-pulse{50%{opacity:.3}}
.ecc-notices__list{list-style:none;margin:0;padding:16px 16px 18px;display:grid;gap:14px;max-height:420px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(52,211,153,.35) transparent}
.ecc-notice{display:flex;gap:16px;background:#0d1328;border:1px solid rgba(148,163,184,.13);border-radius:22px;padding:18px}
html[data-theme="light"] .ecc-notice{background:#fff;border-color:rgba(15,23,42,.04);box-shadow:0 4px 18px rgba(15,23,42,.06)}
.ecc-notice__date{flex:none;display:grid;align-content:center;justify-items:center;width:62px;height:68px;border-radius:16px;text-align:center;background:rgba(16,185,129,.08);border:1px solid rgba(52,211,153,.28);color:#34d399}
.ecc-notice__date b{display:block;font-size:1.45rem;line-height:1;font-weight:800}
.ecc-notice__date small{font-size:.62rem;letter-spacing:.1em;font-weight:700;opacity:.85}
.ecc-notice.is-alert .ecc-notice__date{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3);color:#fbbf24}
html[data-theme="light"] .ecc-notice__date{color:#059669;background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.2)}
html[data-theme="light"] .ecc-notice.is-alert .ecc-notice__date{color:#d97706;background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3)}
.ecc-notice__body{min-width:0;flex:1}
.ecc-notice__t{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ecc-notice__t strong{font-size:1.02rem;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:inherit}
.ecc-notice__t em{font-style:normal;font-size:.6rem;font-weight:800;letter-spacing:.1em;color:#34d399;background:rgba(16,185,129,.16);padding:3px 9px;border-radius:6px}
.ecc-notice__t em.is-alert{color:#fbbf24;background:rgba(245,158,11,.16)}
html[data-theme="light"] .ecc-notice__t em{color:#059669;background:rgba(16,185,129,.14)}
html[data-theme="light"] .ecc-notice__t em.is-alert{color:#d97706;background:rgba(245,158,11,.16)}
.ecc-notice__body p{margin:8px 0 12px;color:#94a3b8;font-size:.86rem;line-height:1.6}
html[data-theme="light"] .ecc-notice__body p{color:#64748b}
.ecc-notice__more{background:none;border:0;padding:0 0 0 24px;font:inherit;font-size:.84rem;font-weight:700;color:#34d399;cursor:pointer;display:inline-flex;gap:6px;align-items:center;text-decoration:none}
html[data-theme="light"] .ecc-notice__more{color:#059669}
.ecc-notice__more:hover{text-decoration:none;filter:brightness(1.15)}
.ecc-diag{margin:0;padding:0 24px 22px;font-size:.78rem;color:#fbbf24}
.ecc-empty{color:#94a3b8;margin:0;padding:24px}
.ecc-modal{border:1px solid rgba(148,163,184,.16);border-radius:30px;background:#0e1530;color:#f1f5f9;width:min(calc(100% - 32px),640px);max-width:640px;padding:0;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.5)}
html[data-theme="light"] .ecc-modal{background:#fff;color:#0f172a;border-color:rgba(15,23,42,.06)}
.ecc-modal::backdrop{background:rgba(3,8,20,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ecc-modal__in{padding:0}
.ecc-modal__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:28px 32px 0}
.ecc-modal__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ecc-modal__badge{font-size:.78rem;font-weight:800;letter-spacing:.08em;color:#34d399;background:rgba(16,185,129,.16);padding:6px 14px;border-radius:10px;text-transform:uppercase}
.ecc-modal__badge.is-alert{color:#fbbf24;background:rgba(245,158,11,.16)}
html[data-theme="light"] .ecc-modal__badge{color:#059669}
html[data-theme="light"] .ecc-modal__badge.is-alert{color:#d97706}
.ecc-modal__date{color:#94a3b8;font-size:.95rem}
.ecc-modal__x{flex:none;display:grid;place-items:center;width:34px;height:34px;margin-top:2px;border:0;border-radius:50%;background:transparent;color:#34d399;cursor:pointer;transition:background .18s}
.ecc-modal__x:hover{background:rgba(16,185,129,.14)}
.ecc-modal__title{margin:14px 0 0;padding:0 32px 24px;font-size:1.7rem;letter-spacing:-.03em;color:inherit;border-bottom:1px solid rgba(148,163,184,.14)}
html[data-theme="light"] .ecc-modal__title,html[data-theme="light"] .ecc-modal__foot{border-color:rgba(15,23,42,.07)}
.ecc-modal__body{padding:26px 32px 28px;color:#cbd5e1;font-size:1.05rem;line-height:1.75;max-height:50vh;overflow:auto}
html[data-theme="light"] .ecc-modal__body{color:#475569}
.ecc-modal__body p{margin:0 0 .8em}.ecc-modal__body p:last-child{margin:0}
.ecc-modal__foot{display:flex;justify-content:flex-end;padding:22px 32px 26px;border-top:1px solid rgba(148,163,184,.14)}
.ecc-modal__ok{border-radius:16px;padding:14px 28px}
@media (max-width:640px){.ecc-modal__top,.ecc-modal__title,.ecc-modal__body,.ecc-modal__foot{padding-inline:20px}.ecc-modal__title{font-size:1.4rem}}

/* application status */
.ecc-statuswrap{padding:96px 0 84px;position:relative}
.ecc-statusbox{max-width:850px;margin:0 auto;padding:34px 60px 30px;border:1px solid rgba(52,211,153,.2);border-radius:44px;background:#0e1529;box-shadow:0 0 90px rgba(16,185,129,.1)}
html[data-theme="light"] .ecc-statusbox{background:#fff;border-color:rgba(15,23,42,.03);box-shadow:0 20px 60px rgba(16,185,129,.12)}
.ecc-statusform{display:flex;gap:16px;flex-wrap:nowrap;align-items:stretch}
.ecc-search{flex:1;min-width:0;display:flex;align-items:center;gap:12px;background:var(--ecc-in);border:1px solid var(--ecc-bd);border-radius:20px;padding:0 20px;color:var(--ecc-g)}
html[data-theme="light"] .ecc-search{border-color:rgba(15,23,42,.06)}
.ecc-search:focus-within{border-color:var(--ecc-g)}
.ecc-search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--ecc-tx);font:inherit;font-size:1.05rem;padding:18px 0}
.ecc-search input::placeholder{color:var(--ecc-mu);opacity:.9}
.ecc-statusform .ecc-btn{flex:none;padding-inline:30px;font-size:1.05rem;white-space:nowrap}
.ecc-hints{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 30px;margin:20px 0 0;font-size:.82rem;color:var(--ecc-mu)}
.ecc-hints span{display:inline-flex;align-items:center;gap:7px}
.ecc-hints .ecc-i{color:var(--ecc-g)}
.ecc-hints code{font-family:inherit;color:#64748b;background:none;padding:0}
.ecc-statusbox .ecc-result{min-height:34px;margin-top:10px}

/* services */
.ecc-services{position:relative;padding:96px 0;background-image:var(--ecc-pat);background-size:140px 140px}
.ecc-services::before,.ecc-services::after{content:"";position:absolute;left:0;right:0;height:140px;pointer-events:none;z-index:0}
.ecc-services::before{top:0;background:linear-gradient(180deg,var(--ecc-bg),transparent)}
.ecc-services::after{bottom:0;background:linear-gradient(0deg,var(--ecc-bg),transparent)}
.ecc-services>.ecc-wrap{position:relative;z-index:1}
.ecc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:30px}
.ecc-tabs{display:flex;flex-wrap:wrap;gap:12px}
.ecc-tab{border:1px solid var(--ecc-bd);background:var(--ecc-card);color:var(--ecc-tx);height:42px;padding:0 22px;border-radius:999px;font:inherit;font-weight:600;font-size:.92rem;cursor:pointer;transition:all .2s;box-shadow:var(--ecc-sh)}
html[data-theme="light"] .ecc-tab{border-color:transparent}
.ecc-tab:hover{border-color:var(--ecc-g)}
.ecc-tab.is-active{background:var(--ecc-act);border-color:transparent;color:#fff;box-shadow:0 8px 22px rgba(16,185,129,.28)}
.ecc-find{display:flex;align-items:center;background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:999px;padding:0 24px;color:var(--ecc-mu);width:320px;max-width:100%;box-shadow:var(--ecc-sh)}
html[data-theme="light"] .ecc-find{border-color:transparent}
.ecc-find:focus-within{border-color:var(--ecc-g)}
.ecc-find>.ecc-i{display:none}
.ecc-find input{background:transparent;border:0;outline:0;color:var(--ecc-tx);font:inherit;padding:11px 0;width:100%;font-size:.92rem}
.ecc-find input::placeholder{color:var(--ecc-mu)}
.ecc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ecc-svc{position:relative;display:flex;flex-direction:column;background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:24px;padding:24px 24px 26px;color:var(--ecc-tx);text-decoration:none;min-height:180px;box-shadow:var(--ecc-sh);transition:border-color .22s,transform .22s,box-shadow .22s}
a.ecc-svc,.ecc-svc.is-inperson{cursor:pointer}
.ecc-svc:hover{border-color:rgba(52,211,153,.6);transform:translateY(-4px);box-shadow:0 18px 44px rgba(16,185,129,.16);text-decoration:none}
html[data-theme="light"] .ecc-svc:hover{border-color:rgba(16,185,129,.45)}
.ecc-svc.is-hidden{display:none}
.ecc-svc__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.ecc-svc__ic{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;border:1px solid var(--ecc-icbd);background:var(--ecc-icbg);color:var(--ecc-gt);transition:all .22s}
.ecc-svc:hover .ecc-svc__ic{border-color:rgba(52,211,153,.45);background:rgba(16,185,129,.16)}
.ecc-tag{font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ecc-gt);background:var(--ecc-tagbg);border:1px solid rgba(52,211,153,.14);padding:6px 14px;border-radius:999px;margin-top:4px}
html[data-lang="bn"] .ecc-tag{letter-spacing:.02em;text-transform:none;font-size:.72rem}
.ecc-svc h3{margin:20px 0 8px;font-size:1.1rem;letter-spacing:-.015em;color:var(--ecc-head);transition:color .22s}
.ecc-svc:hover h3{color:var(--ecc-gt)}
.ecc-svc p{margin:0;color:var(--ecc-mu);font-size:.9rem;line-height:1.6;padding-right:30px}
.ecc-go{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--ecc-bd);background:var(--ecc-card2);color:var(--ecc-mu);transition:all .22s}
html[data-theme="light"] .ecc-go{background:#f1f5f9;border-color:transparent}
.ecc-svc:hover .ecc-go{background:var(--ecc-g);border-color:var(--ecc-g);color:#fff}
.ecc-none{text-align:center;color:var(--ecc-mu);padding:30px 0}
.ecc-inperson{display:flex;align-items:center;gap:20px;margin-top:34px;padding:22px 26px;border:1.5px dashed rgba(52,211,153,.35);border-radius:22px;background:rgba(16,185,129,.07);color:var(--ecc-tx)}
html[data-theme="light"] .ecc-inperson{background:rgba(16,185,129,.06);border-color:rgba(16,185,129,.4)}
.ecc-inperson__ic{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:rgba(16,185,129,.16);color:var(--ecc-gt)}
.ecc-inperson p{margin:0;font-size:1rem;line-height:1.6}
.ecc-inperson strong{color:var(--ecc-gt);font-weight:700}

/* how it works */
.ecc-steps-wrap{padding:96px 0}
.ecc-steps-wrap>.ecc-wrap{max-width:1150px}
.ecc-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 46px}
.ecc-steps li{position:relative;overflow:visible;background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:24px;padding:22px 24px 26px;min-height:188px;color:var(--ecc-tx);box-shadow:var(--ecc-sh);transition:transform .28s ease,border-color .28s,box-shadow .28s;cursor:default}
html[data-theme="light"] .ecc-steps li{border-color:transparent}
.ecc-step__ic{position:relative;z-index:1;display:grid;place-items:center;width:50px;height:50px;border-radius:15px;border:1px solid var(--ecc-icbd);background:var(--ecc-icbg);color:var(--ecc-gt);margin-bottom:42px;transition:all .28s}
.ecc-step__n{position:absolute;z-index:1;top:22px;right:24px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(16,185,129,.1);border:1px solid rgba(52,211,153,.4);font-size:.78rem;font-weight:700;color:var(--ecc-gt);transition:all .28s}
.ecc-step__wm{position:absolute;right:6px;top:8px;opacity:.07;pointer-events:none;color:var(--ecc-gt);line-height:0;transition:opacity .28s,transform .28s;transform-origin:70% 40%}
.ecc-step__wm svg{width:112px;height:112px;stroke-width:1.5}
html[data-theme="light"] .ecc-step__wm{opacity:.09}
.ecc-steps h3{position:relative;z-index:1;margin:0 0 6px;font-size:1.15rem;color:var(--ecc-head);transition:color .28s;letter-spacing:-.02em}
.ecc-steps p{margin:0;color:var(--ecc-mu);font-size:.92rem;line-height:1.6;position:relative;z-index:1}
.ecc-steps li:not(:nth-child(3n))::after{content:"";position:absolute;right:-37px;top:50%;transform:translateY(-50%);z-index:3;width:28px;height:28px;border-radius:50%;background:var(--ecc-card2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2334d399' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/14px no-repeat;border:1px solid rgba(52,211,153,.4);transition:all .28s}
html[data-theme="light"] .ecc-steps li:not(:nth-child(3n))::after{background-color:#fff;box-shadow:0 4px 14px rgba(15,23,42,.1);border-color:rgba(16,185,129,.15)}
/* hover — filled icon, green title, brighter watermark, lift */
.ecc-steps li:hover{transform:translateY(-4px);border-color:rgba(52,211,153,.6);box-shadow:0 20px 48px rgba(16,185,129,.16)}
html[data-theme="light"] .ecc-steps li:hover{border-color:rgba(16,185,129,.4)}
.ecc-steps li:hover .ecc-step__ic{background:linear-gradient(135deg,#3fd197,#0f9f78);border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(16,185,129,.38)}
.ecc-steps li:hover h3{color:var(--ecc-gt)}
.ecc-steps li:hover .ecc-step__n{background:linear-gradient(135deg,#3fd197,#0f9f78);border-color:transparent;color:#fff}
.ecc-steps li:hover .ecc-step__wm{opacity:.16;transform:scale(1.08) rotate(-3deg)}
.ecc-steps li:hover::after{border-color:var(--ecc-g)}

/* faq + inquiry */
.ec-split .ecc-faq{padding-top:8px}
.ecc-qa{background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:16px;margin-bottom:12px;color:var(--ecc-tx)}
.ecc-qa summary{cursor:pointer;padding:18px 22px;font-weight:700;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}
.ecc-qa summary::-webkit-details-marker{display:none}
.ecc-qa summary .ecc-i{color:var(--ecc-mu);transition:transform .2s}
.ecc-qa[open] summary .ecc-i{transform:rotate(180deg)}
.ecc-qa[open]{border-color:color-mix(in srgb,var(--ecc-g) 40%,transparent)}
.ecc-qa__a{padding:0 22px 18px;color:var(--ecc-mu);font-size:.95rem}
.ecc-qa__a p{margin:0 0 .7em}.ecc-qa__a p:last-child{margin:0}
.ecc-inquiry{background:linear-gradient(150deg,rgba(10,32,30,.95),rgba(9,18,36,.95));border:1px solid color-mix(in srgb,var(--ecc-g) 28%,transparent);border-radius:30px;padding:32px;box-shadow:0 0 70px rgba(16,185,129,.08);color:var(--ecc-tx)}
html[data-theme="light"] .ecc-inquiry{background:#fff}
.ecc-inquiry__head{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.ecc-inquiry__ic{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#0ea271;color:#fff}
.ecc-inquiry h3{margin:0;font-size:1.5rem}
.ecc-inquiry__sub{color:var(--ecc-mu);font-size:.9rem;margin:0 0 22px}

/* generic form */
.ecc-form{display:grid;gap:16px}
.ecc-form label{display:grid;gap:7px;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ecc-mu)}
html[data-lang="bn"] .ecc-form label{letter-spacing:0;text-transform:none;font-size:.82rem}
.ecc-form input[type=text],.ecc-form input[type=email],.ecc-form input[type=tel],.ecc-form input[type=number],.ecc-form select,.ecc-form textarea{width:100%;background:var(--ecc-in);border:1px solid var(--ecc-bd);border-radius:12px;padding:13px 15px;color:var(--ecc-tx);font:inherit;font-size:.92rem;font-weight:400;letter-spacing:0;text-transform:none}
.ecc-form ::placeholder{color:#64748b}
.ecc-form input:focus,.ecc-form select:focus,.ecc-form textarea:focus{outline:0;border-color:var(--ecc-g);box-shadow:0 0 0 3px color-mix(in srgb,var(--ecc-g) 20%,transparent)}
.ecc-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ecc-form.is-busy button,.ecc-statusform.is-busy button{opacity:.6;pointer-events:none}
.ecc-ok{color:var(--ecc-gt);font-weight:600}
.ecc-err{color:#f87171;font-weight:600;margin:6px 0 0}
.ecc-result{margin-top:14px}
.ecc-res{border:1px solid var(--ecc-bd);border-radius:14px;padding:14px 16px;margin-top:12px;background:var(--ecc-in);text-align:left;color:var(--ecc-tx)}
.ecc-res__h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.ecc-res p{margin:.4em 0}
.ecc-res small{color:var(--ecc-mu)}
.ecc-note{background:var(--ecc-card2);padding:8px 12px;border-radius:8px;color:var(--ecc-tx)}
.ecc-badge{display:inline-block;padding:3px 12px;border-radius:999px;font-size:.75rem;font-weight:700;background:var(--ecc-card2);color:var(--ecc-tx)}
.ecc-badge--completed,.ecc-badge--paid,.ecc-badge--ready{background:#0f3a2b;color:#8fe3c0}
.ecc-badge--payment_pending,.ecc-badge--rejected{background:#45151c;color:#ffb3bc}
.ecc-badge--processing,.ecc-badge--appointment{background:#43330a;color:#ffd98a}

/* ---------- wizard page ---------- */
body.ecc-wizard-page{background:radial-gradient(1000px 520px at 50% 0,rgba(16,185,129,.1),transparent 70%),#030a09}
html[data-theme="light"] body.ecc-wizard-page{background:#eaf3ef}
.ecc-wizard-shell{padding:64px 20px 80px}
.ecc-wizard{max-width:980px;margin:0 auto;background:#09130f;border:1px solid #123524;border-radius:36px;overflow:hidden;box-shadow:0 40px 120px rgba(0,0,0,.5);color:#f1f5f9}
html[data-theme="light"] .ecc-wizard{background:#fff;color:#0e1d17;border-color:#cfe5da}
.ecc-wiz__head{padding:34px 44px 28px}
.ecc-wiz__row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.ecc-back{display:inline-flex;align-items:center;gap:8px;color:#34d399;font-weight:600;font-size:.9rem}
.ecc-stepchip{border:1px solid rgba(16,185,129,.35);background:rgba(16,185,129,.1);color:#34d399;padding:7px 16px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.1em}
.ecc-wiz__head h1{font-size:clamp(1.9rem,4vw,2.6rem);margin:18px 0 6px;color:inherit}
.ecc-wiz__head p{margin:0;color:#94a3b8}
.ecc-stepper{list-style:none;margin:0;padding:26px 36px;display:flex;background:#0b1320;border-block:1px solid rgba(148,163,184,.12)}
html[data-theme="light"] .ecc-stepper{background:#f3f8f6}
.ecc-stepper li{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:10px}
.ecc-stepper li:not(:first-child)::before{content:"";position:absolute;top:20px;left:-50%;right:50%;height:2px;background:#1c2a44;z-index:0}
.ecc-stepper li.is-done:not(:first-child)::before,.ecc-stepper li.is-active:not(:first-child)::before{background:#10b981}
.ecc-stepper__c{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#0d1730;border:2px solid #1e2c4a;color:#94a3b8;font-weight:700;font-size:.95rem}
.ecc-stepper li.is-active .ecc-stepper__c{border-color:#10b981;color:#34d399;box-shadow:0 0 0 4px rgba(16,185,129,.15)}
.ecc-stepper li.is-done .ecc-stepper__c{background:#10b981;border-color:#10b981;color:#04130d}
.ecc-stepper__l{font-size:.62rem;font-weight:800;letter-spacing:.16em;color:#94a3b8;text-align:center}
.ecc-stepper li.is-active .ecc-stepper__l{color:#34d399}
html[data-lang="bn"] .ecc-stepper__l{letter-spacing:0;font-size:.74rem}
.ecc-wiz__body{padding:40px 44px 36px}
.ecc-panel{display:none}
.ecc-panel.is-active{display:block}
.ecc-panel h2{display:flex;align-items:center;gap:12px;font-size:1.45rem;margin:0 0 26px;padding-bottom:18px;border-bottom:1px solid rgba(148,163,184,.14);color:inherit}
.ecc-panel h2 .ecc-i{color:#34d399}
.ecc-f{display:grid;gap:8px;margin-bottom:20px}
.ecc-f>span{font-weight:600;font-size:.95rem;color:inherit}
.ecc-f small,.ecc-hint{color:#94a3b8;font-size:.82rem}
.ecc-f--narrow{max-width:480px}
.ecc-f input,.ecc-f select,.ecc-f textarea{width:100%;background:#040916;border:1px solid #1c2a44;border-radius:18px;padding:15px 20px;color:#f1f5f9;font:inherit;font-size:1rem}
html[data-theme="light"] .ecc-f input,html[data-theme="light"] .ecc-f select,html[data-theme="light"] .ecc-f textarea{background:#f6f9f8;color:#0e1d17;border-color:#cfe0d8}
.ecc-f input:focus,.ecc-f select:focus,.ecc-f textarea:focus{outline:0;border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.18)}
.ecc-f input[type=file]{padding:12px 16px;border-radius:14px}
.ecc-sub{font-weight:700;margin:26px 0 14px;color:inherit}
.ecc-panel>.ecc-sub:first-of-type{margin-top:0}
.ecc-checks{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ecc-checkcard{display:flex;align-items:center;gap:14px;background:#0e1a32;border:1px solid #1d2c4a;border-radius:14px;padding:16px 18px;cursor:pointer;font-weight:500;color:#f1f5f9}
html[data-theme="light"] .ecc-checkcard{background:#f3f8f6;border-color:#cfe0d8;color:#0e1d17}
.ecc-checkcard:hover{border-color:#10b981}
.ecc-checkcard input{appearance:none;-webkit-appearance:none;flex:none;width:22px;height:22px;border-radius:6px;background:#fff;border:2px solid #cbd5e1;display:grid;place-items:center;margin:0;cursor:pointer}
.ecc-checkcard input[type=radio]{border-radius:50%}
.ecc-checkcard input:checked{background:#10b981;border-color:#10b981}
.ecc-checkcard input:checked::after{content:"";width:10px;height:6px;border-left:2.5px solid #04130d;border-bottom:2.5px solid #04130d;transform:rotate(-45deg) translate(1px,-1px)}
.ecc-checkcard input[type=radio]:checked::after{width:8px;height:8px;border:0;border-radius:50%;background:#04130d;transform:none}
.ecc-decl{margin-top:20px}
.ecc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.ecc-scans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-bottom:22px}
.ecc-drop{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;border:2px dashed #1f3b30;border-radius:20px;padding:26px 16px;cursor:pointer;color:#94a3b8;background:#07110d}
.ecc-drop:hover,.ecc-drop.is-on{border-color:#10b981;background:rgba(16,185,129,.06)}
.ecc-drop b{color:#f1f5f9}
html[data-theme="light"] .ecc-drop{background:#f6f9f8}
html[data-theme="light"] .ecc-drop b{color:#0e1d17}
.ecc-drop input{position:absolute;opacity:0;width:1px;height:1px}
.ecc-scan__st{margin-top:10px;font-size:.86rem;color:#94a3b8;min-height:1.2em}
.ecc-bar{height:6px;border-radius:99px;background:#16233a;overflow:hidden;margin-top:6px}
.ecc-bar i{display:block;height:100%;width:0;background:#10b981;transition:width .2s}
.ecc-scan__ok{color:#34d399}
.ecc-scan__warn{color:#fbbf24}
.ecc-matchbox{border-radius:14px;padding:14px 18px;margin-bottom:20px;font-weight:600}
.ecc-matchbox.is-ok{background:rgba(16,185,129,.12);color:#34d399;border:1px solid rgba(16,185,129,.3)}
.ecc-matchbox.is-bad{background:rgba(251,191,36,.1);color:#fbbf24;border:1px solid rgba(251,191,36,.3)}
.ecc-pay{background:#0b1320;border:1px solid #1d2c4a;border-radius:16px;padding:18px 20px;margin-bottom:22px}
html[data-theme="light"] .ecc-pay{background:#f3f8f6;border-color:#cfe0d8}
.ecc-pay .ecc-checks{margin:14px 0}
.ecc-pay__row{display:flex;justify-content:space-between;gap:12px;padding:6px 0}
.ecc-pay__total{border-top:1px solid #1d2c4a;margin-top:6px;padding-top:12px;font-size:1.15rem}
.ecc-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.ecc-slot{background:#0e1a32;border:1px solid #1d2c4a;color:#f1f5f9;border-radius:12px;padding:12px 8px;font:inherit;font-weight:600;cursor:pointer;display:grid;gap:2px}
html[data-theme="light"] .ecc-slot{background:#f3f8f6;border-color:#cfe0d8;color:#0e1d17}
.ecc-slot small{font-weight:400;color:#94a3b8;font-size:.7rem}
.ecc-slot:hover:not(:disabled){border-color:#10b981}
.ecc-slot.is-on{background:#10b981;border-color:#10b981;color:#04130d}
.ecc-slot.is-on small{color:#064e3b}
.ecc-slot:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}
.ecc-review{display:grid;grid-template-columns:200px 1fr;gap:10px 18px;margin:0 0 20px}
.ecc-review dt{color:#94a3b8;font-size:.86rem}
.ecc-review dd{margin:0;font-weight:600;word-break:break-word}
.ecc-wiz__msg{min-height:0;margin-top:14px}
.ecc-wiz__msg .ecc-err{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:10px 14px}
.ecc-wiz__foot{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid rgba(148,163,184,.14);margin-top:30px;padding-top:26px}
.ecc-wiz__foot [data-prev]{margin-right:auto}
.ecc-wiz__foot .ecc-btn{padding:16px 30px;font-size:1rem}
.ecc-wiz__foot.is-busy .ecc-btn{opacity:.6;pointer-events:none}
.ecc-wiz__done{padding:36px 44px 44px}

/* appointment slip (always paper-white so it prints well) */
.ecc-slip{background:#fff;color:#111827;border-radius:18px;padding:34px;max-width:760px;margin:0 auto}
.ecc-slip header{text-align:center;border-bottom:2px solid #111827;padding-bottom:16px;margin-bottom:22px}
.ecc-slip h1{font-size:1.5rem;margin:0;color:#111827;letter-spacing:-.01em}
.ecc-slip h2{font-size:1rem;margin:2px 0 10px;color:#374151;font-weight:600;letter-spacing:0}
.ecc-slip h3{font-size:.95rem;margin:0;text-transform:uppercase;letter-spacing:.12em;color:#065f46}
.ecc-slip__top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ecc-slip dl{margin:0;display:grid;gap:12px;flex:1;min-width:240px}
.ecc-slip dt{font-size:.62rem;font-weight:800;letter-spacing:.14em;color:#6b7280}
.ecc-slip dd{margin:2px 0 0;font-weight:700;font-size:1rem}
.ecc-slip__no{font-size:1.3rem!important;letter-spacing:.04em}
.ecc-slip__qr{text-align:center}
.ecc-slip__qr [data-qr]{display:inline-block;padding:8px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.ecc-slip__qr small{display:block;margin-top:6px;font-size:.72rem;color:#4b5563}
.ecc-slip__when{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0;padding:14px 18px;background:#f3f4f6;border-radius:12px}
.ecc-slip__ins{border-top:1px dashed #9ca3af;padding-top:16px}
.ecc-slip__ins h4{margin:0 0 8px;font-size:.78rem;letter-spacing:.1em;color:#111827}
.ecc-slip__ins ol{margin:0;padding-left:20px;font-size:.9rem;color:#374151}
.ecc-slip__ins li{margin-bottom:4px}
.ecc-slip__btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}

@media (max-width:980px){
	.ecc-hero{min-height:0}
	.ecc-hero__grid{grid-template-columns:1fr}
	.ecc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ecc-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ecc-steps{gap:22px}
	.ecc-steps li::after{display:none!important}
}
@media (max-width:640px){
	.ecc-hero{padding:56px 0 64px}
	.ecc-statusbox{padding:22px 18px;border-radius:30px}
	.ecc-statusform{flex-wrap:wrap}
	.ecc-statusform .ecc-btn{width:100%}
	.ecc-notice__t strong{white-space:normal}
	.ecc-inperson{flex-direction:column;align-items:flex-start}
	.ecc-grid,.ecc-steps,.ecc-row,.ecc-checks,.ecc-grid2,.ecc-slip__when{grid-template-columns:1fr}
	.ecc-wiz__head,.ecc-wiz__body,.ecc-wiz__done{padding-inline:20px}
	.ecc-stepper{padding-inline:8px}
	.ecc-stepper__l{display:none}
	.ecc-review{grid-template-columns:1fr}
	.ecc-wizard{border-radius:24px}
	.ecc-find{width:100%}
}
@media print{
	body *{visibility:hidden!important}
	.ecc-slip,.ecc-slip *{visibility:visible!important}
	.ecc-slip{position:absolute;left:0;top:0;width:100%;box-shadow:none}
	.ecc-slip__btns{display:none!important}
}

/* ===== status result (home box) ===== */
.ecc-statusbox{transition:max-width .35s ease}
.ecc-statusbox.has-result{max-width:1120px}
.ecc-rs{margin-top:34px;padding-top:36px;border-top:1px solid var(--ecc-bd);animation:ecc-in .4s ease both;text-align:left}
.ecc-rs+.ecc-rs{margin-top:40px}
@keyframes ecc-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ecc-rs__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:start}
.ecc-lab{margin:0 0 22px;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ecc-mu)}
html[data-lang="bn"] .ecc-lab{letter-spacing:.02em;text-transform:none;font-size:.9rem}
.ecc-ap{position:relative;overflow:hidden;background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:28px;padding:22px 22px 24px}
html[data-theme="light"] .ecc-ap{background:#f8fafc}
.ecc-ap::after{content:"";position:absolute;right:-70px;top:-70px;width:230px;height:230px;border-radius:50%;background:rgba(16,185,129,.07);pointer-events:none}
.ecc-ap__top{position:relative;z-index:1;display:flex;align-items:center;gap:16px;margin-bottom:22px}
.ecc-ap__av{flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:rgba(148,163,184,.14);color:var(--ecc-mu)}
.ecc-ap__top strong{display:block;font-size:1.35rem;letter-spacing:-.02em;text-transform:uppercase;color:var(--ecc-head)}
.ecc-ap__top small{display:block;margin-top:2px;color:var(--ecc-mu);font-size:1rem;text-transform:uppercase}
.ecc-ap__boxes{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ecc-ap__boxes>div,.ecc-trk__boxes>div{background:var(--ecc-in);border-radius:20px;padding:18px 18px 20px;min-width:0}
html[data-theme="light"] .ecc-ap__boxes>div,html[data-theme="light"] .ecc-trk__boxes>div{background:#fff;border:1px solid var(--ecc-bd)}
.ecc-ap__boxes small,.ecc-trk__boxes small{display:block;margin-bottom:10px;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ecc-mu)}
.ecc-ap__boxes b{display:block;font-size:1.05rem;color:var(--ecc-head);word-break:break-all;line-height:1.5}
.ecc-cur{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding:20px 24px;border-radius:24px;color:#fff;background:linear-gradient(135deg,#0fb784,#0b9c8a);box-shadow:0 14px 34px rgba(16,185,129,.28)}
.ecc-cur small{display:block;font-size:.76rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.92;margin-bottom:6px}
.ecc-cur strong{display:block;font-size:1.65rem;letter-spacing:-.02em;line-height:1.2}
.ecc-cur__qr{flex:none;width:76px;height:76px;padding:6px;border-radius:14px;background:#fff;display:grid;place-items:center}
.ecc-cur__qr img,.ecc-cur__qr canvas{width:64px!important;height:64px!important;display:block}
.ecc-rs__line{margin:14px 4px 0;font-size:.92rem;color:var(--ecc-tx)}
.ecc-rs__note{color:var(--ecc-mu)}
.ecc-log{list-style:none;margin:0;padding:0;position:relative}
.ecc-log::before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:2px;background:rgba(148,163,184,.2)}
.ecc-log li{position:relative;padding:0 0 30px 46px}
.ecc-log li:last-child{padding-bottom:0}
.ecc-log__dot{position:absolute;left:3px;top:2px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#3b4766;color:#fff}
html[data-theme="light"] .ecc-log__dot{background:#cbd5e1}
.ecc-log h5{margin:0 0 6px;font-size:1.08rem;color:var(--ecc-mu);letter-spacing:-.01em}
.ecc-log p{margin:0;color:var(--ecc-mu);font-size:1rem;line-height:1.65;opacity:.9}
.ecc-log li.is-now .ecc-log__dot{left:-1px;top:-2px;width:26px;height:26px;background:#10b981;box-shadow:0 0 0 5px rgba(16,185,129,.16)}
.ecc-log li.is-now .ecc-log__dot svg{width:13px;height:13px;stroke-width:3}
.ecc-log li.is-now h5{color:var(--ecc-head)}
.ecc-log li.is-warn .ecc-log__dot{background:#f59e0b;box-shadow:0 0 0 5px rgba(245,158,11,.16)}

/* ===== Consular Registry Status page ===== */
.ecc-track{padding:110px 0 120px;min-height:60vh}
.ecc-trackwrap{max-width:960px}
.ecc-trackbox{background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:40px;padding:34px 44px 30px;box-shadow:var(--ecc-sh)}
html[data-theme="light"] .ecc-trackbox{border-color:transparent;box-shadow:0 18px 50px rgba(15,23,42,.08)}
.ecc-trackform .ecc-search{border-radius:26px}
.ecc-trackform .ecc-search input{padding:20px 0}
.ecc-trackform .ecc-btn{border-radius:22px;padding-inline:32px;background:linear-gradient(135deg,#0aa57a,#05956d)}
.ecc-hints--rule{margin-top:30px;padding-top:26px;border-top:1px solid var(--ecc-bd)}
.ecc-hints code{color:var(--ecc-tx);font-size:inherit}
.ecc-eg{color:var(--ecc-mu)}
.ecc-result--track{margin-top:30px}
.ecc-result--track .ecc-err{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);border-radius:20px;padding:18px 22px;margin:0}
.ecc-trk{background:var(--ecc-card);border:1px solid var(--ecc-bd);border-radius:36px;padding:30px 44px 36px;margin-bottom:24px;animation:ecc-in .4s ease both;text-align:left}
html[data-theme="light"] .ecc-trk{border-color:transparent;box-shadow:0 18px 50px rgba(15,23,42,.08)}
.ecc-trk__top{display:flex;align-items:center;gap:18px;padding-bottom:28px;border-bottom:1px solid var(--ecc-bd);flex-wrap:wrap}
.ecc-trk__av{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:rgba(16,185,129,.12);color:var(--ecc-gt)}
.ecc-trk__who{flex:1;min-width:180px}
.ecc-trk__who strong{display:block;font-size:1.5rem;letter-spacing:-.02em;text-transform:uppercase;color:var(--ecc-head)}
.ecc-trk__who small{display:block;margin-top:2px;color:var(--ecc-mu);text-transform:uppercase;font-size:1rem}
.ecc-outbtn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border:1px solid rgba(16,185,129,.45);border-radius:16px;background:rgba(16,185,129,.07);color:var(--ecc-gt);font-weight:700;font-size:.95rem;text-decoration:none;transition:all .2s}
a.ecc-outbtn:hover{background:rgba(16,185,129,.16);text-decoration:none;transform:translateY(-1px)}
.ecc-outbtn--st{cursor:default}
.ecc-trk__boxes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.ecc-trk__boxes>div{border-radius:24px;padding:22px 24px 26px}
.ecc-trk__boxes b{display:block;font-size:1.3rem;letter-spacing:-.01em;color:var(--ecc-head);line-height:1.45;word-break:break-all}
.ecc-sec{display:flex!important;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;word-break:normal!important}
.ecc-sec span{color:var(--ecc-gt);font-weight:800;letter-spacing:.02em}
.ecc-sec em{font-style:normal;font-size:.85rem;font-weight:600;color:var(--ecc-gt);border:1px solid rgba(52,211,153,.5);border-radius:999px;padding:4px 14px}
@media (max-width:900px){.ecc-rs__grid{grid-template-columns:1fr;gap:34px}.ecc-trk__boxes{grid-template-columns:1fr}.ecc-trackbox,.ecc-trk{padding-inline:22px;border-radius:28px}.ecc-track{padding:70px 0 80px}.ecc-trackform{flex-wrap:wrap}.ecc-trackform .ecc-btn{width:100%}.ecc-ap__boxes{grid-template-columns:1fr}}

/* ===== hide the red notice bar on status / verification / wizard pages ===== */
.ecc-no-ticker .ec-ticker{display:none!important}

/* ===== official letter verification page ===== */
body.ecc-verify{background:#04070f;color:#e2e8f0}
.ecc-vbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 40px;background:#06513f;border-bottom:1px solid rgba(52,211,153,.18)}
.ecc-vbar__t{display:flex;align-items:center;gap:14px;color:#5eead4;font-weight:800;font-size:1.05rem;letter-spacing:.06em}
.ecc-vbar__t .ecc-i{color:#5eead4}
.ecc-vbar__a{display:flex;gap:12px;flex-wrap:wrap}
.ecc-vb{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border-radius:12px;font:inherit;font-weight:700;font-size:.92rem;cursor:pointer;text-decoration:none;border:1px solid transparent;transition:filter .2s,transform .2s}
.ecc-vb:hover{filter:brightness(1.12);transform:translateY(-1px);text-decoration:none}
.ecc-vb--g{background:#0a6b52;border-color:rgba(52,211,153,.4);color:#6ee7b7}
.ecc-vb--d{background:#04120f;border-color:rgba(255,255,255,.08);color:#fff}
.ecc-vb--r{background:#f0505a;color:#fff}
.ecc-vp{padding:40px 0 70px}
.ecc-vp .ecc-wrap{max-width:1180px}
.ecc-seal{display:flex;align-items:center;gap:20px;padding:18px 26px;margin:0 auto 32px;border:1px solid rgba(52,211,153,.35);border-radius:26px;background:linear-gradient(90deg,rgba(6,78,59,.55),rgba(6,60,48,.45))}
.ecc-seal__ic{flex:none;color:#34d399;display:grid;place-items:center}
.ecc-seal__tx{flex:1;min-width:0}
.ecc-seal__tx b{display:block;color:#5eead4;letter-spacing:.1em;font-size:.82rem;margin-bottom:4px}
.ecc-seal__tx p{margin:0;color:#6ee7b7;font-size:.88rem;line-height:1.5}
.ecc-seal__code{flex:none;padding-left:26px;border-left:1px solid rgba(52,211,153,.3);text-align:center}
.ecc-seal__code small{display:block;color:#34d399;font-size:.7rem;font-weight:800;letter-spacing:.14em;margin-bottom:6px}
.ecc-seal__code b{display:inline-block;background:rgba(16,185,129,.18);border:1px solid rgba(52,211,153,.4);border-radius:8px;padding:6px 16px;color:#5eead4;letter-spacing:.12em;font-size:1.05rem;font-family:ui-monospace,Menlo,Consolas,monospace}
.ecc-vnote{max-width:820px;margin:-14px auto 22px;padding:10px 16px;border-radius:12px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.35);color:#fbbf24;font-size:.88rem}
.ecc-vfail{max-width:640px;margin:70px auto;text-align:center;padding:36px;border:1px solid var(--ecc-bd);border-radius:26px;background:var(--ecc-card)}
.ecc-vfail h2{margin:0 0 10px;color:#fff}.ecc-vfail p{color:var(--ecc-mu);margin:0}
.ecc-paper{width:min(100%,794px);margin:0 auto;background:#fff}
.ecc-lt{padding:74px 56px 64px;color:#111;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-size:16.5px;line-height:1.55;min-height:1000px;display:flex;flex-direction:column}
.ecc-lt p{margin:0}
.ecc-lt__head{text-align:center;margin-bottom:46px}
.ecc-lt__head p:first-child{font-size:18px}
.ecc-lt__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:46px}
.ecc-lt__meta p{margin-top:12px;font-size:17px}
.ecc-lt__meta p:first-child{margin-top:18px}
.ecc-lt__qr{flex:none;width:140px;padding:12px 8px 8px;border:1px solid #d6dde6;border-radius:14px;box-shadow:0 2px 8px rgba(15,23,42,.08);text-align:center}
.ecc-lt__qr>div{display:flex;justify-content:center}
.ecc-lt__qr img,.ecc-lt__qr canvas{width:104px!important;height:104px!important}
.ecc-lt__qr b{display:block;margin-top:4px;font-size:11.5px;letter-spacing:.03em;font-weight:800}
.ecc-lt__qr small{display:block;font-size:10px;color:#475569;font-weight:700;letter-spacing:.02em}
.ecc-lt__to{text-align:center;margin:0 0 34px;font-size:22px;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:#111}
.ecc-lt__p{text-align:justify;margin:0 0 20px!important;font-size:17px;line-height:1.7}
.ecc-lt__p.is-first{text-indent:2.6em;margin-bottom:18px!important}
.ecc-lt__tb{width:100%;border-collapse:collapse;margin:0 0 26px;font-size:17px;line-height:1.55}
.ecc-lt__tb th,.ecc-lt__tb td{border:1px solid #111;padding:10px 12px;vertical-align:top;text-align:left}
.ecc-lt__tb{table-layout:fixed}.ecc-lt__tb th:nth-child(1){width:9%}.ecc-lt__tb th:nth-child(2){width:20%}.ecc-lt__tb th:nth-child(3){width:38%}.ecc-lt__tb th:nth-child(4){width:33%}
.ecc-lt__tb th{text-align:center;font-weight:700;padding:14px 10px}
.ecc-lt__sign{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:90px}
.ecc-lt__sign>div{text-align:right}.ecc-lt__sign b{display:block;font-size:18px}.ecc-lt__sign span:not(.ecc-lt__ok){display:block;font-size:17px;margin-top:6px}
.ecc-lt__ok{display:inline-block;border:1.5px solid #10b981;color:#059669;border-radius:999px;padding:1px 12px;font-weight:700;font-size:16px}
.ecc-lt__foot{text-align:center;margin-top:60px;font-size:16.5px;line-height:1.7}
.ecc-lt__foot p:last-child{font-size:15.5px}
@media (max-width:820px){.ecc-vbar{padding:14px 18px}.ecc-seal{flex-direction:column;align-items:flex-start}.ecc-seal__code{padding:14px 0 0;border:0;border-top:1px solid rgba(52,211,153,.3);width:100%;text-align:left}.ecc-lt{padding:36px 20px;font-size:15px}.ecc-lt__meta{flex-direction:column}.ecc-lt__tb{font-size:14px}.ecc-lt__sign{flex-direction:column;align-items:flex-start;gap:20px}.ecc-lt__sign>div{text-align:left}}
@media print{
	@page{size:A4;margin:0}
	body.ecc-verify{background:#fff!important}
	.ecc-vbar,.ecc-seal,.ecc-vnote,.ec-footer,#ec-loader,.ec-skip{display:none!important}
	.ecc-vp{padding:0}.ecc-vp .ecc-wrap{max-width:none;padding:0}
	.ecc-paper{width:210mm;margin:0}.ecc-lt{min-height:297mm;padding:22mm 18mm}
}

/* interactive hero background (canvas drawn by ecc.js; the static mesh is the fallback) */
.ecc-hero__cv{position:absolute;left:0;top:0;width:100%;height:100%;z-index:0;pointer-events:none;display:block}
.ecc-hero.has-cv::before{display:none}

/* scroll reveal (class added by ecc.js only; removed again after the animation so hover effects stay snappy) */
html.ecc-rv-on .ecc-rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease var(--d,0s),transform .7s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
html.ecc-rv-on .ecc-rv.is-in{opacity:1;transform:none}

/* ===== wizard step 1 — per-service forms (matched to the official portal) ===== */
.ecc-req{color:#ef4444;font-style:normal;margin-left:4px}
.ecc-s1grid{align-items:start;gap:0 22px}
.ecc-s1grid .ecc-f{margin-bottom:24px}
.ecc-info{background:rgba(16,185,129,.07);border:1px solid rgba(16,185,129,.28);border-radius:22px;padding:22px 26px 24px;margin:0 0 30px}
.ecc-info h3{margin:0 0 8px;font-size:1.1rem;font-weight:700;color:#10c98a;letter-spacing:-.01em}
.ecc-info p{margin:0;color:#7fae9c;font-size:.95rem;line-height:1.7}
html[data-theme="light"] .ecc-info{background:#ecfaf4;border-color:#b6e6d0}
html[data-theme="light"] .ecc-info p{color:#44705f}
.ecc-f>span{font-weight:600;font-size:.92rem}
.ecc-f input,.ecc-f select,.ecc-f textarea{border-radius:22px;padding:17px 22px;background:#030712}
.ecc-f textarea{min-height:118px;resize:vertical}
.ecc-f ::placeholder{color:#5b6781}
.ecc-f small{line-height:1.5}
.ecc-panel>.ecc-info:first-of-type{margin-top:0}
/* upload panel */
.ecc-up{background:#0b1426;border:1px solid #16233d;border-radius:24px;padding:26px 26px 28px;margin:6px 0 28px}
.ecc-up__h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid rgba(148,163,184,.12)}
.ecc-up__h b{display:inline-flex;align-items:center;gap:12px;font-size:1.05rem;color:#f1f5f9}
.ecc-up__h b .ecc-i{color:#34d399}
.ecc-up__h em{font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.06em;color:#34d399;background:rgba(16,185,129,.12);padding:5px 14px;border-radius:999px;text-transform:uppercase}
.ecc-up__g{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ecc-up__c{background:#030712;border:1px solid #16233d;border-radius:20px;padding:20px 20px 22px;min-width:0}
.ecc-up__l{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;font-weight:600;font-size:.95rem;color:#f1f5f9}
.ecc-up__l em{font-style:normal;font-size:.66rem;font-weight:700;color:#f59e0b;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.35);padding:3px 10px;border-radius:7px}
.ecc-drop--s1{position:relative;border:2px dashed #2a3a55;border-radius:16px;padding:26px 14px;background:transparent;color:#94a3b8}
.ecc-drop--s1:hover,.ecc-drop--s1.is-on{border-color:#10b981;background:rgba(16,185,129,.05)}
.ecc-drop--s1 .ecc-i{color:#94a3b8}
.ecc-drop--s1 b{font-size:.92rem;word-break:break-all}
.ecc-drop--s1 small{font-size:.78rem}
/* list of goods */
.ecc-memo{background:#0b1426;border:1px solid #16233d;border-radius:24px;padding:22px 26px 26px;margin:0 0 26px}
.ecc-memo h4{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:.98rem;color:#f1f5f9}
.ecc-memo h4 .ecc-i{color:#34d399}
.ecc-memo p{margin:0 0 16px;color:#7f8ca6;font-size:.88rem}
.ecc-memo textarea{width:100%;background:#030712;border:1px solid #16233d;border-radius:18px;padding:16px 20px;color:#f1f5f9;font:inherit;font-size:.95rem;line-height:1.7;min-height:130px;resize:vertical}
.ecc-memo textarea:focus{outline:0;border-color:#10b981}
html[data-theme="light"] .ecc-up,html[data-theme="light"] .ecc-memo{background:#f4f8f6;border-color:#cfe0d8}
html[data-theme="light"] .ecc-up__c,html[data-theme="light"] .ecc-memo textarea{background:#fff;border-color:#cfe0d8;color:#0e1d17}
html[data-theme="light"] .ecc-up__h b,html[data-theme="light"] .ecc-up__l,html[data-theme="light"] .ecc-memo h4{color:#0e1d17}
@media (max-width:760px){.ecc-up__g{grid-template-columns:1fr}.ecc-s1grid{grid-template-columns:1fr}}

/* ===== Travel Pass (TP) module ===== */
.ecc-tp{max-width:1010px;margin:0 auto}
.ecc-tpform{background:#0e1529;border:1px solid rgba(148,163,184,.12);border-radius:44px;padding:50px 56px 54px;color:#f1f5f9;box-shadow:0 30px 90px rgba(0,0,0,.4)}
html[data-theme="light"] .ecc-tpform{background:#fff;color:#0f172a;border-color:transparent;box-shadow:0 20px 60px rgba(15,23,42,.1)}
.ecc-tp__tag{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#10c98a;background:rgba(16,185,129,.1);padding:7px 16px;border-radius:999px}
html[data-lang="bn"] .ecc-tp__tag{letter-spacing:.02em;text-transform:none}
.ecc-tpform h1{margin:18px 0 8px;font-size:clamp(1.9rem,3.6vw,2.5rem);letter-spacing:-.03em;color:inherit}
.ecc-tp__sub{margin:0;padding-bottom:28px;border-bottom:1px solid rgba(148,163,184,.12);color:#94a3b8;font-size:1.02rem}
.ecc-tp__grid{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px;margin-top:34px}
.ecc-tpf{display:grid;gap:10px;align-content:start;min-width:0}
.ecc-tpf>span,.ecc-tp__ph-l{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#aab6cb}
html[data-lang="bn"] .ecc-tpf>span,html[data-lang="bn"] .ecc-tp__ph-l{letter-spacing:0;text-transform:none;font-size:.9rem}
.ecc-tp__wide{grid-column:1/-1}
.ecc-tpf input,.ecc-tpf select,.ecc-tpf textarea{width:100%;background:#030712;border:1px solid #1b2840;border-radius:20px;padding:19px 24px;color:#f1f5f9;font:inherit;font-size:1rem;text-transform:uppercase}
.ecc-tpf select{appearance:auto;text-transform:none}
.ecc-tpf textarea{min-height:100px;resize:vertical}
.ecc-tpf input::placeholder,.ecc-tpf textarea::placeholder{color:#4f5b74;text-transform:uppercase}
.ecc-tpf input:focus,.ecc-tpf select:focus,.ecc-tpf textarea:focus{outline:0;border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.16)}
html[data-theme="light"] .ecc-tpf input,html[data-theme="light"] .ecc-tpf select,html[data-theme="light"] .ecc-tpf textarea{background:#f6f9f8;color:#0e1d17;border-color:#cfe0d8}
.ecc-tp__photo{margin-top:34px;padding-top:30px;border-top:1px solid rgba(148,163,184,.12)}
.ecc-tp__ph-l{margin:0 0 6px}
.ecc-tp__ph-h{margin:0 0 18px;color:#7f8ca6;font-size:.9rem}
.ecc-tp__ph-r{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.ecc-tp__box{width:200px;height:240px;border:2px dashed #2a3a55;border-radius:20px;background:#030712;display:grid;place-content:center;justify-items:center;gap:10px;color:#94a3b8;font-size:.9rem;text-align:center;overflow:hidden}
.ecc-tp__box img{width:100%;height:100%;object-fit:cover;display:block}
.ecc-tp__box.has-img{border-style:solid;border-color:#10b981;padding:0}
.ecc-tp__up{position:relative;display:inline-flex;align-items:center;gap:10px;padding:16px 22px;border-radius:16px;background:#16213a;color:#e2e8f0;font-weight:600;cursor:pointer;transition:background .2s}
.ecc-tp__up:hover{background:#1d2b4b}
.ecc-tp__up input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.ecc-tp__foot{display:flex;justify-content:flex-end;margin-top:34px;padding-top:30px;border-top:1px solid rgba(148,163,184,.12)}
.ecc-tp__go{padding:20px 34px;font-size:1.05rem;font-weight:700;border-radius:20px;background:linear-gradient(135deg,#0aa57a,#05956d);box-shadow:0 14px 34px rgba(16,185,129,.3)}
.ecc-tpform.is-busy .ecc-tp__go{opacity:.6;pointer-events:none}
.ecc-tpform .ecc-wiz__msg:empty{display:none}
.ecc-tpdone{background:#0e1529;border:1px solid rgba(52,211,153,.25);border-radius:40px;padding:56px 40px;text-align:center;color:#f1f5f9}
html[data-theme="light"] .ecc-tpdone{background:#fff;color:#0f172a}
.ecc-tpdone__ic{display:inline-grid;color:#34d399;margin-bottom:10px}
.ecc-tpdone h2{margin:0 0 8px;font-size:1.9rem;color:inherit}
.ecc-tpdone p{margin:0 auto 18px;max-width:520px;color:#94a3b8}
.ecc-tpdone__no{display:inline-block;margin:6px 0 10px;padding:14px 28px;border-radius:16px;background:#030712;border:1px solid rgba(52,211,153,.35);color:#34d399;font-weight:800;letter-spacing:.06em;font-size:1.3rem;font-family:ui-monospace,Menlo,Consolas,monospace}
.ecc-tpdone__a{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:10px}
@media (max-width:760px){.ecc-tpform{padding:30px 20px 34px;border-radius:28px}.ecc-tp__grid{grid-template-columns:1fr}.ecc-tp__foot .ecc-btn{width:100%}}
