CSS Selector Specificity: Understanding the Cascade Priority Rules