/* =====================================================
   JAKSKY CHECKOUT MOBILE SCROLL FIX V62
   ===================================================== */

@media (max-width:700px){

  /*
    SATU-SATUNYA area scroll adalah overlay checkout.
    Hindari nested scroll Android.
  */
  #vipCheckoutModal{
    align-items:flex-start !important;
    justify-content:center !important;

    overflow-x:hidden !important;
    overflow-y:auto !important;

    -webkit-overflow-scrolling:touch !important;

    overscroll-behavior-y:contain !important;
    touch-action:pan-y !important;

    height:100dvh !important;
    max-height:100dvh !important;

    padding:
      max(12px,env(safe-area-inset-top))
      10px
      max(28px,env(safe-area-inset-bottom))
      !important;

    box-sizing:border-box !important;
  }


  /*
    Jangan bikin scroll kedua di dalam box.
  */
  #vipCheckoutModal .vipCheckoutBox{
    flex:0 0 auto !important;

    width:min(420px,94vw) !important;

    height:auto !important;
    min-height:0 !important;
    max-height:none !important;

    margin:0 auto !important;

    overflow:visible !important;

    touch-action:auto !important;
  }


  #vipCheckoutModal .vipCheckoutBox,
  #vipCheckoutModal .vipCheckoutBox *{
    overscroll-behavior:auto;
  }


  /*
    Input, QR, status, payment area jangan
    menangkap gesture vertikal secara aneh.
  */
  #vipCheckoutModal img,
  #vipCheckoutModal canvas,
  #vipCheckoutModal svg{
    touch-action:pan-y !important;
  }


  /*
    Tombol tetap bisa ditekan,
    tapi swipe dari area tombol masih normal.
  */
  #vipCheckoutModal button,
  #vipCheckoutModal a,
  #vipCheckoutModal input,
  #vipCheckoutModal textarea{
    touch-action:manipulation !important;
  }


  /*
    Sedikit ruang bawah supaya status terakhir
    tidak mentok bottom navigation/browser.
  */
  #vipCheckoutModal .vipCheckoutBox::after{
    content:"";
    display:block;
    height:18px;
  }

}
