I have found another error which may be stopping SFTP from loading the theme.css properly.
I doubt that any errors in a file would prevent a file from being uploaded (via FTP or SFTP). Filezilla (for example) does not check files for style or syntax errors. it just uploads what it's given.
Likewise, I doubt a web server would check files for problems. If a file had any errors in it, the first anyone would likely know about it is if the file is opened in a browser (and then the browser could potentially choke on the error).
There is a HTML coding error in the Juicebox jbcore/theme.css.
It's not really an error. It's just three lines of CSS code which contain browser-specific prefixes (so that the 'transform' can be performed in all browsers).
Any line of CSS code that is not recognised by a browser might be flagged with a warning (by the browser) but the browser ought to just ignore the line of code that it does not understand and then carry on parsing the file.
These days, all major browsers should recognise 'transform' and so the code now could be replaced by:
.jb-idx-thb-list .jb-idx-thumb img:active {
transform: translate(2px, 2px);
}
... or, for backwards compatibility with older browsers:
.jb-idx-thb-list .jb-idx-thumb img:active {
-webkit-transform: translate(2px, 2px);
-moz-transform: translate(2px, 2px);
-o-transform: translate(2px, 2px);
transform: translate(2px, 2px);
}
I'm not sure that your solution is best as it's not actually valid CSS.
Try entering the original code into the W3C CSS Validation Service and you'll see that the code is valid.
However, try validating your code and you'll see errors reported.
I'm really not sure why your gallery is not loading with the untouched CSS file. As I mentioned above, I think it's more likely to be your browser that your FTP/SFTP program or web server. What browser and version are you using?
However, if for whatever reason your browser does not like the original (valid) CSS code, try:
.jb-idx-thb-list .jb-idx-thumb img:active {
transform: translate(2px, 2px);
}
... instead. It should work just fine (in a modern browser).