split into separate css/js files and made labels zoom-able