.checkout-payment{margin:16px 0;border:1px solid #dfd5bf;border-radius:13px;background:#fffdf7;color:#27221c;overflow:hidden}
.checkout-payment summary{list-style:none;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;cursor:pointer;padding:14px 16px;font-size:14px}
.checkout-payment summary::-webkit-details-marker{display:none}
.checkout-payment summary::after{content:'+';font-size:22px;font-weight:800;margin-left:auto}
.checkout-payment[open] summary::after{content:'−'}
.checkout-payment summary strong{font-size:15px}
.checkout-payment summary span{color:#635f59;font-size:12px}
.checkout-payment-body{padding:1px 16px 16px;display:grid;gap:10px}
.checkout-payment-body p{color:#5b554c;font-size:13px;line-height:1.5;margin:0}
.checkout-payment-body .payment-warning{padding:10px;background:#fff0c2;border-left:3px solid #d19c00;color:#503d05;font-weight:650}
.checkout-payment-body img{display:block;width:min(100%,310px);max-height:230px;height:auto;object-fit:contain;margin:auto;border-radius:9px;background:#fff}
.checkout-payment-body label{font-size:12px;font-weight:750;line-height:1.4}
.checkout-payment-body input[type=file]{min-height:45px;width:100%;max-width:100%;padding:11px;border:1px dashed #aaa49b;border-radius:8px;background:#fff;font-size:13px}
.checkout-payment .payment-upload-status{font-size:11px!important;min-height:17px;font-weight:650;color:#615743;margin:0!important}
.checkout-payment .payment-upload-status.error{color:#9b2626}
.checkout-payment .payment-upload-status.success{color:#176b3c}
.payment-success[hidden]{display:none!important}
.payment-success{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:rgba(19,20,18,.76);padding:18px;overscroll-behavior:contain}
.payment-success-panel{position:relative;overflow:auto;overscroll-behavior:contain;width:min(100%,500px);max-height:calc(100dvh - 36px);padding:25px 22px 22px;background:#fff;border-radius:19px;color:#242323;box-shadow:0 20px 80px rgba(0,0,0,.27)}
.payment-success-panel h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,4vw,31px);letter-spacing:-.7px;margin:0 35px 7px 0}
.payment-success-panel p{font-size:13px;line-height:1.5;color:#5e5a54;margin:0 0 12px}
.payment-close{position:absolute;right:16px;top:14px;border:0;background:#f0ede9;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:25px;line-height:1;color:#342e2a;cursor:pointer}
.payment-handoff-status{text-align:center;padding-top:12px;font-weight:750}
.receipt-actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin:13px 0}
.receipt-actions [hidden]{display:none!important}
.receipt-actions .button{min-height:42px;text-align:center}
.payment-footnote{font-size:11px!important;text-align:center;margin-top:12px!important}
@media(max-width:560px){.payment-success{padding:0;place-items:end center}.payment-success-panel{max-height:calc(100dvh - 7px);width:100%;border-radius:20px 20px 0 0;padding:22px 16px calc(19px + env(safe-area-inset-bottom))}.payment-success-panel h2{padding-right:20px}.checkout-payment summary{padding:13px}.checkout-payment-body{padding:0 13px 14px}.receipt-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.payment-success *{scroll-behavior:auto!important}}
