existe uma hierarquia de informações em um css. a última declaração css sempre sobrescreve as anteriores. até se estiverem em arquivos separados, a declaração seguinte sempre prevalecerá.

também se dá mais importância à declarações com maior especificidade, mesmo se ela vier antes. por exemplo .pai .filho sobrescreverá .filho independente da ordem.

por fim, dá-se preferência aos atributos declarados inline no próprio elemento. ou seja, no <div style="color: pink">

o !important ignora todas essas regras e trás aquele atributo selecionado como o mais importante sempre.

é óbvio que ele é importante, mas não existe !important!important. ou seja, é impossível sobrescrevê-lo naturalmente, você teria que aumentar a especificidade. e isso acarreta em um código extremamente difícil de se dar manutenção.

ou seja, evite.

próxima dúvida →

como centralizar coisas?