/* V11: isolated local-demo backup dialog. Existing ERP styles do not affect it. */
body.bha-exchange-app .v11-backup-control{display:flex;align-items:center;gap:7px;white-space:nowrap;font:700 12px/1.3 'Segoe UI',sans-serif;color:#155aa4;background:#eef6ff;border:1px solid #bcd7f3;border-radius:10px;padding:9px 12px;cursor:pointer}
body.bha-exchange-app .v11-backup-control[hidden]{display:none!important}
body.bha-exchange-app .v11-backup-control:hover{background:#deeeff}
body.bha-exchange-app dialog.v11-backup-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;border:0;padding:0;width:min(850px,calc(100vw - 28px));max-width:850px;max-height:min(90dvh,850px);border-radius:20px;background:#fff;color:#132f4c;overflow:auto;box-shadow:0 32px 100px #071c3959;font:14px/1.5 'Segoe UI',sans-serif}
body.bha-exchange-app dialog.v11-backup-dialog::backdrop{background:#071c389a;backdrop-filter:blur(3px)}
body.bha-exchange-app .v11-modal-header{padding:27px 30px 20px;display:flex;align-items:start;gap:16px;border-bottom:1px solid #e2eaf3}
body.bha-exchange-app .v11-modal-header div{flex:1}
body.bha-exchange-app .v11-modal-header small{color:#2866ac;font-size:10px;font-weight:800;letter-spacing:.16em}
body.bha-exchange-app .v11-modal-header h2{font-size:25px;margin:6px 0;color:#142f50}
body.bha-exchange-app .v11-modal-header p{margin:4px 0 0;color:#647c98}
body.bha-exchange-app .v11-modal-header button{font-size:29px;line-height:1;color:#455f7e;background:transparent;border:0;cursor:pointer}
body.bha-exchange-app .v11-modal-body{padding:24px 30px}
body.bha-exchange-app .v11-protect{background:#eaf7ef;border:1px solid #b9e3cb;border-radius:12px;padding:12px 15px;margin-bottom:18px;color:#17643a}
body.bha-exchange-app .v11-protect p{font-size:12px;color:#41785b;margin:5px 0 0}
body.bha-exchange-app .v11-backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.bha-exchange-app .v11-backup-grid section{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid #e1e9f2;border-radius:14px;min-width:0}
body.bha-exchange-app .v11-backup-grid h3{font-size:17px;color:#142f50;margin:0}
body.bha-exchange-app .v11-backup-grid p{font-size:12px;color:#6c829c;margin:0;min-height:55px}
body.bha-exchange-app .v11-counts{font-size:11px;color:#2a5a90;min-height:36px}
body.bha-exchange-app .v11-file-label{display:flex;flex-direction:column;gap:6px;font-weight:700}
body.bha-exchange-app .v11-file-label input{max-width:100%;font-size:11px}
body.bha-exchange-app .v11-confirm{display:flex;align-items:center;gap:8px;font-size:12px;color:#4b6580}
body.bha-exchange-app .v11-confirm input{width:16px;height:16px;accent-color:#1a63cb;flex:none}
body.bha-exchange-app .v11-backup-grid button{margin-top:auto;padding:11px 13px;border-radius:9px;background:#1764c7;color:white;border:1px solid #1764c7;cursor:pointer;font-weight:700;min-height:42px}
body.bha-exchange-app .v11-backup-grid button:disabled{background:#ecf2f9;color:#9baec3;border-color:#e2eaf3;cursor:not-allowed}
body.bha-exchange-app .v11-result{margin-top:16px;padding:12px 15px;border-radius:10px;background:#eaf6ee;color:#22643f}
body.bha-exchange-app .v11-result.error{background:#fff0f1;color:#b6293f}
body.bha-exchange-app .v11-backup-dialog footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 30px;background:#f4f7fb;border-top:1px solid #e1eaf3;color:#607a94;font-size:11px;font-weight:700}
body.bha-exchange-app .v11-backup-dialog footer button{border:1px solid #cfdbea;background:#fff;padding:8px 14px;border-radius:9px;cursor:pointer}
@media(max-width:700px){body.bha-exchange-app .v11-backup-grid{grid-template-columns:1fr}body.bha-exchange-app .v11-backup-grid p{min-height:0}body.bha-exchange-app .v11-modal-header,body.bha-exchange-app .v11-modal-body{padding:19px}body.bha-exchange-app .v11-backup-dialog footer{padding:15px 19px}body.bha-exchange-app .v11-backup-control{font-size:0;padding:8px}body.bha-exchange-app .v11-backup-control span:first-child{font-size:17px}}


/* V12 compact workspace, proportional typography and sticky totals */
body.bha-exchange-app{font-size:clamp(13px,0.82vw,15px)}
body.bha-exchange-app #login :is(h1,h2){font-size:clamp(1.55rem,1.6vw,2rem)!important}
body.bha-exchange-app #login :is(label,input,button,p,small){font-size:clamp(.9rem,.92vw,1rem)!important}
body.bha-exchange-app #app .exchange-page{font-size:clamp(.92rem,.88vw,1rem)}
body.bha-exchange-app #app .exchange-page .page-head{padding-bottom:8px!important}
body.bha-exchange-app #app.is-transactions .page-head>div:first-child{display:none!important}
body.bha-exchange-app #app.is-transactions .page-head{display:block!important;padding:0!important;margin:0 0 8px!important;min-height:0!important}
body.bha-exchange-app #app .compact-filter-bar{display:grid!important;grid-template-columns:repeat(6,minmax(130px,1fr));align-items:end;gap:10px!important}
body.bha-exchange-app #app .compact-filter-bar.only-sort{grid-template-columns:repeat(3,minmax(180px,1fr))}
body.bha-exchange-app #app .compact-filter-bar>label{margin:0!important}
body.bha-exchange-app #app .compact-filter-bar :is(input,select){min-height:40px!important;font-size:13px!important}
body.bha-exchange-app #app .exchange-filter-actions{display:flex;align-items:end;gap:10px;justify-content:flex-end;align-self:end}
body.bha-exchange-app #app .exchange-filter-actions button{min-height:40px!important;white-space:nowrap}
body.bha-exchange-app #app .compact-demo-add{background:#4b5ed2!important;border-color:#4b5ed2!important}
body.bha-exchange-app #app .exchange-table th,body.bha-exchange-app #app .exchange-table td{font-size:13px!important}
body.bha-exchange-app #app .exchange-totals-bar{position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:12px;border-top:1px solid #dbe5f0;background:linear-gradient(180deg,rgba(248,251,255,.96),#fff)}
body.bha-exchange-app #app .exchange-total-card{border:1px solid #d6e2ef;border-radius:12px;padding:10px 12px;background:#fbfdff;box-shadow:0 1px 2px rgba(20,44,67,.05)}
body.bha-exchange-app #app .exchange-total-card.highlight{background:#eef4ff;border-color:#bfd0f4}
body.bha-exchange-app #app .exchange-total-card small{display:block;color:#6b819a;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
body.bha-exchange-app #app .exchange-total-card strong{display:block;margin-top:6px;color:#1d3554;font-size:18px;font-weight:850}
body.bha-exchange-app dialog.v5-demo-dialog{width:min(1080px,calc(100vw - 28px));max-width:1080px}
body.bha-exchange-app dialog.v5-demo-dialog .v12-demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
body.bha-exchange-app dialog.v5-demo-dialog .demo-combobox label{display:block;font-size:12px!important;color:#294966!important;line-height:1.45!important}
body.bha-exchange-app dialog.v5-demo-dialog .demo-combobox :is(input,textarea),body.bha-exchange-app dialog.v5-demo-dialog .demo-combobox select{width:100%;margin-top:7px}
body.bha-exchange-app dialog.v5-demo-dialog .exchange-suggestions{max-height:190px;overflow:auto}
body.bha-exchange-app dialog.v5-demo-dialog .exchange-contact-status{display:block;margin-top:6px;color:#7085a0;font-size:11px}
body.bha-exchange-app dialog.v5-demo-dialog .v5-calculated{min-height:88px;display:flex;flex-direction:column;justify-content:center}
body.bha-exchange-app .exchange-table .num{text-align:right}
@media(max-width:1120px){body.bha-exchange-app #app .compact-filter-bar{grid-template-columns:repeat(3,minmax(150px,1fr))}}
@media(max-width:760px){body.bha-exchange-app #app .compact-filter-bar,body.bha-exchange-app #app .compact-filter-bar.only-sort{grid-template-columns:1fr!important}body.bha-exchange-app #app .exchange-filter-actions{justify-content:stretch;flex-direction:column}body.bha-exchange-app #app .exchange-filter-actions button{width:100%}body.bha-exchange-app dialog.v5-demo-dialog .v12-demo-grid{grid-template-columns:1fr!important}}
