Where the skin lives

Skinning — part 2 of 9

site.extra_css in config/site.yml -- one path, or a list of them, loaded in order after colors.css and site.css:

site:
  extra_css:
    - "/assets/css/skin.css"

Local paths only. Every page carries style-src 'self', so a stylesheet on another host would be dropped by the browser with no error you would ever see -- the page would simply render undressed. The build refuses a remote path out loud instead of letting that happen quietly.

The file is yours, in your working copy, and the engine never writes to it. That is the whole reason this key exists: an edited site.css means a merge conflict on every update, and the first conflict you resolve badly is the one that silently drops a rule the engine added.

Note that the engine's .gitignore does not exclude stylesheets. Decide which you want: commit the skin (it is part of your site, and a second machine will need it), or exclude it locally if the site's repository is public and the skin is not meant to be. Graphics are already excluded -- assets/images/* except the shipped defaults -- so a banner or a portrait never rides along on an unrelated commit.