Mostly copied from Basic and Breeze styles, with an added observations of mine about context property issues, and proper RTL support.