
:root{
  --ecto-brand-red:#d70014;
  --ecto-brand-dark:#0b2947;
  --ecto-brand-blue:#079aca;
  --ecto-brand-blue-dark:#07547f;
  --ecto-surface:#ffffff;
  --ecto-page:#f2f7fc;
  --ecto-line:#d7e5ef;
}

/* V17: complete Sri Lankan currency and branding refinement */
.ecto-currency-prefix{font-weight:800;letter-spacing:.01em;white-space:nowrap}
.ecto-wallet-amount{font-variant-numeric:tabular-nums;white-space:nowrap;overflow:visible!important;text-overflow:clip!important}
#top-box .language .dropdown-toggle{
  display:inline-flex!important;align-items:center;gap:.35rem;min-width:max-content!important;
  max-width:none!important;overflow:visible!important;white-space:nowrap!important;padding:10px 18px!important;
}
#top-box .language{overflow:visible!important;max-width:none!important}
#top-box .container,#top-box .row{overflow:visible!important}
.ecto-summary-value{display:flex;align-items:baseline;gap:.3rem;flex-wrap:wrap}

/* Public website logo with tagline */
.ecto-public-header .inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.ecto-public-header .ecto-public-brand-logo{width:420px!important;max-width:42vw!important;height:auto!important;max-height:78px!important;object-fit:contain!important;object-position:left center}
.ecto-public-header nav{display:flex;align-items:center;gap:30px;flex-wrap:wrap}

/* Premium authenticated brand logo */
.header .logo-img{width:240px!important;max-width:100%!important;height:auto!important;max-height:94px!important;object-fit:contain!important;object-position:left center}
.header .logo-box,.header .logo{overflow:visible!important}

/* Modern, stable page canvas */
html,body{overflow-x:hidden!important;overflow-y:auto!important;min-height:100%!important}
body.ecto-agent-app{background:var(--ecto-page)!important}
.page-box,.page-box-content{min-height:100vh!important;overflow:visible!important}

/* Form and finance-page refinement */
.ecto-agent-app input[type=text],.ecto-agent-app input[type=number],.ecto-agent-app input[type=password],
.ecto-agent-app input[type=date],.ecto-agent-app select,.ecto-agent-app textarea{
  border:1px solid #c9ddeb!important;border-radius:14px!important;min-height:48px!important;
  padding:10px 14px!important;background:#fff!important;box-shadow:0 5px 16px rgba(16,66,99,.04)!important;
}
.ecto-agent-app input:focus,.ecto-agent-app select:focus,.ecto-agent-app textarea:focus{
  border-color:var(--ecto-brand-blue)!important;box-shadow:0 0 0 4px rgba(7,154,202,.12)!important;outline:none!important
}
.ecto-agent-app .btn-primary,.ecto-agent-app button[type=submit],.ecto-agent-app input[type=submit]{
  border-radius:13px!important;background:linear-gradient(135deg,#078fc2,#12b6d4)!important;
  border:0!important;box-shadow:0 10px 22px rgba(7,143,194,.20)!important;font-weight:800!important
}

/* Mobile layout: prevent overlays and clipping */
@media(max-width:991px){
  #top-box .col-xs-9{width:72%!important}
  #top-box .col-xs-3{width:28%!important}
  #top-box .language .dropdown-toggle{font-size:13px!important;padding:9px 12px!important}
  .ecto-public-header .inner{padding:14px 18px!important;min-height:84px!important}
  .ecto-public-header .ecto-public-brand-logo{width:250px!important;max-width:62vw!important;max-height:62px!important}
  .ecto-public-header nav a:not(.ecto-login-link){display:none!important}
  .header .logo-img{width:190px!important;max-height:78px!important}
  .header .logo-box{width:58%!important}
  .header .right-box{width:42%!important}
  .primary .navbar-toggle{position:relative!important;z-index:10005!important}
  .primary .navbar-collapse{z-index:10000!important}
}
@media(max-width:480px){
  #top-box .language .dropdown-toggle{font-size:12px!important;gap:.25rem!important}
  .ecto-wallet-label{display:inline!important}
  .ecto-public-header .ecto-public-brand-logo{width:220px!important;max-width:66vw!important}
  .header .logo-img{width:168px!important}
}
