/* Mobile banking shell — matches the reference home, transfer, and withdraw screens. */
.mbank-on {
    background: #070918;
    margin-bottom: 0 !important;
}
.mbank-on .mp-navbar,
.mbank-on .footer { display: none !important; }
.mbank-on > .container {
    max-width: none;
    padding: 0;
    margin: 0;
}
.mbank-on > .container > main { padding: 0 !important; }

.mbank-stage {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px 12px;
    background:
        radial-gradient(1200px 500px at 50% -10%, rgba(91, 60, 255, .35), transparent 55%),
        #070918;
}
.mbank-phone {
    width: 100%;
    max-width: 390px;
    min-height: 780px;
    background: #fff;
    border-radius: 36px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .55);
    display: flex;
    flex-direction: column;
    position: relative;
}
.mbank-phone::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 118px;
    height: 22px;
    background: #070918;
    border-radius: 12px;
    z-index: 5;
}
.mbank-top {
    background: #1b1640;
    color: #fff;
    padding: 28px 20px 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 52px;
}
.mbank-top h1 {
    margin: 0;
    font-size: .95rem;
    font-weight: 700;
    letter-spacing: .01em;
}
.mbank-brand {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: -.02em;
}
.mbank-brand::after {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #f5c400;
    margin-top: -10px;
}
.mbank-icon-btn {
    width: 32px;
    height: 32px;
    border: 0;
    background: transparent;
    color: #fff;
    display: grid;
    place-items: center;
    padding: 0;
    text-decoration: none;
}
.mbank-icon-btn svg { width: 20px; height: 20px; }
.mbank-screen {
    flex: 1;
    background: #fff;
    padding: 14px 16px 18px;
    overflow: auto;
    min-height: 0;
}
.mbank-phone::before { background: #1b1640; }
.mbank-phone.is-home .mbank-top { padding-bottom: 4px; }
.mbank-phone.is-home .mbank-screen {
    padding-top: 0;
    background: #fff;
}
.mbank-home-head {
    margin: 0 -16px 22px;
    padding: 6px 16px 0;
    background: linear-gradient(#1b1640 0, #1b1640 64px, transparent 64px);
}
.hc {
    background: #fff;
    border: 1px solid #e2dfec;
    border-radius: 8px;
    box-shadow: 0 10px 26px rgba(27, 22, 64, .10);
    overflow: hidden;
}
.hc-top {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 16px 14px;
}
.hc-copy {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}
.hc-greet {
    font-size: .72rem;
    font-weight: 500;
    color: #8a8796;
    line-height: 1.2;
}
.hc-name {
    margin: 3px 0 2px;
    font-size: 1rem;
    font-weight: 700;
    color: #1b1640;
    line-height: 1.25;
    letter-spacing: -.01em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.hc-meta {
    font-size: .68rem;
    color: #a7a3b4;
}
.hc-avatar {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 50%;
    background: #1b1640;
    color: #fff;
    display: grid;
    place-items: center;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-decoration: none;
}
.hc-avatar:hover { color: #fff; }
.hc-rows { border-top: 1px solid #efedf5; }
.hc-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 16px;
    color: #1b1640;
    text-decoration: none;
}
.hc-row + .hc-row { border-top: 1px solid #efedf5; }
.hc-row:hover { background: #faf9fd; color: #1b1640; }
.hc-row-ico {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 50%;
    background: #f1eff8;
    color: #1b1640;
    display: grid;
    place-items: center;
}
.hc-row-ico svg { width: 17px; height: 17px; }
.hc-row-label {
    flex: 1;
    font-size: .82rem;
    font-weight: 500;
}
.hc-row-chev { width: 16px; height: 16px; color: #b9b5c8; flex: 0 0 16px; }
.mbank-banner {
    margin: 14px 0 18px;
    background: #e9f9ef;
    border-radius: 12px;
    padding: 10px 12px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: #166534;
    font-size: .72rem;
    line-height: 1.35;
}
.mbank-banner-ico {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: #22c55e;
    color: #fff;
    display: grid;
    place-items: center;
    flex: 0 0 28px;
}
.svc-heading {
    margin: 2px 0 12px;
    text-align: center;
    font-size: .92rem;
    font-weight: 600;
    color: #1b1640;
    letter-spacing: -.01em;
}
.svc-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px 12px;
    padding: 0 2px 12px;
}
.svc {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.svc-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    padding: 10px 10px 10px;
    background: #fff;
    border: 1px solid #e2dfec;
    border-radius: 6px;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(27, 22, 64, .04);
    transition: border-color .15s ease, box-shadow .15s ease;
}
.svc-card:hover {
    border-color: #c9c3e0;
    box-shadow: 0 4px 12px rgba(27, 22, 64, .08);
}
.svc-title {
    align-self: flex-start;
    font-size: .78rem;
    font-weight: 700;
    color: #1b1640;
    line-height: 1.2;
    text-align: left;
}
.svc-ico {
    width: 40px;
    height: 40px;
    margin: 10px 0 6px;
    border-radius: 50%;
    background: #1b1640;
    color: #fff;
    display: grid;
    place-items: center;
}
.svc-ico svg {
    width: 18px;
    height: 18px;
    color: #fff;
}
.svc-sub {
    font-size: .6rem;
    color: #8a8796;
    line-height: 1.25;
    text-align: center;
}
.svc-more {
    display: block;
    margin-top: 6px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e2dfec;
    font-size: .68rem;
    color: #5b4dff;
    text-decoration: none;
}
.svc-more:hover { color: #4637e6; border-bottom-color: #5b4dff; }

.mbank-on .member-portal .mp-page-header { display: none; }
.mbank-on .cc-hub-card {
    border: 0;
    background: transparent;
    min-height: 0;
    padding: 0;
    font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    font-size: .7rem;
    font-weight: 500;
    color: #0a3d8f;
}
.mbank-on .cc-hub-card img { display: none; }

.mbank-on .panel {
    border: 0;
    box-shadow: none;
    background: transparent;
    margin: 0;
}
.mbank-on .panel-hdr { display: none; }
.mbank-on .panel-tag { display: none; }
.mbank-on .panel-content { padding: 4px 0 0; }
.mbank-on .form-group label,
.mbank-on .form-group .control-label {
    color: #8a8796;
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .02em;
}
.mbank-on .form-control {
    border: 0;
    border-bottom: 1px solid #eceaf3;
    border-radius: 0;
    min-height: 44px;
    background: transparent;
    padding-left: 2px;
    box-shadow: none;
}
.mbank-on .form-control:focus {
    border-color: #5b3cff;
    box-shadow: none;
}
.mbank-on .btn-primary,
.mbank-on input.btn-primary {
    width: 100%;
    border: 0;
    border-radius: 12px;
    background: #5b3cff;
    padding: 13px 16px;
    font-weight: 700;
    margin-top: 18px;
}
.mbank-on .btn-primary:hover { background: #4b2ef0; }

.pw-page { padding: 8px 4px 12px; text-align: center; }
.pw-title {
    margin: 8px 0 6px;
    font-size: 1.2rem;
    font-weight: 800;
    color: #1b1236;
}
.pw-sub {
    margin: 0 auto 22px;
    max-width: 280px;
    font-size: .78rem;
    line-height: 1.45;
    color: #8a8796;
}
.pw-alert {
    background: #fef2f2;
    color: #b91c1c;
    border-radius: 10px;
    padding: 8px 10px;
    font-size: .78rem;
    margin-bottom: 14px;
    text-align: left;
}
.pw-form { text-align: left; }
.pw-field {
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #eceaf3;
    padding: 8px 0;
    margin-bottom: 14px;
}
.pw-field:focus-within { border-bottom-color: #5b3cff; }
.pw-ico,
.pw-eye {
    width: 22px;
    height: 22px;
    color: #b4b0c2;
    display: grid;
    place-items: center;
    flex: 0 0 22px;
}
.pw-ico svg,
.pw-eye svg { width: 18px; height: 18px; }
.pw-eye {
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
}
.pw-input {
    flex: 1;
    border: 0;
    outline: none;
    background: transparent;
    min-height: 36px;
    font-size: .92rem;
    color: #1b1236;
    box-shadow: none !important;
}
.pw-input:focus { box-shadow: none !important; }
.pw-error { display: block; color: #dc2626; font-size: .72rem; margin: -8px 0 10px; }
.pw-btn {
    width: 100%;
    border: 0;
    border-radius: 12px;
    background: #f5c400;
    color: #1b1236;
    font-weight: 800;
    font-size: .95rem;
    padding: 13px 16px;
    margin-top: 10px;
}
.pw-btn:hover { background: #e0b400; color: #1b1236; }
.pw-cancel {
    display: block;
    text-align: center;
    margin-top: 14px;
    color: #8a8796;
    font-weight: 600;
    font-size: .85rem;
    text-decoration: none;
}
.pw-cancel:hover { color: #1b1236; }

.pf-page { padding: 4px 2px 8px; }
.pf-hero {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 4px 2px 10px;
}
.pf-avatar {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(160deg, #3d2a6b, #1b1236);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 800;
    font-size: .85rem;
    flex: 0 0 52px;
}
.pf-who strong { display: block; font-size: .98rem; color: #1b1236; }
.pf-who small { display: block; color: #8a8796; font-size: .72rem; margin-top: 2px; }
.pf-lead {
    margin: 0 2px 14px;
    font-size: .75rem;
    line-height: 1.45;
    color: #8a8796;
}
.pf-balance {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 12px;
    border-radius: 14px;
    background: #f7f6fb;
    text-decoration: none;
    color: #1b1236;
    margin-bottom: 18px;
}
.pf-balance:hover { color: #1b1236; background: #f1eff8; }
.pf-balance-ico {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #fff;
    color: #5b3cff;
    display: grid;
    place-items: center;
    flex: 0 0 36px;
    box-shadow: 0 1px 4px rgba(27, 18, 54, .06);
}
.pf-balance-ico svg { width: 18px; height: 18px; }
.pf-balance-copy { flex: 1; }
.pf-balance-copy span { display: block; font-size: .68rem; color: #8a8796; }
.pf-balance-copy strong { font-size: 1.05rem; }
.pf-label {
    margin: 0 2px 8px;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #8a8796;
}
.pf-list { display: flex; flex-direction: column; gap: 6px; margin-bottom: 18px; }
.pf-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 10px;
    border-radius: 12px;
    text-decoration: none;
    color: #1b1236;
    background: #fff;
}
.pf-row:hover { background: #f7f6fb; color: #1b1236; }
.pf-row-ico {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #f4f3f8;
    color: #5a5568;
    display: grid;
    place-items: center;
    flex: 0 0 34px;
}
.pf-row-ico svg { width: 17px; height: 17px; }
.pf-row-copy { flex: 1; min-width: 0; }
.pf-row-copy strong { display: block; font-size: .86rem; }
.pf-row-copy small { display: block; color: #8a8796; font-size: .68rem; margin-top: 1px; }
.pf-row-amt { font-size: .75rem; font-weight: 700; color: #1b1236; white-space: nowrap; }
.pf-chevron { width: 16px; height: 16px; color: #c5c5c5; flex: 0 0 16px; }
.pf-empty { font-size: .78rem; color: #8a8796; padding: 8px 2px 16px; }
.mbank-on .table { font-size: .75rem; }
.mbank-on .statement { margin: 12px 0 0; border-radius: 12px; }
.mbank-scrim {
    position: absolute;
    inset: 0;
    z-index: 7;
    background: rgba(20, 16, 40, .38);
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
}
.mbank-phone.is-menu .mbank-scrim { opacity: 1; pointer-events: auto; }
.mbank-drawer {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 80%;
    max-width: 310px;
    z-index: 8;
    background: #fff;
    display: flex;
    flex-direction: column;
    box-shadow: 8px 0 28px rgba(20, 16, 40, .18);
    transform: translateX(-105%);
    transition: transform .28s ease;
}
.mbank-phone.is-menu .mbank-drawer { transform: none; }
.dw-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 30px 16px 10px 20px;
}
.dw-brand { display: flex; flex-direction: column; }
.dw-logo {
    font-size: 1.15rem;
    font-weight: 800;
    color: #1b1640;
    letter-spacing: -.02em;
    line-height: 1.1;
}
.dw-logo::after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: 3px;
    border-radius: 50%;
    background: #f5c400;
    vertical-align: top;
}
.dw-tag {
    margin-top: 2px;
    font-size: .6rem;
    font-weight: 600;
    color: #a7a3b4;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.dw-close {
    width: 32px;
    height: 32px;
    border: 0;
    background: transparent;
    color: #1b1640;
    display: grid;
    place-items: center;
    padding: 0;
}
.dw-close svg { width: 22px; height: 22px; }
.dw-greet {
    padding: 4px 20px 14px;
    font-size: .78rem;
    color: #8a8796;
    border-bottom: 1px solid #efedf5;
}
.dw-nav {
    flex: 1;
    overflow: auto;
}
.dw-nav a,
.dw-nav button {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    padding: 12px 20px;
    border: 0;
    border-bottom: 1px solid #efedf5;
    background: transparent;
    color: #4a4658;
    font-size: .86rem;
    font-weight: 400;
    text-align: left;
    text-decoration: none;
}
.dw-nav svg {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    color: #8a8796;
}
.dw-nav a:hover,
.dw-nav button:hover { background: #faf9fd; color: #1b1640; }
.dw-nav a.is-on {
    color: #1b1640;
    font-weight: 600;
    border-bottom: 2px solid #5b4dff;
}
.dw-nav a.is-on svg { color: #5b4dff; }
.dw-nav form { margin: 0; }
.dw-user {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px 6px;
    color: #4a4658;
    text-decoration: none;
    font-size: .84rem;
}
.dw-user:hover { color: #1b1640; }
.dw-user-ico svg { width: 26px; height: 26px; color: #8a8796; display: block; }
.dw-ver {
    padding: 0 20px 18px;
    text-align: right;
    font-size: .64rem;
    color: #b9b5c8;
}

.mbank-dock {
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: end;
    background: #fff;
    padding: 28px 24px 14px;
    box-shadow: 0 -8px 24px rgba(20, 16, 40, .05);
}
.mbank-dock-item,
.mbank-dock-qr {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    color: #9aa0b4;
    text-decoration: none;
    font-size: .68rem;
    font-weight: 600;
}
.mbank-dock-item svg {
    width: 22px;
    height: 22px;
}
.mbank-dock-item.is-on { color: #5b4dff; }
.mbank-dock-qr { color: #9aa0b4; }
.mbank-dock-qr.is-on { color: #5b4dff; }
.mbank-dock-qr-btn {
    width: 56px;
    height: 56px;
    margin-top: -42px;
    border-radius: 50%;
    background: #5b5cf6;
    color: #fff;
    display: grid;
    place-items: center;
    box-shadow: 0 10px 22px rgba(91, 92, 246, .38);
}
.mbank-dock-qr-btn svg { width: 26px; height: 26px; }
.mbank-dock-qr.is-on .mbank-dock-qr-btn { background: #4d4eef; }

.tx-page {
    font-family: "Poppins", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    padding: 4px 0 8px;
    color: #1b1640;
}
.tx-form { display: flex; flex-direction: column; gap: 12px; }
.tx-alert:empty,
.tx-alert.validation-summary-valid { display: none; }
.tx-alert {
    background: #fdf1f1;
    border: 1px solid #f5d0d0;
    color: #b42318;
    border-radius: 10px;
    padding: 8px 12px;
    font-size: .74rem;
}
.tx-alert ul { margin: 0; padding-left: 16px; }
.tx-card {
    background: #fff;
    border: 1px solid #ebe9f2;
    border-radius: 12px;
    padding: 12px 14px;
    box-shadow: 0 2px 8px rgba(27, 22, 64, .04);
}
.tx-card-label {
    font-size: .64rem;
    font-weight: 500;
    color: #8a8796;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 6px;
}
.tx-select {
    display: flex;
    align-items: center;
    gap: 10px;
}
.tx-select-ico {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: 50%;
    background: #f1eff8;
    color: #5b4dff;
    display: grid;
    place-items: center;
}
.tx-select-ico svg { width: 18px; height: 18px; }
.mbank-on .tx-page .tx-input {
    flex: 1;
    min-width: 0;
    min-height: 36px;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    font-family: inherit;
    font-size: .82rem;
    font-weight: 500;
    color: #1b1640;
    box-shadow: none;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}
.mbank-on .tx-page select.tx-input {
    padding-right: 22px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8796' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right center / 16px;
}
.mbank-on .tx-page .tx-input::placeholder { color: #b4b0c2; font-weight: 400; }
.mbank-on .tx-page .tx-input-boxed {
    width: 100%;
    border: 1px solid #ebe9f2;
    border-radius: 10px;
    padding: 0 30px 0 12px;
    background-position: right 10px center;
}
.tx-balance {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 10px;
    padding: 8px 12px;
    border-radius: 10px;
    background: #f6f4fd;
    font-size: .72rem;
    color: #8a8796;
}
.tx-balance-value {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    min-width: 0;
}
.tx-balance strong {
    font-size: .86rem;
    font-weight: 600;
    color: #1b1640;
    font-variant-numeric: tabular-nums;
}
.tx-balance-toggle {
    display: inline-grid !important;
    place-items: center;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px;
    margin: 0 0 0 2px;
    padding: 0;
    border: 1px solid #ddd8ef !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #5b4dff !important;
    cursor: pointer;
    flex: 0 0 auto;
    box-shadow: 0 1px 2px rgba(27, 22, 64, .06);
    visibility: visible !important;
    opacity: 1 !important;
}
.tx-balance-toggle:hover {
    background: #f3f0ff !important;
    color: #1b1640 !important;
}
.tx-balance-toggle svg {
    width: 16px !important;
    height: 16px !important;
    display: block;
    pointer-events: none;
}
.tx-balance-toggle .tx-balance-eye-off { display: none !important; }
.tx-balance-toggle .tx-balance-eye { display: block !important; }
.tx-balance.is-blind .tx-balance-toggle .tx-balance-eye { display: none !important; }
.tx-balance.is-blind .tx-balance-toggle .tx-balance-eye-off { display: block !important; }
.tx-balance.is-blind strong {
    letter-spacing: .12em;
    color: #5b4dff;
}
.tx-loading { margin-top: 8px; font-size: .7rem; color: #8a8796; }
.tx-pick { margin-top: 10px; }
.tx-pick label {
    display: block;
    margin-bottom: 4px;
    font-size: .68rem;
    font-weight: 500;
    color: #8a8796;
}
.tx-error { display: block; font-size: .68rem; color: #d92d20; margin-top: 4px; }
.tx-error:empty { display: none; }
.tx-amount {
    text-align: center;
    padding: 6px 0 2px;
}
.tx-amount-label {
    display: block;
    font-size: .74rem;
    color: #8a8796;
    margin-bottom: 2px;
}
.tx-amount-field {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
}
.tx-amount-cur {
    font-size: 1rem;
    font-weight: 600;
    color: #5b4dff;
}
.mbank-on .tx-page .tx-amount-input {
    width: 150px;
    border: 0;
    border-bottom: 2px solid #ebe9f2;
    border-radius: 0;
    background: transparent;
    padding: 0 0 2px;
    text-align: center;
    font-family: inherit;
    font-size: 1.7rem;
    font-weight: 700;
    color: #5b4dff;
    box-shadow: none;
    outline: none;
    -moz-appearance: textfield;
}
.mbank-on .tx-page .tx-amount-input:focus { border-bottom-color: #5b4dff; }
.tx-amount-input::-webkit-outer-spin-button,
.tx-amount-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.tx-amount-hint { display: block; margin-top: 4px; font-size: .64rem; color: #b4b0c2; }
.tx-rows {
    background: #fff;
    border: 1px solid #ebe9f2;
    border-radius: 12px;
    padding: 2px 14px;
}
.tx-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 0;
    font-size: .74rem;
    color: #8a8796;
}
.tx-row + .tx-row { border-top: 1px solid #f1eff6; }
.tx-row strong {
    font-weight: 600;
    color: #1b1640;
    text-align: right;
}
.tx-row-note label {
    margin: 0;
    font-size: .74rem;
    font-weight: 400;
    color: #8a8796;
    letter-spacing: 0;
}
.mbank-on .tx-page .tx-note {
    flex: 1;
    min-width: 0;
    min-height: 0;
    border: 0;
    background: transparent;
    padding: 0;
    text-align: right;
    font-family: inherit;
    font-size: .74rem;
    font-weight: 500;
    color: #1b1640;
    box-shadow: none;
    outline: none;
}
.mbank-on .tx-page .tx-note::placeholder { color: #b4b0c2; font-weight: 400; }
.tx-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 6px;
}
.tx-btn {
    display: grid;
    place-items: center;
    min-height: 44px;
    border-radius: 10px;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}
.tx-btn-ghost {
    border: 1px solid #d9d6e5;
    background: #fff;
    color: #1b1640;
}
.tx-btn-ghost:hover { background: #f8f7fc; color: #1b1640; }
.tx-btn-primary {
    border: 0;
    background: #f5b100;
    color: #1b1640;
}
.tx-btn-primary:hover { background: #e6a600; }
.tx-btn-primary:disabled { opacity: .7; cursor: default; }
.tx-page [hidden] { display: none !important; }

.tx-seg {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 3px;
    margin-bottom: 12px;
    border-radius: 10px;
    background: #f1eff8;
}
.tx-seg input { position: absolute; opacity: 0; pointer-events: none; }
.tx-seg label {
    margin: 0;
    padding: 7px 0;
    border-radius: 8px;
    text-align: center;
    font-size: .74rem;
    font-weight: 500;
    color: #8a8796;
    cursor: pointer;
    transition: background .18s, color .18s, box-shadow .18s;
}
.tx-seg input:checked + label {
    background: #fff;
    color: #5b4dff;
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(27, 22, 64, .08);
}
.tx-seg input:focus-visible + label { outline: 2px solid #5b4dff; outline-offset: 1px; }
.tx-static { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; }
.tx-static strong { font-size: .84rem; font-weight: 600; color: #1b1640; }
.tx-static span { font-size: .66rem; color: #8a8796; }
.tx-static .tx-warn { color: #d92d20; }
.tx-phone-value {
    font-variant-numeric: tabular-nums;
    letter-spacing: .02em;
    color: #5b4dff !important;
}

.tx-phone {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 2px;
    padding: 2px 4px 2px 2px;
    border: 1px solid #ebe9f2;
    border-radius: 12px;
    background: #f8f7fc;
    transition: border-color .15s, box-shadow .15s;
}
.tx-phone:focus-within {
    border-color: #5b4dff;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(91, 77, 255, .12);
}
.tx-phone-cc {
    flex: 0 0 auto;
    margin: 2px;
    padding: 7px 10px;
    border-radius: 9px;
    background: #5b4dff;
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    font-variant-numeric: tabular-nums;
}
.mbank-on .tx-page .tx-phone-local {
    flex: 1;
    min-width: 0;
    min-height: 40px;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0 6px;
    font-family: inherit;
    font-size: .92rem;
    font-weight: 600;
    color: #1b1640;
    letter-spacing: .04em;
    font-variant-numeric: tabular-nums;
    box-shadow: none;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}
.mbank-on .tx-page .tx-phone-local::placeholder {
    color: #b4b0c2;
    font-weight: 500;
    letter-spacing: .02em;
}
.tx-phone-meta {
    flex: 0 0 auto;
    padding: 0 8px 0 4px;
    font-size: .62rem;
    font-weight: 600;
    color: #8a8796;
    font-variant-numeric: tabular-nums;
}
.tx-phone-meta.is-full { color: #12b76a; }
.tx-phone-meta.is-bad { color: #d92d20; }
.tx-phone-hint {
    margin: 6px 2px 0;
    font-size: .64rem;
    color: #8a8796;
}

/* Compact deposit layout — denser cards, smaller amount, slimmer switch */
.tx-page--compact {
    padding: 0;
}
.tx-page--compact .tx-form { gap: 6px; }
.tx-page--compact .tx-card {
    padding: 6px 8px;
    border-radius: 8px;
    box-shadow: none;
}
.tx-page--compact .tx-card-label {
    font-size: .55rem;
    margin-bottom: 3px;
    letter-spacing: .04em;
}
.tx-page--compact .tx-select { gap: 6px; }
.tx-page--compact .tx-select-ico {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
}
.tx-page--compact .tx-select-ico svg { width: 12px; height: 12px; }
.tx-page--compact .tx-input,
.mbank-on .tx-page--compact .tx-input {
    min-height: 28px !important;
    font-size: .72rem !important;
}
.tx-page--compact .tx-static strong { font-size: .72rem; }
.tx-page--compact .tx-static span { font-size: .56rem; }
.tx-page--compact .tx-phone-value { font-size: .72rem !important; }
.tx-page--compact .tx-seg {
    padding: 2px;
    margin-bottom: 6px;
    border-radius: 7px;
}
.tx-page--compact .tx-seg label {
    padding: 4px 0;
    font-size: .64rem;
    border-radius: 5px;
}
.tx-page--compact .tx-phone {
    margin-top: 0;
    padding: 0 2px 0 1px;
    border-radius: 8px;
}
.tx-page--compact .tx-phone-cc {
    margin: 2px;
    padding: 4px 7px;
    border-radius: 6px;
    font-size: .66rem;
}
.tx-page--compact .tx-phone-local,
.mbank-on .tx-page--compact .tx-phone-local {
    min-height: 30px !important;
    font-size: .78rem !important;
}
.tx-page--compact .tx-phone-meta {
    font-size: .54rem;
    padding: 0 5px 0 2px;
}
.tx-page--compact .tx-phone-hint {
    margin: 3px 1px 0;
    font-size: .54rem;
}
.tx-page--compact .tx-amount {
    padding: 0;
}
.tx-page--compact .tx-amount-label {
    font-size: .6rem;
    margin-bottom: 0;
}
.tx-page--compact .tx-amount-field { gap: 4px; }
.tx-page--compact .tx-amount-cur {
    font-size: .78rem;
}
.tx-page--compact .tx-amount-input,
.mbank-on .tx-page--compact .tx-amount-input {
    width: 100px !important;
    font-size: 1.05rem !important;
    border-bottom-width: 1.5px !important;
    padding-bottom: 0 !important;
}
.tx-page--compact .tx-amount-hint {
    margin-top: 1px;
    font-size: .54rem;
}
.tx-page--compact .tx-pick { margin-top: 6px; }
.tx-page--compact .tx-pick label {
    margin-bottom: 2px;
    font-size: .6rem;
}
.tx-page--compact .tx-rows {
    border-radius: 8px;
    padding: 0 8px;
}
.tx-page--compact .tx-row {
    padding: 5px 0;
    font-size: .64rem;
    gap: 6px;
}
.tx-page--compact .tx-actions {
    gap: 6px;
    margin-top: 0;
}
.tx-page--compact .tx-btn {
    min-height: 34px;
    border-radius: 8px;
    font-size: .74rem;
}

.tx-sheet {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 6px;
    padding: 26px 16px 18px;
    background: #fff;
    border: 1px solid #ebe9f2;
    border-radius: 22px;
    box-shadow: 0 10px 30px rgba(27, 22, 64, .07);
    text-align: center;
}
.tx-sheet::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 50%;
    width: 38px;
    height: 4px;
    margin-left: -19px;
    border-radius: 4px;
    background: #dcd9e6;
}
.tx-sheet-kicker { font-size: .66rem; color: #8a8796; }
.tx-sheet-title { margin: 2px 0 0; font-size: .98rem; font-weight: 600; color: #1b1640; }
.tx-sheet-amount {
    margin: 2px 0 14px;
    font-size: 1.55rem;
    font-weight: 700;
    color: #5b4dff;
    letter-spacing: -.01em;
}
.tx-sheet-copy { margin: -6px 8px 14px; font-size: .72rem; line-height: 1.55; color: #8a8796; }
.tx-done-ico {
    width: 54px;
    height: 54px;
    margin: 6px auto 8px;
    border-radius: 50%;
    background: #ecfdf3;
    color: #12b76a;
    display: grid;
    place-items: center;
}
.tx-done-ico svg { width: 26px; height: 26px; }
.tx-fail-ico {
    width: 54px;
    height: 54px;
    margin: 6px auto 8px;
    border-radius: 50%;
    background: #fef3f2;
    color: #d92d20;
    display: grid;
    place-items: center;
}
.tx-fail-ico svg { width: 26px; height: 26px; }
.tx-rows.tx-rows-flat {
    border: 0;
    border-top: 1px solid #f1eff6;
    border-bottom: 1px solid #f1eff6;
    border-radius: 0;
    padding: 0;
    margin: 0 0 16px;
    text-align: left;
}
.tx-rows-flat .tx-row strong { max-width: 62%; overflow-wrap: anywhere; font-weight: 500; }
.tx-status-pending { color: #f5a300 !important; }
.tx-status-success { color: #12b76a !important; }
.tx-status-failed { color: #d92d20 !important; }

.qr-page {
    text-align: center;
    padding: 18px 8px 8px;
}
.qr-frame {
    width: 220px;
    height: 220px;
    margin: 8px auto 22px;
    position: relative;
    border-radius: 18px;
    background: #f4f2fb;
}
.qr-corner {
    position: absolute;
    width: 28px;
    height: 28px;
    border: 3px solid #5b5cf6;
}
.qr-tl { top: 14px; left: 14px; border-right: 0; border-bottom: 0; border-radius: 8px 0 0 0; }
.qr-tr { top: 14px; right: 14px; border-left: 0; border-bottom: 0; border-radius: 0 8px 0 0; }
.qr-bl { bottom: 14px; left: 14px; border-right: 0; border-top: 0; border-radius: 0 0 0 8px; }
.qr-br { bottom: 14px; right: 14px; border-left: 0; border-top: 0; border-radius: 0 0 8px 0; }
.qr-pulse {
    position: absolute;
    left: 28px;
    right: 28px;
    top: 50%;
    height: 2px;
    background: #5b5cf6;
    opacity: .55;
}
.qr-page h2 {
    margin: 0 0 6px;
    font-size: 1.15rem;
    font-weight: 800;
    color: #1b1640;
}
.qr-page p {
    margin: 0 0 10px;
    color: #8a8796;
    font-size: .82rem;
}
.qr-meta {
    display: inline-block;
    background: #efeafc;
    color: #5b4dff;
    border-radius: 999px;
    padding: 5px 12px;
    font-size: .72rem;
    font-weight: 600;
    margin-bottom: 18px;
}
.qr-actions { display: grid; gap: 8px; }
.qr-btn {
    display: block;
    background: #5b5cf6;
    color: #fff;
    border-radius: 12px;
    padding: 12px 16px;
    font-weight: 700;
    text-decoration: none;
}
.qr-btn:hover { color: #fff; }
.qr-link {
    display: block;
    color: #8a8796;
    font-weight: 600;
    font-size: .85rem;
    text-decoration: none;
}

/* Confirm / detail sheet as modal over the phone frame */
.tx-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity .22s ease, visibility .22s ease;
}
.tx-modal.is-open {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
}
.tx-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7, 9, 24, .52);
    backdrop-filter: blur(2px);
}
.tx-modal-panel {
    position: relative;
    z-index: 1;
    width: min(100%, 390px);
    max-height: min(92vh, 760px);
    margin: 0 auto;
    padding: 8px 14px 18px;
    overflow: auto;
    background: #fff;
    border-radius: 22px 22px 0 0;
    box-shadow: 0 -12px 40px rgba(7, 9, 24, .28);
    transform: translateY(18px);
    transition: transform .25s cubic-bezier(.2, .8, .2, 1);
    -webkit-overflow-scrolling: touch;
}
.tx-modal.is-open .tx-modal-panel { transform: translateY(0); }
.tx-modal-handle {
    width: 40px;
    height: 4px;
    margin: 4px auto 10px;
    border-radius: 4px;
    background: #dcd9e6;
}
.tx-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}
.tx-modal-title {
    margin: 0;
    font-size: .95rem;
    font-weight: 700;
    color: #1b1640;
}
.tx-modal-close {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #f1eff8;
    color: #1b1640;
    text-decoration: none;
    flex-shrink: 0;
}
.tx-modal-close:hover { background: #e6e3f2; color: #1b1640; }
.tx-modal-close svg { width: 14px; height: 14px; }
.tx-modal .tx-form { gap: 6px; }
.tx-modal .tx-actions { margin-top: 4px; position: sticky; bottom: 0; background: linear-gradient(180deg, transparent, #fff 28%); padding-top: 8px; }

@media (min-width: 481px) {
    .tx-modal { align-items: center; padding: 24px 12px; }
    .tx-modal-panel {
        border-radius: 22px;
        max-height: min(88vh, 720px);
        box-shadow: 0 24px 60px rgba(7, 9, 24, .35);
    }
}

@media (max-width: 480px) {
    .mbank-stage { padding: 0; background: #fff; }
    .mbank-phone {
        max-width: none;
        min-height: 100vh;
        border-radius: 0;
        box-shadow: none;
    }
    .mbank-phone::before { display: none; }
    .mbank-top { padding-top: 14px; }
    .tx-modal { position: absolute; }
    .mbank-phone:has(.tx-modal.is-open) .mbank-dock { visibility: hidden; }
}

/* �� Account statement (loan-repay theme) �� */
.stmt-page { gap: 10px; }
.stmt-dates {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
}
.stmt-date-field { position: relative; }
.stmt-date-field .tx-input { padding-right: 28px; }
.stmt-date-ico {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    color: #8b87a0;
    pointer-events: none;
}
.stmt-date-ico svg { width: 16px; height: 16px; }
.stmt-sheet {
    margin-top: 4px;
    background: #fff;
    border: 1px solid #ebe8f4;
    border-radius: 14px;
    padding: 12px 12px 14px;
    box-shadow: 0 8px 24px rgba(28, 18, 64, .04);
}
.stmt-sheet-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}
.stmt-sheet-title {
    margin: 2px 0 0;
    font-size: 1.05rem;
    font-weight: 800;
    color: #1b1640;
    letter-spacing: -.02em;
}
.stmt-print-btn {
    flex: 0 0 auto;
    min-width: 72px;
    padding: 8px 12px;
    font-size: .72rem;
}
.stmt-meta { margin: 0 0 10px; }
.stmt-totals {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 0 0 10px;
}
.stmt-totals > div {
    background: #f8f7fc;
    border: 1px solid #efeaf8;
    border-radius: 10px;
    padding: 8px 10px;
}
.stmt-totals span {
    display: block;
    font-size: .58rem;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #8b87a0;
    margin-bottom: 2px;
}
.stmt-totals strong { font-size: .82rem; font-weight: 800; }
.stmt-credit { color: #0f9d6e; }
.stmt-debit { color: #c0395f; }
.stmt-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.stmt-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 10px;
    border: 1px solid #efeaf8;
    border-radius: 10px;
    background: #fff;
}
.stmt-item-main { min-width: 0; flex: 1; }
.stmt-item-main strong {
    display: block;
    font-size: .74rem;
    font-weight: 700;
    color: #1b1640;
    line-height: 1.25;
}
.stmt-item-main span {
    display: block;
    margin-top: 2px;
    font-size: .58rem;
    color: #8b87a0;
}
.stmt-item-amt { text-align: right; flex: 0 0 auto; }
.stmt-item-amt strong {
    display: block;
    font-size: .74rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}
.stmt-item-amt span {
    display: block;
    margin-top: 2px;
    font-size: .54rem;
    color: #8b87a0;
    font-variant-numeric: tabular-nums;
}
.stmt-item-amt.is-credit strong { color: #0f9d6e; }
.stmt-item-amt.is-debit strong { color: #c0395f; }
.stmt-empty {
    text-align: center;
    padding: 22px 12px 16px;
    color: #6f6a82;
}
.stmt-empty-ico {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #f4f1fb;
    color: #6b19a2;
    margin-bottom: 8px;
}
.stmt-empty-ico svg { width: 22px; height: 22px; }
.stmt-empty strong {
    display: block;
    color: #1b1640;
    font-size: .88rem;
    margin-bottom: 4px;
}
.stmt-empty p {
    margin: 0;
    font-size: .72rem;
    line-height: 1.35;
}
.stmt-table-wrap { display: none; }

@media print {
    body * { visibility: hidden !important; }
    .stmt-sheet, .stmt-sheet * { visibility: visible !important; }
    .stmt-sheet {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        border: none;
        box-shadow: none;
        padding: 0;
    }
    .stmt-print-btn, .mbank-dock, .mbank-top, .tx-form { display: none !important; }
    .stmt-list { display: none !important; }
    .stmt-table-wrap { display: block !important; }
    .stmt-table { width: 100%; border-collapse: collapse; font-size: 11px; }
    .stmt-table th, .stmt-table td {
        border: 1px solid #ccc;
        padding: 6px;
        text-align: left;
    }
    .stmt-table th { background: #f4f4f4; }
}

.stmt-sheet-actions {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}
.stmt-pdf-form { margin: 0; }
.stmt-pdf-ready {
    margin: 0 0 10px;
    padding: 10px 12px;
    border: 1px solid #d9d2f3;
    border-radius: 12px;
    background: #f6f3ff;
}
.stmt-pdf-ready p {
    margin: 0 0 8px;
    font-size: .72rem;
    line-height: 1.4;
    color: #1b1640;
}
.stmt-pdf-ready-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.stmt-pdf-ready-actions .tx-btn { flex: 1 1 8rem; text-align: center; }

.stmt-sheet-sub {
    margin: 2px 0 0;
    font-size: .62rem;
    color: #8b87a0;
}
.stmt-insight-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    margin: 0 0 8px;
}
.stmt-insight {
    background: #f8f7fc;
    border: 1px solid #efeaf8;
    border-radius: 10px;
    padding: 8px 9px;
}
.stmt-insight span {
    display: block;
    font-size: .52rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #8b87a0;
    margin-bottom: 2px;
}
.stmt-insight strong {
    display: block;
    font-size: .78rem;
    font-weight: 800;
    color: #1b1640;
    line-height: 1.2;
}
.stmt-insight em {
    display: block;
    margin-top: 1px;
    font-size: .52rem;
    font-style: normal;
    color: #9a96ab;
}
.stmt-level.is-excellent { color: #0f9d6e; }
.stmt-level.is-strong { color: #1f8a6e; }
.stmt-level.is-steady { color: #5b4dff; }
.stmt-level.is-building { color: #c47b00; }
.stmt-level.is-starter { color: #c0395f; }
.stmt-advice {
    margin: 0 0 8px;
    padding: 9px 10px;
    border-radius: 10px;
    border: 1px solid #e8e0f7;
    background: linear-gradient(135deg, #faf7ff 0%, #f5f8ff 100%);
}
.stmt-advice-kicker {
    display: block;
    font-size: .52rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #6b19a2;
    margin-bottom: 3px;
}
.stmt-advice p {
    margin: 0;
    font-size: .68rem;
    line-height: 1.35;
    color: #2a2548;
    font-weight: 600;
}
.stmt-advice-bar {
    margin-top: 7px;
    height: 5px;
    border-radius: 99px;
    background: #ebe6f6;
    overflow: hidden;
}
.stmt-advice-bar i {
    display: block;
    height: 100%;
    border-radius: 99px;
    background: linear-gradient(90deg, #6b19a2, #f0b429);
}
.stmt-advice small {
    display: block;
    margin-top: 4px;
    font-size: .52rem;
    color: #8b87a0;
}
.stmt-breaker {
    margin: 6px 0 3px;
    padding: 3px 2px;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #6b19a2;
    border-bottom: 1px dashed #e2d9f0;
}
.stmt-list { gap: 4px; max-height: none; }
.stmt-item {
    padding: 6px 8px;
    border-radius: 8px;
    gap: 8px;
}
.stmt-item-main strong {
    font-size: .66rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}
.stmt-item-main span { font-size: .52rem; }
.stmt-item-amt strong { font-size: .66rem; }
.stmt-item-amt span { font-size: .5rem; }
.stmt-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 8px;
}
.stmt-pager-btn {
    min-width: 68px;
    padding: 7px 10px;
    font-size: .68rem;
}
.stmt-pager-meta {
    font-size: .62rem;
    font-weight: 700;
    color: #6f6a82;
    text-align: center;
}

/* �� Balance page (stmt theme) �� */
.bal-hero {
    margin: 10px 0 12px;
    padding: 18px 16px 16px;
    border-radius: 18px;
    background:
        radial-gradient(120% 140% at 100% 0%, rgba(107, 25, 162, .22), transparent 55%),
        linear-gradient(145deg, #2a0a55 0%, #3b0878 48%, #5b19a8 100%);
    color: #fff;
    box-shadow: 0 14px 28px rgba(59, 8, 120, .28);
    position: relative;
    overflow: hidden;
}
.bal-hero::after {
    content: "";
    position: absolute;
    right: -18px;
    bottom: -28px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    pointer-events: none;
}
.bal-hero-kicker {
    display: block;
    font-size: .58rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    font-weight: 700;
    color: rgba(255, 255, 255, .72);
    margin-bottom: 6px;
}
.bal-hero-amount {
    display: block;
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
}
.bal-hero-amount em {
    font-style: normal;
    font-size: .72rem;
    font-weight: 700;
    opacity: .85;
    margin-right: 2px;
}
.bal-hero-sub {
    display: block;
    margin-top: 8px;
    font-size: .58rem;
    color: rgba(255, 255, 255, .7);
    line-height: 1.35;
}
.bal-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 12px;
}
.bal-actions .tx-btn { width: 100%; text-align: center; }
