.donation-modal-lock{overflow:hidden}
.donation-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;background:rgba(5,22,35,.7);backdrop-filter:blur(8px);font-family:Arial,sans-serif;color:#153047;animation:donationFade .2s ease-out}
.donation-modal[hidden]{display:none}
.donation-dialog{position:relative;width:min(100%,510px);max-height:calc(100vh - 36px);overflow:auto;background:linear-gradient(180deg,#fff 0%,#fbfdfe 100%);border:1px solid rgba(255,255,255,.7);border-radius:26px;box-shadow:0 34px 90px rgba(0,0,0,.32);padding:28px;animation:donationRise .3s cubic-bezier(.2,.8,.2,1)}
.donation-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#eff7fb;color:#17496d;font-size:25px;line-height:1;cursor:pointer;transition:.18s ease}.donation-close:hover{background:#dfeef5;transform:rotate(4deg)}
.donation-brand{display:flex;align-items:center;gap:11px;margin-right:44px;color:#074582;font-weight:800;font-size:17px}
.donation-brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 4px 12px rgba(7,69,130,.14)}
.donation-brand small{display:block;margin-top:2px;color:#7a909d;font-size:11px;font-weight:600}
.donation-progress{display:flex;gap:8px;margin:22px 0 25px}
.donation-progress span{flex:1;color:#8da0aa;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.donation-progress i{display:block;height:5px;margin-bottom:6px;border-radius:99px;background:#dce9ef;transition:.25s ease}.donation-progress b{font-weight:700}.donation-progress span.is-active i{background:#12b94d}.donation-progress span.is-current{color:#159447}
.donation-content{animation:donationContent .22s ease-out}
.donation-step h2{margin:0;font-size:25px;line-height:1.2;color:#12354f}
.donation-step>p{margin:8px 0 20px;color:#5e7280;line-height:1.5}
.donation-amount-pill{display:inline-flex;gap:5px;margin-bottom:12px;padding:7px 11px;border-radius:999px;background:#fff4e9;color:#9a5319;font-size:12px}.donation-amount-pill strong{color:#f26000}
.donation-choice-list{display:grid;gap:12px}
.donation-choice{display:flex;align-items:center;gap:13px;width:100%;padding:16px;border:2px solid #dce7ec;border-radius:17px;background:#fff;text-align:left;color:#17384e;cursor:pointer;transition:.18s ease}
.donation-choice:hover{border-color:#8bdba8;transform:translateY(-1px);box-shadow:0 8px 22px rgba(18,72,95,.08)}.donation-choice.is-selected{border-color:#12b94d;background:#f1fff6;box-shadow:0 8px 22px rgba(18,185,77,.12)}
.donation-choice-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto;background:#edf6fa;color:#0a5684;font-size:18px}.donation-choice.is-selected .donation-choice-icon{background:#dcf8e6;color:#0d9f43}
.donation-choice-check{width:24px;height:24px;margin-left:auto;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:#12b94d;color:#fff;font-size:13px;font-weight:900;opacity:0;transform:scale(.6);transition:.18s ease}.donation-choice.is-selected .donation-choice-check{opacity:1;transform:scale(1)}
.donation-choice strong{display:block;font-size:16px}.donation-choice small{display:block;margin-top:3px;color:#70838e;font-size:13px;line-height:1.35}
.donation-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.donation-field{display:grid;gap:6px}.donation-field--full{grid-column:1/-1}.donation-field label{font-size:13px;font-weight:700;color:#345367}.donation-field input{width:100%;box-sizing:border-box;border:1.5px solid #cfdee5;border-radius:12px;padding:13px 14px;font-size:16px;color:#17384e;outline:none}.donation-field input:focus{border-color:#12b94d;box-shadow:0 0 0 3px rgba(18,185,77,.12)}
.donation-field[hidden]{display:none}
.donation-method{min-height:78px}.donation-method-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#e9f7ff;color:#075b95;font-size:20px;font-weight:900;flex:0 0 auto}.donation-method.is-selected .donation-method-icon{background:#daf5e4;color:#0d9640}
.donation-phone{display:flex;align-items:center;border:1.5px solid #cfdee5;border-radius:12px;overflow:hidden;background:#fff}.donation-phone:focus-within{border-color:#12b94d;box-shadow:0 0 0 3px rgba(18,185,77,.12)}.donation-phone span{padding:13px;background:#f2f7f9;color:#526b79;font-weight:700}.donation-phone input{border:0!important;box-shadow:none!important}.donation-field[data-phone]{margin-top:14px}
.donation-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0 0;padding:15px 16px;border-radius:14px;background:#f4f9fb;color:#55707f}.donation-total strong{color:#ff6600;font-size:21px}
.donation-actions{display:flex;gap:10px;margin-top:20px}.donation-button{border:0;border-radius:13px;padding:14px 18px;font-size:15px;font-weight:800;cursor:pointer;transition:.18s ease}.donation-button--primary{flex:1;background:linear-gradient(135deg,#13be50,#09a640);color:#fff;box-shadow:0 9px 20px rgba(18,185,77,.25)}.donation-button--primary:hover{transform:translateY(-1px);box-shadow:0 12px 25px rgba(18,185,77,.3)}.donation-button--secondary{background:#edf4f7;color:#345367}.donation-button--secondary:hover{background:#dfecef}.donation-button:disabled{opacity:.58;cursor:wait;transform:none}.donation-button:focus-visible,.donation-choice:focus-visible,.donation-close:focus-visible{outline:3px solid rgba(7,91,149,.28);outline-offset:2px}
.donation-error{min-height:18px;margin:12px 0 0;color:#c62828;font-size:13px;text-align:center}
.donation-result{text-align:center;padding-top:8px}.donation-result-icon{width:66px;height:66px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#edfff4;color:#12a947;font-size:28px;box-shadow:0 0 0 8px #f6fffa}.donation-result h2{margin:0;color:#12354f}.donation-result p{color:#607785;line-height:1.5}.donation-timer{width:max-content;margin:18px auto;padding:11px 18px;border-radius:12px;background:#fff5ed;color:#ff6600;font-size:28px;font-weight:900;font-variant-numeric:tabular-nums}.donation-details{margin-top:18px;border:1px solid #dce7ec;border-radius:14px;overflow:hidden;text-align:left}.donation-detail{display:flex;justify-content:space-between;gap:20px;padding:13px 15px;border-bottom:1px solid #e5eef2}.donation-detail:last-child{border-bottom:0}.donation-detail span{color:#69808e}.donation-detail strong{text-align:right;color:#17384e}.donation-reference{letter-spacing:.09em;font-size:17px}.donation-secure{margin:17px 0 0;text-align:center;color:#91a2ac;font-size:12px}
.donation-thank-you{text-align:center;padding:8px 4px 2px}.donation-celebration{position:relative;width:88px;height:88px;margin:2px auto 18px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e9fff1,#d5f8e2);box-shadow:0 0 0 10px #f3fff7}.donation-celebration span{color:#10ad48;font-size:38px;animation:donationHeart .8s cubic-bezier(.2,.8,.2,1)}.donation-celebration i{position:absolute;width:7px;height:7px;border-radius:50%;background:#ff8a34}.donation-celebration i:nth-of-type(1){top:3px;left:4px}.donation-celebration i:nth-of-type(2){top:8px;right:0;background:#0eb74b}.donation-celebration i:nth-of-type(3){bottom:7px;left:-2px;background:#0a75ad}.donation-celebration i:nth-of-type(4){right:4px;bottom:4px;background:#ffc13b}.donation-success-badge{display:inline-block;padding:7px 12px;border-radius:999px;background:#edfff4;color:#0d9440;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.donation-thank-you h2{margin:14px 0 8px;color:#12354f;font-size:27px}.donation-thank-you>p{margin:0 auto;color:#607785;line-height:1.55;max-width:390px}.donation-thank-total{display:flex;align-items:center;justify-content:space-between;margin:20px 0 14px;padding:16px 18px;border:1px solid #d9eee1;border-radius:15px;background:#f5fff8;color:#557466}.donation-thank-total strong{color:#0ca544;font-size:22px}.donation-thank-you .donation-thank-note{font-size:13px;color:#84949c}.donation-finish{width:100%;margin-top:20px}.donation-modal.is-complete .donation-secure{display:none}
@keyframes donationHeart{0%{opacity:0;transform:scale(.3) rotate(-14deg)}65%{transform:scale(1.16) rotate(4deg)}100%{opacity:1;transform:scale(1)}}
@keyframes donationFade{from{opacity:0}to{opacity:1}}@keyframes donationRise{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes donationContent{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.donation-modal,.donation-dialog,.donation-content{animation:none}.donation-choice,.donation-button,.donation-close{transition:none}}
@media(max-width:560px){.donation-modal{padding:10px;align-items:end}.donation-dialog{width:100%;max-height:92vh;border-radius:24px 24px 14px 14px;padding:23px 18px}.donation-form{grid-template-columns:1fr}.donation-field--full{grid-column:auto}.donation-step h2{font-size:22px}.donation-actions{position:sticky;bottom:-23px;margin-left:-18px;margin-right:-18px;padding:14px 18px 18px;background:linear-gradient(transparent,#fff 18%,#fff)}}
