/* Multi-branch screens - multi_branch.css v1.0.2 (TASK-2026-181, slice 2A)
   Built as the owner's approved mockup multibranch v3 draws them: the Employees screen grouped by branch, Branch management and the Company group's pages.
   The mockup shares the month report's classes (mr-) and adds a few of its own (mb-); both are ported here unchanged, so the screens read the same tokens
   (tokens.css) as every other screen. Logical sides only (inline/block), so the layout is right in both directions. */
.mr-num { font-variant-numeric: tabular-nums; white-space: nowrap; }
.mr-num bdi { unicode-bidi: isolate; }
:root { --mr-fs-val: 1.0714rem; --mr-bar-h: 12px; }
.mr-tab { display: grid; gap: var(--space-4); padding-block-end: var(--space-4); }
/* tables in cards */
.mr-card .table-wrapper { box-shadow: none; }
.mr-card .table-wrapper > .mr-tbl { min-width: 520px; }
.mr-tbl td .mr-sub { display: block; color: var(--muted); font-size: var(--fs-small); }
.mr-tbl tr[data-tone="warn"] > td:first-child { box-shadow: inset calc(var(--mr-s, 1) * -3px) 0 0 var(--warning); }
.mr-tbl tr[data-tone="ok"] > td:first-child { box-shadow: inset calc(var(--mr-s, 1) * -3px) 0 0 var(--success); }
html[dir="ltr"] .mr-tbl { --mr-s: -1; }
.mr-tbl td.mr-h, .mr-tbl th.mr-h { width: 44px; text-align: center; }
.table-wrapper .mr-tbl :is(td, th).mr-h { position: static !important; }
.mr-muted { color: var(--muted); }
.mr-ic { display: inline-grid; place-items: center; flex: none; width: 24px; height: 24px; border-radius: var(--radius); border: 1px solid var(--line-strong); font-size: 11px; }
.mr-ic.is-ok { background: var(--success-tint); border-color: var(--success-line); color: var(--success); }
.mr-ic.is-warn { background: var(--warning-tint); border-color: var(--warning-line); color: var(--warning); font-weight: 700; font-size: var(--fs-small); }
/* the bottom bar */
.mr-bar { position: sticky; bottom: 0; z-index: 20; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-3) var(--space-4); margin-top: var(--space-2); padding: var(--space-3) var(--space-4); background: var(--card); border: 1px solid var(--line-strong); border-radius: var(--radius); box-shadow: var(--shadow-float); }
.mr-bar-st { display: flex; align-items: center; gap: var(--space-2); min-width: 0; flex: 1 1 260px; min-height: 44px; padding-inline-start: var(--space-3); border-inline-start: 3px solid var(--line-strong); }
.mr-bar-st[data-tone="warn"] { border-inline-start-color: var(--warning); }
.mr-bar-st[data-tone="ok"] { border-inline-start-color: var(--success); }
.mr-bar-tx { display: grid; min-width: 0; }
.mr-bar-t { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; font-weight: 700; }
.mr-bar-s { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; color: var(--muted); font-size: var(--fs-small); }
.mr-bar-s b { color: var(--text); }
.mr-bar-a { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.mr-bar-a .btn-primary { min-width: 180px; }
/* dialogs */
.mr-modal-foot { justify-content: space-between; flex-wrap: wrap; gap: var(--space-3); }
.mr-modal-foot .mr-fa { display: flex; gap: var(--space-2); margin-inline-start: auto; flex-wrap: wrap; }

.mb-abar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2) var(--space-4); margin-bottom: var(--space-3); padding: var(--space-2) var(--space-3); background: var(--tint); border: 1px solid var(--tint-strong); border-radius: var(--radius); }
.mb-abar.is-empty { background: transparent; border: 1px dashed var(--line-strong); }
.mb-abar-sel { display: flex; align-items: center; gap: var(--space-2); min-width: 0; min-height: 36px; flex: 1 1 200px; }
.mb-abar-sel > span { color: var(--muted); font-size: var(--fs-small); }
.mb-abar-sel > b { min-width: 0; overflow-wrap: anywhere; }
.mb-abg { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.btn[aria-disabled="true"] { opacity: .45; cursor: not-allowed; }

/* selectable rows: a radio in the first cell, the whole row picks, the picked row inverts (the app's .selected-row) */
.mr-tbl td.mb-pick, .mr-tbl th.mb-pick { width: 40px; text-align: center; padding-inline: var(--space-2); }
.mr-tbl td.mb-pick input { width: 16px; height: 16px; margin: 0; accent-color: var(--brand); }
.mr-tbl tbody tr[data-act="sel"] { cursor: pointer; }
.mr-tbl tbody tr.selected-row .mr-sub, .mr-tbl tbody tr.selected-row .mr-muted { color: var(--on-fill); opacity: .85; }
.mr-tbl tbody tr.selected-row .mr-mb { background: color-mix(in srgb, var(--on-fill) 30%, transparent); }
.mr-tbl tbody tr.selected-row .mr-mb > i { background: var(--on-fill); }
.mr-tbl td.mb-dir { white-space: nowrap; }
.mr-tbl td.mb-dir i { font-size: 11px; margin-inline: 4px; }
html[dir="rtl"] .mr-tbl td.mb-dir i.fa-arrow-right-long { transform: scaleX(-1); }
.mr-tbl td.mb-tdnote { min-width: 9rem; max-width: 18rem; white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; padding-block: var(--space-2); }
.mr-tbl td:has(.mb-share, .mb-tnote, .mr-sub) { white-space: normal; overflow: visible; padding-block: var(--space-2); min-width: 11rem; }
.mr-tbl td .mb-share { white-space: normal; }
/* the hint or figure in the last column scrolls with its row (the app pins a last column that holds row buttons; these are hints, not row actions) */
.mb-quiet { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-2) var(--space-3); min-height: 40px; color: var(--muted); font-size: var(--fs-small); }
.mb-quiet b { color: var(--text); font-size: var(--mr-fs-val); }
.mb-link { padding: 0; border: 0; background: none; color: var(--brand); font: inherit; font-size: var(--fs-small); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.mb-empty { display: grid; justify-items: center; gap: var(--space-2); padding: var(--space-6) var(--space-4); color: var(--muted); text-align: center; }
.mb-empty b { color: var(--text); }
.mb-form { display: grid; gap: var(--space-4); }
.mb-form .form-group { margin-bottom: 0; }
.mb-form textarea { min-height: 88px; resize: vertical; }
.mb-two { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.mb-diff { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border-inline-start: 3px solid var(--warning); background: var(--warning-tint); font-size: var(--fs-small); }

.mb-who { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--space-3) var(--space-5); margin-bottom: var(--space-4); }
.mb-who .form-group { margin-bottom: 0; }
.mb-who select { width: auto; min-width: 14rem; max-width: 100%; }
.mb-tag { display: inline-block; margin-inline-start: var(--space-2); padding: 0 6px; border: 1px solid var(--info-line); border-radius: var(--radius); background: var(--info-tint); color: var(--info); font-size: 12px; font-weight: 400; vertical-align: middle; }
.mr-tbl tbody tr.selected-row .mb-tag { background: transparent; border-color: var(--on-fill); color: var(--on-fill); }
/* the Employees screen: the app's directory and permissions, grouped by branch */
.mb-staff { display: grid; gap: var(--space-4); padding-block-end: var(--space-4); min-width: 0; }
.mb-staff > .tab-strip { margin-block-end: 0; }
.mb-staff > .mb-who { margin-bottom: 0; }
.emp-dir-table tr.mb-grp > th, .mb-ptbl tr.mb-grp > th { background: var(--sunken) !important; padding: .55rem .75rem; text-align: start; font-size: .85rem; font-weight: 700; color: var(--text); border-block-end: 1px solid var(--line); white-space: normal; text-transform: none; letter-spacing: 0; }
.mb-grp th > span { display: inline-flex; align-items: center; gap: var(--space-2); }
.mb-grp th > span > i { color: var(--muted); font-size: 12px; }
.mb-grp th small { font-weight: 400; color: var(--muted); font-size: var(--fs-small); margin-inline-start: var(--space-2); }
@container emp-dir (max-width: 44rem) { .emp-dir-table tr.mb-grp > th { display: block; } .emp-dir-table td { height: auto; } .emp-dir-table td.emp-dir-meta { overflow: visible; } .emp-dir-table td.emp-dir-meta .emp-dir-role { white-space: normal; } }
.table-wrapper table.mb-ptbl :is(th, td):last-child { position: static !important; }
.mb-ptbl td { white-space: normal; }
.mb-ptbl .badge { margin-inline-end: 4px; }
.ta-person .mb-who { margin-bottom: var(--space-3); }
.mb-pgrp { position: relative; margin-block: var(--space-3) var(--space-4); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); max-width: 36rem; }
.mb-pgrp .perm-line.perm2-line { display: flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 2px; }
.mb-pgrp .ta-tick.perm2-tick { flex: 1 1 auto; min-width: 0; width: auto; height: auto; min-height: 32px; display: flex; align-items: center; gap: 9px; padding: 3px 0; margin: 0; border: 0; border-radius: 2px; background: none; font: inherit; font-size: 13.5px; line-height: 1.45; color: var(--text); text-align: start; cursor: pointer; }
.mb-pgrp .ta-tick.perm2-tick:disabled { opacity: 1; cursor: default; }
.mb-pgrp .ta-tick.perm2-tick:focus-visible { outline: var(--focus-width, 2px) solid var(--focus); outline-offset: -2px; }
.mb-pgrp .perm2-line .info-tip { margin-inline-start: 0; }
.mb-pgrp .perm2-name { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 0 var(--space-1); }
.mb-pgrp .perm2-name .mb-tag { margin-inline-start: 0; }
.mb-psub { margin-inline-start: 27px; padding-inline-start: var(--space-3); border-inline-start: 1px solid var(--line); }
.mb-pgrp.is-ro .perm2-lines { opacity: .6; }
.mb-ro { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-2) 0; padding: var(--space-2) var(--space-3); background: var(--sunken); border-radius: var(--radius); color: var(--muted); font-size: var(--fs-small); }
.mb-ro > span:not(.mr-ic) { flex: 1 1 auto; min-width: 0; }
.mb-pnote { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-2) 0 0; padding-top: var(--space-2); border-top: 1px solid var(--line); font-size: var(--fs-small); color: var(--muted); }
.mb-pnote > span:not(.mr-ic) { flex: 1 1 auto; min-width: 0; }
.mb-pempty { margin: 0; color: var(--muted); font-size: var(--fs-small); }
.mr-kpi-sub b { color: var(--text); font-weight: 700; }

/* Employees v3: header chips, collapsible branch groups, quiet status, the (i) in the header corner */
.mb-staff .emp-dir-h { position: relative; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); }
.mb-staff .emp-dir-h > .info-tip { position: absolute; inset-block-start: var(--corner-i-inset, 10px); inset-inline-end: var(--corner-i-inset, 10px); margin: 0; z-index: 3; }
.mb-chips { display: flex; flex-wrap: wrap; gap: var(--space-1); margin-inline-start: auto; }
.mb-chips .btn[aria-pressed="true"] { background: var(--fill); color: var(--on-fill); border-color: transparent; font-weight: 700; }
.mb-gbtn { display: inline-flex; align-items: center; gap: var(--space-2); min-height: 32px; padding: 0; border: 0; background: none; color: inherit; font: inherit; font-weight: 700; cursor: pointer; text-align: start; }
.mb-gbtn:focus-visible { outline: var(--focus-width, 2px) solid var(--focus); outline-offset: 2px; }
.mb-gbtn > i { color: var(--muted); font-size: 12px; }
.mb-grp.is-open .emp-dir-chev { transform: rotate(45deg) translate(-1px, -1px); }
html[dir="ltr"] .mb-grp:not(.is-open) .emp-dir-chev { transform: rotate(-45deg); }
html[dir="rtl"] .mb-grp:not(.is-open) .emp-dir-chev { transform: rotate(135deg); }
.mb-grp .emp-dir-chev { flex: none; }
.emp-dir-table tr.mb-grp > th { cursor: default; }
.mb-sees { display: inline-flex; align-items: center; gap: var(--space-2); }
.mb-co { width: 22px; height: 22px; font-size: 11px; cursor: help; }
.mb-subh { margin: var(--space-4) 0 var(--space-1); font-size: var(--fs-small); color: var(--muted); font-weight: 700; }
.mb-exc { list-style: none; margin: 0 0 var(--space-3); padding: 0; display: grid; }
.mb-exc > li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); padding-block: var(--space-2); border-top: 1px solid var(--line); }
.mb-exc-rs { flex: 1 1 10rem; min-width: 0; color: var(--muted); font-size: var(--fs-small); }
.ta-person.emp-dir-panel { white-space: normal; }
@container emp-dir (max-width: 44rem) {
  .emp-dir-table.mb-dir td.emp-dir-c-name { grid-column: 1 / -1; }
  .emp-dir-table.mb-pt td.emp-dir-c-status:empty { display: none; }
  .emp-dir-table tr.mb-grp > th { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2); }
  .mb-pdir .mb-pgrp { max-width: none; }
}

.mr-tbl td.mb-c-act, .mr-tbl th.mb-c-act { width: 1%; white-space: nowrap; text-align: end; }

@media (max-width: 768px) {
  .mb-who select { min-width: 0; width: 100%; }
  .mb-who .form-group { flex: 1 1 100%; }
  .mr-bar { gap: var(--space-2); padding: var(--space-2) var(--space-3); }
  .mr-bar-st { flex: 1 1 100%; min-height: 40px; padding-inline-start: var(--space-2); }
  .mr-bar-a { flex: 1 1 100%; justify-content: flex-end; }
  .mr-bar-a .btn-primary { min-width: 0; flex: 1 1 auto; }
  .mb-two { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 768px) {
  /* branch rows: stacked cards, the radio at the card's start */
  .mr-card .table-wrapper > .mr-tbl.mb-stack { min-width: 0; }
  .mb-stack, .mb-stack tbody, .mb-stack tr, .mb-stack td { display: block; }
  .mb-stack thead { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); }
  .mb-stack tbody tr { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2) var(--space-3); padding: var(--space-3) var(--space-3); padding-inline-start: calc(var(--space-3) + 32px); background: var(--surface); border-block-end: 1px solid var(--line); }
  .mb-stack tbody tr.selected-row { background: var(--fill); color: var(--on-fill); }
  .mb-stack tbody tr > td, .table-wrapper table.mb-stack tbody tr > td:last-child { padding: 0 !important; border: 0 !important; min-width: 0 !important; max-width: none !important; white-space: normal; background: transparent !important; position: static !important; }
  .mb-stack.mb-nopick tbody tr { padding-inline-start: var(--space-3); }
  .mb-stack td.mb-c-act { grid-column: 1 / -1; text-align: start; }
  .mb-stack td.mb-pick { position: absolute !important; inset-inline-start: var(--space-3); inset-block-start: var(--space-3); width: auto; }
  .mb-stack tbody tr > td { height: auto !important; align-self: start; }
  .mb-stack td.mb-dir { white-space: normal !important; }
  .mb-stack td.mb-c-name { grid-column: 1 / -1; font-weight: 700; }
  .mb-stack td.mb-c-wide { grid-column: 1 / -1; }
  .mb-stack td.mb-c-meta::before { content: attr(data-label); display: block; font-size: .7rem; font-weight: 600; color: var(--muted); }
  .mb-stack tbody tr.selected-row td.mb-c-meta::before { color: var(--on-fill); opacity: .85; }
  .mb-chips { margin-inline-start: 0; flex: 1 1 100%; }
}
@media (max-width: 560px) {
  .mr-card > .card-header { padding-block: var(--space-3); }
  .mr-card > .card-body { padding: var(--space-3); }
  .mb-abar-sel { flex-basis: 100%; }
  .mb-abg { width: 100%; }
  .mb-abg .btn { flex: 1 1 auto; }
}
/* an action-bar button that may be greyed, with the (i) that says why beside it */
.mb-abtn { display: inline-flex; align-items: center; gap: var(--space-1); }
.mb-bm .mb-abar .btn[aria-disabled="true"] { opacity: .45; cursor: not-allowed; }
.mb-staff-dir .emp-dir-h { position: relative; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); }
.mb-staff-dir .emp-dir-h > .info-tip { position: absolute; inset-block-start: var(--corner-i-inset, 10px); inset-inline-end: var(--corner-i-inset, 10px); margin: 0; z-index: 3; }
.mb-staff-dir .emp-dir-add { margin-inline-start: var(--space-2); }
.mb-staff-dir tr.mb-grp.is-open .emp-dir-chev { transform: rotate(45deg) translate(-1px, -1px); }

/* ===== Part B (TASK-2026-181, slice 2B): the live branch board, the Company account page and the cash transfers page. Ported unchanged from the approved mockup v3. ===== */
/* figures, KPI tiles, card grids, label/value rows */
.mr-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: var(--space-4); align-items: stretch; }
.mr-kpis .kpi-card { display: flex; flex-direction: column; }
.mr-kpis .kpi-value { font-size: var(--fs-title); white-space: nowrap; margin-bottom: var(--space-2); }
.mr-kpis .kpi-label { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--space-2); }
.mr-kpi-sub { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-1) var(--space-2); margin-top: auto; padding-top: var(--space-3); font-size: var(--fs-small); color: var(--muted); }
.mr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); align-items: stretch; }
.mr-grid > .card { display: flex; flex-direction: column; min-width: 0; }
.mr-grid > .card > .card-body { flex: 1 1 auto; }
.mr-grid.is-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mr-grid.is-1 { grid-template-columns: minmax(0, 1fr); }
.mr-rows { margin: 0; display: grid; }
.mr-row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-height: 44px; padding-block: var(--space-2); padding-inline-start: var(--space-3); border-inline-start: 3px solid transparent; }
.mr-row + .mr-row { border-top: 1px solid var(--line); }
.mr-row dt { display: flex; align-items: center; gap: var(--space-1); min-width: 0; color: var(--muted); font-size: var(--fs-small); }
.mr-row dd { margin: 0; display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; justify-content: flex-end; font-weight: 700; font-size: var(--mr-fs-val); text-align: end; min-width: 0; }
.mr-row dd small { font-weight: 400; color: var(--muted); font-size: var(--fs-small); }
.mr-row[data-tone="warn"] { border-inline-start-color: var(--warning); }
.mr-row[data-tone="ok"] { border-inline-start-color: var(--success); }
/* a hint that warns or says all is well: the app's (i), tinted */
.info-tip.mr-hint { font-weight: 700; }
.info-tip.mr-hint--warn { background: var(--warning-tint); border-color: var(--warning-line); color: var(--warning); }
.info-tip.mr-hint--ok { background: var(--success-tint); border-color: var(--success-line); color: var(--success); }
.info-tip.mr-hint--ok i { font-size: 11px; }
/* the three-step linking: choice cards, steps, ticks, the sum line */
.mr-opts { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.mr-opt { display: flex; align-items: flex-start; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--line-strong); border-radius: var(--radius); cursor: pointer; min-width: 0; }
.mr-opt:has(input:checked) { border-color: var(--brand); background: var(--tint); }
.mr-opt input { margin-top: 3px; flex: none; width: auto; height: auto; }
.mr-opt b { display: block; }
.mr-opt small { display: block; color: var(--muted); font-size: var(--fs-small); }
.mr-opt.is-off { cursor: default; opacity: .7; }
.table-wrapper table.mr-tbl :is(th, td):last-child { position: static !important; border-inline-start: 0 !important; }
.table-wrapper table.mr-tbl tbody tr > td:last-child { background-color: transparent; }
.table-wrapper table.mr-tbl tbody tr.selected-row > td:last-child { background-color: var(--fill); }
.mb-bcard .card-header h3 { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.mb-bcard .card-header .badge { font-weight: 400; }
.mb-bcard .card-footer { display: flex; justify-content: flex-end; }
.mb-bcard[data-tone="warn"] { border-inline-start: 3px solid var(--warning); }
/* the themes colour every card's border with the line colour at a higher specificity; the warning edge must win over it */
html[data-theme] .mb-bcard[data-tone="warn"] { border-inline-start-color: var(--warning); }
.mb-code { color: var(--muted); font-size: var(--fs-small); font-weight: 400; }
.mb-names { display: block; font-weight: 400; color: var(--muted); font-size: var(--fs-small); }
.mb-live { display: inline-flex; align-items: center; gap: var(--space-2); color: var(--muted); font-size: var(--fs-small); margin-bottom: var(--space-3); }
.mb-live i { width: 8px; height: 8px; border-radius: 50%; background: var(--success); display: inline-block; }
.mb-note { display: grid; gap: var(--space-1); padding: var(--space-3) var(--space-4); border-inline-start: 3px solid var(--warning); background: var(--warning-tint); border-radius: var(--radius); }
.mb-note small { color: var(--muted); font-size: var(--fs-small); }
.mb-note p { margin: 0; overflow-wrap: anywhere; }
.mr-tbl td .mb-tnote { display: block; margin-top: 2px; color: var(--warning); font-size: var(--fs-small); white-space: normal; overflow-wrap: anywhere; }
.mr-tbl tbody tr.selected-row .mb-tnote { color: var(--on-fill); }
.mb-sum { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); margin-top: var(--space-3); padding-top: var(--space-3); border-top: 1px solid var(--line-strong); }
.mb-sum > span { color: var(--muted); font-size: var(--fs-small); }
.mb-sum > b { font-size: var(--mr-fs-val); }
.mb-ticks { list-style: none; margin: 0; padding: 0; display: grid; }
.mb-ticks > li { display: flex; align-items: center; gap: var(--space-3); min-height: 48px; padding-block: var(--space-2); padding-inline-start: var(--space-3); border-inline-start: 3px solid transparent; }
.mb-ticks > li + li { border-top: 1px solid var(--line); }
.mb-ticks > li[data-tone="warn"] { border-inline-start-color: var(--warning); }
.mb-ticks label { display: flex; align-items: center; gap: var(--space-3); flex: 1 1 auto; min-width: 0; cursor: pointer; margin: 0; }
.mb-ticks label > span { display: grid; min-width: 0; }
.mb-ticks label small { color: var(--muted); font-size: var(--fs-small); }
.mb-ticks input[type="checkbox"] { width: 18px; height: 18px; margin: 0; flex: none; accent-color: var(--brand); }
.mb-ticks input:disabled + span { opacity: .6; }
.mb-ticks.is-sub { margin-inline-start: var(--space-6); border-inline-start: 1px solid var(--line); }
.mb-ticks.is-sub > li { min-height: 40px; }
.mb-log { list-style: none; margin: 0; padding: 0; display: grid; }
.mb-log > li { display: grid; gap: 2px; padding-block: var(--space-2); }
.mb-log > li + li { border-top: 1px solid var(--line); }
.mb-log small { color: var(--muted); font-size: var(--fs-small); }
.mb-steps { list-style: none; margin: 0 0 var(--space-4); padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-5); }
.mb-steps > li { display: flex; align-items: center; gap: var(--space-2); min-height: 32px; color: var(--muted); }
.mb-steps > li.is-cur { color: var(--text); font-weight: 700; }
.mb-sn { display: inline-grid; place-items: center; flex: none; width: 24px; height: 24px; border: 1px solid var(--line-strong); border-radius: var(--radius); font-size: var(--fs-small); font-weight: 700; }
.mb-steps > li.is-cur .mb-sn { background: var(--fill); color: var(--on-fill); border-color: transparent; }
.mb-steps > li.is-done .mb-sn { background: var(--success-tint); border-color: var(--success-line); color: var(--success); font-size: 11px; }
.mb-wiz .mb-quiet { margin-block-end: var(--space-2); }
.mb-wiz .mr-opts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mb-wizf { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2) var(--space-3); width: 100%; }
.mb-wizg { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-inline-start: auto; }
html[dir="ltr"] .mb-wizf .fa-arrow-right { transform: scaleX(-1); }
html[dir="ltr"] .mb-wizf .fa-arrow-left { transform: scaleX(-1); }
.mb-sum small, .mr-row dd small { margin-inline-start: var(--space-2); }
@media (max-width: 1100px) { .mr-grid, .mr-grid.is-3 { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 768px) {
  .kpi-grid.mr-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: var(--space-2); }
  .mr-kpis .kpi-card { padding: var(--space-3); }
  .mr-kpis .kpi-icon { display: none; }
  .mr-kpis .kpi-value { font-size: var(--fs-body-lg); margin: 0 0 var(--space-1); }
  .mr-kpis .kpi-card:has(> .info-tip) .kpi-value, .mr-kpis .kpi-card:has(> .info-tip) .kpi-label { max-width: calc(100% - var(--corner-i-size, 28px) - var(--space-2)); }
  .mr-opts, .mb-basis { grid-template-columns: minmax(0, 1fr); }
  .mb-ticks.is-sub { margin-inline-start: var(--space-4); }
}

/* the Settings card "Payment methods to accounts" (TASK-2026-181 slice 2C-b): each method, its account, and the reason when it has none */
.mb-map { list-style: none; margin: 0; padding: 0; }
.mb-map > li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 16rem) 32px; align-items: center; gap: var(--space-3); min-height: 52px; padding-block: var(--space-2); padding-inline-start: var(--space-3); border-inline-start: 3px solid transparent; }
.mb-map > li + li { border-top: 1px solid var(--line); }
.mb-map > li[data-tone="warn"] { border-inline-start-color: var(--warning); }
.mb-map select { width: 100%; }
.mb-map > li > span:first-child { display: flex; align-items: center; gap: var(--space-2); min-width: 0; }
.mb-map > li > span:first-child > i { width: 18px; text-align: center; color: var(--muted); flex: none; }
.mb-map .mb-ro { font-weight: 700; overflow-wrap: anywhere; }
.mb-map .mb-rs { grid-column: 1 / -1; }
.pma-branch { display: flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-3); }
.pma-branch select { width: auto; min-width: 12rem; }
@media (max-width: 560px) {
  .mb-map > li { grid-template-columns: minmax(0, 1fr) 32px; }
  .mb-map > li > .mb-mv { grid-column: 1 / -1; grid-row: 2; }
}
.mb-pma-foot { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); flex-wrap: wrap; width: 100%; }
.mb-pma-st { display: inline-flex; align-items: center; gap: var(--space-2); color: var(--muted); font-size: var(--fs-small); }
.mb-pma-act { display: inline-flex; align-items: center; gap: var(--space-2); margin-inline-start: auto; }
