
/* Payment forms use the existing page scroll owner; the sheet alone scrolls on mobile. */
.collection-fields { display:grid; gap:14px; min-width:0; }
.collection-fields label { display:grid; gap:6px; font-size:14px; }
.collection-fields input:not([type=checkbox]), .collection-fields textarea { box-sizing:border-box; width:100%; min-width:0; padding:10px; border:1px solid #d8d8d8; border-radius:8px; font-size:16px; }
.collection-fields p, .payment-review-list p { font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.collection-qr-preview { width:180px; height:180px; object-fit:contain; }
.payment-review-list { padding:16px; background:#fff; border-radius:14px; margin-bottom:18px; min-width:0; }
.payment-review-list h2 { font-size:18px; }
.payment-review-card { padding:16px 0; border-top:1px solid #e7e7e7; min-width:0; }
.payment-review-card header, .payment-review-card footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; font-size:14px; }
.payment-review-card summary { cursor:pointer; min-height:44px; padding:12px 0; font-size:16px; }
.payment-review-card img { display:block; width:100%; height:auto; max-width:600px; object-fit:contain; }
.payment-review-card button, .collection-fields button { min-height:44px; font-size:16px; padding:8px 14px; }
.manual-payment-sheet { overflow-y:auto; max-height:calc(100dvh - 24px); padding-bottom:calc(24px + env(safe-area-inset-bottom)); min-width:0; }
.manual-payment-sheet p, .manual-payment-sheet label { font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.manual-payment-sheet input { font-size:16px; min-height:44px; max-width:100%; box-sizing:border-box; }
.manual-payment-sheet button, .order-card button { min-height:44px; }
.manual-collection-card img { display:block; width:240px; height:240px; max-width:100%; object-fit:contain; margin:14px auto; }
.payment-proof-preview { display:block; width:100%; height:auto; max-height:340px; object-fit:contain; }
.payment-proof-preview[hidden] { display:none; }
.payment-order-id { overflow-wrap:anywhere; }
.payment-rejection, [data-payment-error] { color:#a42a25; font-size:14px; line-height:1.6; }
.pay-icon.manual { background:#e4f3ff; color:#1677ff; }
