Why use layers
Fewer conflicts and a more scalable architecture.
Without layers, many styling bugs get fixed by increasing specificity with longer selectors or `!important`. That may solve the symptom, but it scales badly and makes the system harder to maintain.
With `@layer`, you define a priority hierarchy on purpose from the start. That lets the architecture decide who wins, not brute force.
A practical pattern is: reset -> framework -> base -> components -> utilities -> overrides.