Discovering riverbed and lakebed areas using Overpass - how?

I’m interested in investigating the prevalence and popularity of a certain mapping style. The style I’m looking for is riverbed and lakebed mapped as:

  • An area tagged as natural=mud/sand/shingle/bare_rock
  • A superimposed area tagged natural=water

I’ve had trouble setting up an Overpass API query that yields results like this. I have some clues on components that might get me there, like the map_to_area; statement, and the is_in; query, but I’m having a hard time composing something that doesn’t take forever to run, and that doesn’t yield false positives.

Anyone experienced who can lend a hand?