diff --git a/assets/default/css/theme.css b/assets/default/css/theme.css
index c6a6242df3d461805e06d366f451d3abf34a29ff..d004c4069706a8bc1d62e34fe19dd9850eaa3f9c 100644
--- a/assets/default/css/theme.css
+++ b/assets/default/css/theme.css
@@ -254,6 +254,9 @@ body {
   height: 20px;
   background: url('../images/nav_bg.png') top left repeat-x;
   border-top: 1px solid #aaa;
+  box-shadow:0 3px 2px rgba(0, 0, 0, 0.4);
+  -moz-box-shadow:0 3px 2px rgba(0, 0, 0, 0.4);
+  -webkit-box-shadow:0 3px 2px rgba(0, 0, 0, 0.4);
 }
 #nav li {
   margin: 0;
@@ -304,19 +307,11 @@ body {
 #content {
   padding: 20px 0;
   margin: 0 20px;
-  background: url('../images/content_bg.png') top left repeat-x;
-}
-
-#cnbg {
-  padding: 5px 0;
-  margin: 0 20px;
   height: auto !important;
   height: 350px;
   min-height: 350px;
-  background: none;
 }
 
-
 #footer {
   text-align: center;
   font-size: 11px;
@@ -425,7 +420,7 @@ body {
 
 #kb > li h4 a {
   font-size: 14px;
-  padding-left: 24px; 
+  padding-left: 24px;
   background: url('../images/icons/page.png?1319579499') 0 50% no-repeat;
 }
 
@@ -707,3 +702,35 @@ a.refresh {
   margin-right: 20px;
   background: url('../images/icons/file.gif') 0 50% no-repeat;
 }
+
+.button, .button:visited {
+    background: #222;
+    display: inline-block;
+    font-size: 16px;
+    padding: 8px 16px 6px 16px;
+    width:160px;
+    text-align:center;
+    color: #fff;
+    font-weight:bold;
+    text-decoration: none;
+    border-radius: 5px;
+    -moz-border-radius: 5px;
+    -webkit-border-radius: 5px;
+    box-shadow: 0 1px 3px rgba(0,0,0,0.5);
+    -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
+    -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
+    text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
+    border-bottom: 1px solid rgba(0,0,0,0.25);
+    position: relative;
+    cursor: pointer;
+    font-family:helvetica, arial, sans-serif;
+}
+
+.button:hover                          { background-color: #111; color: #fff; }
+.button:active                         { top: 1px; box-shadow:none; -moz-box-shadow:none; -webkit-box-shadow:none; }
+.button, .button:visited,
+.green.button, .green.button:visited      { background-color: #91bd09; }
+.green.button:hover                        { background-color: #749a02; }
+.blue.button, .blue.button:visited        { background-color: #00AEEF; }
+.blue.button:hover                         { background-color: #0299d2; }
+
diff --git a/include/class.nav.php b/include/class.nav.php
index a3b719f08d6bec16f6a2a7bb3fb264b1730c2f13..ce3623d37acccb57d0eae500360a5579789683b5 100644
--- a/include/class.nav.php
+++ b/include/class.nav.php
@@ -42,16 +42,16 @@ class StaffNav {
     function isStaffPanel() {
         return (!$this->isAdminPanel());
     }
-   
+
     function setTabActive($tab){
-            
+
         if($this->tabs[$tab]){
             $this->tabs[$tab]['active']=true;
             if($this->activetab && $this->activetab!=$tab && $this->tabs[$this->activetab])
                  $this->tabs[$this->activetab]['active']=false;
 
             $this->activetab=$tab;
-            
+
             return true;
         }
 
@@ -73,9 +73,9 @@ class StaffNav {
     function getActiveMenu() {
         return $this->activeMenu;
     }
-    
+
     function addSubMenu($item,$active=false){
-        
+
         $this->submenus[$this->getPanel().'.'.$this->activetab][]=$item;
         if($active)
             $this->activeMenu=sizeof($this->submenus[$this->getPanel().'.'.$this->activetab]);
@@ -105,7 +105,7 @@ class StaffNav {
                     $subnav[]=array('desc'=>'Tickets','href'=>'tickets.php','iconclass'=>'Ticket', 'droponly'=>true);
                     if($staff) {
                         if(($assigned=$staff->getNumAssignedTickets()))
-                            $subnav[]=array('desc'=>"My Tickets ($assigned)", 
+                            $subnav[]=array('desc'=>"My Tickets ($assigned)",
                                             'href'=>'tickets.php?status=assigned',
                                             'iconclass'=>'assignedTickets',
                                             'droponly'=>true);
@@ -123,19 +123,19 @@ class StaffNav {
                     $subnav[]=array('desc'=>'My Profile','href'=>'profile.php','iconclass'=>'users');
                     break;
                 case 'kbase':
-                    $subnav[]=array('desc'=>'Knowledgebase','href'=>'kb.php', 'urls'=>array('faq.php'), 'iconclass'=>'premade');
+                    $subnav[]=array('desc'=>'Knowledgebase','href'=>'kb.php', 'urls'=>array('faq.php'), 'iconclass'=>'kb');
                     if($staff) {
                         if($staff->canManageFAQ())
-                            $subnav[]=array('desc'=>'Categories','href'=>'categories.php','iconclass'=>'premade');
+                            $subnav[]=array('desc'=>'Categories','href'=>'categories.php','iconclass'=>'kb-categories');
                         if($staff->canManageCannedResponses())
-                            $subnav[]=array('desc'=>'Canned Replies','href'=>'canned.php','iconclass'=>'premade');
+                            $subnav[]=array('desc'=>'Canned Replies','href'=>'canned.php','iconclass'=>'canned');
                     }
                    break;
             }
             if($subnav)
                 $submenus[$this->getPanel().'.'.strtolower($k)]=$subnav;
         }
-        
+
         return $submenus;
     }
 
@@ -170,7 +170,7 @@ class AdminNav extends StaffNav{
             $tabs['depts']=array('desc'=>'Departments','href'=>'departments.php','title'=>'Departments');
             $this->tabs=$tabs;
         }
-        
+
         return $this->tabs;
     }
 
@@ -226,12 +226,12 @@ class AdminNav extends StaffNav{
 }
 
 class UserNav {
-        
+
     var $navs=array();
     var $activenav;
 
     var $user;
-    
+
     function UserNav($user=null, $active=''){
 
         $this->user=$user;
@@ -257,7 +257,7 @@ class UserNav {
 
     function getNavLinks(){
         global $cfg;
-      
+
         //Paths are based on the root dir.
         if(!$this->navs){
 
diff --git a/include/client/header.inc.php b/include/client/header.inc.php
index beefb3bf3c74581da257a6ef684ed5553d5d96c1..969e9e66b8d977256e8087fc8cba2dadebb8fc62 100644
--- a/include/client/header.inc.php
+++ b/include/client/header.inc.php
@@ -9,7 +9,7 @@ header("Content-Type: text/html; charset=UTF-8\r\n");
     <title><?php echo Format::htmlchars($title); ?></title>
     <meta name="description" content="customer support platform">
     <meta name="keywords" content="osTicket, Customer support system, support ticket system">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">  
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
     <link rel="stylesheet" href="<?php echo ASSETS_PATH; ?>css/theme.css" media="screen">
     <link rel="stylesheet" href="<?php echo ASSETS_PATH; ?>css/print.css" media="print">
     <script src="./js/jquery-1.7.2.min.js"></script>
@@ -21,19 +21,19 @@ header("Content-Type: text/html; charset=UTF-8\r\n");
             <a id="logo" href="<?php echo ROOT_PATH; ?>index.php" title="Support Center"><img src="<?php echo ASSETS_PATH; ?>images/logo.png" border=0 alt="Support Center"></a>
             <p>
              <?php
-             if($thisclient && is_object($thisclient) && $thisclient->isValid()) { 
+             if($thisclient && is_object($thisclient) && $thisclient->isValid()) {
                  echo $thisclient->getName().'&nbsp;-&nbsp;';
                  ?>
                 <?php
                 if($cfg->showRelatedTickets()) {?>
-                <a href="<?php echo ROOT_PATH; ?>tickets.php">My Tickets <b>(<?php echo $thisclient->getNumTickets(); ?>)</b></a> - 
+                <a href="<?php echo ROOT_PATH; ?>tickets.php">My Tickets <b>(<?php echo $thisclient->getNumTickets(); ?>)</b></a> -
                 <?php
                 } ?>
                 <a href="<?php echo ROOT_PATH; ?>logout.php">Log Out</a>
-             <?php 
+             <?php
              }elseif($nav){ ?>
                  Guest User - <a href="<?php echo ROOT_PATH; ?>login.php">Log In</a>
-              <?php 
+              <?php
              } ?>
             </p>
         </div>
@@ -47,14 +47,13 @@ header("Content-Type: text/html; charset=UTF-8\r\n");
                 }
             } ?>
         </ul>
-        <div id="content">
         <?php
         }else{ ?>
          <hr>
-        <div id="cnbg">
         <?php
         } ?>
-        
+        <div id="content">
+
          <?php if($errors['err']) { ?>
             <div id="msg_error"><?php echo $errors['err']; ?></div>
          <?php }elseif($msg) { ?>
diff --git a/include/staff/cannedreplies.inc.php b/include/staff/cannedreplies.inc.php
index 601e27d37f49646b4043b57a717abb64cb626b96..39aaaae815a8479233e3959c26b4dc28764b1ef0 100644
--- a/include/staff/cannedreplies.inc.php
+++ b/include/staff/cannedreplies.inc.php
@@ -50,7 +50,7 @@ else
  <h2>Canned Replies</h2>
  </div>
 <div style="float:right;text-align:right;padding-top:5px;padding-right:5px;">
-    <b><a href="canned.php?a=add" class="Icon newHelpTopic">Add New Reply</a></b></div>
+    <b><a href="canned.php?a=add" class="Icon newReply">Add New Reply</a></b></div>
 <div class="clear"></div>
 <form action="canned.php" method="POST" name="canned" onSubmit="return checkbox_checker(this,1,0);">
  <input type="hidden" name="do" value="mass_process" >
@@ -58,7 +58,7 @@ else
     <caption><?php echo $showing; ?></caption>
     <thead>
         <tr>
-            <th width="7">&nbsp;</th>        
+            <th width="7">&nbsp;</th>
             <th width="500"><a <?php echo $title_sort; ?> href="canned.php?<?php echo $qstr; ?>&sort=title">Title</a></th>
             <th width="80"><a  <?php echo $status_sort; ?> href="canned.php?<?php echo $qstr; ?>&sort=status">Status</a></th>
             <th width="200"><a  <?php echo $dept_sort; ?> href="canned.php?<?php echo $qstr; ?>&sort=dept">Department</a></th>
@@ -81,7 +81,7 @@ else
                 ?>
             <tr id="<?php echo $row['canned_id']; ?>">
                 <td width=7px>
-                  <input type="checkbox" name="ids[]" value="<?php echo $row['canned_id']; ?>" 
+                  <input type="checkbox" name="ids[]" value="<?php echo $row['canned_id']; ?>"
                             <?php echo $sel?'checked="checked"':''; ?>  <?php echo $default?'disabled="disabled"':''; ?>
                                 onClick="highLight(this.value,this.checked);"> </td>
                 <td>
diff --git a/include/staff/categories.inc.php b/include/staff/categories.inc.php
index a437338c20a156550487faf891324e2a16406562..9e90869c0d24acd79eabced4a1eed76c133681cc 100644
--- a/include/staff/categories.inc.php
+++ b/include/staff/categories.inc.php
@@ -44,7 +44,7 @@ else
  <h2>FAQ Categories</h2>
  </div>
 <div style="float:right;text-align:right;padding-top:5px;padding-right:5px;">
-    <b><a href="categories.php?a=add" class="Icon newHelpTopic">Add New Category</a></b></div>
+    <b><a href="categories.php?a=add" class="Icon newCategory">Add New Category</a></b></div>
 <div class="clear"></div>
 <form action="categories.php" method="POST" name="cat" onSubmit="return checkbox_checker(this,1,0);">
  <input type="hidden" name="do" value="mass_process" >
@@ -52,7 +52,7 @@ else
     <caption><?php echo $showing; ?></caption>
     <thead>
         <tr>
-            <th width="7">&nbsp;</th>        
+            <th width="7">&nbsp;</th>
             <th width="500"><a <?php echo $name_sort; ?> href="categories.php?<?php echo $qstr; ?>&sort=name">Name</a></th>
             <th width="150"><a  <?php echo $type_sort; ?> href="categories.php?<?php echo $qstr; ?>&sort=type">Type</a></th>
             <th width="80"><a  <?php echo $faqs_sort; ?> href="categories.php?<?php echo $qstr; ?>&sort=faqs">FAQs</a></th>
@@ -78,7 +78,7 @@ else
                 ?>
             <tr id="<?php echo $row['category_id']; ?>">
                 <td width=7px>
-                  <input type="checkbox" name="ids[]" value="<?php echo $row['category_id']; ?>" 
+                  <input type="checkbox" name="ids[]" value="<?php echo $row['category_id']; ?>"
                             <?php echo $sel?'checked="checked"':''; ?>  <?php echo $default?'disabled="disabled"':''; ?>
                                 onClick="highLight(this.value,this.checked);"> </td>
                 <td><a href="categories.php?id=<?php echo $row['category_id']; ?>"><?php echo Format::truncate($row['name'],200); ?></a>&nbsp;</td>
diff --git a/include/staff/kb-category.inc.php b/include/staff/kb-category.inc.php
index 65c428a2f703f0b58332bbd416426c50cec765e7..619aa6205fd8db22e0a3060d5e23b495162b5e10 100644
--- a/include/staff/kb-category.inc.php
+++ b/include/staff/kb-category.inc.php
@@ -19,9 +19,9 @@ if(!defined('OSTSTAFFINC') || !$category || !$thisstaff) die('Access Denied');
 </p>
 <?php
 if($thisstaff->canManageFAQ()) {
-    echo sprintf('<a href="categories.php?id=%d" class="Icon newHelpTopic">Edit Category</a>
-            | <a href="categories.php" class="Icon newHelpTopic">Delete Category</a>
-            | <a href="faq.php?cid=%d&a=add" class="Icon newHelpTopic">Add New FAQ</a>',
+    echo sprintf('<a href="categories.php?id=%d" class="Icon editCategory">Edit Category</a>
+            | <a href="categories.php" class="Icon deleteCategory">Delete Category</a>
+            | <a href="faq.php?cid=%d&a=add" class="Icon newFAQ">Add New FAQ</a>',
             $category->getId(),
             $category->getId());
 }
diff --git a/index.php b/index.php
index ac4fe04a014455d083aacab299fdace3a045e529..db492a87048158ba17c55deb90e19ba167261997 100644
--- a/index.php
+++ b/index.php
@@ -26,23 +26,25 @@ require(CLIENTINC_DIR.'header.inc.php');
 
     <div id="new_ticket">
         <h3>Open A New Ticket</h3>
-        <form method="get" action="open.php">  
-            <div>Please provide as much detail as possible so we can best assist you. To update a previously submitted ticket, please login.</div>
-            <input type="submit" value="Open a New Ticket">
-        </form>
+        <br>
+        <div>Please provide as much detail as possible so we can best assist you. To update a previously submitted ticket, please login.</div>
+        <p>
+            <a href="open.php" class="green button">Open a New Ticket</a>
+        </p>
     </div>
 
     <div id="check_status">
         <h3>Check Ticket Status</h3>
-        <form class="status_form" action="view.php" method="get">
-            <div>We provide archives and history of all your current and past support requests complete with responses.</div>
-            <input type="submit" value="Check Ticket Status">
-        </form>
+        <br>
+        <div>We provide archives and history of all your current and past support requests complete with responses.</div>
+        <p>
+            <a href="view.php" class="blue button">Check Ticket Status</a>
+        </p>
     </div>
 </div>
 <div class="clear"></div>
 <?php
-if($cfg && $cfg->isKnowledgebaseEnabled()){ 
+if($cfg && $cfg->isKnowledgebaseEnabled()){
     //FIXME: provide ability to feature or select random FAQs ??
 ?>
 <p>Be sure to browse our <a href="kb/index.php">Frequently Asked Questions (FAQs)</a>, before opening a ticket.</p>
diff --git a/scp/css/scp.css b/scp/css/scp.css
index 5ccdbe543b0030b0fe910fc2382102bd997a4acc..90fd975fd8c8272be307a8a986cad77bdd02a2d5 100644
--- a/scp/css/scp.css
+++ b/scp/css/scp.css
@@ -26,7 +26,7 @@ a {
 
 .strike { text-decoration:line-through; color:red; }
 
-#canned_attachments label { padding:3px; padding-right:10px; } 
+#canned_attachments label { padding:3px; padding-right:10px; }
 
 
 #breadcrumbs {
@@ -228,6 +228,10 @@ a.newTicket { background:url(../images/icons/new_ticket.gif) }
 a.premade { background:url(../images/icons/premade_reply.gif) }
 a.newPremade { background:url(../images/icons/new_premade_reply.gif) }
 
+a.kb { background:url(../images/icons/kb.gif) }
+a.kb-categories { background:url(../images/icons/kb-categories.gif) }
+a.canned { background:url(../images/icons/canned.gif) }
+
 a.staff { background:url(../images/icons/list_groups.gif) }
 a.user { background:url(../images/icons/list_users.gif) }
 a.userPref { background:url(../images/icons/user_preferences.gif) }
@@ -268,28 +272,28 @@ a.newHelpTopic { background:url(../images/icons/new_help_topic.png) }
 a.departments { background:url(../images/icons/list_departments.gif) }
 a.newDepartment { background:url(../images/icons/new_department.gif) }
 
-    
+
 /* Generic CSS based Icons. use=> <tag class="Icon iconname">text</tag> */
-    
+
 .Icon {
     width: auto;
     padding-left:20px;
     background-position: left center;
-    background-repeat: no-repeat;    
+    background-repeat: no-repeat;
 }
 
-    
+
 a.Icon {  background-repeat: no-repeat;}
 
-    
-a.Icon:hover {        
+
+a.Icon:hover {
     text-decoration: underline;
 }
 
 
 .Icon.newstaff { background:url(../images/icons/new_user.gif) 0 0 no-repeat; }
 .Icon.newteam { background:url(../images/icons/new_team.gif) 0 0 no-repeat; }
-    
+
 .Icon.Ticket { background:url(../images/icons/ticket.gif) 0 2px no-repeat; }
 .Icon.webTicket { background:url(../images/icons/ticket_source_web.gif) 0 0 no-repeat; }
 .Icon.emailTicket { background:url(../images/icons/ticket_source_email.gif) 0 0 no-repeat; }
@@ -299,7 +303,13 @@ a.Icon:hover {
 .Icon.assignedTicket { background:url(../images/icons/assigned_ticket.gif) 0 0 no-repeat; }
 .Icon.lockedTicket { background:url(../images/icons/locked_ticket.gif) 0 0 no-repeat; }
 .Icon.editTicket { background-image: url(../images/icons/edit_ticket.png); }
-    
+
+.Icon.newCategory { background-image: url(../images/icons/new_category.png); }
+.Icon.editCategory { background-image: url(../images/icons/edit_category.png); }
+.Icon.deleteCategory { background-image: url(../images/icons/delete_category.png); }
+.Icon.newFAQ { background-image: url(../images/icons/new_faq.png); }
+.Icon.newReply { background-image: url(../images/icons/new_reply.png); }
+
 .Icon.file { background-image: url(../images/icons/file.gif); }
 .Icon.refresh { background-image: url(../images/icons/refresh.gif); }
 .Icon.note {
@@ -307,14 +317,14 @@ a.Icon:hover {
     font-size: 1em;
     background-image: url(../images/icons/note.gif);
 }
-    
+
 .Icon.thread {
     font-weight: bold;
     font-size: 1em;
     background-image: url(../images/icons/thread.gif);
 }
 
-    
+
 .Icon.debugLog { background:url(../images/icons/log_debug.gif) 0 2px no-repeat; }
 .Icon.alertLog { background:url(../images/icons/log_alert.gif) 0 2px no-repeat; }
 .Icon.errorLog { background:url(../images/icons/log_error.gif) 0 2px no-repeat; }
@@ -368,7 +378,7 @@ table.list thead th {
 }
 
 table.list th a {
-    
+
     text-decoration:none;
     color:#000;
 }
@@ -927,14 +937,14 @@ h2 .reload {
 }
 
 .tip_content hr {
-        
+
     color: #ddd;
     background-color: #ddd;
-    height: 1px;  
+    height: 1px;
     border: 0;
     padding: 0;
     margin: 0.2em 0;
-    width: 100%;    
+    width: 100%;
 }
 
 .tip_close {
diff --git a/scp/images/icons/canned.gif b/scp/images/icons/canned.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8539a783ddfb80608aad5107785e3e67aa791c57
Binary files /dev/null and b/scp/images/icons/canned.gif differ
diff --git a/scp/images/icons/delete_category.png b/scp/images/icons/delete_category.png
new file mode 100644
index 0000000000000000000000000000000000000000..7afa4a1a80afe76791fad19ecdb62b7dcb8fb47f
Binary files /dev/null and b/scp/images/icons/delete_category.png differ
diff --git a/scp/images/icons/edit_category.png b/scp/images/icons/edit_category.png
new file mode 100644
index 0000000000000000000000000000000000000000..cce44c7ff6efee4891f7cb6a99936b1a8447eeb3
Binary files /dev/null and b/scp/images/icons/edit_category.png differ
diff --git a/scp/images/icons/kb-categories.gif b/scp/images/icons/kb-categories.gif
new file mode 100644
index 0000000000000000000000000000000000000000..4a0293cfd78eb8795a05301ad88ec87e56c5da61
Binary files /dev/null and b/scp/images/icons/kb-categories.gif differ
diff --git a/scp/images/icons/kb-categories.png b/scp/images/icons/kb-categories.png
new file mode 100644
index 0000000000000000000000000000000000000000..2a175ed4eea1dc8fa682a46254db4bfb7992f535
Binary files /dev/null and b/scp/images/icons/kb-categories.png differ
diff --git a/scp/images/icons/kb.gif b/scp/images/icons/kb.gif
new file mode 100644
index 0000000000000000000000000000000000000000..fe969df4e22a5dfe437757e096b4b251d5684360
Binary files /dev/null and b/scp/images/icons/kb.gif differ
diff --git a/scp/images/icons/new_category.png b/scp/images/icons/new_category.png
new file mode 100644
index 0000000000000000000000000000000000000000..ef036c2565f43c132824f9fb8d89128d70918290
Binary files /dev/null and b/scp/images/icons/new_category.png differ
diff --git a/scp/images/icons/new_faq.png b/scp/images/icons/new_faq.png
new file mode 100644
index 0000000000000000000000000000000000000000..49bb3baecc76753b9b76e50190844ef6223dd861
Binary files /dev/null and b/scp/images/icons/new_faq.png differ
diff --git a/scp/images/icons/new_reply.png b/scp/images/icons/new_reply.png
new file mode 100644
index 0000000000000000000000000000000000000000..b09dc40666dab28f988f1a261c696c8a006211b2
Binary files /dev/null and b/scp/images/icons/new_reply.png differ