basic structure and some styles