Fíjate:
Código CSS:
Ver original.blue {
color:red !important;
}
.blue {
color:blue;
}
Si tú recorres las hojas de estilos en busca de la
última declaración de esa propiedad, obtendrás blue. Sin embargo, la primera tiene un !important, y por lo tanto sólo será modificada por otro !important posterior. Lo que quiero decir es que tendrías que buscar "!important" en el string y si se encuentra, a partir de entonces usar sólo el último valor con !important.
No sé si me he explicado bien

Saludos (: