# Built-in CSS Support
Examples
We bundle [styled-jsx](https://github.com/zeit/styled-jsx) to provide support for isolated scoped CSS. The aim is to support "shadow CSS" similar to Web Components, which unfortunately [do not support server-rendering and are JS-only](https://github.com/w3c/webcomponents/issues/71).
A component using `styled-jsx` looks like this:
```jsx
function HelloWorld() {
return (
)
}
export default HelloWorld
```
Please see the [styled-jsx documentation](https://github.com/zeit/styled-jsx) for more examples.
## CSS-in-JS
Examples
It's possible to use any existing CSS-in-JS solution. The simplest one is inline styles:
```jsx
function HiThere() {
return hi there
}
export default HiThere
```
## CSS Plugins
To support importing `.css`, `.scss`, `.less` or `.styl` files you can use the following modules, which configure sensible defaults for server rendered applications:
- [@zeit/next-css](https://github.com/zeit/next-plugins/tree/master/packages/next-css)
- [@zeit/next-sass](https://github.com/zeit/next-plugins/tree/master/packages/next-sass)
- [@zeit/next-less](https://github.com/zeit/next-plugins/tree/master/packages/next-less)
- [@zeit/next-stylus](https://github.com/zeit/next-plugins/tree/master/packages/next-stylus)