.payment-dialog{box-sizing:border-box;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #e0e5ec;border-radius:16px;padding:24px;color:#20242d;background:#fff;box-shadow:0 24px 80px #172a4833;font:14px/1.6 system-ui,sans-serif}
.payment-dialog::backdrop{background:#17223566}
.payment-dialog *{box-sizing:border-box}
.payment-dialog [hidden]{display:none!important}
.payment-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.payment-dialog h2{margin:0;font-size:21px;line-height:1.4}
.payment-dialog p{margin:12px 0}
.payment-dismiss{border:0;background:transparent;color:#697386;padding:8px;cursor:pointer;font:inherit}
.payment-muted,.payment-order-id{color:#697386;font-size:13px;overflow-wrap:anywhere}
.payment-channel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
.payment-channel,.payment-button{border:1px solid #dce1e8;border-radius:8px;padding:12px 16px;background:#fff;color:#263c5a;cursor:pointer;min-height:44px;font:inherit;text-decoration:none;text-align:center;display:inline-block}
.payment-channel:hover,.payment-button:hover{background:#f2f6fc}
.payment-dialog button:disabled{cursor:not-allowed;opacity:.5}
.payment-dialog button:focus-visible,.payment-dialog a:focus-visible{outline:3px solid #2563eb66;outline-offset:3px}
.payment-details{text-align:center}
.payment-amount{font-size:32px;font-weight:650;line-height:1.3;font-variant-numeric:tabular-nums}
.payment-order-description{font-size:16px;font-weight:500}
.payment-qr{display:block;width:min(256px,100%);height:auto;margin:16px auto;image-rendering:pixelated}
.payment-pay-link{display:block;background:#2563eb;color:#fff;margin:20px 0}
.payment-pay-link:hover{background:#1d4ed8}
.payment-message{overflow-wrap:anywhere}
.payment-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.payment-actions .payment-button{flex:1 1 140px}
.payment-secondary{font-size:13px;color:#697386}
.payment-plan-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:16px 0}
.payment-plan-card{border:1px solid #e5e8ed;border-radius:10px;padding:16px;overflow-wrap:anywhere}
.payment-plan-card h3{margin:0 0 8px;font-size:16px}
.payment-plan-card p{font-size:14px;margin:8px 0}
.payment-plan-card button{width:100%;margin-top:12px}
.payment-return-page{margin:0;background:#f7f9fc;font:15px/1.7 system-ui,sans-serif;color:#20242d}
.payment-return-card{max-width:520px;margin:10vh auto;padding:32px;background:#fff;border:1px solid #e5e8ed;border-radius:16px}
.payment-return-card h1{font-size:24px;margin-top:0}
.payment-return-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
@media(max-width:560px){.payment-return-card{margin:24px 16px;padding:24px}.payment-dialog{padding:20px}.payment-channel-list{grid-template-columns:1fr}}
