:root{--xb:#133253;--xb2:#1b4978;--xa:#216ad0;--xtext:#183450;--xm:#657b91;--xborder:#dce6f0;--xbg:#f4f7fb}
html{height:100%;scroll-behavior:auto}body.bha-exchange-app{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;background:var(--xbg);color:var(--xtext);overflow-y:auto!important;overscroll-behavior-y:auto}body.bha-exchange-app[style]{overflow-y:auto!important}body.bha-exchange-app *{box-sizing:border-box}body.bha-exchange-app button{font-family:inherit;cursor:pointer}body.bha-exchange-app button:disabled{cursor:not-allowed;opacity:.55}#login[hidden],#app[hidden],#read-only-banner[hidden],#toast[hidden]{display:none!important}
.exchange-login-screen{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at 7% 3%,#3b73ac 0,transparent 36%),linear-gradient(140deg,#091e36,#174575);padding:22px}.login-card-standalone{width:min(100%,465px);padding:42px;border-radius:23px;background:#fff;box-shadow:0 26px 95px #07172f55}.login-logo,.exchange-brand{display:flex;align-items:center;gap:13px}.login-logo>span,.brand-mark-standalone{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:linear-gradient(135deg,#184c81,#308fe4);color:white;font-weight:900}.login-logo strong{font-size:19px;letter-spacing:.02em}.login-logo strong em{font-style:normal;color:#2a7acc}.login-logo small,.exchange-brand small{display:block;font-size:10px;font-weight:800;letter-spacing:.17em;color:#8aa3ba;margin-top:4px}.login-art-mark{height:90px;width:90px;display:grid;place-items:center;margin:36px 0 19px;border-radius:22px;font-size:47px;color:#2679c8;background:#eff6ff}.login-card-standalone h1{margin:0 0 8px;font-size:28px}.login-intro{color:#657d92;font-size:13px;line-height:1.65;margin:0 0 26px}.login-card-standalone form label{display:block;margin-bottom:15px;color:#284767;font-size:13px;font-weight:700}.login-card-standalone form label span{display:block;margin-bottom:7px}.login-card-standalone input,.login-card-standalone select{width:100%;min-height:47px;border:1px solid #d4e0ec;border-radius:11px;padding:12px 14px;background:white;color:#183450;outline-offset:2px;font-size:14px}.login-button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 18px!important;margin-top:6px;border-radius:11px!important}.login-error{color:#ae2733;font-size:12px;line-height:1.4}.login-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:27px;color:#697d91;font-size:11px}.languages{display:flex;gap:4px}
#app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}#app .exchange-sidebar{display:flex;flex-direction:column;position:sticky;top:0;align-self:start;height:100vh;z-index:20;width:248px;padding:29px 18px;background:linear-gradient(180deg,#112d4b,#0d243c);color:#f5f9ff;overflow-y:auto}#sidebar .exchange-brand{padding:3px 4px 33px;border-bottom:1px solid #ffffff18}#sidebar .exchange-brand strong{font-size:16px;letter-spacing:.02em}#sidebar .exchange-brand small{color:#a7c5df;font-size:9px}#sidebar .nav-label{padding:34px 12px 13px;color:#96b4d1;font-size:10px;font-weight:800;letter-spacing:.13em}#sidebar nav{display:grid;gap:7px}#sidebar nav button{border:0;background:transparent;color:#cbd9e7;display:flex;align-items:center;gap:11px;border-radius:10px;font-weight:700;text-align:left;padding:13px 12px;font-size:13px}#sidebar nav button.active,#sidebar nav button:hover{background:#264c75;color:#fff}#sidebar .nav-symbol{font-size:18px;width:24px;text-align:center}#sidebar .sidebar-footer{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:#dbeaf6;border-top:1px solid #ffffff18;padding:22px 9px 0;font-size:11px}#sidebar .sidebar-footer small{display:block;width:100%;padding-left:15px;color:#93b2cd;font-size:10px}.online-dot{width:8px;height:8px;border-radius:99px;background:#56d79e}
#app .workspace-main{min-width:0;display:flex;flex-direction:column}#app .topbar{display:flex;justify-content:space-between;align-items:center;min-height:77px;padding:13px 29px;gap:15px;background:#fff;border-bottom:1px solid #e1e9f3;position:sticky;top:0;z-index:12}#app .topbar-left,#app .topbar-right{display:flex;align-items:center;gap:18px}#app .topbar-title small{font-size:10px;font-weight:800;color:#90a1b3;letter-spacing:.14em;display:block}#app .topbar-title strong{font-size:15px;color:#233e5b;display:block;margin-top:4px}#app .language-toggle{display:flex;background:#eff4f8;padding:4px;border-radius:9px;gap:3px}#app [data-lang]{background:none;color:#60768d;border:none;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:900}#app [data-lang].selected{background:#fff;box-shadow:0 2px 8px #1234551a;color:#1e5e9c}.user-chip{display:flex;gap:9px;align-items:center;padding-left:15px;border-left:1px solid #e1e6ec}.user-chip #avatar{width:34px;height:34px;display:grid;place-items:center;color:#fff;border-radius:50%;background:#2565a0;font-weight:900}.user-chip strong{font-size:12px;display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis}.user-chip small{display:block;font-size:10px;color:#8b9aab}.exit-btn{border:1px solid #dfe6ee;background:white;border-radius:9px;padding:10px 13px;font-weight:700;font-size:12px}.hamburger{display:none;border:0;background:transparent;font-size:22px}
#app .exchange-page{padding:30px clamp(14px,2.7vw,39px) 50px;width:100%;min-width:0;max-width:1860px;margin:0 auto;flex:1}#app .page-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:15px;justify-content:space-between;margin-bottom:22px}#app .page-head h1{font-size:25px;margin:7px 0 5px;color:#1a3959}#app .page-head p{font-size:13px;margin:0;color:#738ba0}#app .page-head .eyebrow{font-size:10px;letter-spacing:.19em;color:#6094c5;font-weight:850}#app #actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}#app #actions button{border-radius:9px;padding:11px 13px}#app .read-only-banner{display:flex;gap:11px;align-items:center;background:#fff9eb;border:1px solid #f0dda9;border-radius:11px;padding:12px 16px;margin-bottom:20px;color:#966423}.read-only-banner>span{font-size:11px}.read-only-banner strong,.read-only-banner small{display:block}.read-only-banner strong{font-size:12px}.read-only-banner small{font-size:11px;color:#987c53;margin-top:3px}#app .exchange-footer{display:flex;justify-content:space-between;padding:19px 32px;border-top:1px solid #dfebf5;font-size:10px;color:#899daf}#app #content{min-width:0;overflow:visible!important}#app .exchange-table-wrap{max-width:100%;overflow-x:auto!important;overflow-y:auto!important;overscroll-behavior-x:contain;touch-action:pan-x pan-y;max-height:min(69vh,750px)}#app .exchange-tabs{overflow-x:auto;scrollbar-width:thin}#app .exchange-table{min-width:max-content}#app .exchange-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:15px;color:#536c86;font-size:12px}.exchange-page-controls{display:flex;gap:7px}.exchange-page-controls button{background:white;border:1px solid #d5e0eb;border-radius:9px;padding:9px 13px;color:#23486f;font-weight:700}body.bha-exchange-app dialog{max-height:min(88vh,950px);overflow-y:auto}#toast{position:fixed;right:20px;bottom:21px;z-index:3000;padding:14px 18px;max-width:min(92vw,440px);color:#fff;border-radius:10px;background:#193e62;box-shadow:0 18px 46px #071d3844;font-size:13px}#print-area{display:none}
@media(max-width:920px){#app{grid-template-columns:1fr}#app .exchange-sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-105%);transition:transform .2s ease;box-shadow:8px 0 32px #071c3333}#app.sidebar-open .exchange-sidebar{transform:translateX(0)}#app.sidebar-open #shade{display:block!important;position:fixed;inset:0;background:#06182c77;z-index:19}#app .topbar{padding:12px 17px}.hamburger{display:block}#app .exchange-page{padding:20px 14px 35px}#app .topbar-title small{display:none}#app .topbar-right{gap:8px}.user-chip{display:none}}
@media(max-width:520px){#app .topbar-title strong{font-size:12px}#app .topbar{min-height:63px}#app .page-head h1{font-size:21px}#app .exchange-page .exchange-intro{padding:18px}#app .exchange-footer{padding:15px}#app .exit-btn{padding:8px;font-size:11px}.login-card-standalone{padding:27px 22px}}
@media print{#login,#app .exchange-sidebar,#app .topbar,#app .page-head,#app #content,#app .exchange-footer,#app #read-only-banner,#toast{display:none!important}#app,#app .workspace-main,#app .exchange-page{display:block!important;padding:0!important;margin:0!important}#print-area{display:block!important}#print-area .report-sheet{border:0!important;box-shadow:none!important}#print-area .exchange-table-wrap{max-height:none;overflow:visible!important}#print-area .exchange-save-all,#print-area input{display:none!important}@page{size:A4 landscape;margin:10mm}}


/* V3: prevent legacy ERP theme rules from overriding standalone Exchange chrome. */
body.bha-exchange-app #app .workspace-main > header.topbar{
  background:#ffffff !important;
  background-image:none !important;
  color:#233e5b !important;
  border-bottom:1px solid #dee8f2 !important;
  box-shadow:0 2px 12px rgba(15,42,69,.05) !important;
  min-height:72px !important;
  height:auto !important;
  padding:12px 28px !important;
  z-index:25;
}
body.bha-exchange-app #app .topbar-title small{color:#587492!important;opacity:1!important}
body.bha-exchange-app #app .topbar-title strong{color:#1e3957!important;opacity:1!important}
body.bha-exchange-app #app #username{color:#1c3756!important;opacity:1!important}
body.bha-exchange-app #app #userrole{color:#647d95!important}
body.bha-exchange-app #app button.exit-btn{color:#1d4269!important;background:#f8fbff!important;border-color:#d4e1ed!important;min-width:76px;min-height:38px}
body.bha-exchange-app #app .language-toggle button{color:#436480!important}
body.bha-exchange-app #app .language-toggle button.selected{color:#164c86!important;background:#fff!important}
body.bha-exchange-app #app .exchange-intro{color:#fff!important;background:linear-gradient(110deg,#183b66,#2c5990)!important;box-shadow:0 7px 20px rgba(14,49,89,.09)!important;border-radius:12px!important}
body.bha-exchange-app #app .exchange-intro h2{color:#fff!important;opacity:1!important;text-shadow:none!important;font-weight:750!important}
body.bha-exchange-app #app .exchange-intro .eyebrow{color:#c6e0fa!important;opacity:1!important}
body.bha-exchange-app #app .exchange-intro .exchange-symbol{color:#e4f3ff!important}
/* Old global aside nav flex:1 + grid stretch caused huge navigation tiles. */
body.bha-exchange-app #app #sidebar nav{flex:0 0 auto!important;align-content:start!important;display:flex!important;flex-direction:column!important;gap:8px!important;overflow:visible!important;min-height:0!important}
body.bha-exchange-app #app #sidebar nav button{flex:0 0 auto!important;min-height:48px!important;height:auto!important;width:100%;line-height:1.3!important;padding:12px 13px!important;border-radius:9px!important;font-size:13px!important}
body.bha-exchange-app #app #sidebar nav button.active{background:#2c537f!important;color:#fff!important}
body.bha-exchange-app #app .exchange-sidebar{background:linear-gradient(180deg,#122e4e,#0b263f)!important}
body.bha-exchange-app #app #sidebar .exchange-brand strong{color:#fff!important;opacity:1!important}
body.bha-exchange-app #app #sidebar .exchange-brand small{color:#bed2e8!important;opacity:1!important}
body.bha-exchange-app #app #sidebar nav button .nav-symbol{color:#d2e9ff!important}
body.bha-exchange-app #app .exchange-report-denied{margin:14px auto 0;max-width:700px;text-align:left;background:white;border:1px solid #e7c7c7;border-left:4px solid #bc4858;border-radius:12px;padding:22px 25px;color:#31435d;box-shadow:0 8px 24px rgba(25,46,69,.06)}
body.bha-exchange-app #app .exchange-report-denied h3{margin:0 0 9px;color:#9c293a;font-size:17px;font-weight:750}
body.bha-exchange-app #app .exchange-report-denied p{margin:0 0 10px;line-height:1.6;font-size:13px}
body.bha-exchange-app #app .exchange-report-denied small{color:#697c8e;display:block;font-size:12px}
@media(max-width:920px){body.bha-exchange-app #app .workspace-main > header.topbar{padding:10px 15px!important;min-height:62px!important}body.bha-exchange-app #app #menu{display:inline-grid!important;place-items:center!important;background:#fff!important;border:1px solid #dce7f1!important;color:#234568!important}}
