.bn-wallet { max-width: 1100px; color: #263747; }
.bn-wallet * { box-sizing: border-box; }
.bn-wallet-cards { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 14px; margin: 16px 0; }
.bn-wallet-card { background: #fff; border: 1px solid #dce5e8; border-radius: 12px; padding: 18px; box-shadow: 0 2px 8px #2439470b; }
.bn-wallet-card h3 { font-size: 16px; margin: 0 0 12px; }
.bn-wallet-card strong { color: #155f71; font-size: 24px; }
.bn-wallet-card p { margin: 8px 0 0; }
.bn-wallet-button { min-height: 44px; padding: 10px 18px; margin: 5px 4px 5px 0; background: #176979; color: #fff; border: 0; border-radius: 8px; cursor: pointer; font-size: 15px; font-weight: 600; }
.bn-wallet-button:hover,.bn-wallet-button:focus { background: #105260; color: #fff; }
.bn-wallet-secondary { background: #61777c; }
.bn-wallet-scroll { overflow-x: auto; margin: 14px 0 24px; }
.bn-wallet table { width: 100%; border-collapse: collapse; background: #fff; }
.bn-wallet th,.bn-wallet td { padding: 12px; text-align: start; vertical-align: top; border-bottom: 1px solid #dce5e8; }
.bn-wallet th { background: #eef5f5; }
.bn-wallet-overdue { background: #ffe4e4; color: #9a2020; }
.bn-wallet-message,.bn-wallet-checkout-note { background: #e9f4f4; border-inline-start: 4px solid #176979; padding: 12px 15px; margin: 14px 0; }
.bn-wallet-dialog { width: min(94vw,500px); max-height: 90vh; overflow-y: auto; border: 0; border-radius: 14px; padding: 24px; box-shadow: 0 20px 70px #0b1d2d4d; color: #263747; }
.bn-wallet-dialog::backdrop { background: #0b1d2d99; }
.bn-wallet-dialog h2 { margin: 0 0 18px; }
.bn-wallet-dialog label,.bn-wallet label { display: block; margin: 12px 0; }
.bn-wallet-dialog input:not([type=hidden]),.bn-wallet-dialog select,.bn-wallet-dialog textarea,.bn-wallet input[type=search],.bn-wallet input[type=number],.bn-wallet input[type=text],.bn-wallet textarea { display: block; width: 100%; max-width: 540px; min-height: 42px; padding: 9px; margin-top: 5px; border: 1px solid #adbfc4; border-radius: 6px; }
.bn-wallet-dialog textarea,.bn-wallet textarea { min-height: 90px; }
.bn-wallet-close { position: absolute; inset-inline-end: 12px; top: 8px; background: transparent; border: 0; font-size: 28px; cursor: pointer; min-width: 44px; min-height: 44px; }
body.rtl .bn-wallet, .bn-wallet[dir=rtl] { direction: rtl; }
@media (max-width:600px) { .bn-wallet-card { padding: 14px; } .bn-wallet th,.bn-wallet td { min-width: 110px; padding: 9px; } .bn-wallet-dialog { padding: 18px; } }
