I've been working alot with multiple languages, but I've never provided to switch language while inside a course, it's either choosen by the LMS or in a language menu before the e-learning content.
Usually each language has it's own start-file, xml-file (for all texts and contents) and content folder (thus making it possible to change content such as images, videos, sound, for different languages). E.g:
start_default.html (english master)
default.css
default(folder) - containing: texts.xml, image-folder, video-folder, sound-folder (and may also contain a folder for e.g. pdfs)
start_sv.html (swedish version)
default.css
sv(folder) - containing: texts.xml, image-folder, video-folder, sound-folder (and may also contain a folder for e.g. pdfs)
The Swedish version might not have to be adjusted, as it is also a ltr-language, and since the text usualli isn't that much longer than english when translated, no editing needs to be done. Therefore one could use the same css as the english-version.
start_ar.html (arabic version)
ar.css
ar(folder) - containing: texts.xml, image-folder, video-folder, sound-folder (and may also contain a folder for e.g. pdfs)
The Arabic version usually needs to be adjusted, as it's a rtl-language, and the design might need some changing to for the user experience. Therefore it could use it's own css.
The criteria for this to work smothely is that the proportions of images and video doesn't change, and that the name of the files doesn't change.