/* Shared donation form: clear groups, large controls and a live amount summary. */
.return-panel { border-top:1px solid #eaded3; margin-top:28px; padding-top:22px; }
.return-panel .text-link { background:transparent; border:0; border-bottom:1px solid #ddd; padding:0 0 5px; }
.return-panel [hidden] { display:none; }
.return-panel [role=status] { margin:16px 0 0; }
@media print { .return-panel,.receipt-actions { display:none!important; } }
.refined-donation { padding:32px; border:1px solid #e6dbd0; border-radius:8px; box-shadow:0 16px 45px #39201408; max-width:none; }
.refined-donation .donation-card-heading { align-items:flex-start; gap:15px; margin-bottom:24px; padding-bottom:22px; }
.donation-eyebrow { color:#ba1820; font:700 9px/1.5 'Rubik',sans-serif; letter-spacing:1.5px; }
.refined-donation .donation-card-heading h3 { font:700 28px/1.2 'Rubik',sans-serif; color:#2a211e; letter-spacing:-.6px; margin:10px 0 7px; }
.refined-donation .donation-card-heading p { font-size:13px; margin:0; color:#81736a; }
.donation-heart { width:42px; height:42px; border:1px solid #f2dbd4; background:#fff5f1; color:#c81822; border-radius:50%; display:grid; place-items:center; font-size:20px; flex-shrink:0; }
.donation-fieldset { padding:0; border:0; margin:0 0 25px; min-width:0; }
.donation-fieldset legend { display:flex; align-items:center; gap:10px; float:none; width:auto; font:600 14px/1.5 'Rubik',sans-serif; color:#2a211e; margin-bottom:18px; }
.donation-fieldset legend>span { font-size:10px; font-weight:500; background:#f5eee7; border-radius:50%; height:25px; width:25px; display:grid; place-items:center; color:#937562; }
.donation-frequency { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:20px; padding:12px; background:#fff7f2; border:1px solid #f0ded1; border-radius:4px; font-size:11px; }
.donation-frequency>span { font-weight:700; color:#a7171d; }.donation-frequency>span i { margin-right:5px; }
.donation-frequency a { color:#756256; text-decoration:underline; text-underline-offset:3px; }
.refined-donation label { font-size:12px; font-weight:700; color:#51443b; margin-bottom:7px; }
.refined-donation .form-control,.refined-donation .form-select { min-height:47px; border-color:#e2d9d1; border-radius:4px; background:#fff; font-size:14px; padding:12px; }
.refined-donation .form-control::placeholder { color:#9a8d82; }
.refined-donation .amount-options { gap:9px; margin:18px 0; }
.refined-donation .amount-options button { border-color:#e3d6cc; color:#4a3b31; border-radius:4px; padding:12px 5px; font-size:15px; background:#fff; }
.refined-donation .amount-options button[aria-pressed=true] { border-color:#c81822; color:#b31820; background:#fff2ef; box-shadow:inset 0 0 0 1px #c81822; }
.refined-donation .amount-input { border-color:#e2d9d1; border-radius:4px; }
.refined-donation .amount-input input { min-height:46px; font-size:18px; font-weight:700; color:#2a211e; }
.refined-donation .amount-input .currency-label { font-size:11px; letter-spacing:1px; }
.refined-donation .form-hint { font-size:10px; line-height:1.6; margin-bottom:0; margin-top:7px; color:#918277; }
.refined-donation .captcha-field { padding:14px; border:1px solid #e9dfd5; background:#fdfaf7; border-radius:5px; }
.refined-donation .captcha-question { font-size:15px; background:#fff; padding:3px 10px; border-color:#d4b8a2; }
.refined-donation .refresh-captcha { border-color:#e2d9d1; color:#a41b21; }
.refined-donation .consent { font-size:11px; line-height:1.7; font-weight:400; color:#7c6a5d; }
.gift-total { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid #eaded3; padding:18px 0; font-size:12px; color:#75665c; }
.gift-total strong { font:700 25px/1.3 'Rubik',sans-serif; color:#2a211e; overflow-wrap:anywhere; text-align:right; }
.refined-donation .donation-submit { background:#c81822; color:#fff; border-radius:4px; min-height:52px; font:600 13px/1.6 'Rubik',sans-serif; padding:15px 12px; gap:12px; }
.refined-donation .donation-submit:hover { background:#a50f19; }
.refined-donation .payment-methods { gap:10px; font-size:10px; margin-top:16px; color:#8b7b70; }
.refined-donation .payment-methods>span:not(.payment-provider) { border:1px solid #e9dfd5; border-radius:3px; padding:2px 6px; color:#67574c; }
.refined-donation .form-status { font-size:13px; }
@media(max-width:767px) { .refined-donation .form-control,.refined-donation .form-select { font-size:16px; } }
@media(max-width:414px) { .refined-donation { padding:20px 16px; } .refined-donation .donation-card-heading h3 { font-size:25px; } .donation-eyebrow { font-size:8px; letter-spacing:1px; } .donation-frequency { flex-wrap:wrap; } .refined-donation .amount-options { gap:6px; } .refined-donation .amount-options button { font-size:14px; } .gift-total strong { font-size:23px; } .gift-total>span { max-width:150px; } }
