This question has been answered by BobRay. See the first response.
Some CMPs use modExt, but it's not required. You can use plain HTML/CSS, and/or JQuery. Styling it depends on how much you want it to look like the rest of the Manager. You can usually examine the code of another CMP to find out what CSS classes you need to use.
You can load JS and CSS in your PHP code with one of the $modx->regClient... methods.
You might also want to look at MyComponent, which has an example CMP build in it. You can modify the config file for your extra to include whatever you need for your extra. MyComponent is a little challenging to learn, but it will handle putting all the files in the right places, provide stubs for all the parts of your component (including license, readme.txt, and changelog files), help you with internationalizing your extra, and build the transport file for you automatically. If you plan on updating your extra over time, it's well worth learning, imo.