Update the revision selector to use our modern CSS component standard.

Review Request #11431 — Created Feb. 3, 2021 and updated — Latest diff uploaded


Review Board


The CSS for the revision selector used for diffs and file attachments
was well-designed, and pretty close to our modern CSS component
standard. This change completes the work, moving the CSS to a new file,
documenting it, and changing the class names to fit our standard.

Some variables impacting the styling have been moved into a namespace,
but no actual changes to the resulting CSS styles have been made.

This is setting the widget up for some upcoming changes for
accessibility, style tweaks, and commit range selection.

Opened the diff viewer and a file attachment with revisions. Verified
that the appearance exactly matched the UI without the new changes,
and that all interactions (including a body-wide grab cursor) worked
as before.