/* Modal "Konfirmasi Pembayaran" — nyaman di HP (keyboard muncul, layar pendek, notch) */
#qris-confirm-modal { align-items: flex-start; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
#qris-confirm-modal .modal { margin: auto; max-height: none; overflow: visible; }
#qris-confirm-modal input[type="file"] { padding: 10px; font-size: 14px; max-width: 100%; }
#qris-confirm-modal .qris-check { display: flex; gap: 10px; align-items: flex-start; }
#qris-confirm-modal .qris-check input { flex: 0 0 auto; width: 22px; height: 22px; margin-top: 2px; }

@media (max-width: 768px) {
  #qris-confirm-modal { padding: 8px; padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)); }
  #qris-confirm-modal .modal { max-height: none; border-radius: 16px; }
  #qris-confirm-modal .modal-header,
  #qris-confirm-modal .modal-body { padding: 16px; }
  /* font >= 16px mencegah iOS Safari memperbesar halaman otomatis saat input diketuk */
  #qris-confirm-modal .form-input { font-size: 16px; min-height: 46px; }
  #qris-confirm-modal .modal-footer {
    position: sticky; bottom: 0; z-index: 2; background: var(--bg-white, #fff);
    flex-direction: column-reverse; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  }
  #qris-confirm-modal .modal-footer .btn { width: 100%; min-height: 48px; justify-content: center; }
}
