Trouble using 'No results' in query loop component

I have a working query loop using this:

return [
‘post_type’ => ‘resource’,
‘lang’ => ‘’,
‘posts_per_page’ => -1,
‘post__in’ => array(0,{wp_user_meta:_mtp_favourites}),
‘orderby’ => ‘title’,
‘order’ => ‘ASC’,
];

I have converted the query loop to a component which also works fine.

If I enter plain text in the No Results text field of the component it is correctly displayed when there are 0 results wherever the component is used. Note that if I use {query_results_count} in the Text field it correctly shows ‘0’ when there are no results.

I then created a property for the ‘No results text’. The property is connected and I can edit it on individual pages but the text is never displayed. It’s like if there are no results for the query then the whole component is hidden including the no results text. That is my first problem.

So then I tried using {query_results_count} outside of the loop to conditionally display some text. But {query_results_count:xczilb} always shows the total number of posts before my posts__in clause meaning I cannot use it to check for 0 results. That is my second problem.

So then I created a section template to use for No Results which works. But I am using polylang for different languages so I created a translation of my template but the component only uses the default language template and never the translation. That is my third problem.

So at the moment I have no way of customising the No Results text on a page by page basis and will have to copy/paste my query loop instead of using a component which is obviously not ideal.

Any help for any of the three issues above, or suggestions of alternative approaches, would be appreciated.

Thanks