Потому что в таком случае перебить эти стили очень проблематично, они имеют практически максимальный приоритет. Да и собственно нечем их будет перебивать.
Второй случай, часто используется изменение стиля за счет изменения класса. Например, неактивный и активный элементы могут иметь разные стили. Конечно, в том же JS можно вместо подмены класса использовать style, но это полная хрень.
Помимо этого, невозможно через style добавить свойства псевдоклассам. Как ты будешь менять состояние input, если не имеешь доступа к focus и blur?
Еще CSS-анимации невозможно реализовать без выделенного файла стилей. Не считаем блок style, ибо это технически все тот же файл стилей.
Аналогично с медиазапросами... а сайт без медиазапросов в современном вебе - это зашквар.
Удобнее так делать лишь в редких случаях и когда весь код - это пара-другая уникальных тегов без повторений. Когда один лишь html у тебя состоит из нескольких тысяч строк, где теги имеют часто одни и те же классы, удобство сразу исчезает.
потомучто содаешь класс для кнопок пишешь этот стиль в файл ну добавляешь в него закругление рамку цвет отклик при наведении итого получается много строк а потом когда надо навесить стиль на кнопку просто добавляешь класс к htmml тегу на любой странице сайта (если выхлоп через шаблон и в шаблоне подключен css файл )
Дурновкусие. Всё должно аккуратно лежать на своем месте в своем собственном файле: разметка, стили, скрипты. В частности за контрсистемное нарушение этого негласного закона многие сильно не любят язык PHP