It's definitely slightly outdated, though. M3 Expressive for instance, the default text field has the textbox labels stay within the textbox, not move into the border.

https://m3.material.io/components/text-fields/overview