This is pretty good but there are some accessibility issues
- the error should not be in a label. It should be in a paragraph and have an aria-live attribute on it and a unique ID
- the error should not be display none by default. Aria-live elements should be present in the dom at all times so the browser knows to watch them for changes. Instead the error element should be present just with no content inside
- To programmatically link the error and input, use aria-desciribedby on the input pointing to the error element's ID
- clamped font sizes must not use viewport units for the middle font size. Instead you must use calc to transform those viewport units into rem. This is extremely important as at the moment this is ignoring users font size settings
Other than that all this looks good previewing on mobile
Marked as helpful
@leoikeh99
Posted
@grace-snow thanks, will work on these