body { background: #f4f6fa; }
.card { border: 0; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.stat-card .val { font-size: 1.5rem; font-weight: 700; }
.stat-card .lbl { color: #6c757d; font-size: .85rem; }
.table td, .table th { vertical-align: middle; }
.table-sm td { font-size: .92rem; }
.cvv-val { font-family: monospace; letter-spacing: 2px; }
.mono { font-family: monospace; }
.receipt-thumb { width: 100%; height: 200px; object-fit: cover; border-radius: .375rem .375rem 0 0; cursor: zoom-in; background: #e9ecef; }
.progress { height: 6px; }

/* 手机拍照上传页 */
.upload-wrap { max-width: 520px; margin: 0 auto; }
.photo-box { border: 2px dashed #adb5bd; border-radius: 12px; min-height: 220px; display: flex; align-items: center; justify-content: center;
  flex-direction: column; color: #6c757d; cursor: pointer; background: #fff; overflow: hidden; }
.photo-box img { width: 100%; max-height: 420px; object-fit: contain; }
.bank-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.bank-chips .btn { border-radius: 2rem; }
.amount-input { font-size: 1.8rem; font-weight: 700; text-align: right; }
.login-box { max-width: 380px; margin: 10vh auto; }
