
:root{--n:#07395b;--g:#159447;--s:#f2f7f9;--b:#d7e3e9;--m:#667887}
*{box-sizing:border-box}body.account{margin:0;background:#edf3f6;color:#183044}
.acc-head{background:#fff;border-bottom:1px solid var(--b)}.acc-head .nav-wrap{min-height:104px}
.acc-actions{margin-left:auto;display:flex;gap:14px;align-items:center}.acc-actions a{font-weight:800;color:var(--n)}
.acc-actions .primary{padding:12px 17px;border-radius:9px;color:#fff;background:var(--g)}
.acc-hero{padding:46px 0 34px;color:#fff;background:linear-gradient(120deg,#052f50,#0b5b71 65%,#168551)}
.acc-hero h1{color:#fff;margin:7px 0;font-size:clamp(2.2rem,4vw,3.7rem)}.acc-hero p{max-width:760px;margin:0}
.shell{width:min(1180px,calc(100% - 32px));margin:34px auto 70px}
.card{background:#fff;border:1px solid var(--b);border-radius:20px;box-shadow:0 18px 52px #07395b14;padding:clamp(24px,4vw,44px)}
.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.card h2{margin-top:0;color:var(--n)}.muted{color:var(--m)}
.grid{display:grid;gap:17px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
label{display:grid;gap:7px;font-size:.88rem;font-weight:700}.full{grid-column:1/-1}
input,select{width:100%;min-height:48px;border:1px solid #c7d5dd;border-radius:10px;padding:11px 13px;font:inherit;background:#fff}
input:focus,select:focus{outline:3px solid #15944720;border-color:var(--g)}.bad{border-color:#b43c3c;background:#fff8f8}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:0;border-radius:10px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
.btn.primary{color:#fff;background:var(--g)}.btn.secondary{color:var(--n);background:#eef4f7;border:1px solid var(--b)}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.msg{display:none;margin-top:18px;padding:13px;border-radius:10px}.msg.show{display:block}.msg.error{color:#8d2525;background:#fff0f0}.msg.success{color:#1d6a3d;background:#edf9f1}
.profile-type{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}.profile-type input{position:absolute;opacity:0}.profile-type span{display:block;height:100%;padding:20px;border:2px solid var(--b);border-radius:14px;cursor:pointer}
.profile-type b,.profile-type small{display:block}.profile-type b{margin-top:8px;color:var(--n)}.profile-type small{margin-top:5px;color:var(--m)}.profile-type input:checked+span{border-color:var(--g);background:#effaf3}
.conditional{display:none}.conditional.show{display:block}.check{display:flex;gap:10px;align-items:flex-start;margin-top:18px}.check input{width:19px;height:19px;min-height:19px}
.demo{padding:24px;border-radius:20px;color:#fff;background:linear-gradient(145deg,#063b60,#08706b)}.demo ul{line-height:1.75}
.dash{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px}.side{position:sticky;top:20px;background:#fff;border:1px solid var(--b);border-radius:18px;padding:20px}.side nav{display:grid;gap:7px}.side button{border:0;border-radius:10px;padding:11px 12px;background:transparent;text-align:left;font:inherit;font-weight:700;color:#566a77;cursor:pointer}.side button.active{color:var(--n);background:#eef9f2}
.section{display:none}.section.active{display:block}.panel{background:#fff;border:1px solid var(--b);border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 15px 45px #07395b10}
.welcome{display:flex;justify-content:space-between;gap:20px}.pill{padding:7px 11px;border-radius:999px;font-size:.78rem;font-weight:800;color:#8a5a19;background:#fff5dd}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.stat{padding:18px;border-radius:14px;background:var(--s)}.stat span{display:block;color:var(--m);font-size:.78rem}.stat strong{display:block;margin-top:6px;color:var(--n);font-size:1.5rem}
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.quick a{display:block;padding:22px;border-radius:16px;color:#fff;text-decoration:none;background:linear-gradient(145deg,#063b60,#08706b)}.quick a:nth-child(2){background:linear-gradient(145deg,#0d6c4b,#159447)}.quick a:nth-child(3){color:var(--n);background:#eef4f7;border:1px solid var(--b)}.quick b,.quick small{display:block}.quick small{margin-top:6px}
.table{overflow:auto;border:1px solid var(--b);border-radius:14px}.table table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:14px;border-bottom:1px solid var(--b);text-align:left;font-size:.86rem}.table th{background:#f6f9fb;color:var(--n)}
.status{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:.74rem;font-weight:800}.status.done{color:#1b6a3c;background:#eaf8ef}.status.pending{color:#8a5a19;background:#fff5dd}.status.review{color:#704f9b;background:#f2eafd}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mini{padding:18px;border:1px solid var(--b);border-radius:14px}.mini h3{margin:0;color:var(--n)}.mini p{color:var(--m)}
.profile{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.profile div{padding:16px;border-radius:12px;background:var(--s)}.profile span{display:block;color:var(--m);font-size:.76rem}.profile strong{display:block;margin-top:5px}
.account-link{font-weight:800;color:#07395b;white-space:nowrap}.account-register{padding:11px 15px;border-radius:9px;color:#fff!important;background:#159447}
.onboard-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:28px}.onboard-steps b{padding:10px 6px;border-radius:8px;text-align:center;color:#667887;background:#eef3f5;font-size:.76rem}.onboard-steps b.active{color:#fff;background:#159447}.onboard-step{display:none}.onboard-step.show{display:block}.director-row{margin:12px 0;padding:16px;border:1px solid var(--b);border-radius:12px;background:#f8fafb}.upload-note,.test-code{margin:18px 0;padding:14px;border-left:4px solid #159447;background:#eef9f2}.test-code small{display:block;margin-top:5px}.back-tab{display:inline-flex;margin:0 0 10px;padding:6px 10px;border:1px solid #b9cbd4;border-radius:7px;background:#eef4f7;color:#07395b;font:inherit;font-size:.78rem;font-weight:800;text-decoration:none;cursor:pointer}
@media(max-width:900px){.auth-grid,.dash{grid-template-columns:1fr}.side{position:static}.side nav{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.grid.two,.profile-type,.quick,.cards,.profile{grid-template-columns:1fr}.side nav{grid-template-columns:1fr 1fr}.acc-actions span{display:none}}

/* Version 29: connected transaction detail panel */
#transactionDetailPanel{
  margin-top:20px;
}
#transactionPendingActions{
  margin-top:20px;
}

/* V121: compact high-contrast registration, structured addresses and fast date selection */
.account{background:#cfd9df;color:#111}
.account .shell{max-width:1180px}
.account .auth-grid{grid-template-columns:minmax(0,780px) minmax(260px,340px);align-items:start}
.account .card{background:#fff;border:1px solid #8fa4b0;box-shadow:0 16px 40px rgba(7,57,91,.18)}
.account .card h2,.account .card h3,.account label,.account .field-label{color:#111}
.account .grid.two{grid-template-columns:repeat(2,minmax(0,320px));gap:12px 16px;justify-content:start}
.account .grid.two .full{grid-column:1/-1;max-width:656px}
.account .grid.two label{max-width:320px}
.account .grid.two label.full{max-width:656px}
.account input,.account select,.account textarea{background:#fff!important;color:#111!important;border:1.5px solid #728996!important;min-height:42px!important;padding:8px 10px!important;box-shadow:none!important}
.account input:focus,.account select:focus,.account textarea:focus{border-color:#08706b!important;outline:3px solid rgba(8,112,107,.18)!important}
.account input.bad,.account select.bad{border:2px solid #b42318!important;background:#fff4f4!important}
.account small{color:#465861}
.field-group{max-width:320px}
.field-label{display:block;margin-bottom:7px;font-weight:700}
.date-selects{display:grid;grid-template-columns:1.05fr 1.15fr .8fr;gap:6px}
.date-selects select{min-width:0;width:100%}
.address-block{max-width:656px;padding:14px 16px;border:1px solid #9eafb7;border-radius:12px;background:#f4f7f8}
.address-block h3{margin:0 0 10px;font-size:1rem}
.address-tools{display:grid;grid-template-columns:minmax(0,210px) 130px minmax(0,280px);gap:8px;align-items:end}
.address-tools label{max-width:none!important}
.address-find{min-height:42px!important;padding:8px 10px!important}
.address-find:disabled{cursor:not-allowed;color:#5d6a71!important;background:#e5ebee!important;border-color:#c3ced3!important;opacity:.9}
.address-result{grid-column:auto}
.address-lines{margin-top:10px}
.address-note{margin:8px 0 0;color:#465861;font-size:.78rem;line-height:1.4}
.business-address-tools{margin-top:2px}
.document-date{align-self:end}
.expiry-selects{grid-template-columns:.9fr 1.25fr .72fr}
.password-status{display:block;min-height:18px;margin-top:5px;font-weight:800}
.password-status.match{color:#116b3c}.password-status.mismatch{color:#b42318}
@media(max-width:900px){.account .auth-grid{grid-template-columns:1fr}.account .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.address-tools{grid-template-columns:1fr 130px}.address-result{grid-column:1/-1}}
@media(max-width:650px){.account .grid.two{grid-template-columns:1fr}.account .grid.two .full{grid-column:auto}.address-tools{grid-template-columns:1fr}.address-result{grid-column:auto}.date-selects{grid-template-columns:1fr 1fr 1fr}.onboard-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.account .card{padding:16px}.account .shell{width:min(100% - 18px,1180px)}}


/* V125: account hub — customers choose Night FX, Send Money or Foreign Exchange after login */
.quick.quick-services{grid-template-columns:repeat(4,minmax(0,1fr))}
.quick.quick-services a{min-height:116px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.quick.quick-services a:nth-child(2){background:linear-gradient(145deg,#063b60,#08706b);color:#fff;border:0}
.quick.quick-services a:nth-child(3){background:linear-gradient(145deg,#0d6c4b,#159447);color:#fff;border:0}
.quick.quick-services a:nth-child(4){color:var(--n);background:#eef4f7;border:1px solid var(--b)}
.quick.quick-services .night-fx-action{background:linear-gradient(145deg,#2a1711,#4a281c 52%,#2d1811)!important;color:#fff!important;border:1px solid #8d654e!important;box-shadow:0 12px 28px rgba(51,27,17,.20)}
.quick.quick-services .night-fx-action:before{content:"";position:absolute;inset:-45%;pointer-events:none;background-image:radial-gradient(circle,#fff7d1 0 1px,transparent 1.7px),radial-gradient(circle,#f7cc78 0 1.2px,transparent 1.8px),radial-gradient(circle,#fff 0 .8px,transparent 1.4px);background-size:67px 67px,93px 93px,121px 121px;background-position:0 0,23px 37px,51px 19px;opacity:.28;animation:kxDashGlitter 9s linear infinite}
.quick.quick-services .night-fx-action b,.quick.quick-services .night-fx-action small{position:relative;z-index:1}
@keyframes kxDashGlitter{from{transform:translate(0,0)}to{transform:translate(90px,70px)}}
@media(max-width:1050px){.quick.quick-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.quick.quick-services{grid-template-columns:1fr}}

/* V126: service-card copy visibility */
.quick.quick-services a:nth-child(-n+3) b,
.quick.quick-services a:nth-child(-n+3) small{color:#fff!important;}
.quick.quick-services a:nth-child(-n+3) small{opacity:1!important;}

/* V132 — compact customer account and app-ready touch targets */
.account{font-size:13px}.acc-head .nav-wrap{min-height:76px}.acc-hero{padding:26px 0 22px}.acc-hero h1{font-size:clamp(1.65rem,3vw,2.45rem)}.shell{margin:22px auto 48px}.card{padding:22px;border-radius:15px}.grid{gap:11px}.grid.two{gap:10px 13px}label{gap:4px;font-size:.8rem}input,select{min-height:38px;padding:7px 9px;border-radius:8px}.btn{min-height:38px;padding:8px 13px;border-radius:8px}.actions{gap:8px;margin-top:14px}.panel{padding:17px;margin-bottom:14px;border-radius:14px}.panel h2{font-size:1.12rem}.stats{gap:9px;margin-top:13px}.stat{padding:12px}.stat strong{font-size:1.2rem}.quick{gap:9px}.quick.quick-services a{min-height:88px;padding:14px;border-radius:12px}.quick.quick-services b{font-size:.92rem}.quick.quick-services small{font-size:.74rem;margin-top:4px;line-height:1.3}.table th,.table td{padding:9px;font-size:.78rem}.side{padding:14px}.side button{padding:8px 9px;font-size:.8rem}.onboard-steps{margin-bottom:18px}.profile-type{gap:9px;margin-bottom:14px}.profile-type span{padding:13px}.address-block{padding:10px 12px}.account input,.account select,.account textarea{min-height:38px!important;padding:6px 9px!important}.address-find{min-height:38px!important}
