#dialog.product-checkout-dialog { width: 880px; background: #fffaf4; max-height: calc(100dvh - 60px); }
.product-checkout-dialog .dialog-header { padding: 21px 28px; }
.product-checkout-dialog .dialog-header h2 { font-size: 18px; font-weight: 650; }
.product-checkout-dialog .dialog-body { padding: 28px; }
.product-checkout-dialog .payment-layout { display: grid; grid-template-columns: 1.15fr 1fr; gap: 30px; }
.product-checkout-dialog .payment-summary { padding: 0; min-width: 0; }
.product-checkout-dialog .purchase-label { display: flex; align-items: center; gap: 9px; color: #9b80a5; font-size: 12px; }
.product-checkout-dialog .purchase-label img { width: 30px; height: 30px; object-fit: contain; }
.product-checkout-dialog .payment-summary h3 { font-size: 27px; line-height: 1.5; margin: 9px 0 7px; color: #39213f; overflow-wrap: anywhere; }
.product-checkout-dialog .purchase-amount { display: flex; align-items: baseline; flex-wrap: wrap; gap: 11px; border-bottom: 1px solid #e9dfe9; padding: 21px 0 18px; margin-bottom: 20px; }
.product-checkout-dialog .purchase-amount > span { font-size: 12px; color: #957f9b; }
.product-checkout-dialog .purchase-amount strong { color: #ed7d29; font-size: 37px; line-height: 1; font-weight: 750; letter-spacing: -.6px; }
.product-checkout-dialog .purchase-amount small { font-size: 21px; margin-right: 4px; }
.product-checkout-dialog .purchase-benefits-title { font-size: 13px; font-weight: 650; color: #49304f; margin-bottom: 14px; }
.product-checkout-dialog .purchase-benefits { display: grid; gap: 12px; list-style: none; margin: 0; padding: 0; }
.product-checkout-dialog .purchase-benefits li { display: flex; align-items: flex-start; gap: 9px; font-size: 12px; line-height: 1.65; color: #68506f; overflow-wrap: anywhere; }
.product-checkout-dialog .purchase-benefits svg { flex: 0 0 15px; width: 15px; height: 15px; margin-top: 3px; color: #a57bb0; }
.product-checkout-dialog .purchase-pay-panel { min-width: 0; background: #f5edf8; border: 1px solid #e9d9ee; border-radius: 13px; padding: 22px 19px 19px; text-align: center; align-self: stretch; }
.product-checkout-dialog .purchase-pay-title { display: flex; align-items: center; justify-content: center; gap: 7px; font-size: 16px; color: #402547; font-weight: 650; }
.product-checkout-dialog .purchase-pay-title svg { width: 23px; height: 23px; color: #27a365; }
.product-checkout-dialog .payment-status { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: #92739e; margin: 11px auto 17px; padding: 0; background: transparent; }
.product-checkout-dialog .pending-dot { width: 6px; height: 6px; background: #b496c0; border-radius: 50%; }
.product-checkout-dialog .purchase-qr { width: 244px; max-width: 100%; margin: 0 auto; border-radius: 12px; padding: 12px; background: white; border: 1px solid #e8dfea; }
.product-checkout-dialog .purchase-qr .payment-qr { width: 218px; height: auto; max-width: 100%; aspect-ratio: 1; margin: 0 auto; border-radius: 3px; }
.product-checkout-dialog .purchase-qr-placeholder { aspect-ratio: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 15px; color: #806888; font-size: 12px; }
.product-checkout-dialog .purchase-loading-spinner { width: 27px; height: 27px; border: 2px solid #eaddec; border-top-color: #a57bb0; border-radius: 50%; animation: purchase-loading-spin 1s linear infinite; }
.product-checkout-dialog .purchase-amount-loading { font-size: 23px; font-weight: 500; letter-spacing: 0; color: #957f9b; }
@keyframes purchase-loading-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .product-checkout-dialog .purchase-loading-spinner { animation: none; } }
.product-checkout-dialog .purchase-scan-hint { font-size: 13px; color: #5e4168; margin: 15px 0 6px; }
.product-checkout-dialog .purchase-payment-hint { font-size: 11px; line-height: 1.85; color: #806888; margin: 10px 0 0; }
.product-checkout-dialog .purchase-order { padding: 17px 0 0; border-top: 1px solid #e7d8ec; margin-top: 18px; color: #806888; font-size: 11px; overflow-wrap: anywhere; }
.product-checkout-dialog .dialog-actions { border-top: 1px solid #e8ddea; padding: 19px 28px; flex-wrap: wrap; }
.product-checkout-dialog .dialog-actions .form-note { max-width: 250px; font-size: 11px; color: #947c9d; }
.product-checkout-dialog .dialog-actions button { font-size: 12px; }
.product-checkout-dialog .purchase-jsapi { padding: 20px 0; font-size: 13px; color: #68506f; }
.product-checkout-dialog .purchase-jsapi button { margin-top: 18px; }
@media (max-width: 700px) {
  body.direct-purchase #dialog.product-checkout-dialog { width: calc(100vw - 24px); max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow: auto; }
  body.direct-purchase .product-checkout-dialog .payment-layout { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  body.direct-purchase .product-checkout-dialog .dialog-header, body.direct-purchase .product-checkout-dialog .dialog-body, body.direct-purchase .product-checkout-dialog .dialog-actions { padding: 18px; }
  body.direct-purchase .product-checkout-dialog .dialog-header h2 { font-size: 16px; }
  body.direct-purchase .product-checkout-dialog .payment-summary h3 { font-size: 23px; }
  body.direct-purchase .product-checkout-dialog .purchase-amount strong { font-size: 32px; }
  body.direct-purchase .product-checkout-dialog .dialog-actions .form-note { flex: 1 0 100%; max-width: none; }
}
