/* G78G — iPad/Safari-safe modal compositor and hit-testing */
#modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
  background:rgba(8,18,32,.62)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:hidden!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
#modal.hidden{display:none!important}
#modal .modal-card{
  position:relative!important;
  z-index:1!important;
  width:min(820px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 32px)!important;
  max-height:calc(100dvh - 32px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  animation:none!important;
  transform:none!important;
  -webkit-transform:none!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
#modal .modal-head{
  position:relative!important;
  top:auto!important;
  z-index:5!important;
  flex:0 0 auto!important;
  pointer-events:auto!important;
  transform:none!important;
  -webkit-transform:none!important;
}
#modalBody{
  position:relative!important;
  z-index:1!important;
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  pointer-events:auto!important;
  touch-action:pan-y!important;
}
#modal button,#modal [role="button"],#modal .modal-actions,#modal .modal-actions *{
  pointer-events:auto!important;
}
#modal #modalClose{
  position:relative!important;
  z-index:20!important;
  min-width:48px!important;
  min-height:48px!important;
  touch-action:manipulation!important;
}
#modal .modal-actions{
  position:relative!important;
  z-index:10!important;
  transform:none!important;
  -webkit-transform:none!important;
}
@media (hover:none) and (pointer:coarse){
  #modal{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))!important}
  #modal .modal-card{width:min(900px,100%)!important;max-height:calc(100dvh - 20px)!important;border-radius:18px!important}
  #modal .modal-head{padding:14px 16px!important}
  #modalBody{padding:16px!important}
  #modal button{min-height:44px}
}
