Index: _source/core/config.js
===================================================================
--- _source/core/config.js	(revision 4321)
+++ _source/core/config.js	(working copy)
@@ -63,13 +63,14 @@
 	baseHref : '',
 
 	/**
-	 * The CSS file to be used to apply style to the contents. It should
+	 * The CSS file(s) to be used to apply style to the contents. It should
 	 * reflect the CSS used in the final pages where the contents are to be
 	 * used.
-	 * @type String
+	 * @type String|Array
 	 * @default '&lt;CKEditor folder&gt;/contents.css'
 	 * @example
 	 * config.contentsCss = '/css/mysitestyles.css';
+	 * config.contentsCss = ['/css/mysitestyles.css', '/css/anotherfile.css'];
 	 */
 	contentsCss : CKEDITOR.basePath + 'contents.css',
 
Index: _source/plugins/font/plugin.js
===================================================================
--- _source/plugins/font/plugin.js	(revision 4321)
+++ _source/plugins/font/plugin.js	(working copy)
@@ -11,6 +11,7 @@
 
 		// Gets the list of fonts from the settings.
 		var names = entries.split( ';' ),
+			editorCss = CKEDITOR.getUrl( editor.skinPath + 'editor.css' ),
 			values = [];
 
 		// Create style objects for all fonts.
@@ -36,7 +37,7 @@
 
 				panel :
 				{
-					css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+					css : CKEDITOR.tools.isArray( config.contentsCss ) ? config.contentsCss.concat( editorCss ) : [ config.contentsCss, editorCss ],
 					voiceLabel : lang.panelVoiceLabel
 				},
 
Index: _source/plugins/format/plugin.js
===================================================================
--- _source/plugins/format/plugin.js	(revision 4321)
+++ _source/plugins/format/plugin.js	(working copy)
@@ -10,6 +10,7 @@
 	init : function( editor )
 	{
 		var config = editor.config,
+			editorCss = CKEDITOR.getUrl( editor.skinPath + 'editor.css' ),
 			lang = editor.lang.format;
 
 		// Gets the list of tags from the settings.
@@ -33,7 +34,7 @@
 
 				panel :
 				{
-					css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+					css : CKEDITOR.tools.isArray( config.contentsCss ) ? config.contentsCss.concat( editorCss ) : [ config.contentsCss, editorCss ],
 					voiceLabel : lang.panelVoiceLabel
 				},
 
Index: _source/plugins/preview/plugin.js
===================================================================
--- _source/plugins/preview/plugin.js	(revision 4321)
+++ _source/plugins/preview/plugin.js	(working copy)
@@ -37,7 +37,9 @@
 					'<head>' +
 					baseTag +
 					'<title>' + editor.lang.preview + '</title>' +
-					'<link href="' + editor.config.contentsCss + '" type="text/css" rel="stylesheet" _cktemp="true"/>' +
+					'<link type="text/css" rel="stylesheet" href="' +
+					( CKEDITOR.tools.isArray( editor.config.contentsCss ) ? editor.config.contentsCss.join( '"><link type="text/css" rel="stylesheet" href="' ) : editor.config.contentsCss ) +
+					'">' +
 					'</head>' + bodyHtml +
 					editor.getData() +
 					'</body></html>';
Index: _source/plugins/stylescombo/plugin.js
===================================================================
--- _source/plugins/stylescombo/plugin.js	(revision 4321)
+++ _source/plugins/stylescombo/plugin.js	(working copy)
@@ -12,6 +12,7 @@
 		init : function( editor )
 		{
 			var config = editor.config,
+				editorCss = CKEDITOR.getUrl( editor.skinPath + 'editor.css' ),
 				lang = editor.lang.stylesCombo,
 				pluginPath = this.path,
 				styles;
@@ -26,7 +27,7 @@
 
 					panel :
 					{
-						css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+						css : CKEDITOR.tools.isArray( config.contentsCss ) ? config.contentsCss.concat( editorCss ) : [ config.contentsCss, editorCss ],
 						voiceLabel : lang.panelVoiceLabel
 					},
 
Index: _source/plugins/wysiwygarea/plugin.js
===================================================================
--- _source/plugins/wysiwygarea/plugin.js	(revision 4321)
+++ _source/plugins/wysiwygarea/plugin.js	(working copy)
@@ -526,7 +526,9 @@
 									editor.config.docType +
 									'<html dir="' + editor.config.contentsLangDirection + '">' +
 									'<head>' +
-										'<link href="' + editor.config.contentsCss + '" type="text/css" rel="stylesheet" _fcktemp="true"/>' +
+										'<link type="text/css" rel="stylesheet" href="' +
+										( CKEDITOR.tools.isArray( editor.config.contentsCss ) ? editor.config.contentsCss.join( '"><link type="text/css" rel="stylesheet" href="' ) : editor.config.contentsCss ) +
+										'">' +
 										'<style type="text/css" _fcktemp="true">' +
 											editor._.styles.join( '\n' ) +
 										'</style>'+
Index: CHANGES.html
===================================================================
--- CHANGES.html	(revision 4321)
+++ CHANGES.html	(working copy)
@@ -40,6 +40,7 @@
 		New features:</p>
 	<ul>
 		<li><a href="http://dev.fckeditor.net/ticket/4219">#4219</a> : Added fallback mechanism for config.language.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/4194">#4194</a> : Added support for using multiple css stylesheets within the editor.</li>
 	</ul>
 	<p>
 		Fixed issues:</p>
