/* R9 finishing layer: retain approved R2/R8 visual tokens. */
.r9-inline-error{display:block;color:#a52540;font-size:13px;line-height:1.45;margin:7px 0 12px!important;padding:0 0 0 9px;border-left:3px solid #a52540;max-width:100%;overflow-wrap:anywhere;text-align:left;flex-basis:100%}
.r9-invalid{outline:2px solid #a52540;outline-offset:2px;scroll-margin:110px 0 90px}
.r9-payment-target{display:grid;grid-template-columns:118px 1fr;gap:16px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:15px;background:var(--pale);margin:14px 0}
.r9-qr-button{border:1px solid var(--line);border-radius:10px;background:white;padding:7px;width:118px;height:118px;cursor:zoom-in}
.r9-qr-button img{display:block;width:100%;height:100%;object-fit:contain}
.r9-payment-target h3{font-size:16px;margin:0 0 7px;letter-spacing:-.02em}
.r9-payment-target p{font-size:12px;line-height:1.5;margin:5px 0;overflow-wrap:anywhere}
.r9-demo-label{font-size:10px;font-weight:700;letter-spacing:.04em;color:#765526;display:block;margin-bottom:5px}
.r9-payment-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:7px}
.r9-payment-links .text-link{font-size:12px;min-height:36px}
.r9-bank{grid-template-columns:1fr;gap:9px}
.r9-bank-row{display:flex;gap:10px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:10px;min-width:0}
.r9-bank-row code{display:block;font-size:14px;white-space:normal;overflow-wrap:anywhere;color:var(--ink)}
.r9-bank-row .btn{font-size:12px;padding:8px 12px;min-height:40px}
.r9-payment-target .r9-inline-status{color:var(--primary);font-size:11px;min-height:1em}
.r9-qr-expanded{display:block;width:min(100%,285px);height:auto;margin:16px auto;background:white;padding:12px;border-radius:8px}
.r9-receipt-feedback{min-width:0}
.r9-stage-note{border:1px solid var(--line);background:var(--pale);border-radius:16px;padding:20px;margin:18px 0}
.r9-stage-note h2{font-size:22px;margin:0 0 12px}
.r9-stage-note p{font-size:15px;line-height:1.6;margin:9px 0}
.r9-email{overflow-wrap:anywhere;font-weight:600;color:var(--ink)}
.r9-contact-box{border-top:1px solid var(--line);padding-top:16px;margin-top:18px}
.r9-contact-box .btn{font-size:13px;min-height:44px}
.r9-email-preview{border:1px solid var(--line);border-radius:14px;padding:18px;margin:14px 0;background:white}
.r9-email-preview p{margin:10px 0;font-size:14px;line-height:1.6}
.r9-review-only{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.r9-mode-review{padding:12px;border:1px solid #d9c7a9;border-radius:12px;background:#fff7e9;margin:14px 0}
.r9-mode-review .btn{margin-top:8px;font-size:13px;min-height:44px}
.r9-selected-mode{font-size:13px;color:var(--muted);margin:10px 0}
.r9-submit-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:0;margin-top:18px}.r9-submit-wrap .r9-inline-error{align-self:stretch}
@media(max-width:640px){.r9-payment-target{grid-template-columns:98px minmax(0,1fr);gap:11px;padding:12px}.r9-qr-button{width:98px;height:98px;padding:6px}.r9-bank{grid-template-columns:1fr}.r9-inline-error{font-size:12px}.r9-payment-target h3{font-size:15px}.r9-bank-row code{font-size:12px}.r9-stage-note{padding:17px}.r9-stage-note p{font-size:14px}.r9-mode-review{font-size:12px}.r9-contact-box .btn{width:auto}.r9-payment-summary .r8-mode-line{align-items:flex-start;gap:8px}.r9-payment-summary .r8-mode-line button{font-size:12px}.r9-submit-wrap{align-items:stretch}.r9-submit-wrap .btn{width:auto;align-self:flex-end}}
@media(prefers-reduced-motion:reduce){.r9-invalid{scroll-behavior:auto}}
