Index: /CKEditor/trunk/CHANGES.html
===================================================================
--- /CKEditor/trunk/CHANGES.html	(revision 5955)
+++ /CKEditor/trunk/CHANGES.html	(revision 5956)
@@ -72,4 +72,5 @@
 		<li><a href="http://dev.ckeditor.com/ticket/6189">#6189</a> : Minor code size reduction.</li>
 		<li><a href="http://dev.ckeditor.com/ticket/6100">#6100</a> : BIDI: when we change Table language direction indentation of text in Table cells is not applied correctly.</li>
+		<li><a href="http://dev.ckeditor.com/ticket/5045">#5045</a> : uiColor behaved wrong if multiple editors were used with period in their names.</li>
 		<li>Updated the following language files:<ul>
 			<li><a href="http://dev.ckeditor.com/ticket/6427">#6427</a> : Ukrainian;</li>
@@ -87,5 +88,5 @@
 	<p>
 			Fixed issues:</p>
-	<ul>		
+	<ul>
 		<li><a href="http://dev.ckeditor.com/ticket/6027">#6027</a> : Modifying Table Properties by selecting more than one cell caused issues.</li>
 		<li><a href="http://dev.ckeditor.com/ticket/6146">#6146</a> : IE: Floating panels were being opened in the wrong place in RTL pages with horizontal scrollbars.</li>
Index: /CKEditor/trunk/_source/core/editor.js
===================================================================
--- /CKEditor/trunk/_source/core/editor.js	(revision 5955)
+++ /CKEditor/trunk/_source/core/editor.js	(revision 5956)
@@ -384,4 +384,11 @@
 
 			/**
+			 * A unique random string assigned to each editor instance in the page.
+			 * @name CKEDITOR.editor.prototype.id
+			 * @type String
+			 */
+			this.id = CKEDITOR.tools.getNextId();
+
+			/**
 			 * The configurations for this editor instance. It inherits all
 			 * settings defined in (@link CKEDITOR.config}, combined with settings
Index: /CKEditor/trunk/_source/core/tools.js
===================================================================
--- /CKEditor/trunk/_source/core/tools.js	(revision 5955)
+++ /CKEditor/trunk/_source/core/tools.js	(revision 5956)
@@ -347,17 +347,4 @@
 
 		/**
-		 * Replace characters can't be represented through CSS Selectors string
-		 * by CSS Escape Notation where the character escape sequence consists
-		 * of a backslash character (\) followed by the orginal characters.
-		 * Ref: http://www.w3.org/TR/css3-selectors/#grammar
-		 * @param cssSelectText
-		 * @return the escaped selector text.
-		 */
-		escapeCssSelector : function( cssSelectText )
-		{
-			return cssSelectText.replace( /[\s#:.,$*^\[\]()~=+>]/g, '\\$&' );
-		},
-
-		/**
 		 * Gets a unique number for this CKEDITOR execution session. It returns
 		 * progressive numbers starting at 1.
Index: /CKEditor/trunk/_source/skins/kama/skin.js
===================================================================
--- /CKEditor/trunk/_source/skins/kama/skin.js	(revision 5955)
+++ /CKEditor/trunk/_source/skins/kama/skin.js	(revision 5956)
@@ -148,5 +148,5 @@
 					var cssContent,
 						uiStyle = getStylesheet( CKEDITOR.document ),
-						cssId = '.cke_editor_' + CKEDITOR.tools.escapeCssSelector( editor.name );
+						cssId = '.' + editor.id;
 
 					var cssSelectors =
Index: /CKEditor/trunk/_source/themes/default/theme.js
===================================================================
--- /CKEditor/trunk/_source/themes/default/theme.js	(revision 5955)
+++ /CKEditor/trunk/_source/themes/default/theme.js	(revision 5956)
@@ -23,5 +23,5 @@
 			var html =
 				'<span class="cke_shared">' +
-				'<span class="' + editor.skinClass + ' cke_editor_' + editor.name + '">' +
+				'<span class="' + editor.skinClass + ' ' + editor.id + ' cke_editor_' + editor.name + '">' +
 				'<span class="' + CKEDITOR.env.cssClass + '">' +
 				'<span class="cke_wrapper cke_' + editor.lang.dir + '">' +
@@ -115,5 +115,5 @@
 					' id="cke_', name, '"' +
 					' onmousedown="return false;"' +
-					' class="', editor.skinClass, ' cke_editor_', name, '"' +
+					' class="', editor.skinClass, ' ', editor.id, ' cke_editor_', name, '"' +
 					' dir="', editor.lang.dir, '"' +
 					' title="', ( CKEDITOR.env.gecko ? ' ' : '' ), '"' +
@@ -168,5 +168,5 @@
 
 			var element = CKEDITOR.dom.element.createFromHtml( [
-					'<div class="cke_editor_' + editor.name.replace('.', '\\.') + '_dialog cke_skin_', editor.skinName,
+					'<div class="', editor.id, '_dialog cke_editor_', editor.name.replace('.', '\\.'), '_dialog cke_skin_', editor.skinName,
 						'" dir="', editor.lang.dir, '"' +
 						' lang="', editor.langCode, '"' +
