The first thing to do is to add locators to the example citations by clicking the “Example citations” menu in the upper right and using the drop-down lists which are usually labeled “Normal citation” to values corresponding to specific pages and chapters. This will allow you to see how the changes you make will actually look.
Next, go to the code editor and replace “citation locator” macro and the citation block with the following:
<text variable="locator" form="short" prefix=", ch. "/>
<text variable="locator" form="short" prefix=":"/>
<citation et-al-min="6" et-al-use-first="1" et-al-subsequent-min="3" et-al-subsequent-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true" collapse="year" givenname-disambiguation-rule="primary-name">
<layout prefix="(" suffix=")" delimiter="; ">
<group delimiter=", ">
Some explanation: in the first block I hard-coded the separators you wanted into the prefixes of the locator variables. There are two reasons for this. The first is that the CSL language has variables for locators but the short version of “chapter” is “Chap.” and not “Ch.” so this value had to be included as a text variable. The second reason is that you asked for a different delimiter ( “,” vs. “:” ) for pages and chapters, so this also needed to be hand coded.
In the second block I added a group for the author and year and moved the locator out of this group. This allows for the delimiter “,” between the author and the year, while there is no delimiter between the year and the locator.
This can all be done in the visual editor by changing various delimiter and prefix/suffix variables, but it is sometimes easier just to edit the code. The code editor also updates the example citations in real-time so it is relatively easy to experiment.