Index: src/wp-admin/css/list-tables.css
===================================================================
--- src/wp-admin/css/list-tables.css	(revision 33152)
+++ src/wp-admin/css/list-tables.css	(working copy)
@@ -1,79 +1,130 @@
-/* List table styles */
-.post-com-count-wrapper {
-	min-width: 22px;
-}
-
-.post-com-count {
-	background: none;
-	height: 1.3em;
-	line-height: 1.1em;
+.response-links {
 	display: block;
-	text-decoration: none;
-	padding: 0 0 6px;
-	cursor: pointer;
-	background-position: center -80px;
-	background-repeat: no-repeat;
-	color: #fff;
+	margin-bottom: 1em;
 }
 
-.post-com-count:after {		/* draw bubble connector using CSS! */
-	content: "";
+.response-links a {
 	display: block;
-	width: 0;
-	height: 0;
-	margin-left: 8px;
-	border-top: 5px solid #b4b9be;
-	border-right: 5px solid transparent;
 }
 
-.post-com-count span {
-	font-size: 11px;
+.response-links a.comments-edit-item-link {
 	font-weight: 600;
-	height: 1.4em;
-	line-height: 1.4em;
-	min-width: 0.7em;
-	padding: 0 6px;
-	display: inline-block;
-	-webkit-border-radius: 5px;
-	border-radius: 5px;
-	background-color: #b4b9be;
-	color: #fff;
 }
 
-.post-com-count:hover {
-	background-position: center -3px;
+.response-links a.comments-view-item-link {
+	font-size: 12px;
 }
 
-.post-com-count:hover span {
-	background-color: #00a0d2;
+.column-response .post-com-count .screen-reader-text {
+	position: static;
+	width: auto;
+	height: auto;
+	margin: 0;
 }
 
-.post-com-count:hover:after {
-	border-top: 5px solid #00a0d2;
+.column-response .post-com-count [aria-hidden="true"] {
+	display: none;
 }
 
-strong .post-com-count {
-	background-position: center -55px;
+.post-com-count-wrapper strong {
+	font-weight: 400;
 }
 
-strong .post-com-count span {
-	background-color: #0073aa;
+.column-response .post-com-count.post-com-count-pending {
+	color: #bf461d;
 }
 
-strong .post-com-count:after {
-	border-top: 5px solid #0073aa;
+.comments-view-item-link {
+	display: inline-block;
+	clear: both;
 }
 
+.fixed .column-comments {
+	width: 6em;
+}
+
+.column-comments .post-com-count-wrapper {
+	white-space: nowrap;
+	word-wrap: normal;
+}
+
+/* comments bubble common */
+.column-comments .post-com-count {
+	display: inline-block;
+	vertical-align: top;
+}
+
 .column-response .post-com-count {
-	float: left;
-	margin-right: 5px;
+	display: block;
+}
+
+/* comments bubble approved */
+.column-comments .post-com-count-no-comments,
+.column-comments .post-com-count-approved {
+	margin-top: 5px;
+}
+
+.column-comments .comment-count-no-comments,
+.column-comments .comment-count-approved {
+	display: block;
+	min-width: 24px;
+	height: 2em;
+	padding: 0 8px;
+	line-height: 1.90909090; /* 1.92857142 */
+	font-size: 11px;
 	text-align: center;
+	background-color: #72777c;
+	color: #fff;
+	-webkit-box-sizing: border-box;
+	-moz-box-sizing: border-box;
+	box-sizing: border-box;
+	-webkit-border-radius: 5px;
+	border-radius: 5px;
 }
 
-.response-links {
-	float: left;
+.ie8 .column-comments .comment-count-no-comments,
+.ie8 .column-comments .comment-count-approved {
+	min-width: 0;
 }
 
+.column-comments .post-com-count-no-comments:after,
+.column-comments .post-com-count-approved:after {
+	content: "";
+	display: block;
+	width: 0;
+	height: 0;
+	margin-left: 8px;
+	border-top: 5px solid #72777c;
+	border-right: 5px solid transparent;
+}
+
+.column-comments .post-com-count-approved:hover .comment-count-approved,
+.column-comments .post-com-count-approved:focus .comment-count-approved {
+	background: #0073aa;
+}
+
+.column-comments .post-com-count-approved:hover:after,
+.column-comments .post-com-count-approved:focus:after {
+	border-top-color: #0073aa;
+}
+
+/* comments bubble pending */
+.column-comments .post-com-count-pending {
+	position: relative;
+	left: -3px;
+	min-width: 7px;
+	height: 17px;
+	border: 2px solid #fff;
+	padding: 0 5px;
+	line-height: 17px;
+	font-size: 9px;
+	text-align: center;
+	background: #ca4a1f;
+	color: #fff;
+	-webkit-border-radius: 11px;
+	border-radius: 11px;
+}
+
 /* comments */
 
 .commentlist li {
@@ -283,7 +334,6 @@
 }
 
 .fixed .column-comments {
-	width: 4em;
 	padding: 8px 0;
 	text-align: left;
 }
@@ -292,9 +342,6 @@
 	padding-left: 3px;
 }
 
-.fixed .column-comments a {
-	float: left;
-}
 
 td.column-title strong,
 td.plugin-title strong {
@@ -1452,14 +1499,6 @@
 	}
 }
 
-@media screen and ( max-width: 782px ) {
-	.plugin-card {
-		margin-left: 0;
-		margin-right: 0;
-		width: 100%;
-	}
-}
-
 .plugin-card-top {
 	position: relative;
 	padding: 20px 20px 10px;
@@ -2020,4 +2059,51 @@
 		-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,0.1);
 		box-shadow: inset 0 -1px 0 rgba(0,0,0,0.1);
 	}
+
+	.plugin-card {
+		margin-left: 0;
+		margin-right: 0;
+		width: 100%;
+	}
+
+	.post-com-count .screen-reader-text {
+		position: static;
+		width: auto;
+		height: auto;
+		margin: 0;
+	}
+
+	.column-comments .post-com-count-no-comments:after,
+	.column-comments .post-com-count-approved:after {
+		content: none;
+	}
+
+	.column-comments .post-com-count [aria-hidden="true"] {
+		display: none;
+	}
+
+	.column-comments .post-com-count-wrapper {
+		white-space: normal;
+	}
+
+	.column-comments .post-com-count-no-comments,
+	.column-comments .post-com-count-approved {
+		margin-top: 0;
+		margin-right: 0.5em;
+	}
+
+	.column-comments .post-com-count-pending {
+		position: static;
+		min-width: 0;
+		height: auto;
+		border: none;
+		padding: 0;
+		font-size: inherit;
+		line-height: inherit;
+		text-align: left;
+		background: none;
+		color: #bf461d;
+		-webkit-border-radius: 0;
+		border-radius: 0;
+	}
 }
Index: src/wp-admin/includes/class-wp-comments-list-table.php
===================================================================
--- src/wp-admin/includes/class-wp-comments-list-table.php	(revision 33152)
+++ src/wp-admin/includes/class-wp-comments-list-table.php	(working copy)
@@ -678,21 +678,23 @@
 		}
 
 		if ( current_user_can( 'edit_post', $post->ID ) ) {
-			$post_link = "<a href='" . get_edit_post_link( $post->ID ) . "'>";
+			$post_link = "<a href='" . get_edit_post_link( $post->ID ) . "' class='comments-edit-item-link'>";
 			$post_link .= esc_html( get_the_title( $post->ID ) ) . '</a>';
 		} else {
 			$post_link = esc_html( get_the_title( $post->ID ) );
 		}
 
-		echo '<div class="response-links"><span class="post-com-count-wrapper">';
-		echo $post_link . '<br />';
+		echo '<div class="response-links">';
+		echo $post_link;
+		$post_type_object = get_post_type_object( $post->post_type );
+		echo "<a href='" . get_permalink( $post->ID ) . "' class='comments-view-item-link'>" . $post_type_object->labels->view_item . '</a>';
+		if ( 'attachment' == $post->post_type && ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) ) {
+			echo $thumb;
+		}
+		echo '</div>';
+		echo '<span class="post-com-count-wrapper">';
 		$this->comments_bubble( $post->ID, $pending_comments );
 		echo '</span> ';
-		$post_type_object = get_post_type_object( $post->post_type );
-		echo "<a href='" . get_permalink( $post->ID ) . "'>" . $post_type_object->labels->view_item . '</a>';
-		echo '</div>';
-		if ( 'attachment' == $post->post_type && ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) )
-			echo $thumb;
 	}
 
 	/**
Index: src/wp-admin/includes/class-wp-list-table.php
===================================================================
--- src/wp-admin/includes/class-wp-list-table.php	(revision 33152)
+++ src/wp-admin/includes/class-wp-list-table.php	(working copy)
@@ -614,15 +614,48 @@
 	 * @param int $pending_comments Number of pending comments.
 	 */
 	protected function comments_bubble( $post_id, $pending_comments ) {
-		$pending_phrase = sprintf( __( '%s pending' ), number_format( $pending_comments ) );
+		$approved_comments = get_comments_number();
+		$approved_comments_number = number_format_i18n( $approved_comments );
+		$pending_comments_number = number_format_i18n( $pending_comments );
+		$approved_only_phrase = sprintf( _n( '%s comment', '%s comments', $approved_comments ), $approved_comments_number );
+		$approved_phrase = sprintf( _n( '%s approved comment', '%s approved comments', $approved_comments ), $approved_comments_number );
+		$pending_phrase = sprintf( _n( '%s pending comment', '%s pending comments', $pending_comments ), $pending_comments_number );
 
-		if ( $pending_comments )
-			echo '<strong>';
+		// No comments at all.
+		if ( ! $approved_comments && ! $pending_comments ) {
 
-		echo "<a href='" . esc_url( add_query_arg( 'p', $post_id, admin_url( 'edit-comments.php' ) ) ) . "' title='" . esc_attr( $pending_phrase ) . "' class='post-com-count'><span class='comment-count'>" . number_format_i18n( get_comments_number() ) . "</span></a>";
+			printf( '<span aria-hidden="true">—</span><span class="screen-reader-text">%s</span>',
+				__( 'No comments' )
+			);
 
-		if ( $pending_comments )
-			echo '</strong>';
+		// Approved comments have different display depending on some conditions.
+		} elseif ( $approved_comments ) {
+
+			printf( '<a href="%s" class="post-com-count post-com-count-approved"><span class="comment-count-approved" aria-hidden="true">%s</span><span class="screen-reader-text">%s</span></a>',
+				esc_url( add_query_arg( array( 'p' => $post_id, 'comment_status' => 'approved' ), admin_url( 'edit-comments.php' ) ) ),
+				$approved_comments_number,
+				$pending_comments ? $approved_phrase : $approved_only_phrase
+			);
+
+		} else {
+
+			printf( '<span class="post-com-count post-com-count-no-comments"><span class="comment-count comment-count-no-comments" aria-hidden="true">%s</span><span class="screen-reader-text">%s</span></span>',
+				$approved_comments_number,
+				$pending_comments ? __( 'No approved comments' ) : __( 'No comments' )
+			);
+
+		}
+
+		// If there are pending comments, just print them.
+		if ( $pending_comments ) {
+
+			printf( '<a href="%s" class="post-com-count post-com-count-pending"><span class="comment-count-pending" aria-hidden="true">%s</span><span class="screen-reader-text">%s</span></a>',
+				esc_url( add_query_arg( array( 'p' => $post_id, 'comment_status' => 'moderated' ), admin_url( 'edit-comments.php' ) ) ),
+				$pending_comments_number,
+				$pending_phrase
+			);
+
+		}
 	}
 
 	/**
