.customer-balance-panel { margin-top: 24px; border-top: 1px solid #d7e4e3; padding-top: 20px; min-width: 0; }
@media (max-width: 760px) {
  .customer-balance-panel { padding:20px 16px; box-sizing:border-box; }
}
@media (min-width: 761px) {
  .formal-v3 #customerDetailDialog .detail-profile { min-height:0; max-height:calc(100dvh - 110px); overflow-y:auto; overscroll-behavior:contain; }
}
.balance-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:12px; }
.balance-heading h3 { margin:0; font-size:18px; }
.balance-heading strong { font-size:28px; color:#087f77; font-variant-numeric:tabular-nums; }
.balance-help { font-size:13px; color:#657b80; line-height:1.6; margin:8px 0 14px; }
.balance-recharge summary { cursor:pointer; color:#087f77; font-weight:700; padding:10px 0; }
.balance-recharge .balance-fields { display:grid; gap:12px; padding:12px 0; }
.balance-recharge label { display:grid; gap:6px; font-size:14px; }
.balance-recharge input,.balance-recharge select,.balance-recharge textarea { width:100%; min-width:0; box-sizing:border-box; padding:10px; border:1px solid #bfd3d4; border-radius:8px; font:inherit; background:#fff; }
.balance-recharge textarea { resize:vertical; min-height:64px; }
.balance-status { font-size:13px; line-height:1.5; color:#657b80; }
.balance-ledger { margin-top:16px; display:grid; gap:0; }
.balance-ledger article { border-top:1px solid #e0e9e8; padding:12px 0; font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
.balance-ledger .balance-line { display:flex; justify-content:space-between; gap:8px; }
.balance-ledger time,.balance-ledger small { color:#657b80; }
.balance-ledger b { font-variant-numeric:tabular-nums; }
.balance-error { color:#ae342d; }
.balance-gift-list { display:grid; gap:12px; }
.balance-gift-list article { border:1px solid #d7e4e3; border-radius:10px; padding:14px; }
.balance-gift-title { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.balance-gift-list dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:12px 0 0; }
.balance-gift-list dt { color:#657b80; font-size:13px; }
.balance-gift-list dd { margin:4px 0 0; font-weight:700; overflow-wrap:anywhere; }
@media (max-width:760px) { .balance-gift-list dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
