Make shop.css cacheable

Having the css in the template makes it not included into the cached css autogenerated by PS, making the number of requested external resources grow. It's a performance issue.

Moving the css into the controller fixes it in a clean way. please apply