CSS is used to specify the presentation and layout of HTML elements, separating these aspects from the content and structure defined in HTML. CSS rules consist of selectors that choose the elements to style, properties that define what aspects to manipulate, and values that set property levels. Styles can be applied via internal, external, and inline CSS. CSS offers benefits like centralized styling, separation of concerns, and improved performance over only using HTML for styling. Common CSS selectors include element, class, ID and pseudo-class selectors. Values use units like pixels, percentages and colors to set property levels.