.rbac-user-modal {
  align-items: flex-start !important;
  overflow-y: auto !important;
  padding: 22px;
  overscroll-behavior: contain;
}
.rbac-user-modal .rbac-user-form {
  max-height: calc(100dvh - 44px) !important;
  margin: auto;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
.rbac-user-form .admin-modal-head {
  position: sticky;
  top: 0;
  z-index: 4;
}
.rbac-user-form .admin-modal-actions {
  position: sticky;
  bottom: 0;
  z-index: 4;
}
.rbac-user-form .capture-form-grid {
  overflow: visible;
}
@media (max-width: 560px) {
  .rbac-user-modal {
    padding: 10px;
  }
  .rbac-user-modal .rbac-user-form {
    max-height: calc(100dvh - 20px) !important;
  }
}

/* ==========================================================================
   RBAC ROLE MODAL SCROLL & STICKY ACTIONS (FIX FOR MISSING SAVE BUTTON)
   ========================================================================== */
.admin-modal-backdrop.rbac-role-modal {
  display: grid !important;
  align-items: start !important;
  justify-items: center !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 20px 10px !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  z-index: 10000 !important;
}

.rbac-role-modal .rbac-role-form {
  box-sizing: border-box !important;
  width: min(880px, 100%) !important;
  max-height: calc(100dvh - 40px) !important;
  margin: auto 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}

.rbac-role-form .admin-modal-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
  background: #ffffff !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.rbac-role-form .admin-modal-actions {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 10 !important;
  background: #fafbfc !important;
  border-top: 1px solid #e2e8f0 !important;
  display: flex !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  padding: 16px 24px !important;
  box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.06) !important;
}

.rbac-role-form .admin-modal-actions button {
  min-height: 42px !important;
  padding: 0 24px !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
}

.rbac-role-form .capture-form-grid {
  overflow: visible !important;
  padding: 20px 24px !important;
}

@media (max-width: 560px) {
  .admin-modal-backdrop.rbac-role-modal {
    padding: 10px !important;
  }
  .rbac-role-modal .rbac-role-form {
    max-height: calc(100dvh - 20px) !important;
  }
  .rbac-role-form .admin-modal-actions {
    padding: 12px 16px !important;
  }
}
