/* BayPay UI-kit v0.5: shared banking components. */
@font-face {font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/manrope/manrope-400.ttf') format('truetype');}
@font-face {font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/manrope/manrope-500.ttf') format('truetype');}
@font-face {font-family:'Manrope';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/manrope/manrope-600.ttf') format('truetype');}
@font-face {font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/manrope/manrope-700.ttf') format('truetype');}
@font-face {font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/manrope/manrope-800.ttf') format('truetype');}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public), :root {
  --bp-bg:#f5f6f7; --bp-surface:#ffffff; --bp-surface-soft:#eff2f5;
  --bp-text:#1d2937; --bp-muted:#657281; --bp-border:#e4e9ef;
  --bp-primary:#006da6; --bp-primary-hover:#005786; --bp-primary-soft:#eaf3fa;
  --bp-success:#287253; --bp-success-text:#26634b; --bp-success-soft:#edf5ef;
  --bp-danger:#a23d3d; --bp-danger-soft:#faeeee;
  --bp-status-warning-bg:#eee2c7; --bp-status-warning-text:#6a5221;
  --bp-status-cancelled-bg:#ebedeb; --bp-status-cancelled-text:#626964;
  --bp-status-expired-bg:#e1e5e2; --bp-status-expired-text:#56615a;
  --bp-status-success-bg:#287253; --bp-status-success-text:#fff;
  --bp-purple:var(--bp-muted); --bp-purple-soft:var(--bp-surface-soft); --bp-cyan:var(--bp-primary);
  --bp-shadow:0 8px 24px #142d460d; --bp-radius:14px; --bp-control-radius:9px;
  --bp-action-bg:#092952; --bp-action-text:#fff; --bp-action-hover:#123e6c;
  --bp-highlight:#0078b7; --bp-highlight-text:#fff;
  --bp-balance-bg:var(--bp-highlight); --bp-balance-text:var(--bp-highlight-text); --bp-balance-muted:#f6faff;
  --bp-sidebar-bg:#f0f2f3; --bp-nav-active:#fff;
  --bp-font:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --bp-method-bg:#f2f4f6; --bp-method-border:#d9e0e7;
  --bp-method-card-bg:#e4edfb; --bp-method-card-border:#abc7dd;
  --bp-method-sbp-bg:#ece2f8; --bp-method-sbp-border:#c7b5df;
  --bp-method-qr-bg:#dff3ef; --bp-method-mobile-bg:#ede7dc;
  --bp-method-bank-bg:#edf0f4; --bp-method-crossborder-bg:#f7e1f5;
  --bp-method-alfa-bg:#fae2e5; --bp-method-alfa-border:#d9b1b8;
  --bp-method-sber-bg:#e6f0d9; --bp-method-sber-border:#accdb3;
  --bp-method-tbank-bg:#fff4c4; --bp-method-tbank-border:#dccd84;
  --bp-method-psb-bg:#ffe3cd; --bp-method-psb-border:#dcb7aa;
  --bp-delivery-fill:14%; --bp-delivery-border:24%;
  --bp-metric-tint:0%; --bp-metric-border-tint:0%;
  --bp-row-control-height:28px; --bp-row-control-font-size:11px;

  --bp-control-height:40px; --bp-control-height-sm:32px; --bp-control-height-row:28px;
  --bp-amount-font-size:13px; --bp-checkbox-size:18px; --bp-caption-gap:4px; --bp-party-column-width:10%;
  --bp-surface-muted:var(--bp-surface-soft); --bp-border-strong:#9baab9;
  --bp-warning:var(--bp-status-warning-text); --bp-cancelled:var(--bp-status-cancelled-text);
}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public).ea-dark-scheme {
  /* Base tokens read from production admin-theme.css on 2026-10-11. */
  --bp-bg:#111827; --bp-surface:#192334; --bp-surface-soft:#243148;
  --bp-surface-muted:#1d293c; --bp-border-strong:#546985;
  --bp-text:#e1e9f5; --bp-muted:#9bacc4; --bp-border:#2e3c51;
  --bp-primary:#8aaeff; --bp-primary-hover:#afc7ff; --bp-primary-soft:#233b61;
  --bp-success:#6bceaf; --bp-success-text:#a5d0b8;
  --bp-success-soft:color-mix(in srgb,var(--bp-success) 8%,var(--bp-surface));
  --bp-danger:#ee96a3; --bp-danger-soft:color-mix(in srgb,var(--bp-danger) 12%,var(--bp-surface));
  --bp-status-warning-bg:#514731; --bp-status-warning-text:#edc779;
  --bp-status-cancelled-bg:#344052; --bp-status-cancelled-text:#c6d0df;
  --bp-status-expired-bg:#3b495d; --bp-status-expired-text:#d3deed;
  --bp-status-success-bg:#347a5c; --bp-status-success-text:#fff;
  --bp-action-bg:var(--bp-text); --bp-action-text:var(--bp-bg); --bp-action-hover:#fff;
  --bp-balance-bg:var(--bp-primary-soft); --bp-balance-text:var(--bp-text); --bp-balance-muted:var(--bp-muted);
  --bp-method-bg:var(--bp-surface-soft); --bp-method-border:var(--bp-border-strong);
  --bp-method-card-bg:#1e3a5f; --bp-method-card-border:#446788;
  --bp-method-sbp-bg:#3a3050; --bp-method-sbp-border:#6a5a8a;
  --bp-method-qr-bg:#213d38; --bp-method-mobile-bg:#423922;
  --bp-method-bank-bg:#303749; --bp-method-crossborder-bg:#472e42;
  --bp-method-alfa-bg:#462b31; --bp-method-alfa-border:#915c66;
  --bp-method-sber-bg:#243d2e; --bp-method-sber-border:#53765e;
  --bp-method-tbank-bg:#433d20; --bp-method-tbank-border:#8c8042;
  --bp-method-psb-bg:#472d28; --bp-method-psb-border:#95665b;
  --bp-shadow:none;
  --bp-sidebar-bg:var(--bp-surface); --bp-nav-active:var(--bp-surface-soft);
}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) {
    --merchant-bg:var(--bp-bg); --merchant-surface:var(--bp-surface); --merchant-ink:var(--bp-text); --merchant-muted:var(--bp-muted); --merchant-line:var(--bp-border); --merchant-primary:var(--bp-primary); --merchant-primary-soft:var(--bp-primary-soft); --merchant-radius:var(--bp-radius); --merchant-sidebar-width:216px;
    --bs-primary-rgb:0,109,166; --bs-body-color:var(--bp-text); --bs-body-bg:var(--bp-bg); --bs-border-color:var(--bp-border); --bs-link-color:var(--bp-primary);
    background:var(--bp-bg); color:var(--bp-text); -webkit-font-smoothing:antialiased; font-family:var(--bp-font); font-size:14px; line-height:1.5; font-variant-numeric:tabular-nums;
}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :focus-visible { outline:3px solid var(--bp-primary); outline-offset:3px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn {
    display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:9px 15px;
    border-radius:var(--bp-control-radius); font:600 13px/20px var(--bp-font); box-shadow:none; vertical-align:middle;
}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-sm { min-height:32px; padding:5px 11px; font-size:12px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-lg { min-height:48px; padding:13px 20px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-primary { color:var(--bp-action-text); background:var(--bp-action-bg); border-color:var(--bp-action-bg); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-primary:hover { color:var(--bp-action-text); background:var(--bp-action-hover); border-color:var(--bp-action-hover); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.btn-secondary,.btn-outline-secondary,.btn-light) { background:var(--bp-surface); color:var(--bp-text); border:1px solid var(--bp-border); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.btn-secondary,.btn-outline-secondary,.btn-light):hover { background:var(--bp-surface-soft); border-color:var(--bp-muted); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-outline-primary { color:var(--bp-primary); border-color:var(--bp-primary); background:transparent; }
body:is([data-bp-admin],.merchant-app) .btn.bp-btn-filter {
    background:var(--bp-surface); color:var(--bp-text);
    border:1px solid var(--bp-border);
    height:40px; min-height:40px; padding:9px 15px; gap:8px; white-space:nowrap;
    font:600 13px/20px var(--bp-font);
}
body:is([data-bp-admin],.merchant-app) .btn.bp-btn-filter:is(:hover,[aria-expanded="true"]) { background:var(--bp-surface-soft); border-color:var(--bp-muted); }
body:is([data-bp-admin],.merchant-app) .bp-btn-filter[aria-expanded="true"] .fa-chevron-down { transform:rotate(180deg); }
body:is([data-bp-admin],.merchant-app) .bp-filter-count { border-radius:5px; padding:1px 6px; background:var(--bp-primary-soft); color:var(--bp-primary); font:600 11px/16px var(--bp-font); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn > :is(i,.icon) { display:inline-flex; align-items:center; justify-content:center; flex:none; width:18px; height:18px; margin:0; padding:0; line-height:1; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn > .icon svg { display:block; width:100%; height:100%; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.form-control,.form-select,.ts-control) { min-height:40px; border:1px solid var(--bp-border); border-radius:var(--bp-control-radius); background-color:var(--bp-surface); color:var(--bp-text); font:400 13px/20px var(--bp-font); box-shadow:none; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(input.form-control,select.form-control,.form-select) { padding-top:9px; padding-bottom:9px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.form-control,.form-select):focus { border-color:var(--bp-primary); box-shadow:0 0 0 3px var(--bp-primary-soft); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-control:disabled { background:var(--bp-surface-soft); color:var(--bp-muted); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.form-label,.form-control-label,.control-label) { color:var(--bp-text); font-size:12px; line-height:18px; font-weight:550; margin-bottom:7px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .input-group-text { display:flex; align-items:center; background:var(--bp-surface-soft); color:var(--bp-muted); border-color:var(--bp-border); font-size:13px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.card,.content-panel,.form-panel,.bp-panel,.bp-summary-tile,.merchant-kpi,.form-fieldset) { background:var(--bp-surface); color:var(--bp-text); border:1px solid var(--bp-border); border-radius:var(--bp-radius); box-shadow:none; }
body:is([data-bp-admin],.merchant-app) :is(.card-header,.bp-panel__header,.form-panel-header) { min-height:52px; padding:16px 18px 8px; background:transparent; border-color:var(--bp-border); }
body:is([data-bp-admin],.merchant-app) :is(.card-title,.card-header h2,.card-header h5) { margin:0; color:var(--bp-text); font-size:15px; line-height:22px; font-weight:650; }
body:is([data-bp-admin],.merchant-app) :is(.card-body,.bp-panel__body) { padding:18px; }
body:is([data-bp-admin],.merchant-app) :is(.table,.datagrid,.merchant-ledger) { width:100%; color:var(--bp-text); font-size:12px; --bs-table-color:var(--bp-text); --bs-table-bg:transparent; --bs-table-border-color:var(--bp-border); }
body:is([data-bp-admin],.merchant-app) :is(.table,.datagrid,.merchant-ledger) > thead > tr > th { padding:8px 14px; font-size:11px; line-height:18px; font-weight:500; background:transparent; color:var(--bp-muted); vertical-align:middle; }
body:is([data-bp-admin],.merchant-app) :is(.table,.datagrid,.merchant-ledger) > tbody > tr > :is(td,th) { padding:7px 14px; vertical-align:middle; border-color:var(--bp-border); }
body:is([data-bp-admin],.merchant-app) .merchant-ledger > :is(thead,tbody) > tr > :is(th,td) {padding-inline:18px;}
body:is([data-bp-admin],.merchant-app) table input[type=checkbox] { vertical-align:middle; margin-block:0; }
body[data-bp-admin] .bp-inline-filters__heading { align-items:center; }
body[data-bp-admin] .bp-inline-filters__heading label { margin-bottom:0; }
body[data-bp-admin] .bp-inline-filters__heading { margin-bottom:7px; min-height:18px; }
body:is([data-bp-admin],.merchant-app) :is(.modal-content,.dropdown-menu,.ts-dropdown) { color:var(--bp-text); background:var(--bp-surface); border:1px solid var(--bp-border); border-radius:10px; box-shadow:var(--bp-shadow); }
body:is([data-bp-admin],.merchant-app) .dropdown-item { color:var(--bp-text); font-size:12px; line-height:20px; padding:8px 12px; }
body:is([data-bp-admin],.merchant-app) .dropdown-item:is(.active,:active,[aria-current=true]) { color:var(--bp-primary); background:var(--bp-primary-soft); font-weight:600; }
body:is([data-bp-admin],.merchant-app) .dropdown-item:hover { background:var(--bp-surface-soft); }
body:is([data-bp-admin],.merchant-app) .page-link { display:inline-flex; align-items:center; justify-content:center; min-width:32px; min-height:32px; line-height:20px; border-radius:6px; color:var(--bp-muted); background:var(--bp-surface); border-color:var(--bp-border); }
body:is([data-bp-admin],.merchant-app) .page-item.active .page-link { color:var(--bp-primary); background:var(--bp-primary-soft); border-color:var(--bp-primary-soft); }
body:is([data-bp-admin],.merchant-app) :is(.text-muted,.text-secondary) { color:var(--bp-muted)!important; }
body .bp-icon { display:block; width:19px; height:19px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
body .badge.bp-payment-method { --bp-method-accent:var(--bp-muted); --bp-method-tint:var(--bp-method-bg); display:inline-flex; align-items:center; justify-content:center; flex:none; gap:6px; box-sizing:border-box; width:max-content; min-width:0; max-width:none; height:28px; min-height:28px; padding:0 8px; border:1px solid color-mix(in srgb,var(--bp-method-accent) 35%,var(--bp-method-border)); border-radius:6px; background:var(--bp-method-tint)!important; color:var(--bp-text)!important; font:550 11px/18px var(--bp-font); white-space:nowrap; vertical-align:middle; text-align:center; }
body .badge.bp-payment-method--card { --bp-method-tint:var(--bp-method-card-bg); border-color:var(--bp-method-card-border); }
body .badge.bp-payment-method--sbp { --bp-method-tint:var(--bp-method-sbp-bg); border-color:var(--bp-method-sbp-border); }
body .badge.bp-payment-method--qr { --bp-method-accent:var(--bp-cyan); --bp-method-tint:var(--bp-method-qr-bg); }
body .badge.bp-payment-method--mobile { --bp-method-accent:var(--bp-warning); --bp-method-tint:var(--bp-method-mobile-bg); }
body .badge.bp-payment-method--bank { --bp-method-accent:var(--bp-success-text); --bp-method-tint:var(--bp-method-bank-bg); }
body .badge.bp-payment-method--crossborder { --bp-method-accent:var(--bp-danger); --bp-method-tint:var(--bp-method-crossborder-bg); }
body .badge.bp-payment-method[data-bp-method="alfa_alfa"] {--bp-method-tint:var(--bp-method-alfa-bg);border-color:var(--bp-method-alfa-border);}
body .badge.bp-payment-method[data-bp-method="sber_sber"] {--bp-method-tint:var(--bp-method-sber-bg);border-color:var(--bp-method-sber-border);}
body .badge.bp-payment-method[data-bp-method="tbank_tbank"] {--bp-method-tint:var(--bp-method-tbank-bg);border-color:var(--bp-method-tbank-border);}
body .badge.bp-payment-method[data-bp-method="psb_psb"] {--bp-method-tint:var(--bp-method-psb-bg);border-color:var(--bp-method-psb-border);}
body .badge.bp-payment-method .bp-method-label { color:inherit; font:inherit; white-space:nowrap; overflow:visible; text-overflow:clip; }
body .badge.bp-payment-method .bp-method-icon { display:inline-flex; align-items:center; justify-content:center; position:relative; width:18px; height:18px; flex:0 0 18px; overflow:hidden; color:var(--bp-muted); }
body .bp-method-icon > img { display:block; width:18px; height:18px; object-fit:contain; max-width:none; }
body .bp-method-icon > .bp-icon { width:18px; height:18px; }
body .bp-method-icon--alfa > img { width:31.5px; height:31.5px; flex:none; }
body .bp-method-icon--sber > img { position:absolute; left:0; width:108px; height:18px; object-fit:fill; }
body .badge.bp-status { display:inline-flex; align-items:center; justify-content:center; gap:6px; flex:none; box-sizing:border-box; width:140px; max-width:none; height:28px; min-height:28px; padding:0 8px; border:0; border-radius:6px; font:650 11px/16px var(--bp-font); white-space:nowrap; vertical-align:middle; }
body .badge.bp-status > .bp-icon { width:14px; height:14px; }
body .badge.bp-status--success { color:#fff!important; background:var(--bp-status-success-bg)!important; }
body .badge.bp-status--warning { color:var(--bp-status-warning-text)!important; background:var(--bp-status-warning-bg)!important; }
body .badge.bp-status--cancelled { color:var(--bp-status-cancelled-text)!important; background:var(--bp-status-cancelled-bg)!important; }
body .badge:is(.bp-status--secondary,.bp-status--expired) { color:var(--bp-status-expired-text)!important; background:var(--bp-status-expired-bg)!important; }
body .badge.bp-status--danger { color:var(--bp-danger)!important; background:var(--bp-danger-soft)!important; }
body .badge:is(.bp-status--info,.bp-status--primary) { color:var(--bp-primary)!important; background:var(--bp-primary-soft)!important; }
body .badge.bp-status--light { color:var(--bp-muted); background:var(--bp-surface-soft); }
body .badge.bp-status--dark { color:#fff; background:#34465f; }
.bp-brand-mark { position:relative; display:inline-block; flex:0 0 36px; width:36px; height:36px; overflow:hidden; border-radius:8px; background:#fff; vertical-align:middle; }
.bp-brand-mark img { position:absolute; top:50%; left:50%; width:100px; height:100px; max-width:none!important; transform:translate(-50%,-50%); }
body[data-bp-admin] .sidebar { padding:20px 12px; }
body[data-bp-admin] .bp-brand-name { font-size:20px; line-height:24px; }
body[data-bp-admin] #main-menu .menu-item a { display:flex; align-items:center; gap:10px; min-height:38px; padding:10px 12px; border-radius:var(--bp-control-radius); line-height:18px; }
body[data-bp-admin] #main-menu .menu-icon { width:18px; height:18px; display:inline-flex; align-items:center; justify-content:center; margin:0; flex:none; }
body[data-bp-admin] .content-header-title .title { font-size:23px; line-height:32px; }
body[data-bp-admin] .content-top { min-height:66px; }
body[data-bp-admin] .transaction-row-actions { align-items:center; gap:8px; }
body[data-bp-admin] :is(.transaction-row-actions > .btn,.transaction-status-dropdown__toggle) { width:40px; min-width:40px; height:40px; min-height:40px; padding:0; }
body[data-bp-admin] .transaction-row-actions .bp-countdown { height:32px; min-height:32px; min-width:68px; padding:0 9px; line-height:20px; border:0; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; }
body[data-bp-admin] .bp-created-at { padding:3px 8px; gap:1px; border-radius:6px; font-size:11px; line-height:15px; vertical-align:middle; }
body[data-bp-admin] .bp-created-at strong { font-size:12px; }
body[data-bp-admin] .bp-created-at small { font-size:11px; line-height:15px; }
body[data-bp-admin] .bp-created-at--success { background:var(--bp-success-soft); color:var(--bp-success-text); }
body[data-bp-admin] .bp-created-at--success small { color:inherit; }
body[data-bp-admin] .bp-created-at--cancelled { background:var(--bp-status-cancelled-bg); color:var(--bp-status-cancelled-text); }
body[data-bp-admin] .bp-created-at--secondary { background:var(--bp-status-expired-bg); color:var(--bp-status-expired-text); }
body.merchant-app .merchant-content { max-width:none; padding:32px 32px 48px; }
body.merchant-app .merchant-topbar { min-height:66px; height:66px; padding-inline:32px; background:var(--bp-surface); }
body.merchant-app .merchant-page-heading h1 { font-size:23px; line-height:32px; }
body.merchant-app .merchant-nav-link { gap:10px; padding:10px 12px; border-radius:var(--bp-control-radius); font-size:12px; line-height:18px; }
body.merchant-app .merchant-brand { color:var(--bp-text); font-size:20px; }
body.merchant-app .merchant-kpi { display:flex; flex-direction:column; padding:20px; }
body.merchant-app .merchant-kpi__hint { margin-top:auto; padding-top:12px; }
body.merchant-app .merchant-operation-badge { display:inline-flex; align-items:center; justify-content:center; min-height:28px; border-radius:6px; font-size:11px; line-height:16px; }
body.merchant-app .merchant-sidebar-toggle { display:none; }
body.page-login .login-wrapper { width:min(420px,calc(100% - 32px)); }
body.page-login .main-header { padding:0; margin-bottom:16px; }
body.page-login .bp-login-brand { display:flex; align-items:center; justify-content:center; gap:10px; color:var(--bp-text); font-size:24px; font-weight:700; }
body.page-login .login-wrapper .content { padding:20px; background:var(--bp-surface); border:1px solid var(--bp-border); border-radius:var(--bp-radius); box-shadow:none; }
body.page-login .form-group { padding:0; margin-bottom:12px; }
body.page-login .form-control-label { padding:0; margin-bottom:6px; }
@media(min-width:992px) {
    body[data-bp-admin] { --sidebar-max-width:216px; }
    body[data-bp-admin] .wrapper { grid-template-columns:216px minmax(0,1fr); }
    body[data-bp-admin].bp-sidebar-collapsed .wrapper { grid-template-columns:76px minmax(0,1fr); }
    body.merchant-app .merchant-sidebar { position:fixed; inset:0 auto 0 0; }
    body.merchant-app .merchant-brand-row { margin:0 0 24px; padding-top:16px; }
    body.merchant-app .merchant-sidebar-toggle { position:absolute; top:10px; right:9px; display:flex; width:24px; height:24px; align-items:center; justify-content:center; border:1px solid var(--bp-border); background:var(--bp-surface); color:var(--bp-muted); border-radius:5px; }
    body.merchant-app.bp-merchant-collapsed { --merchant-sidebar-width:76px; }
    body.merchant-app.bp-merchant-collapsed .merchant-sidebar { padding-inline:10px; }
    body.merchant-app.bp-merchant-collapsed :is(.merchant-brand-copy,.merchant-workspace,.nav-group-label,.merchant-nav-link span,.integration-help,.merchant-account>span:nth-child(2),.merchant-account>i) { display:none; }
    body.merchant-app.bp-merchant-collapsed :is(.merchant-brand-row,.merchant-nav-link,.merchant-account) { justify-content:center; }
    body.merchant-app.bp-merchant-collapsed .merchant-sidebar-toggle i { transform:rotate(180deg); }
}
@media(max-width:767.98px) {
    body.merchant-app .merchant-content { padding:22px 16px 32px; }
    body.merchant-app .merchant-topbar { padding-inline:16px; }
    body:is([data-bp-admin],.merchant-app) :is(.card-body,.bp-panel__body) { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { body:is([data-bp-admin],.merchant-app) * { scroll-behavior:auto!important; transition:none!important; } }

body.bp-public :is(.method-card,.pay-action) { border:1px solid var(--bp-border); border-radius:7px; background:var(--bp-surface); color:var(--bp-text); }
body.bp-public .method-card:hover { background:var(--bp-primary-soft); border-color:var(--bp-primary); }
body.bp-public .method-hint { color:var(--bp-muted); font-size:12px; line-height:18px; }
/* Merchant overview shares the same card header, metric and footer baselines. */
body.merchant-app .overview-summary { display:grid; grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(0,1fr)); gap:14px; }
body.merchant-app .overview-stats { display:contents; }
/* Shared financial metrics: quiet surfaces, semantic accents and one baseline. */
.bp-metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
body:is([data-bp-admin],.merchant-app) .bp-metric-card { --bp-metric-accent:var(--bp-primary); display:flex; flex-direction:column; min-width:0; min-height:180px; padding:18px; border:1px solid var(--bp-border); border-radius:var(--bp-radius); background:var(--bp-surface); color:var(--bp-text); box-shadow:none; }
body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance { background:var(--bp-balance-bg); border-color:var(--bp-balance-bg); color:var(--bp-balance-text); }
body:is([data-bp-admin],.merchant-app) .bp-metric-card--success { --bp-metric-accent:var(--bp-success-text); }
body:is([data-bp-admin],.merchant-app) .bp-metric-card--warning { --bp-metric-accent:var(--bp-warning); }
body:is([data-bp-admin],.merchant-app) .bp-metric-card--danger { --bp-metric-accent:var(--bp-danger); }
body:is([data-bp-admin],.merchant-app) .bp-metric-card--danger .bp-metric-card__value { color:var(--bp-danger); }
.bp-metric-card__header { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:24px; }
.bp-metric-card__label { min-width:0; font-size:13px; line-height:20px; font-weight:600; }
.bp-metric-card__icon { display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; color:var(--bp-metric-accent); font-size:16px; }
.bp-metric-card__value { display:block; margin:10px 0 12px; font-size:30px; line-height:40px; font-weight:650; letter-spacing:-.7px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.bp-metric-card__value > span { font-size:13px; line-height:20px; font-weight:500; letter-spacing:0; color:var(--bp-muted); }
.bp-metric-card__detail { margin:0 0 8px; color:var(--bp-muted); font-size:11px; line-height:18px; }
.bp-metric-card__action { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; min-height:28px; color:var(--bp-primary); font-size:11px; line-height:18px; text-decoration:none; }
.bp-metric-card__action:hover { text-decoration:underline; }
.bp-metric-card__number-row {display:contents;}
body:is([data-bp-admin],.merchant-app) .bp-metric-card.bp-metric-card--compact {min-height:114px;padding:16px;}
.bp-metric-card--compact .bp-metric-card__header {min-height:24px;}
.bp-metric-card--compact .bp-metric-card__label {font-size:12px;line-height:18px;}
.bp-metric-card--compact .bp-metric-card__number-row {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px;}
.bp-metric-card--compact .bp-metric-card__value {margin:0;font-size:26px;line-height:36px;}
.bp-metric-card__inline-detail {font-size:11px;line-height:18px;color:var(--bp-muted);white-space:nowrap;}
body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance .bp-metric-card__inline-detail {color:var(--bp-balance-muted);}
.bp-metric-card--linked {text-decoration:none;}
.bp-metric-card--linked:hover {text-decoration:none;border-color:var(--bp-primary);}
.bp-metric-card--linked:focus-visible {outline:2px solid var(--bp-primary);outline-offset:2px;}
body:is([data-bp-admin],.merchant-app) .bp-pagination {display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0;margin:0;list-style:none;}
body:is([data-bp-admin],.merchant-app) .bp-pagination .page-link {box-sizing:border-box;width:32px;height:32px;padding:0;margin:0;border:1px solid var(--bp-border);border-radius:8px;font:600 12px/20px var(--bp-font);box-shadow:none;}
body:is([data-bp-admin],.merchant-app) .bp-pagination .page-link:hover {border-color:var(--bp-primary);color:var(--bp-primary);}
body:is([data-bp-admin],.merchant-app) .bp-pagination .disabled .page-link {background:transparent;border-color:transparent;color:var(--bp-muted);}
body:is([data-bp-admin],.merchant-app) .bp-pagination .page-link i {font-size:11px;}
@media(min-width:768px) { body[data-bp-admin] .transaction-row-actions { flex-wrap:nowrap; width:100%; } }
body[data-bp-admin] .transaction-row-actions .bp-countdown {margin-inline:auto;}
body[data-bp-admin] .bp-transaction-table td.actions .transaction-row-actions .bp-countdown + .btn {margin-inline-start:20px!important;}
@media(max-width:1199.98px) { body.merchant-app .overview-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1199.98px) { .bp-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:575.98px) { body:is([data-bp-admin],.merchant-app) .bp-metric-card { padding:14px; min-height:160px; } .bp-metric-card__header { min-height:40px; } }

body .badge:is(.bp-payment-method,.bp-status) { box-shadow:none!important; }

/* Shared controls align by their vertical centers, including units and labels. */
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .input-group-text { align-self:stretch; height:auto; min-height:40px; padding:9px 10px; line-height:20px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .input-group > .btn { margin-top:0; margin-bottom:0; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .input-group:not(.input-group-sm) > :is(input.form-control,select.form-select,.input-group-text,.btn) { height:var(--bp-control-height); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .input-group-sm > :is(.form-control,.form-select,.input-group-text,.btn) { min-height:32px; height:32px; padding-top:5px; padding-bottom:5px; font-size:12px; line-height:20px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check { display:flex; align-items:center; gap:8px; min-height:20px; padding-left:0; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check > .form-check-input { flex:none; float:none; margin:0; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check > .form-check-label { margin:0; padding:0; line-height:20px; }
body:is([data-bp-admin],.merchant-app) table .form-check { display:inline-flex; vertical-align:middle; margin:0; }
body:is([data-bp-admin],.merchant-app) table .field-boolean .form-switch { display:flex; width:max-content; margin-inline:auto; }
body:is([data-bp-admin],.merchant-app) table .field-boolean .form-switch .form-check-input { inset-block-start:0; }
body:is([data-bp-admin],.merchant-app) .ts-control { align-items:center; padding-top:3px; padding-bottom:3px; }
body:is([data-bp-admin],.merchant-app) .ts-control .clear-button { display:flex; align-items:center; justify-content:center; top:50%; transform:translateY(-50%); width:18px; height:18px; line-height:18px; }

/* Common variants, shared by admin, merchant, authentication and public pages. */
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn { border-radius:var(--bp-control-radius); min-height:var(--bp-control-height); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-sm { min-height:var(--bp-control-height-sm); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public).ea-dark-scheme .btn-primary { color:var(--bp-action-text); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-success { color:var(--bp-success-text); background:var(--bp-success-soft); border-color:var(--bp-border); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-danger { color:var(--bp-danger); background:var(--bp-danger-soft); border:1px solid color-mix(in srgb,var(--bp-danger) 35%,var(--bp-border)); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-outline-danger { color:var(--bp-danger); background:transparent; border:1px solid var(--bp-danger); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-outline-success { color:var(--bp-success-text); background:transparent; border:1px solid var(--bp-success-text); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn-link { color:var(--bp-primary); background:transparent; border:1px solid transparent; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn:is(:disabled,.disabled) { opacity:.5; box-shadow:none; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn.bp-btn-icon { width:var(--bp-control-height); height:var(--bp-control-height); padding:0; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn.bp-btn-icon.btn-sm { width:var(--bp-control-height-sm); height:var(--bp-control-height-sm); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn.bp-attention-button { position:relative; overflow:visible; }
.bp-attention-button__count {
    position:absolute; top:-5px; right:-5px; display:inline-flex; align-items:center; justify-content:center;
    box-sizing:border-box; min-width:20px; height:20px; padding:0 4px; border:2px solid var(--bp-surface);
    border-radius:999px; background:var(--bp-danger); color:var(--bp-surface); font:700 11px/1 var(--bp-font);
    white-space:nowrap; pointer-events:none;
}
body:is([data-bp-admin],.merchant-app) .btn.bp-btn-export { background:var(--bp-highlight); color:var(--bp-highlight-text); border:1px solid var(--bp-highlight); white-space:nowrap; }
body:is([data-bp-admin],.merchant-app) .btn.bp-btn-export:is(:hover,[aria-expanded="true"]) { background:var(--bp-highlight); border-color:var(--bp-primary-hover); color:var(--bp-highlight-text); }
body:is([data-bp-admin],.merchant-app) :is(table td.actions .btn,.btn.bp-btn-row) { min-height:var(--bp-control-height-row); height:var(--bp-control-height-row); padding:3px 8px; font-size:11px; line-height:20px; gap:6px; white-space:nowrap; }
body:is([data-bp-admin],.merchant-app) :is(table td.actions .btn,.btn.bp-btn-row) > :is(i,.icon) { width:16px; height:16px; }
body:is([data-bp-admin],.merchant-app) .btn.bp-btn-icon.bp-btn-row { width:var(--bp-control-height-row); min-width:var(--bp-control-height-row); padding:0; }
body:is([data-bp-admin],.merchant-app) .btn.bp-copy-value { max-width:100%; padding-inline:0; color:var(--bp-primary); border:0; text-align:left; }
body:is([data-bp-admin],.merchant-app) .bp-copy-value > code { display:block; min-width:0; max-width:18ch; padding:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; background:transparent; color:inherit; font-size:11px; line-height:16px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.form-control.form-control-sm,.form-select.form-select-sm) { min-height:var(--bp-control-height-sm); padding-top:5px; padding-bottom:5px; font-size:12px; line-height:20px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check-input { height:var(--bp-checkbox-size); flex:none; margin-block:0; border-color:var(--bp-muted); vertical-align:middle; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check-input:not([role="switch"]):not(.form-switch .form-check-input) { width:var(--bp-checkbox-size); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check-input[type="checkbox"]:not([role="switch"]):not(.form-switch .form-check-input) { border-radius:4px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-check-input:checked { background-color:var(--bp-primary); border-color:var(--bp-primary); }
body:is([data-bp-admin],.merchant-app) .input-group > .btn:has(> i:only-child) { min-width:var(--bp-control-height); padding-inline:0; }

/* General badges are content-width; transaction status and payment methods keep their own contracts. */
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .badge:not(.bp-status):not(.bp-payment-method),
body:is([data-bp-admin],.merchant-app) .merchant-operation-badge { display:inline-flex; align-items:center; justify-content:center; gap:6px; box-sizing:border-box; width:max-content; min-height:var(--bp-control-height-row); height:var(--bp-control-height-row); max-width:none; padding:0 8px; border:1px solid transparent; border-radius:6px; color:var(--bp-muted); background:var(--bp-surface-soft); font:600 11px/16px var(--bp-font); white-space:nowrap; vertical-align:middle; text-align:center; }
body:is([data-bp-admin],.merchant-app) .badge.bp-badge--count { height:20px; min-height:20px; padding:0 6px; }
body:is([data-bp-admin],.merchant-app) :is(.badge,.merchant-operation-badge) > :is(i,.bp-icon) { display:inline-flex; align-items:center; justify-content:center; width:14px; height:14px; flex:none; margin:0; line-height:1; }
body:is([data-bp-admin],.merchant-app) :is(.bp-badge--success,.badge-success,.badge.bg-success,.merchant-operation-badge--success):not(.bp-status) { color:var(--bp-success-text)!important; background:var(--bp-success-soft)!important; }
body:is([data-bp-admin],.merchant-app) :is(.bp-badge--warning,.badge-warning,.badge.bg-warning,.merchant-operation-badge--warning):not(.bp-status) { color:var(--bp-status-warning-text)!important; background:color-mix(in srgb,var(--bp-status-warning-bg) 25%,var(--bp-surface))!important; }
body:is([data-bp-admin],.merchant-app) :is(.bp-badge--danger,.badge-danger,.badge.bg-danger,.merchant-operation-badge--danger):not(.bp-status) { color:var(--bp-danger)!important; background:var(--bp-danger-soft)!important; }
body:is([data-bp-admin],.merchant-app) :is(.bp-badge--primary,.bp-badge--info,.badge-primary,.badge-info,.badge.bg-primary,.badge.bg-info,.merchant-operation-badge--primary):not(.bp-status) { color:var(--bp-primary)!important; background:var(--bp-primary-soft)!important; }
body:is([data-bp-admin],.merchant-app) :is(.bp-badge--secondary,.bp-badge--light,.badge-secondary,.badge.bg-secondary,.badge-light,.badge.bg-light):not(.bp-status) { color:var(--bp-muted)!important; background:var(--bp-surface-soft)!important; }

body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .alert { padding:14px 16px; border:1px solid var(--bp-border); border-radius:var(--bp-radius); font-size:13px; line-height:20px; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .alert-success { color:var(--bp-success-text); background:var(--bp-success-soft); border-color:color-mix(in srgb,var(--bp-success-text) 25%,var(--bp-border)); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .alert-danger { color:var(--bp-danger); background:var(--bp-danger-soft); border-color:color-mix(in srgb,var(--bp-danger) 25%,var(--bp-border)); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .alert-info { color:var(--bp-primary); background:var(--bp-primary-soft); border-color:color-mix(in srgb,var(--bp-primary) 25%,var(--bp-border)); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .alert-warning { color:var(--bp-status-warning-text); background:color-mix(in srgb,var(--bp-status-warning-bg) 25%,var(--bp-surface)); border-color:color-mix(in srgb,var(--bp-status-warning-text) 25%,var(--bp-border)); }
body:is([data-bp-admin],.merchant-app) .bp-empty-state { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; min-height:160px; padding:24px 16px; color:var(--bp-muted); text-align:center; }
body:is([data-bp-admin],.merchant-app) .bp-empty-state > .bp-icon { width:28px; height:28px; }
body:is([data-bp-admin],.merchant-app) .bp-empty-state > strong { color:var(--bp-text); font-size:14px; line-height:20px; font-weight:600; }
body:is([data-bp-admin],.merchant-app) .bp-empty-state > p { margin:0; max-width:42ch; font-size:12px; line-height:18px; }
body:is([data-bp-admin],.merchant-app) .nav-tabs { border-color:var(--bp-border); gap:4px; }
body:is([data-bp-admin],.merchant-app) .nav-tabs .nav-link { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:9px 14px; border-radius:7px 7px 0 0; color:var(--bp-muted); font:600 12px/20px var(--bp-font); white-space:nowrap; }
body:is([data-bp-admin],.merchant-app) .nav-tabs .nav-link.active { color:var(--bp-primary); background:var(--bp-surface); border-color:var(--bp-border) var(--bp-border) var(--bp-surface); }
body:is([data-bp-admin],.merchant-app) .merchant-operation-tab { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:9px 14px; border:1px solid var(--bp-border); border-radius:7px; background:var(--bp-surface); color:var(--bp-muted); font:600 12px/20px var(--bp-font); text-decoration:none; }
body:is([data-bp-admin],.merchant-app) .merchant-operation-tab:is(:hover,.active) { color:var(--bp-primary); background:var(--bp-primary-soft); border-color:var(--bp-primary); }
body:is([data-bp-admin],.merchant-app) .merchant-operation-tab > i { display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; margin:0; }
body:is([data-bp-admin],.merchant-app) :is(.modal-header,.modal-footer) { padding:16px 20px; border-color:var(--bp-border); gap:8px; align-items:center; }
body:is([data-bp-admin],.merchant-app) .modal-body { padding:20px; }
body:is([data-bp-admin],.merchant-app) .modal-title { margin:0; font-size:16px; line-height:24px; font-weight:650; }
body:is([data-bp-admin],.merchant-app).ea-dark-scheme .btn-close { filter:invert(1); }
body:is([data-bp-admin],.merchant-app) .bp-filter-panel[hidden] { display:none!important; }
body:is([data-bp-admin],.merchant-app) .bp-filter-panel { margin-bottom:16px; }
body.merchant-app .merchant-filter-grid { grid-template-columns:minmax(0,1fr); }
@media(min-width:1400px) { body.merchant-app .merchant-filter-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:575.98px) { body:is([data-bp-admin],.merchant-app) .nav-tabs { flex-wrap:nowrap; overflow-x:auto; } }

/* Requisites latency uses the same shared component in tables and catalog. */
body .bp-delivery-speed {
    --bp-delivery-yellow: #eab308;
    --bp-delivery-red: #dc3545;
    --bp-delivery-burgundy: #881337;
    --bp-speed-color:var(--bp-success);
    background: color-mix(in srgb, var(--bp-speed-color) var(--bp-delivery-fill), var(--bp-surface));
    border-color: color-mix(in srgb, var(--bp-speed-color) var(--bp-delivery-border), var(--bp-border));
    box-shadow: none;
    align-items: center;
    height: var(--bp-row-control-height, 28px);
    padding: 0 6px;
}
body .bp-delivery-speed--warning {--bp-speed-color:var(--bp-delivery-yellow);}
body .bp-delivery-speed--danger {--bp-speed-color:var(--bp-delivery-red);}
body .bp-delivery-speed--critical {--bp-speed-color:var(--bp-delivery-burgundy);}
body .bp-delivery-speed { display:inline-flex; justify-content:center; min-height:var(--bp-control-height-row); border-width:1px; border-style:solid; border-radius:6px; color:var(--bp-text); font:650 11px/16px var(--bp-font); white-space:nowrap; }
body .bp-countdown { position:relative; display:inline-flex; align-items:center; justify-content:center; height:var(--bp-control-height-row); min-height:var(--bp-control-height-row); min-width:66px; padding:0 8px; overflow:hidden; border:0; border-radius:6px; color:var(--bp-status-warning-text); background:color-mix(in srgb,var(--bp-status-warning-bg) 20%,var(--bp-surface)); box-shadow:none; font:650 11px/16px var(--bp-font); white-space:nowrap; }
body .bp-countdown__fill { display:block; position:absolute; inset:0; background:var(--bp-status-warning-bg); transform:scaleX(var(--bp-countdown-progress,1)); transform-origin:left center; transition:transform 1s linear; }
body .bp-countdown__text { position:relative; z-index:1; color:inherit; }
body .bp-countdown.is-ending { color:var(--bp-danger); background:color-mix(in srgb,var(--bp-danger) 10%,var(--bp-surface)); }
body .bp-countdown.is-ending .bp-countdown__fill { background:color-mix(in srgb,var(--bp-danger) 40%,var(--bp-surface)); }
body .bp-countdown.is-expired { color:var(--bp-status-expired-text); background:var(--bp-status-expired-bg); }
body:is([data-bp-admin],.merchant-app) .text-success { color:var(--bp-success-text)!important; }
body:is([data-bp-admin],.merchant-app) .text-danger { color:var(--bp-danger)!important; }
body:is([data-bp-admin],.merchant-app) .text-primary { color:var(--bp-primary)!important; }
body:is([data-bp-admin],.merchant-app) .text-warning { color:var(--bp-status-warning-text)!important; }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .form-control[readonly] { background:var(--bp-surface-soft); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) :is(.form-control,.form-select).is-invalid { border-color:var(--bp-danger); }
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .invalid-feedback { color:var(--bp-danger); font-size:12px; line-height:18px; }
body:is([data-bp-admin],.merchant-app) .bp-field__label { display:block; margin-bottom:7px; color:var(--bp-text); font-size:12px; line-height:18px; font-weight:550; }
body:is([data-bp-admin],.merchant-app) .bp-filter-panel .bp-filter-row { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
body:is([data-bp-admin],.merchant-app) .bp-filter-panel .bp-actions { grid-column:1 / -1; }
body.merchant-app .merchant-page-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; align-self:center; }
body:is([data-bp-admin],.merchant-app) .nav-tabs .nav-link > :is(i,.icon,svg) { display:inline-flex; align-items:center; justify-content:center; width:18px; height:18px; margin:0; }
@media(min-width:1400px) { body:is([data-bp-admin],.merchant-app) .bp-filter-panel .bp-filter-row { grid-template-columns:repeat(3,minmax(0,1fr)); } }

/* Shared financial amounts and compact transaction controls. */
.bp-money-stack {
    align-items: flex-end;
    display: inline-flex;
    flex-direction: column;
    gap: 1px;
    line-height: 1.15;
    white-space: nowrap;
}

.bp-money-stack strong {
    color: var(--bp-text);
    font-size: 14px;
}

.bp-money-stack span,
.bp-money-stack small {
    color: var(--bp-muted);
    font-size: 11px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bp-money-stack--gross strong {
    color: var(--bp-success);
}

.bp-money-stack--debit strong {
    color: var(--bp-danger);
}

.bp-money-stack--muted strong {
    color:var(--bp-muted);
    font-weight:500;
}

.bp-money-stack--provider strong {
    color: var(--bp-primary);
}

.bp-money-stack--start { align-items:flex-start; }
.bp-money-stack > strong + :is(small,span) {margin-top:calc(var(--bp-caption-gap) - 1px);}
.bp-label-stack {display:flex;flex-direction:column;gap:var(--bp-caption-gap);min-width:0;max-width:100%;}
.bp-label-stack__label {display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bp-label-stack__caption {display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-all;font-size:11px;line-height:1.15;color:var(--bp-muted);}
@media(min-width:768px) {
    body[data-bp-admin] .bp-transaction-table :is(.bp-col-merchant,.bp-col-provider) {width:var(--bp-party-column-width);}
    body[data-bp-admin] .bp-transaction-table > :is(thead,tbody) > tr > :is(th,td) {padding:7px 6px;}
    body[data-bp-admin] .bp-transaction-table .transaction-row-actions {flex-wrap:nowrap;justify-content:flex-end;gap:5px;}
    body[data-bp-admin] .bp-transaction-table .transaction-row-actions .bp-countdown {flex:0 0 52px;width:52px;min-width:52px;margin-inline:0;padding-inline:4px;}
    body[data-bp-admin] .bp-transaction-table tbody td:first-child,
    body[data-bp-admin] .bp-transaction-table tbody td:first-child :is(a,.bp-cell-value) {white-space:nowrap;overflow-wrap:normal;word-break:normal;}
    body[data-bp-admin] .bp-transaction-table td.actions .transaction-row-actions .bp-countdown + .btn {margin-inline-start:0!important;}
    body[data-bp-admin] .bp-transaction-table .badge.bp-status {width:100%;max-width:140px;padding-inline:4px;gap:4px;}
    body[data-bp-admin] .bp-transaction-table .badge.bp-payment-method {max-width:100%;padding-inline:4px;gap:4px;height:auto;min-height:var(--bp-row-control-height);white-space:normal;}
    body[data-bp-admin] .bp-transaction-table .badge.bp-payment-method .bp-method-label {min-width:0;white-space:normal;overflow-wrap:normal;}
    body[data-bp-admin] .table.bp-transaction-table > thead > tr > th {white-space:normal;}
    body[data-bp-admin] .bp-transaction-table .bp-money-stack > :is(strong,small) {white-space:normal;}
}
.bp-cell-caption {margin-top:var(--bp-caption-gap);}
.bp-transaction-controls {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:calc(var(--bp-caption-gap) * 2);}
.bp-transaction-controls__status {min-width:0;}
.bp-transaction-controls__status .bp-status {width:100%;max-width:140px;}
.bp-transaction-controls__timer {display:flex;justify-content:center;min-width:0;}
body[data-bp-admin] .bp-transaction-controls .bp-countdown {width:52px;min-width:52px;height:var(--bp-row-control-height);min-height:var(--bp-row-control-height);padding-inline:4px;}
.bp-transaction-controls > .transaction-row-actions {grid-column:1 / -1;}
@media(min-width:768px) {
    body[data-bp-admin] .bp-transaction-table > tbody > tr > td.bp-transaction-controls-cell {padding-left:0;}
    .bp-transaction-controls {grid-template-columns:minmax(calc(var(--bp-caption-gap) * 2),1fr) minmax(0,140px) minmax(calc(var(--bp-caption-gap) * 2),1fr) 52px minmax(calc(var(--bp-caption-gap) * 2),1fr) auto;gap:0;}
    .bp-transaction-controls__status {grid-column:2;}
    .bp-transaction-controls__timer {grid-column:4;}
    .bp-transaction-controls > .transaction-row-actions {grid-column:6;width:auto;}
}
.bp-kit-transaction-controls {max-width:440px;}
.bp-date-time {display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font:400 11px/15px var(--bp-font);color:var(--bp-text);vertical-align:middle;}
.bp-date-time--stacked {flex-direction:column;align-items:flex-start;gap:var(--bp-caption-gap);}
.bp-date-time--stacked .bp-date-time__time {font-size:12px;font-weight:600;}
.bp-date-time--stacked .bp-date-time__date {color:var(--bp-muted);}
body:is([data-bp-admin],.merchant-app) .bp-transaction-table { --bp-row-control-height:28px; --bp-row-control-font-size:11px; }
body:is([data-bp-admin],.merchant-app) .bp-transaction-table > thead > tr > th { white-space:nowrap; overflow-wrap:normal; }
body:is([data-bp-admin],.merchant-app) .bp-transaction-table :is(.badge.bp-payment-method,.badge.bp-status,.bp-delivery-speed,.bp-countdown) { font-size:var(--bp-row-control-font-size); }
body:is([data-bp-admin],.merchant-app) .bp-transaction-table .bp-money-stack--amount strong { font-size:var(--bp-amount-font-size); line-height:18px; font-weight:600; }
body:is([data-bp-admin],.merchant-app) .bp-transaction-table :is(.badge.bp-payment-method,.badge.bp-status,.transaction-row-actions .bp-countdown) { height:var(--bp-row-control-height); min-height:var(--bp-row-control-height); }

/* One financial highlight; secondary information keeps the same contrast. */
body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance :is(.bp-metric-card__label,.bp-metric-card__value,.bp-metric-card__action) {color:var(--bp-balance-text);}
body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance :is(.bp-metric-card__icon,.bp-metric-card__detail,.bp-metric-card__value > span) {color:var(--bp-balance-muted);}
body:is([data-bp-admin],.merchant-app) .bp-metric-card__icon {color:var(--bp-muted);}
body:is([data-bp-admin],.merchant-app) .card-header {border-bottom:0;}
body:is([data-bp-admin],.merchant-app) .btn > .bp-icon {width:18px;height:18px;}
body:is([data-bp-admin],.merchant-app) .bp-btn-row > .bp-icon {width:16px;height:16px;}
@media(max-width:767px) {
 body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance {grid-column:1/-1;}
 body:is([data-bp-admin],.merchant-app) .bp-metric-card--balance .bp-metric-card__value {white-space:nowrap;overflow-wrap:normal;}
}

/* Shared focus paint also replaces EasyAdmin's default violet ring. */
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn:focus {outline:2px solid var(--bp-primary);outline-offset:2px;box-shadow:none;}
body:is([data-bp-admin],.merchant-app,.page-login,.bp-public) .btn:focus:not(:focus-visible) {outline:none;}

/* Collapsed navigation uses the same flyout and hover control in both cabinets. */
body:is([data-bp-admin],.merchant-app) .bp-menu-flyout { position:fixed; z-index:1060; display:none; pointer-events:none; align-items:center; min-height:40px; padding:10px 16px; border:1px solid var(--bp-border); border-radius:8px; background:var(--bp-surface); color:var(--bp-text); font:550 13px/20px var(--bp-font); box-shadow:0 6px 18px rgba(0,0,0,.12); white-space:nowrap; }
body:is([data-bp-admin],.merchant-app) .bp-menu-flyout.is-visible { display:flex; animation:bp-menu-reveal .12s ease-out; }
@keyframes bp-menu-reveal { from { opacity:0; transform:translateX(-6px); } to { opacity:1; transform:translateX(0); } }
@media(prefers-reduced-motion:reduce) { body:is([data-bp-admin],.merchant-app) .bp-menu-flyout.is-visible { animation:none; } }

@media(min-width:992px) {
 body.merchant-app .merchant-sidebar-toggle {position:fixed;top:10px;left:calc(var(--merchant-sidebar-width) - 14px);right:auto;width:28px;height:28px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s ease;}
 body.merchant-app .merchant-sidebar:is(:hover,:focus-within) .merchant-sidebar-toggle {opacity:1;pointer-events:auto;}
 body.merchant-app.bp-merchant-collapsed .nav-group-label {display:block;height:1px;min-height:1px;padding:0;margin:12px 8px;font-size:0;line-height:0;overflow:hidden;background:var(--bp-border);}
}

/* Highlighted metrics share semantic accents and distinct SVG icons. */
body:is([data-bp-admin],.merchant-app) .bp-metric-card--highlighted {background:color-mix(in srgb,var(--bp-metric-accent) 10%,var(--bp-surface));}
body:is([data-bp-admin],.merchant-app) .bp-metric-card--highlighted.bp-metric-card--compact {min-height:134px;}
body:is([data-bp-admin],.merchant-app) .bp-metric-card--highlighted .bp-metric-card__icon {flex-basis:32px;width:32px;height:32px;border-radius:50%;color:var(--bp-metric-accent);background:color-mix(in srgb,var(--bp-metric-accent) 12%,var(--bp-surface));}
.bp-metric-card--highlighted .bp-metric-card__icon .bp-icon {width:18px;height:18px;}
.bp-metric-card--highlighted .bp-metric-card__detail {margin:4px 0 0;}
