diff --git a/modules/forum/forum-list.tpl.php b/modules/forum/forum-list.tpl.php
index bc0935f888234303ebc034fa2dc6ba88ee52b5c0..257cea947d944a61b381070f7c52166407eb0665 100644
--- a/modules/forum/forum-list.tpl.php
+++ b/modules/forum/forum-list.tpl.php
@@ -15,6 +15,8 @@
  *   FALSE if the forum can contain only topics.
  * - $forum->depth: How deep the forum is in the current hierarchy.
  * - $forum->zebra: 'even' or 'odd' string used for row class.
+ * - $forum->icon_class: 'default' or 'new' string used for forum icon class.
+ * - $forum->icon_title: Text alternative for the forum icon.
  * - $forum->name: The name of the forum.
  * - $forum->link: The URL to link to this forum.
  * - $forum->description: The description of this forum.
@@ -48,6 +50,9 @@
                * left-margin for indenting.
                */ ?>
         <?php print str_repeat('<div class="indent">', $forum->depth); ?>
+          <div class="icon forum-status-<?php print $forum->icon_class; ?>" title="<?php print $forum->icon_title; ?>">
+            <span class="element-invisible"><?php print $forum->icon_title; ?></span>
+          </div>
           <div class="name"><a href="<?php print $forum->link; ?>"><?php print $forum->name; ?></a></div>
           <?php if ($forum->description): ?>
             <div class="description"><?php print $forum->description; ?></div>
diff --git a/modules/forum/forum-rtl.css b/modules/forum/forum-rtl.css
index d31c9e7f372effc98e105a292391979a28ce300e..81dd4d39606a7a2dbc443f0fa484f4835804c18c 100644
--- a/modules/forum/forum-rtl.css
+++ b/modules/forum/forum-rtl.css
@@ -1,8 +1,7 @@
 
-#forum tr td.forum {
-  padding-left: 0.5em;
-  padding-right: 25px;
-  background-position: 98% 2px;
+#forum td.forum .icon {
+  float: right;
+  margin: 0 0 0 9px;
 }
 .forum-topic-navigation {
   padding: 1em 3em 0 0;
diff --git a/modules/forum/forum.css b/modules/forum/forum.css
index 3f3ed98481ce779676bbf7dc6a7d44964afc7fed..4a67c8bcdab26b8e7209491389684ca911389cc4 100644
--- a/modules/forum/forum.css
+++ b/modules/forum/forum.css
@@ -11,15 +11,19 @@
 #forum td.pager {
   white-space: nowrap;
 }
-#forum tr td.forum {
-  padding-left: 25px; /* LTR */
-  background-position: 2px 2px; /* LTR */
-  background-image: url(../../misc/forum-default.png);
+
+#forum td.forum .icon {
+  background-image: url(../../misc/forum-icons.png);
   background-repeat: no-repeat;
+  float: left; /* LTR */
+  height: 24px;
+  margin: 0 9px 0 0; /* LTR */
+  width: 24px;
 }
-#forum tr.new-topics td.forum {
-  background-image: url(../../misc/forum-new.png);
+#forum td.forum .forum-status-new {
+  background-position: -24px 0;
 }
+
 #forum div.indent {
   margin-left: 20px;
 }
diff --git a/modules/forum/forum.module b/modules/forum/forum.module
index f2ac5acc51eaff5e27ff2df308957078019a0161..5bb43925bc55a9f10bb2f989053f9cb00d4b63fd 100644
--- a/modules/forum/forum.module
+++ b/modules/forum/forum.module
@@ -1064,11 +1064,15 @@ function template_preprocess_forum_list(&$variables) {
     $variables['forums'][$id]->new_url = '';
     $variables['forums'][$id]->new_topics = 0;
     $variables['forums'][$id]->old_topics = $forum->num_topics;
+    $variables['forums'][$id]->icon_class = 'default';
+    $variables['forums'][$id]->icon_title = t('No new posts');
     if ($user->uid) {
       $variables['forums'][$id]->new_topics = _forum_topics_unread($forum->tid, $user->uid);
       if ($variables['forums'][$id]->new_topics) {
         $variables['forums'][$id]->new_text = format_plural($variables['forums'][$id]->new_topics, '1 new', '@count new');
         $variables['forums'][$id]->new_url = url("forum/$forum->tid", array('fragment' => 'new'));
+        $variables['forums'][$id]->icon_class = 'new';
+        $variables['forums'][$id]->icon_title = t('New posts');
       }
       $variables['forums'][$id]->old_topics = $forum->num_topics - $variables['forums'][$id]->new_topics;
     }
diff --git a/themes/bartik/css/style.css b/themes/bartik/css/style.css
index 39e78051a1af3136955c97a5d1eb69b2972b0c29..9b20ac973d15ad272bfe04755bd47cef7cb70a0f 100644
--- a/themes/bartik/css/style.css
+++ b/themes/bartik/css/style.css
@@ -1435,9 +1435,6 @@ div.password-suggestions {
 div.vertical-tabs .vertical-tabs-panes fieldset.vertical-tabs-pane {
   padding: 1em;
 }
-#forum tr td.forum {
-  padding-left: 35px;
-}
 #forum .name {
   font-size: 1.083em;
 }