/* Payment uses the store identity; green is reserved for confirmed payment. */
#pix-modal { background:#13213a70; backdrop-filter:blur(5px); padding:20px; }
#pix-modal .modal { max-width:880px; padding:32px; border-radius:24px; background:#fff; border:1px solid #e2e8f2; text-align:left; max-height:calc(100dvh - 40px); box-shadow:0 28px 90px #0e203840; scrollbar-width:thin; scrollbar-color:#cad4e4 transparent; }
.pix-brand { display:flex; align-items:center; gap:9px; padding-right:40px; margin-bottom:25px; }
.pix-brand .brand-mark { width:30px; height:30px; border-radius:9px; font-size:22px; box-shadow:none; }
.pix-brand strong { font-size:18px; letter-spacing:-.5px; color:#192b46; overflow-wrap:anywhere; }
.pix-method { margin-left:auto; padding:4px 9px; background:#f1f5fb; border:1px solid #e3eaf4; color:#61738d; font-size:10px; letter-spacing:1px; font-weight:700; border-radius:6px; }
#pix-modal .pix-close { top:25px; right:22px; width:30px; height:30px; font-size:22px; background:#f3f6fa; color:#66758a; }
#pix-modal #pix-dialog-title { font-size:30px; letter-spacing:-.8px; color:#172a45; line-height:1.3; margin:0 0 7px; }
.pix-intro { font-size:15px; color:#6b7a90; line-height:1.7; margin:0 0 24px; }
.pix-payment-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:26px; align-items:start; }
.pix-receipt { background:#f6f8fc; border:1px solid #e5ebf4; border-radius:14px; padding:20px; }
.pix-receipt-heading h3 { font-size:16px; color:#31445e; margin-bottom:5px; }
#pix-modal .pix-order-ref { color:#78879d; font-size:12px; letter-spacing:.2px; overflow-wrap:anywhere; }
.pix-order-items { list-style:none; margin-top:18px; display:grid; gap:10px; max-height:150px; overflow-y:auto; }
.pix-order-items:empty { display:none; }
.pix-order-items li { font-size:14px; line-height:1.6; color:#536782; overflow-wrap:anywhere; }
.pix-receipt-total { border-top:1px solid #e0e7f1; margin-top:18px; padding-top:15px; }
.pix-receipt-total > span { color:#667a96; font-size:14px; }
#pix-modal .pix-amount { color:#172c4b; font-size:42px; font-weight:800; letter-spacing:-1.2px; line-height:1.3; margin:2px 0 0; font-variant-numeric:tabular-nums; }
.pix-guide { margin-top:20px; border-top:1px solid #e0e7f1; padding-top:13px; }
.pix-guide summary { color:#526b90; font-size:13px; cursor:pointer; padding:7px 0; }
.pix-guide ol { padding-left:16px; margin-top:10px; color:#62738c; font-size:13px; line-height:1.8; }
.pix-guide li + li { margin-top:7px; }
.pix-payment-action { text-align:center; min-width:0; }
#pix-modal #pix-qr { display:block; margin:0 auto 15px; border:1px solid #e1e8f2; border-radius:14px; padding:12px; background:#fff; width:fit-content; }
#pix-modal #pix-qr-img { width:232px; height:232px; border-radius:0; object-fit:contain; }
#pix-modal #btn-copy { min-height:56px; background:var(--grad); color:#fff; border-radius:12px; box-shadow:0 5px 14px #235beb20; font-size:16px; padding:14px; }
.pix-bank-note { color:#77869b; font-size:12px; line-height:1.6; margin-top:10px; }
.pix-code-label { text-align:left; color:#526b90; font-size:12px; font-weight:600; margin-top:12px; }
#pix-modal #pix-code { white-space:normal; overflow-wrap:anywhere; word-break:break-all; user-select:all; font-size:12px; line-height:1.6; max-height:none; padding:12px; background:#f7f9fc; border:1px solid #e1e8f2; margin:8px 0 14px; }
#pix-modal #pix-status { display:flex; align-items:center; gap:9px; margin:22px 0 0; padding:14px 16px; background:#f1f5fc; color:#526a8d; border:1px solid #e3eaf5; border-radius:10px; font-size:14px; line-height:1.6; }
#pix-status::before { content:''; flex-shrink:0; height:7px; width:7px; background:#7796c4; border-radius:50%; }
#pix-status[data-state="error"] { background:#fff8ee!important; border-color:#efdec4!important; color:#8c6230!important; }
#pix-status[data-state="error"]::before { background:#c6964e; }
.pix-check-note { font-size:12px; color:#7a8799; line-height:1.6; text-align:center; margin:10px 0 0; }
.pix-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 16px; margin-top:22px; border-top:1px solid #e8edf5; padding-top:14px; }
.pix-footer a { color:#526987; font-size:13px; padding:8px 0; }
#pix-modal #pix-success { text-align:center; padding:20px 0; }
#pix-success .success-ico { display:block; margin-bottom:15px; }
#pix-modal .pix-qr-error { color:#8c6230; font-size:12px; background:#fff8ee; padding:14px; border-radius:10px; margin-bottom:12px; }
body.pix-dialog-open { overflow:hidden; }
@media(max-width:600px) {
 #pix-modal { padding:12px; }
 #pix-modal .modal { padding:20px; border-radius:18px; max-height:calc(100dvh - 24px); }
 .pix-brand { margin-bottom:18px; }
 #pix-modal .pix-close { top:19px; right:16px; }
 #pix-modal #pix-dialog-title { font-size:26px; }
 .pix-intro { font-size:14px; margin-bottom:16px; }
 .pix-payment-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
 .pix-receipt { padding:15px; }
 .pix-receipt-heading { display:flex; align-items:baseline; justify-content:space-between; gap:8px; flex-wrap:wrap; }
 .pix-receipt-heading h3 { margin:0; }
 .pix-order-items { margin-top:9px; max-height:95px; gap:6px; }
 .pix-receipt-total { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-top:11px; padding-top:10px; }
 #pix-modal .pix-amount { font-size:32px; margin:0; }
 .pix-guide { margin-top:10px; padding-top:7px; }
 #pix-modal #pix-qr-img { width:180px; height:180px; }
 #pix-modal #pix-qr { padding:10px; margin-bottom:12px; }
 #pix-modal #pix-status { margin-top:16px; font-size:13px; padding:12px; }
 .pix-footer { margin-top:14px; padding-top:8px; }
}
