/* Card wallet reloads (rz-card-reload.js): listing page quick reload and Manage Funds. */
.rzcr { display: grid; gap: 12px; text-align: left; }
.rzcr-loading { padding: 18px 0; color: #776d86; font-size: 14px; }
.rzcr-amount label, .rzcr-field-label { display: block; font-weight: 600; font-size: 13px; margin: 0 0 6px; }
.rzcr-money { display: flex; align-items: stretch; border: 1px solid #dcd5e7; border-radius: 10px; overflow: hidden; background: #fff; }
.rzcr-money span { display: flex; align-items: center; padding: 0 12px; background: #f4f1f9; color: #5f5573; font-weight: 700; font-size: 14px; border-right: 1px solid #dcd5e7; }
.rzcr-money input { flex: 1; min-width: 0; border: 0 !important; box-shadow: none !important; padding: 11px 12px; font-size: 16px; outline: none; background: transparent; margin: 0 !important; height: auto !important; }
.rzcr-money:focus-within { border-color: #7b42c9; box-shadow: 0 0 0 3px rgba(123, 66, 201, .16); }
.rzcr-hint { margin-top: 5px; font-size: 12.5px; color: #776d86; }
.rzcr-bonus { color: #146c43; font-weight: 700; }
.rzcr-bonus-note { color: #5f5573; }
.rzcr-cards { display: grid; gap: 8px; }
.rzcr-cards-title { font-weight: 600; font-size: 13px; }
.rzcr-card { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border: 1px solid #dcd5e7; border-radius: 10px; cursor: pointer; font-size: 14px; margin: 0; background: #fff; }
.rzcr-card:has(input:checked) { border-color: #7b42c9; background: #f7f2fe; box-shadow: 0 0 0 3px rgba(123, 66, 201, .12); }
.rzcr-card input { accent-color: #7b42c9; margin: 0; }
.rzcr-card-name { flex: 1; min-width: 0; }
.rzcr-card-exp { font-size: 12.5px; color: #776d86; white-space: nowrap; }
.rzcr-card.is-expired { opacity: .6; cursor: default; }
.rzcr-remove { border: 0; background: transparent; color: #b42318; font-size: 12.5px; font-weight: 600; padding: 2px 4px; cursor: pointer; }
.rzcr-remove:hover { text-decoration: underline; }
.rzcr-remove.is-armed { background: #b42318; color: #fff; border-radius: 6px; padding: 3px 8px; text-decoration: none; }
.rzcr-new[hidden], .rzcr-cards[hidden] { display: none; }
/* Stripe's one-line card field; Stripe adds the StripeElement--* classes to this box. */
.rzcr-element { padding: 12px; border: 1px solid #dcd5e7; border-radius: 10px; background: #fff; }
.rzcr-element.StripeElement--focus { border-color: #7b42c9; box-shadow: 0 0 0 3px rgba(123, 66, 201, .16); }
.rzcr-element.StripeElement--invalid { border-color: #d92d20; }
.rzcr-save { display: flex; align-items: center; gap: 8px; margin: 10px 0 0; font-size: 14px; font-weight: 400; cursor: pointer; }
.rzcr-save input { accent-color: #7b42c9; width: 16px; height: 16px; margin: 0; }
.rzcr-error { display: none; padding: 10px 12px; border-radius: 10px; background: #fdecec; color: #7f1d1d; font-size: 14px; }
.rzcr-error.is-shown { display: block; }
.rzcr-error.is-info { background: #fff3bf; color: #5c4500; }
.rzcr-pay.is-busy { opacity: .8; cursor: progress; }
.rzcr-fine { margin: 0; font-size: 12px; line-height: 1.45; color: #776d86; text-align: center; }
.rzcr-fine a { color: #7b42c9; }
/* Listing page: shown while the Spots purchase continues after a reload. */
.rz-reload-status { padding: 12px 14px; border-radius: 10px; background: #f7f2fe; color: #4b2a7a; font-size: 14px; font-weight: 600; text-align: center; }
a.rzcr-pay { text-decoration: none !important; display: block; text-align: center; }
/* Listing reload summary: only the amount short is red, not the balance beside it. */
#reloadBalanceRow span { color: #52525b; }
