diff --git a/css/all-app.css b/css/all-app.css
index 1ac971c..5ca655e 100644
--- a/css/all-app.css
+++ b/css/all-app.css
@@ -2085,12 +2085,6 @@
   right: 13px;
 }
 
-/*extra size menus for recent*/
-.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
-	width: 260px !important;
-	max-width: 260px !important;
-}
-
 /* ajax spinner */
 .navbar #spinner {
 	display: block;
@@ -2104,6 +2098,7 @@
 .navbar-inner {
 	padding: 0px 20px;
 }
+
 /*
  *	lib/css/bootstrap/dropdown.css
  */.dropdown {
@@ -2840,11 +2835,41 @@
 .navbar-new-comments {
 	margin: -3px 0px;
 	padding: 2px;
-	font-size: 14px;
-	color: #fff;
-	background-color: #B00D07;
 	min-width: 20px;
 	text-align: center;
 	display: inline-block;
 	border-radius: 2px;
+	color: #999999;
+	background-color: #333131;
+}
+
+.navbar-new-comments:hover,
+.navbar-new-comments:active,
+.navbar-new-comments:focus {
+	color: #fff;
+}
+
+
+.navbar-new-comments-true {
+	color: #fff;
+	background-color: #B00D07;
+}
+
+.navbar-icon-home {
+	vertical-align: middle;
+	opacity:0.4;
+	Filter:alpha(opacity=40); /* For IE8 and earlier */
+}
+
+.navbar-icon-home:hover,
+.navbar-icon-home:focus,
+.navbar-icon-home:active {
+	opacity:1;
+	Filter:alpha(opacity=100); /* For IE8 and earlier */
+}
+
+/*extra size menus for recent*/
+.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
+	min-width: 160px !important;
+	max-width: 260px !important;
 }
diff --git a/css/all-web.css b/css/all-web.css
index 0ac96aa..1bb9c88 100644
--- a/css/all-web.css
+++ b/css/all-web.css
@@ -1313,12 +1313,6 @@
   right: 13px;
 }
 
-/*extra size menus for recent*/
-.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
-	width: 260px !important;
-	max-width: 260px !important;
-}
-
 /* ajax spinner */
 .navbar #spinner {
 	display: block;
@@ -1332,6 +1326,7 @@
 .navbar-inner {
 	padding: 0px 20px;
 }
+
 /*
  *	lib/css/bootstrap/dropdown.css
  */.dropdown {
@@ -1648,13 +1643,43 @@
 .navbar-new-comments {
 	margin: -3px 0px;
 	padding: 2px;
-	font-size: 14px;
-	color: #fff;
-	background-color: #B00D07;
 	min-width: 20px;
 	text-align: center;
 	display: inline-block;
 	border-radius: 2px;
+	color: #999999;
+	background-color: #333131;
+}
+
+.navbar-new-comments:hover,
+.navbar-new-comments:active,
+.navbar-new-comments:focus {
+	color: #fff;
+}
+
+
+.navbar-new-comments-true {
+	color: #fff;
+	background-color: #B00D07;
+}
+
+.navbar-icon-home {
+	vertical-align: middle;
+	opacity:0.4;
+	Filter:alpha(opacity=40); /* For IE8 and earlier */
+}
+
+.navbar-icon-home:hover,
+.navbar-icon-home:focus,
+.navbar-icon-home:active {
+	opacity:1;
+	Filter:alpha(opacity=100); /* For IE8 and earlier */
+}
+
+/*extra size menus for recent*/
+.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
+	min-width: 160px !important;
+	max-width: 260px !important;
 }
 
 /*
diff --git a/erpnext/home/page/desktop/desktop.js b/erpnext/home/page/desktop/desktop.js
index 9400cfe..e2a8d53 100644
--- a/erpnext/home/page/desktop/desktop.js
+++ b/erpnext/home/page/desktop/desktop.js
@@ -78,7 +78,7 @@
 }
 
 erpnext.desktop.show_pending_notifications = function() {
-	$('#messages a:first').prepend('<div id="msg_count" class="circle">\
+	$('#messages a:first').prepend('<div id="msg_count" class="circle" title="Unread Messages">\
 		<span class="circle-text"></span></div>');
 	$('#msg_count').toggle(false);
 	update_messages();
diff --git a/erpnext/startup/startup.css b/erpnext/startup/startup.css
index 6410ccc..27fda48 100644
--- a/erpnext/startup/startup.css
+++ b/erpnext/startup/startup.css
@@ -42,11 +42,41 @@
 .navbar-new-comments {
 	margin: -3px 0px;
 	padding: 2px;
-	font-size: 14px;
-	color: #fff;
-	background-color: #B00D07;
 	min-width: 20px;
 	text-align: center;
 	display: inline-block;
 	border-radius: 2px;
+	color: #999999;
+	background-color: #333131;
+}
+
+.navbar-new-comments:hover,
+.navbar-new-comments:active,
+.navbar-new-comments:focus {
+	color: #fff;
+}
+
+
+.navbar-new-comments-true {
+	color: #fff;
+	background-color: #B00D07;
+}
+
+.navbar-icon-home {
+	vertical-align: middle;
+	opacity:0.4;
+	Filter:alpha(opacity=40); /* For IE8 and earlier */
+}
+
+.navbar-icon-home:hover,
+.navbar-icon-home:focus,
+.navbar-icon-home:active {
+	opacity:1;
+	Filter:alpha(opacity=100); /* For IE8 and earlier */
+}
+
+/*extra size menus for recent*/
+.dropdown-menu#toolbar-recent, .dropdown-menu#toolbar-options, .dropdown-menu#toolbar-help{
+	min-width: 160px !important;
+	max-width: 260px !important;
 }
diff --git a/erpnext/startup/toolbar.js b/erpnext/startup/toolbar.js
index 57a5707..c73d54e 100644
--- a/erpnext/startup/toolbar.js
+++ b/erpnext/startup/toolbar.js
@@ -27,11 +27,11 @@
 	$('#toolbar-user').append('<li><a href="#My Company">Team / Messages</a></li>');
 
 
-	$('.navbar .pull-right').prepend('\
-		<li><a href="#" id="toolbar-new-comments"></a></li>');
+	$('.navbar .pull-right').append('\
+		<li><a href="#!My%20Company" title="Unread Messages"><span class="navbar-new-comments"></span></a></li>');
 
 	// help
-	$('.navbar .pull-right').append('<li class="dropdown">\
+	$('.navbar .pull-right').prepend('<li class="dropdown">\
 		<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
 			onclick="return false;">Help<b class="caret"></b></a>\
 		<ul class="dropdown-menu" id="toolbar-help">\
@@ -53,18 +53,18 @@
 
 	$.extend(page_body.wntoolbar, {
 		set_new_comments: function(new_comments) {
-			var navbar_nc = $('#toolbar-new-comments');
+			var navbar_nc = $('.navbar-new-comments');
 			if(new_comments && new_comments.length>0) {
-				navbar_nc.html('<span class="navbar-new-comments">' + new_comments.length + '</span>');
-				navbar_nc.click(function() { loadpage('My Company'); });
+				navbar_nc.text(new_comments.length);
+				navbar_nc.addClass('navbar-new-comments-true')
 				$.each(new_comments, function(i, v) {
 					var msg = 'New Message: ' + (v[1].length<=100 ? v[1] : (v[1].substr(0, 100) + "..."));
 					var id = v[0].replace('/', '-');
 					if(!$('#' + id)[0]) { show_alert(msg, id); }
 				})
 			} else {
-				navbar_nc.html('');
-				navbar_nc.click(function() { return false; });
+				navbar_nc.removeClass('navbar-new-comments-true');
+				navbar_nc.text(0);
 			}
 		}
 	});
@@ -89,7 +89,7 @@
 			<li class="divider"></li>\
 			<li><a href="#!Setup" data-module="Setup">Setup</a></li>\
 		</ul>\
-		</li>').insertAfter('li[data-name="navbar-home"]');
+		</li>').prependTo('.navbar .nav:first');
 	$('.navbar .nav:first')	
 }
 
diff --git a/js/all-app.js b/js/all-app.js
index c3ce62f..095514f 100644
--- a/js/all-app.js
+++ b/js/all-app.js
Binary files differ
diff --git a/js/all-web.js b/js/all-web.js
index f5f82ee..1eedb57 100644
--- a/js/all-web.js
+++ b/js/all-web.js
@@ -1038,7 +1038,7 @@
  *	js/app.js
  */
 wn.app={name:'ERPNext',license:'GNU/GPL - Usage Condition: All "erpnext" branding must be kept as it is',source:'https://github.com/webnotes/erpnext',publisher:'Web Notes Technologies Pvt Ltd, Mumbai',copyright:'&copy; Web Notes Technologies Pvt Ltd',version:'2.'+window._version_number}
-wn.modules_path='erpnext';wn.settings.no_history=true;$(document).bind('ready',function(){startup();});$(document).bind('toolbar_setup',function(){$('.brand').html('<b>erp</b>next');})
+wn.modules_path='erpnext';wn.settings.no_history=true;$(document).bind('ready',function(){startup();});$(document).bind('toolbar_setup',function(){$('.brand').html('<b>erp</b>next&nbsp;<i class="icon-home icon-white navbar-icon-home" ></i>');})
 /*
  *	erpnext/startup/startup.js
  */
diff --git a/js/app.js b/js/app.js
index 3e6fa5b..67f900f 100644
--- a/js/app.js
+++ b/js/app.js
@@ -31,5 +31,5 @@
 });
 
 $(document).bind('toolbar_setup', function() {
-	$('.brand').html('<b>erp</b>next');	
-})
\ No newline at end of file
+	$('.brand').html('<b>erp</b>next&nbsp;<i class="icon-home icon-white navbar-icon-home" ></i>');	
+})
diff --git a/version.num b/version.num
index 3873f56..ddc27b0 100644
--- a/version.num
+++ b/version.num
@@ -1 +1 @@
-706
\ No newline at end of file
+739
\ No newline at end of file
