It seems in general there are two approaches to learning a programming language. I think an older approach is a complete encyclopedic reference manual which lays out the whole language in one go, mentioning all the possible declarations, all the attributes, all the syntax at once. I can tell that is what you prefer.
Another approach, which seems more common to me today is a tutorial which progressively introduces the most common features and maybe never gets to the obscure ones. Things aren’t as easy to look up for reference, they can be tediously slow for experts, and some features get missed.
I think in July 2023 the closest to a reference manual is the very incomplete Lean 4 manual. It references a lot, especially the newer features not available in Lean 3. But it is not complete or even as encyclopedic as you would like. If you already know Lean 3, then you may find the part on significant differences from Lean 3 helpful.
As for tutorials, there are at least three:
- Theorem Proving in Lean 4 is a tutorial on theorem proving in Lean 4. It covers in a lot of detail both the basic Lean syntax and how to prove theorems in Lean. Since your goal is to “understand code I'm reading, and/or use Lean for anything at all, however basic -- to prove simple theorems of first-order logic, for example”, I think this would go a long way to fulfilling your needs. Chapters 1-4 cover how to prove theorems in FOL without tactics. The next chapter covers tactics.
- Functional programming in Lean focuses on Lean 4 as a fully capable Lean functional programming language. Again it takes a fairly slow approach and likely misses important features.
- Metaprogramming in Lean 4 covers more advanced topics for those who want to do things like make their own tactics. It’s less official.
There are also other resources as well for learning Lean 4.
But again, I am sorry to say I don’t think there yet exists exactly what you are looking for.