diff --git a/CHANGELOG b/CHANGELOG
index 5739ea195643ee546de9c711b5f968d3e9a91f24..b0f6a0314d9d977b8fcbd5fd25457a1eda5421b8 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,8 @@
 Please view this file on the master branch, on stable branches it's out of date.
 
+v 8.5.0 (unreleased)
+  - Remove gray background from layout in UI
+
 v 8.4.0 (unreleased)
   - Improve the consistency of commit titles, branch names, tag names, issue/MR titles, on their respective project pages
   - Autocomplete data is now always loaded, instead of when focusing a comment text area (Yorick Peterse)
diff --git a/app/assets/javascripts/activities.js.coffee b/app/assets/javascripts/activities.js.coffee
index 63803747413444097550de267b493ccbd930890d..3b6b453ac51b4206457aaacb417d02dde194c2be 100644
--- a/app/assets/javascripts/activities.js.coffee
+++ b/app/assets/javascripts/activities.js.coffee
@@ -1,7 +1,7 @@
 class @Activities
   constructor: ->
     Pager.init 20, true
-    $(".event-filter .btn").bind "click", (event) =>
+    $(".event-filter a").bind "click", (event) =>
       event.preventDefault()
       @toggleFilter($(event.currentTarget))
       @reloadActivities()
@@ -12,7 +12,7 @@ class @Activities
 
 
   toggleFilter: (sender) ->
-    sender.toggleClass "active"
+    sender.closest('li').toggleClass "active"
     event_filters = $.cookie("event_filter")
     filter = sender.attr("id").split("_")[0]
     if event_filters
diff --git a/app/assets/javascripts/merge_request_tabs.js.coffee b/app/assets/javascripts/merge_request_tabs.js.coffee
index 9e2dc1250c9fa556029b9fbf1e6c7f0dc94d13ee..b10e1db7f3fc895aa6a8c0e4c030009506f86ffa 100644
--- a/app/assets/javascripts/merge_request_tabs.js.coffee
+++ b/app/assets/javascripts/merge_request_tabs.js.coffee
@@ -5,7 +5,7 @@
 #
 # ### Example Markup
 #
-#   <ul class="nav nav-tabs merge-request-tabs">
+#   <ul class="nav-links merge-request-tabs">
 #     <li class="notes-tab active">
 #       <a data-action="notes" data-target="#notes" data-toggle="tab" href="/foo/bar/merge_requests/1">
 #         Discussion
diff --git a/app/assets/stylesheets/framework.scss b/app/assets/stylesheets/framework.scss
index 48a4971c8fca834044693063d2ac031688122d0e..fa7641b1676d236fc9b1b45630b7c5653f26c027 100644
--- a/app/assets/stylesheets/framework.scss
+++ b/app/assets/stylesheets/framework.scss
@@ -24,6 +24,7 @@
 @import "framework/lists.scss";
 @import "framework/markdown_area.scss";
 @import "framework/mobile.scss";
+@import "framework/nav.scss";
 @import "framework/pagination.scss";
 @import "framework/panels.scss";
 @import "framework/selects.scss";
diff --git a/app/assets/stylesheets/framework/blocks.scss b/app/assets/stylesheets/framework/blocks.scss
index fa0e70847f34d86e7ddcec02243b31d8090b80aa..8c1bbff82013249d6c9b1cfcefd46d325a35774f 100644
--- a/app/assets/stylesheets/framework/blocks.scss
+++ b/app/assets/stylesheets/framework/blocks.scss
@@ -18,9 +18,9 @@
   line-height: 36px;
 }
 
-.content-block,
 .gray-content-block {
-  margin: -$gl-padding;
+  margin-top: 0;
+  margin-bottom: -$gl-padding;
   background-color: $background-color;
   padding: $gl-padding;
   margin-bottom: 0px;
@@ -86,10 +86,7 @@
 .cover-block {
   text-align: center;
   background: $background-color;
-  margin: -$gl-padding;
-  margin-bottom: 0;
-  padding: 44px $gl-padding;
-  border-bottom: 1px solid $border-color;
+  padding-top: 44px;
   position: relative;
 
   .avatar-holder {
@@ -136,3 +133,23 @@
 .block-connector {
   margin-top: -1px;
 }
+
+.nav-block {
+  .controls {
+    float: right;
+
+    .btn {
+      padding: 7px 10px;
+      margin-top: 11px;
+    }
+  }
+}
+
+.content-block {
+  padding: $gl-padding 0;
+  border-bottom: 1px solid $border-color;
+
+  &.oneline-block {
+    line-height: 42px;
+  }
+}
diff --git a/app/assets/stylesheets/framework/buttons.scss b/app/assets/stylesheets/framework/buttons.scss
index bb29829b7a1b49c6675a1c2af33dcd822cc083a7..d1d692f8384687e382076b972918bfa715959f42 100644
--- a/app/assets/stylesheets/framework/buttons.scss
+++ b/app/assets/stylesheets/framework/buttons.scss
@@ -159,33 +159,6 @@
   }
 }
 
-.btn-group-next {
-  .btn {
-    padding: 9px 0px;
-    font-size: 15px;
-    color: #7f8fa4;
-    border-color: #e7e9ed;
-    width: 140px;
-
-    .badge {
-      font-weight: normal;
-      background-color: #eee;
-      color: #78a;
-    }
-
-    &.active {
-      border-color: $gl-info;
-      background: $gl-info;
-      color: #fff;
-
-      .badge {
-        color: $gl-info;
-        background-color: white;
-      }
-    }
-  }
-}
-
 .btn-clipboard {
   border: none;
 }
diff --git a/app/assets/stylesheets/framework/common.scss b/app/assets/stylesheets/framework/common.scss
index 11730000f85e32f06b75fe0c282f7c3e0e00d802..05645116268bcccf524ab76b8ea240073a1682bb 100644
--- a/app/assets/stylesheets/framework/common.scss
+++ b/app/assets/stylesheets/framework/common.scss
@@ -374,75 +374,6 @@ table {
   }
 }
 
-.center-top-menu, .left-top-menu {
-  @include nav-menu;
-  text-align: center;
-  margin-top: 5px;
-  margin-bottom: $gl-padding;
-  height: auto;
-  margin-top: -$gl-padding;
-
-  &.no-bottom {
-    margin-bottom: 0;
-  }
-
-  &.no-top {
-    margin-top: 0;
-  }
-
-  li a {
-    display: inline-block;
-    padding-top: $gl-padding;
-    padding-bottom: 11px;
-    margin-bottom: -1px;
-  }
-
-  &.bottom-border {
-    border-bottom: 1px solid $border-color;
-    height: 57px;
-  }
-
-  &.wide {
-    margin-left: -$gl-padding;
-    margin-right: -$gl-padding;
-  }
-}
-
-.left-top-menu {
-  text-align: left;
-  border-bottom: 1px solid #EEE;
-}
-
-.center-middle-menu {
-  @include nav-menu;
-  padding: 0;
-  text-align: center;
-  margin: -$gl-padding;
-  margin-top: 0;
-  margin-bottom: 0;
-  height: 58px;
-  border-bottom: 1px solid $border-color;
-
-  li {
-    &:after {
-      content: "|";
-      color: $border-gray-light;
-    }
-
-    &:last-child {
-      &:after {
-        content: none;
-      }
-    }
-
-    > a {
-      display: inline-block;
-      text-transform: uppercase;
-      font-size: 13px;
-    }
-  }
-}
-
 .dropzone .dz-preview .dz-progress {
   border-color: $border-color !important;
 }
diff --git a/app/assets/stylesheets/framework/files.scss b/app/assets/stylesheets/framework/files.scss
index cbfd4bc29b636fdde456116b7f970c0aea75e7d2..6ee104ee31a575731680d569c7fcd38d22d6a5be 100644
--- a/app/assets/stylesheets/framework/files.scss
+++ b/app/assets/stylesheets/framework/files.scss
@@ -3,11 +3,8 @@
  *
  */
 .file-holder {
-  margin-left: -$gl-padding;
-  margin-right: -$gl-padding;
   border: none;
-  border-top: 1px solid #E7E9EE;
-  border-bottom: 1px solid #E7E9EE;
+  border: 1px solid $border-color;
 
   &.readme-holder {
     border-bottom: 0;
diff --git a/app/assets/stylesheets/framework/flash.scss b/app/assets/stylesheets/framework/flash.scss
index 82eb50ad4be068473bac0507f6fc1a1aa75750b0..1bfd0213995c45b4bdbd034803eb41b7dbc928bc 100644
--- a/app/assets/stylesheets/framework/flash.scss
+++ b/app/assets/stylesheets/framework/flash.scss
@@ -8,10 +8,12 @@
   .flash-notice {
     @extend .alert;
     @extend .alert-info;
+    margin: 0;
   }
 
   .flash-alert {
     @extend .alert;
     @extend .alert-danger;
+    margin: 0;
   }
 }
diff --git a/app/assets/stylesheets/framework/header.scss b/app/assets/stylesheets/framework/header.scss
index 4dbbb56104bdca5b3dd1d411f449b9ecbc4cca8d..ba5e72c8c5a45357ced756972600ad90764535fc 100644
--- a/app/assets/stylesheets/framework/header.scss
+++ b/app/assets/stylesheets/framework/header.scss
@@ -28,6 +28,7 @@ header {
     min-height: $header-height;
     background-color: #fff;
     border: none;
+    border-bottom: 1px solid #EEE;
 
     .container-fluid {
       width: 100% !important;
diff --git a/app/assets/stylesheets/framework/layout.scss b/app/assets/stylesheets/framework/layout.scss
index a1a9990241d6964d96bda9f13e882c2c7ae9c66e..e901c78d02fb06ee9b87b78771be024bc66a2b87 100644
--- a/app/assets/stylesheets/framework/layout.scss
+++ b/app/assets/stylesheets/framework/layout.scss
@@ -5,8 +5,6 @@ html {
 }
 
 body {
-  background-color: #F3F3F3 !important;
-
   &.navless {
     background-color: white !important;
   }
diff --git a/app/assets/stylesheets/framework/lists.scss b/app/assets/stylesheets/framework/lists.scss
index bbdb1c038c5e408b3714870d62cc12dd16a1813f..c6bc6fb324d5707a135c3666e638c57b0e8c09ed 100644
--- a/app/assets/stylesheets/framework/lists.scss
+++ b/app/assets/stylesheets/framework/lists.scss
@@ -109,10 +109,8 @@ ul.content-list {
   padding: 0;
 
   > li {
-    padding: $gl-padding;
+    padding: $gl-padding 0;
     border-color: $table-border-color;
-    margin-left: -$gl-padding;
-    margin-right: -$gl-padding;
     color: $gl-gray;
 
     .avatar {
@@ -133,6 +131,7 @@ ul.content-list {
 .panel > .content-list {
   li {
     margin: 0;
+    padding: $gl-padding;
   }
 }
 
@@ -148,7 +147,7 @@ ul.controls {
   > li {
     float: left;
     margin-right: 10px;
-    
+
     &:last-child {
       margin-right: 0;
     }
diff --git a/app/assets/stylesheets/framework/markdown_area.scss b/app/assets/stylesheets/framework/markdown_area.scss
index 4a00a197d9a0c817eaa19345e81fe6b176234e46..c540e527bed3eb93e168639dad0767fba9aa1e17 100644
--- a/app/assets/stylesheets/framework/markdown_area.scss
+++ b/app/assets/stylesheets/framework/markdown_area.scss
@@ -65,13 +65,6 @@
   position: relative;
 }
 
-.md-header {
-  ul {
-    float: left;
-    margin-bottom: 1px;
-  }
-}
-
 .referenced-users {
   color: #4c4e54;
   padding-top: 10px;
@@ -85,23 +78,6 @@
   box-shadow: none;
 }
 
-.new_note,
-.edit_note,
-.detail-page-description,
-.milestone-description,
-.wiki-content,
-.merge-request-form {
-  .nav-tabs {
-    margin-bottom: 0;
-    border: none;
-
-    li a,
-    li.active a {
-      border: 1px solid #DDD;
-    }
-  }
-}
-
 .markdown-area {
   @include border-radius(0);
   background: #FFF;
diff --git a/app/assets/stylesheets/framework/mixins.scss b/app/assets/stylesheets/framework/mixins.scss
index 41fd890f14f8046b858b3e6f56fffb4dd16ba338..1d5000fe38881cdf5b388ab0ebf35caea083e2f8 100644
--- a/app/assets/stylesheets/framework/mixins.scss
+++ b/app/assets/stylesheets/framework/mixins.scss
@@ -118,38 +118,3 @@
   font-size: 16px;
   line-height: 24px;
 }
-
-@mixin nav-menu {
-  padding: 0;
-  margin: 0;
-  list-style: none;
-  height: 56px;
-
-  li {
-    display: inline-block;
-
-    a {
-      padding: 14px;
-      font-size: 15px;
-      line-height: 28px;
-      color: #959494;
-      border-bottom: 2px solid transparent;
-
-      &:hover, &:active, &:focus {
-        text-decoration: none;
-        outline: none;
-      }
-    }
-
-    &.active a {
-      color: #616060;
-      border-bottom: 2px solid #4688f1;
-    }
-
-    .badge {
-      font-weight: normal;
-      background-color: #eee;
-      color: #78a;
-    }
-  }
-}
diff --git a/app/assets/stylesheets/framework/mobile.scss b/app/assets/stylesheets/framework/mobile.scss
index c00709fb6bb9a3bb1d7f07080ed77ff2502610a1..28c294714adbd0bef10b59b356878e0dbe22a279 100644
--- a/app/assets/stylesheets/framework/mobile.scss
+++ b/app/assets/stylesheets/framework/mobile.scss
@@ -9,7 +9,7 @@
     padding-right: 5px;
   }
 
-  .nav.nav-tabs > li > a {
+  .nav-links > li > a {
     padding: 10px;
     font-size: 12px;
     margin-right: 3px;
@@ -81,7 +81,7 @@
     display: none;
   }
 
-  .center-top-menu, .left-top-menu {
+  .nav-links, .nav-links {
     li a {
       font-size: 14px;
       padding: 19px 10px;
diff --git a/app/assets/stylesheets/framework/nav.scss b/app/assets/stylesheets/framework/nav.scss
new file mode 100644
index 0000000000000000000000000000000000000000..c537d97fb245703964787428eea36869c13a55ab
--- /dev/null
+++ b/app/assets/stylesheets/framework/nav.scss
@@ -0,0 +1,39 @@
+.nav-links {
+  padding: 0;
+  margin: 0;
+  list-style: none;
+  height: auto;
+  border-bottom: 1px solid $border-color;
+
+  li {
+    display: inline-block;
+
+    a {
+      display: inline-block;
+      padding: 14px;
+      padding-top: $gl-padding;
+      padding-bottom: 11px;
+      margin-bottom: -1px;
+      font-size: 15px;
+      line-height: 28px;
+      color: #959494;
+      border-bottom: 2px solid transparent;
+
+      &:hover, &:active, &:focus {
+        text-decoration: none;
+        outline: none;
+      }
+    }
+
+    &.active a {
+      color: #000000;
+      border-bottom: 2px solid #4688f1;
+    }
+
+    .badge {
+      font-weight: normal;
+      background-color: #eee;
+      color: #78a;
+    }
+  }
+}
diff --git a/app/assets/stylesheets/framework/sidebar.scss b/app/assets/stylesheets/framework/sidebar.scss
index 83243dd24576d4464f4861c9755954d6cc5aeb69..540d0b0316351dcffb8c22651c2494c5af868eec 100644
--- a/app/assets/stylesheets/framework/sidebar.scss
+++ b/app/assets/stylesheets/framework/sidebar.scss
@@ -21,11 +21,10 @@
 
 .content-wrapper {
   width: 100%;
-  padding: 20px;
 
   .container-fluid {
     background: #FFF;
-    padding: $gl-padding;
+    padding: 0 $gl-padding;
 
     &.container-blank {
       background: none;
diff --git a/app/assets/stylesheets/framework/tables.scss b/app/assets/stylesheets/framework/tables.scss
index 793ab3d9bb9bf50e50a3953864233d5ea4f58df5..c4e9f467ce4ea4ba73115ca5ba4b91de16232667 100644
--- a/app/assets/stylesheets/framework/tables.scss
+++ b/app/assets/stylesheets/framework/tables.scss
@@ -1,13 +1,11 @@
 .table-holder {
-  margin: -$gl-padding;
-  margin-top: 0;
-  margin-bottom: 0;
+  margin: 0;
 }
 
 table {
   &.table {
     margin-bottom: $gl-padding;
-    
+
     .dropdown-menu a {
       text-decoration: none;
     }
@@ -32,6 +30,7 @@ table {
       }
 
       th {
+        background-color: $background-color;
         font-weight: normal;
         font-size: 15px;
         border-bottom: 1px solid $border-color !important;
diff --git a/app/assets/stylesheets/framework/timeline.scss b/app/assets/stylesheets/framework/timeline.scss
index ff41e26ed8adc4185f783f34a567820392d27e44..47b843e5e3d585660231546a0d0b97c024f66e75 100644
--- a/app/assets/stylesheets/framework/timeline.scss
+++ b/app/assets/stylesheets/framework/timeline.scss
@@ -5,10 +5,8 @@
   padding: 0;
 
   .timeline-entry {
-    padding: $gl-padding;
+    padding: $gl-padding 0;
     border-color: $table-border-color;
-    margin-left: -$gl-padding;
-    margin-right: -$gl-padding;
     color: $gl-gray;
     border-bottom: 1px solid $border-white-light;
 
diff --git a/app/assets/stylesheets/framework/tw_bootstrap.scss b/app/assets/stylesheets/framework/tw_bootstrap.scss
index 94f0ed761dfbd25cb8307e8ac909de54c3c601b3..88072606bf58686a7a08155e396cc70d45b881db 100644
--- a/app/assets/stylesheets/framework/tw_bootstrap.scss
+++ b/app/assets/stylesheets/framework/tw_bootstrap.scss
@@ -99,47 +99,6 @@
   }
 }
 
-// Nav tabs
-.nav.nav-tabs {
-  margin-bottom: 15px;
-
-  li {
-    > a {
-      margin-right: 5px;
-      line-height: 20px;
-      border-color: #EEE;
-      color: #888;
-      border-bottom: 1px solid #ddd;
-      .badge {
-        background-color: #eee;
-        color: #888;
-        text-shadow: 0 1px 1px #fff;
-      }
-      i.fa {
-        line-height: 14px;
-      }
-    }
-    &.active {
-      > a {
-        border-color: #CCC;
-        border-bottom: 1px solid #fff;
-        color: #333;
-        font-weight: bold;
-      }
-    }
-  }
-}
-
-.nav-tabs > li > a,
-.nav-pills > li > a {
-  color: #666;
-}
-
-.nav-pills > .active > a > span > .badge {
-  background-color: #fff;
-  color: $gl-primary;
-}
-
 
 /**
  * fix to keep tooltips position in top navigation bar
diff --git a/app/assets/stylesheets/framework/typography.scss b/app/assets/stylesheets/framework/typography.scss
index 714369d9f152a36f4816c45d6f21157559b8daa6..ab4f71af039d1591c413d88449c544465a4761a3 100644
--- a/app/assets/stylesheets/framework/typography.scss
+++ b/app/assets/stylesheets/framework/typography.scss
@@ -177,7 +177,7 @@ body {
 }
 
 .page-title {
-  margin-top: 0px;
+  margin-top: $gl-padding;
   line-height: 1.3;
   font-size: 1.25em;
   font-weight: 600;
diff --git a/app/assets/stylesheets/framework/zen.scss b/app/assets/stylesheets/framework/zen.scss
index 002bd7e8ca5831669f33dd3045bd781a93e5b828..c3f27333fadab1570a73a4379e9fe801b0b02f26 100644
--- a/app/assets/stylesheets/framework/zen.scss
+++ b/app/assets/stylesheets/framework/zen.scss
@@ -4,7 +4,7 @@
     position: absolute;
     top: 0px;
     right: 4px;
-    line-height: 40px;
+    line-height: 56px;
   }
 
   a.js-zen-leave {
diff --git a/app/assets/stylesheets/pages/commit.scss b/app/assets/stylesheets/pages/commit.scss
index 05d2f306d0f031a44994ff1b03b6aac2376bed83..6ec88bdd804975f5819889fda91b3873dc6fad4f 100644
--- a/app/assets/stylesheets/pages/commit.scss
+++ b/app/assets/stylesheets/pages/commit.scss
@@ -39,6 +39,8 @@
 }
 
 .commit-box {
+  border-top: 1px solid $border-color;
+
   .commit-title {
     margin: 0;
     font-size: 23px;
diff --git a/app/assets/stylesheets/pages/detail_page.scss b/app/assets/stylesheets/pages/detail_page.scss
index deab805dbc2988ab003f6f5b47675e7cb1697a92..529a43548c80b4b9dec44a0686db48b2e76a1b9f 100644
--- a/app/assets/stylesheets/pages/detail_page.scss
+++ b/app/assets/stylesheets/pages/detail_page.scss
@@ -1,7 +1,5 @@
 .detail-page-header {
-  margin: -$gl-padding;
-  padding: 7px $gl-padding;
-  margin-bottom: 0px;
+  padding: 11px 0;
   border-bottom: 1px solid $border-color;
   color: #5c5d5e;
   font-size: 16px;
diff --git a/app/assets/stylesheets/pages/diff.scss b/app/assets/stylesheets/pages/diff.scss
index afd6fb73675c36541b65e95f5a2a6b460c4656fe..685e769723783d3ccfaab9db86073a902258d537 100644
--- a/app/assets/stylesheets/pages/diff.scss
+++ b/app/assets/stylesheets/pages/diff.scss
@@ -1,9 +1,7 @@
 // Common
 .diff-file {
-  margin-left: -$gl-padding;
-  margin-right: -$gl-padding;
-  border: none;
-  border-bottom: 1px solid #E7E9EE;
+  border: 1px solid $border-color;
+  border-top: none;
 
   .diff-header {
     position: relative;
diff --git a/app/assets/stylesheets/pages/events.scss b/app/assets/stylesheets/pages/events.scss
index 984b4b91216c3b45463cdaa79d0d7e0f3003b862..8fa15b35748cdc1799281420d035e9c070b6ee67 100644
--- a/app/assets/stylesheets/pages/events.scss
+++ b/app/assets/stylesheets/pages/events.scss
@@ -4,9 +4,7 @@
  */
 .event-item {
   font-size: $gl-font-size;
-  padding: $gl-padding $gl-padding $gl-padding ($gl-padding + $gl-avatar-size + 15px);
-  margin-left: -$gl-padding;
-  margin-right: -$gl-padding;
+  padding: $gl-padding 0 $gl-padding ($gl-avatar-size + 15px);
   border-bottom: 1px solid $table-border-color;
   color: #7f8fa4;
 
diff --git a/app/assets/stylesheets/pages/issuable.scss b/app/assets/stylesheets/pages/issuable.scss
index d4b44004f4fb1e7a84b5d90c6e2aee6acd6af9c6..7ab77550496adc1d012539700532afcf4845695a 100644
--- a/app/assets/stylesheets/pages/issuable.scss
+++ b/app/assets/stylesheets/pages/issuable.scss
@@ -30,7 +30,7 @@
     margin-top: 7px;
   }
 
-  .center-top-menu {
+  .nav-links {
     text-align: left;
   }
 }
diff --git a/app/assets/stylesheets/pages/merge_requests.scss b/app/assets/stylesheets/pages/merge_requests.scss
index efd33df2e9988d6f9086a4aed12b562cb986f085..75f2ae80a92f49e07998c888a282e6acc2a23d05 100644
--- a/app/assets/stylesheets/pages/merge_requests.scss
+++ b/app/assets/stylesheets/pages/merge_requests.scss
@@ -3,9 +3,9 @@
  *
  */
 .mr-state-widget {
-  background: #F7F8FA;
+  background: $background-color;
   color: $gl-gray;
-  border: 1px solid #dce0e6;
+  border: 1px solid $border-color;
   @include border-radius(2px);
 
   form {
diff --git a/app/assets/stylesheets/pages/projects.scss b/app/assets/stylesheets/pages/projects.scss
index f24b71963a85a9bc59e2ab30d36d156cd726de55..bd5f96a87ef157297b4c684c02cc4c3cfbaa3e0f 100644
--- a/app/assets/stylesheets/pages/projects.scss
+++ b/app/assets/stylesheets/pages/projects.scss
@@ -26,6 +26,8 @@
 }
 
 .project-home-panel {
+  padding-bottom: 40px;
+  border-bottom: 1px solid $border-color;
 
   .cover-controls {
     .project-settings-dropdown {
@@ -226,7 +228,6 @@
 }
 
 .projects-search-form {
-
   .input-group .form-control {
     height: 42px;
   }
@@ -351,28 +352,6 @@
   color: #555;
 }
 
-ul.nav.nav-projects-tabs {
-  @extend .nav-tabs;
-
-  padding-left: 8px;
-
-  li {
-    a {
-      padding: 6px 25px;
-      margin-top: 2px;
-      border-color: #DDD;
-      background-color: #EEE;
-      text-shadow: 0 1px 1px white;
-      color: #555;
-    }
-    &.active {
-      a {
-        font-weight: bold;
-      }
-    }
-  }
-}
-
 .project_member_row form {
   margin: 0px;
 }
@@ -416,11 +395,8 @@ ul.nav.nav-projects-tabs {
 
 .top-area {
   border-bottom: 1px solid #EEE;
-  margin: 0 -16px;
-  padding: 0 $gl-padding;
-  height: 42px;
 
-  ul.left-top-menu {
+  ul.nav-links {
     display: inline-block;
     width: 50%;
     margin-bottom: 0px;
@@ -482,11 +458,11 @@ table.table.protected-branches-list tr.no-border {
   padding-top: 10px;
   padding-bottom: 4px;
 
-  ul.nav-pills {
+  ul.nav {
     display:inline-block;
   }
 
-  .nav-pills li {
+  .nav li {
     display:inline;
   }
 
@@ -523,8 +499,7 @@ pre.light-well {
 }
 
 .projects-search-form {
-  margin: -$gl-padding;
-  padding: $gl-padding;
+  padding: $gl-padding 0;
   padding-bottom: 0;
   margin-bottom: 0px;
 
@@ -574,10 +549,8 @@ pre.light-well {
   @include basic-list;
 
   .project-row {
-    padding: $gl-padding;
+    padding: $gl-padding 0;
     border-color: $table-border-color;
-    margin-left: -$gl-padding;
-    margin-right: -$gl-padding;
 
     &.no-description {
       .project {
@@ -631,8 +604,6 @@ pre.light-well {
 }
 
 .project-last-commit {
-  margin: 0 7px;
-
   .ci-status {
     margin-right: 16px;
   }
@@ -662,9 +633,7 @@ pre.light-well {
 }
 
 .project-show-readme .readme-holder {
-  margin-left: -$gl-padding;
-  margin-right: -$gl-padding;
-  padding: ($gl-padding + 7px);
+  padding: $gl-padding 0;
   border-top: 0;
 
   .edit-project-readme {
diff --git a/app/assets/stylesheets/pages/tree.scss b/app/assets/stylesheets/pages/tree.scss
index 97505edeabf53fae1007be54c38cae70a1ea819a..6a6dd7dfc853c8cf9b2d97b6d31e4ce8f7ccb9c5 100644
--- a/app/assets/stylesheets/pages/tree.scss
+++ b/app/assets/stylesheets/pages/tree.scss
@@ -1,4 +1,7 @@
 .tree-holder {
+  > .nav-block {
+    margin: 11px 0;
+  }
 
   .file-finder {
     width: 50%;
@@ -13,7 +16,7 @@
 
     tr {
       > td, > th {
-        line-height: 28px;
+        line-height: 26px;
       }
 
       &:hover {
@@ -86,12 +89,14 @@
 
 .blob-commit-info {
   list-style: none;
+  padding: $gl-padding;
+  background: $background-color;
+  border: 1px solid $border-color;
+  border-bottom: none;
   margin: 0;
-  padding: 0;
-  margin-bottom: 5px;
 
   .commit {
-    padding: $gl-padding 0;
+    padding: 0;
 
     .commit-row-title {
       .commit-row-message {
@@ -115,3 +120,8 @@
   font-weight: normal;
   color: $md-link-color;
 }
+
+.tree-controls {
+  float: right;
+  margin-top: 11px;
+}
diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb
index dde83ff36b50b2924682ce306b49c24055af5d58..31bf45baeb708ec4cabf14b60f8e08a10740f68f 100644
--- a/app/helpers/events_helper.rb
+++ b/app/helpers/events_helper.rb
@@ -27,13 +27,15 @@ module EventsHelper
     key = key.to_s
     active = 'active' if @event_filter.active?(key)
     link_opts = {
-      class: "event-filter-link btn btn-default #{active}",
+      class: "event-filter-link",
       id:    "#{key}_event_filter",
       title: "Filter by #{tooltip.downcase}",
     }
 
-    link_to request.path, link_opts do
-      content_tag(:span, ' ' + tooltip)
+    content_tag :li, class: active do
+      link_to request.path, link_opts do
+        content_tag(:span, ' ' + tooltip)
+      end
     end
   end
 
diff --git a/app/views/admin/builds/index.html.haml b/app/views/admin/builds/index.html.haml
index ddd4e1481ebffd09a23761b03e8401421901ef59..ebf2b7b60e72803ccae482aac1fda763e438362a 100644
--- a/app/views/admin/builds/index.html.haml
+++ b/app/views/admin/builds/index.html.haml
@@ -4,7 +4,7 @@
       - if @all_builds.running_or_pending.any?
         = link_to 'Cancel all', cancel_all_admin_builds_path, data: { confirm: 'Are you sure?' }, class: 'btn btn-danger', method: :post
 
-  %ul.center-top-menu
+  %ul.nav-links
     %li{class: ('active' if @scope.nil?)}
       = link_to admin_builds_path do
         All
diff --git a/app/views/admin/logs/show.html.haml b/app/views/admin/logs/show.html.haml
index 1484baa78e0aad795d536599e42fe7ef2f90bcd3..af9fdeb073454e205a91d762b4a55d84eb0e6ada 100644
--- a/app/views/admin/logs/show.html.haml
+++ b/app/views/admin/logs/show.html.haml
@@ -1,12 +1,13 @@
 - page_title "Logs"
 - loggers = [Gitlab::GitLogger, Gitlab::AppLogger,
              Gitlab::ProductionLogger, Gitlab::SidekiqLogger]
-%ul.nav.nav-tabs.log-tabs
+%ul.nav-links.log-tabs
   - loggers.each do |klass|
     %li{ class: (klass == Gitlab::GitLogger ? 'active' : '') }
       = link_to klass::file_name, "##{klass::file_name_noext}",
           'data-toggle' => 'tab'
-%p.light To prevent performance issues admin logs output the last 2000 lines
+.gray-content-block
+  To prevent performance issues admin logs output the last 2000 lines
 .tab-content
   - loggers.each do |klass|
     .tab-pane{ class: (klass == Gitlab::GitLogger ? 'active' : ''),
diff --git a/app/views/admin/users/_head.html.haml b/app/views/admin/users/_head.html.haml
index bc44b1b1d8e2e724c4b724bbd2a756c2512e094f..ce5e21e54cc01b0fb8571154088b25b8056a0a8f 100644
--- a/app/views/admin/users/_head.html.haml
+++ b/app/views/admin/users/_head.html.haml
@@ -12,7 +12,7 @@
       %i.fa.fa-pencil-square-o
       Edit
 %hr
-%ul.nav.nav-tabs
+%ul.nav-links
   = nav_link(path: 'users#show') do
     = link_to "Account", admin_user_path(@user)
   = nav_link(path: 'users#groups') do
@@ -23,3 +23,4 @@
     = link_to "SSH keys", keys_admin_user_path(@user)
   = nav_link(controller: :identities) do
     = link_to "Identities", admin_user_identities_path(@user)
+.append-bottom-default
diff --git a/app/views/admin/users/index.html.haml b/app/views/admin/users/index.html.haml
index 8312642b6c366e73be6cd2d800d3b69feced549f..b050a4d01c3312116ec4c560e7510396899d8ab0 100644
--- a/app/views/admin/users/index.html.haml
+++ b/app/views/admin/users/index.html.haml
@@ -1,106 +1,101 @@
 - page_title "Users"
 = render 'shared/show_aside'
 
-.row
-  %aside.col-md-3
-    .admin-filter
-      %ul.nav.nav-pills.nav-stacked
-        %li{class: "#{'active' unless params[:filter]}"}
-          = link_to admin_users_path do
-            Active
-            %small.pull-right= number_with_delimiter(User.active.count)
-        %li{class: "#{'active' if params[:filter] == "admins"}"}
-          = link_to admin_users_path(filter: "admins") do
-            Admins
-            %small.pull-right= number_with_delimiter(User.admins.count)
-        %li.filter-two-factor-enabled{class: "#{'active' if params[:filter] == 'two_factor_enabled'}"}
-          = link_to admin_users_path(filter: 'two_factor_enabled') do
-            2FA Enabled
-            %small.pull-right= number_with_delimiter(User.with_two_factor.count)
-        %li.filter-two-factor-disabled{class: "#{'active' if params[:filter] == 'two_factor_disabled'}"}
-          = link_to admin_users_path(filter: 'two_factor_disabled') do
-            2FA Disabled
-            %small.pull-right= number_with_delimiter(User.without_two_factor.count)
-        %li{class: "#{'active' if params[:filter] == "blocked"}"}
-          = link_to admin_users_path(filter: "blocked") do
-            Blocked
-            %small.pull-right= number_with_delimiter(User.blocked.count)
-        %li{class: "#{'active' if params[:filter] == "wop"}"}
-          = link_to admin_users_path(filter: "wop") do
-            Without projects
-            %small.pull-right= number_with_delimiter(User.without_projects.count)
-      %hr
-      = form_tag admin_users_path, method: :get, class: 'form-inline' do
-        .form-group
-          = search_field_tag :name, params[:name], placeholder: 'Name, email or username', class: 'form-control', spellcheck: false
-          = hidden_field_tag "filter", params[:filter]
-        = button_tag class: 'btn btn-primary' do
-          %i.fa.fa-search
-      %hr
-      = link_to 'Reset', admin_users_path, class: "btn btn-cancel"
+.admin-filter
+  %ul.nav-links
+    %li{class: "#{'active' unless params[:filter]}"}
+      = link_to admin_users_path do
+        Active
+        %small.badge= number_with_delimiter(User.active.count)
+    %li{class: "#{'active' if params[:filter] == "admins"}"}
+      = link_to admin_users_path(filter: "admins") do
+        Admins
+        %small.badge= number_with_delimiter(User.admins.count)
+    %li.filter-two-factor-enabled{class: "#{'active' if params[:filter] == 'two_factor_enabled'}"}
+      = link_to admin_users_path(filter: 'two_factor_enabled') do
+        2FA Enabled
+        %small.badge= number_with_delimiter(User.with_two_factor.count)
+    %li.filter-two-factor-disabled{class: "#{'active' if params[:filter] == 'two_factor_disabled'}"}
+      = link_to admin_users_path(filter: 'two_factor_disabled') do
+        2FA Disabled
+        %small.badge= number_with_delimiter(User.without_two_factor.count)
+    %li{class: "#{'active' if params[:filter] == "blocked"}"}
+      = link_to admin_users_path(filter: "blocked") do
+        Blocked
+        %small.badge= number_with_delimiter(User.blocked.count)
+    %li{class: "#{'active' if params[:filter] == "wop"}"}
+      = link_to admin_users_path(filter: "wop") do
+        Without projects
+        %small.badge= number_with_delimiter(User.without_projects.count)
 
-  %section.col-md-9
-    .panel.panel-default
-      .panel-heading
-        Users (#{number_with_delimiter(@users.total_count)})
-        .panel-head-actions
-          .dropdown.inline
-            %a.dropdown-toggle.btn.btn-sm{href: '#', "data-toggle" => "dropdown"}
-              %span.light sort:
-              - if @sort.present?
-                = sort_options_hash[@sort]
-              - else
-                = sort_title_name
-              %b.caret
-            %ul.dropdown-menu
-              %li
-                = link_to admin_users_path(sort: sort_value_name, filter: params[:filter]) do
-                  = sort_title_name
-                = link_to admin_users_path(sort: sort_value_recently_signin, filter: params[:filter]) do
-                  = sort_title_recently_signin
-                = link_to admin_users_path(sort: sort_value_oldest_signin, filter: params[:filter]) do
-                  = sort_title_oldest_signin
-                = link_to admin_users_path(sort: sort_value_recently_created, filter: params[:filter]) do
-                  = sort_title_recently_created
-                = link_to admin_users_path(sort: sort_value_oldest_created, filter: params[:filter]) do
-                  = sort_title_oldest_created
-                = link_to admin_users_path(sort: sort_value_recently_updated, filter: params[:filter]) do
-                  = sort_title_recently_updated
-                = link_to admin_users_path(sort: sort_value_oldest_updated, filter: params[:filter]) do
-                  = sort_title_oldest_updated
-
-          = link_to 'New User', new_admin_user_path, class: "btn btn-new btn-sm"
-      %ul.well-list
-        - @users.each do |user|
+  .gray-content-block.second-block
+    .pull-right
+      .dropdown.inline
+        %a.dropdown-toggle.btn{href: '#', "data-toggle" => "dropdown"}
+          %span.light sort:
+          - if @sort.present?
+            = sort_options_hash[@sort]
+          - else
+            = sort_title_name
+          %b.caret
+        %ul.dropdown-menu
           %li
-            .list-item-name
-              - if user.blocked?
-                %i.fa.fa-lock.cred
+            = link_to admin_users_path(sort: sort_value_name, filter: params[:filter]) do
+              = sort_title_name
+            = link_to admin_users_path(sort: sort_value_recently_signin, filter: params[:filter]) do
+              = sort_title_recently_signin
+            = link_to admin_users_path(sort: sort_value_oldest_signin, filter: params[:filter]) do
+              = sort_title_oldest_signin
+            = link_to admin_users_path(sort: sort_value_recently_created, filter: params[:filter]) do
+              = sort_title_recently_created
+            = link_to admin_users_path(sort: sort_value_oldest_created, filter: params[:filter]) do
+              = sort_title_oldest_created
+            = link_to admin_users_path(sort: sort_value_recently_updated, filter: params[:filter]) do
+              = sort_title_recently_updated
+            = link_to admin_users_path(sort: sort_value_oldest_updated, filter: params[:filter]) do
+              = sort_title_oldest_updated
+
+      = link_to 'New User', new_admin_user_path, class: "btn btn-new"
+    = form_tag admin_users_path, method: :get, class: 'form-inline' do
+      .form-group
+        = search_field_tag :name, params[:name], placeholder: 'Name, email or username', class: 'form-control', spellcheck: false
+        = hidden_field_tag "filter", params[:filter]
+      = button_tag class: 'btn btn-primary' do
+        %i.fa.fa-search
+
+
+.panel.panel-default
+  %ul.well-list
+    - @users.each do |user|
+      %li
+        .list-item-name
+          - if user.blocked?
+            %i.fa.fa-lock.cred
+          - else
+            %i.fa.fa-user.cgreen
+          = link_to user.name, [:admin, user]
+          - if user.admin?
+            %strong.cred (Admin)
+          - if user == current_user
+            %span.cred It's you!
+        .pull-right
+          %span.light
+            %i.fa.fa-envelope
+            = mail_to user.email, user.email, class: 'light'
+          &nbsp;
+          .pull-right
+            = link_to 'Edit', edit_admin_user_path(user), id: "edit_#{dom_id(user)}", class: 'btn-grouped btn btn-xs'
+            - unless user == current_user
+              - if user.ldap_blocked?
+                = link_to '#', title: 'Cannot unblock LDAP blocked users', data: {toggle: 'tooltip'}, class: 'btn-grouped btn btn-xs btn-success disabled' do
+                  %i.fa.fa-lock
+                  Unblock
+              - elsif user.blocked?
+                = link_to 'Unblock', unblock_admin_user_path(user), method: :put, class: 'btn-grouped btn btn-xs btn-success'
               - else
-                %i.fa.fa-user.cgreen
-              = link_to user.name, [:admin, user]
-              - if user.admin?
-                %strong.cred (Admin)
-              - if user == current_user
-                %span.cred It's you!
-            .pull-right
-              %span.light
-                %i.fa.fa-envelope
-                = mail_to user.email, user.email, class: 'light'
-              &nbsp;
-              .pull-right
-                = link_to 'Edit', edit_admin_user_path(user), id: "edit_#{dom_id(user)}", class: 'btn-grouped btn btn-xs'
-                - unless user == current_user
-                  - if user.ldap_blocked?
-                    = link_to '#', title: 'Cannot unblock LDAP blocked users', data: {toggle: 'tooltip'}, class: 'btn-grouped btn btn-xs btn-success disabled' do
-                      %i.fa.fa-lock
-                      Unblock
-                  - elsif user.blocked?
-                    = link_to 'Unblock', unblock_admin_user_path(user), method: :put, class: 'btn-grouped btn btn-xs btn-success'
-                  - else
-                    = link_to 'Block', block_admin_user_path(user), data: {confirm: 'USER WILL BE BLOCKED! Are you sure?'}, method: :put, class: 'btn-grouped btn btn-xs btn-warning'
-                  - if user.access_locked?
-                    = link_to 'Unlock', unlock_admin_user_path(user), method: :put, class: 'btn-grouped btn btn-xs btn-success', data: { confirm: 'Are you sure?' }
-                  - if user.can_be_removed?
-                    = link_to 'Destroy', [:admin, user], data: { confirm: "USER #{user.name} WILL BE REMOVED! All issues, merge requests and groups linked to this user will also be removed! Maybe block the user instead? Are you sure?" }, method: :delete, class: 'btn-grouped btn btn-xs btn-remove'
-    = paginate @users, theme: "gitlab"
+                = link_to 'Block', block_admin_user_path(user), data: {confirm: 'USER WILL BE BLOCKED! Are you sure?'}, method: :put, class: 'btn-grouped btn btn-xs btn-warning'
+              - if user.access_locked?
+                = link_to 'Unlock', unlock_admin_user_path(user), method: :put, class: 'btn-grouped btn btn-xs btn-success', data: { confirm: 'Are you sure?' }
+              - if user.can_be_removed?
+                = link_to 'Destroy', [:admin, user], data: { confirm: "USER #{user.name} WILL BE REMOVED! All issues, merge requests and groups linked to this user will also be removed! Maybe block the user instead? Are you sure?" }, method: :delete, class: 'btn-grouped btn btn-xs btn-remove'
+= paginate @users, theme: "gitlab"
diff --git a/app/views/dashboard/_activities.html.haml b/app/views/dashboard/_activities.html.haml
index f98fd9f06ba707c49ae8325da944e1a54198c500..dc76599b7767fe4ded0b42c8c80e2292de72b7b1 100644
--- a/app/views/dashboard/_activities.html.haml
+++ b/app/views/dashboard/_activities.html.haml
@@ -1,9 +1,9 @@
 .hidden-xs
   = render "events/event_last_push", event: @last_push
 
-.gray-content-block
+.nav-block
   - if current_user
-    .pull-right
+    .controls
       = link_to dashboard_projects_path(:atom, { private_token: current_user.private_token }), class: 'btn rss-btn' do
         %i.fa.fa-rss
   = render 'shared/event_filter'
diff --git a/app/views/dashboard/_activity_head.html.haml b/app/views/dashboard/_activity_head.html.haml
index 9f4be025bf2050c67d7724c140e214ef559bf411..b78e70ebc1e936554adaf03c090b3ddb0fd65e85 100644
--- a/app/views/dashboard/_activity_head.html.haml
+++ b/app/views/dashboard/_activity_head.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu
+%ul.nav-links
   %li{ class: ("active" unless params[:filter]) }
     = link_to activity_dashboard_path, class: 'shortcuts-activity', data: {placement: 'right'} do
       Your Projects
diff --git a/app/views/dashboard/_groups_head.html.haml b/app/views/dashboard/_groups_head.html.haml
index 64bd356f5464fb280838208af9e549fc3cc4c9cc..6ca97a692b412569db977471d77063a3ec8e47ac 100644
--- a/app/views/dashboard/_groups_head.html.haml
+++ b/app/views/dashboard/_groups_head.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu
+%ul.nav-links
   = nav_link(page: dashboard_groups_path) do
     = link_to dashboard_groups_path, title: 'Your groups', data: {placement: 'right'} do
       Your Groups
diff --git a/app/views/dashboard/_projects_head.html.haml b/app/views/dashboard/_projects_head.html.haml
index f4a3e3162bf5da1eeaecc7d4b6b56f290a94f427..5c4b58cd6887368269f5801fa2aff6b2a01be47b 100644
--- a/app/views/dashboard/_projects_head.html.haml
+++ b/app/views/dashboard/_projects_head.html.haml
@@ -1,7 +1,7 @@
 = content_for :flash_message do
   = render 'shared/project_limit'
 .top-area
-  %ul.left-top-menu
+  %ul.nav-links
     = nav_link(page: [dashboard_projects_path, root_path]) do
       = link_to dashboard_projects_path, title: 'Home', class: 'shortcuts-activity', data: {placement: 'right'} do
         Your Projects
diff --git a/app/views/dashboard/_snippets_head.html.haml b/app/views/dashboard/_snippets_head.html.haml
index 0ae62d6f1b6622dde84f5ffb75a58b94335e9d8d..b25e8ea1f0cdfb30cef06192024684e9508589a4 100644
--- a/app/views/dashboard/_snippets_head.html.haml
+++ b/app/views/dashboard/_snippets_head.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu
+%ul.nav-links
   = nav_link(page: dashboard_snippets_path, html_options: {class: 'home'}) do
     = link_to dashboard_snippets_path, title: 'Your snippets', data: {placement: 'right'} do
       Your Snippets
diff --git a/app/views/dashboard/milestones/show.html.haml b/app/views/dashboard/milestones/show.html.haml
index 49a558e8ac9a9f469a1f343cec8705b8bf71fdbc..3810267577c1a0cd0e0677cf18300252a3960ffc 100644
--- a/app/views/dashboard/milestones/show.html.haml
+++ b/app/views/dashboard/milestones/show.html.haml
@@ -48,7 +48,7 @@
     #{@milestone.open_items_count} open
   = milestone_progress_bar(@milestone)
 
-%ul.center-top-menu.no-top.no-bottom
+%ul.nav-links.no-top.no-bottom
   %li.active
     = link_to '#tab-issues', 'data-toggle' => 'tab' do
       Issues
diff --git a/app/views/dashboard/snippets/index.html.haml b/app/views/dashboard/snippets/index.html.haml
index 07b6d57932ea70a3bef91bcc2a52131ed8899812..d4e7862981c2a3b9190e940d0c10544e205e639f 100644
--- a/app/views/dashboard/snippets/index.html.haml
+++ b/app/views/dashboard/snippets/index.html.haml
@@ -3,32 +3,36 @@
 
 = render 'dashboard/snippets_head'
 
-.gray-content-block
-  .pull-right
+.nav-block
+  .controls
     = link_to new_snippet_path, class: "btn btn-new", title: "New Snippet" do
       = icon('plus')
       New Snippet
 
-  .btn-group.btn-group-next.snippet-scope-menu
-    = link_to dashboard_snippets_path, class: "btn btn-default #{"active" unless params[:scope]}" do
-      All
-      %span.badge
-        = current_user.snippets.count
-
-    = link_to dashboard_snippets_path(scope: 'are_private'), class: "btn btn-default #{"active" if params[:scope] == "are_private"}" do
-      Private
-      %span.badge
-        = current_user.snippets.are_private.count
-
-    = link_to dashboard_snippets_path(scope: 'are_internal'), class: "btn btn-default #{"active" if params[:scope] == "are_internal"}" do
-      Internal
-      %span.badge
-        = current_user.snippets.are_internal.count
-
-    = link_to dashboard_snippets_path(scope: 'are_public'), class: "btn btn-default #{"active" if params[:scope] == "are_public"}" do
-      Public
-      %span.badge
-        = current_user.snippets.are_public.count
+  .nav-links.snippet-scope-menu
+    %li{ class: ("active" unless params[:scope]) }
+      = link_to dashboard_snippets_path do
+        All
+        %span.badge
+          = current_user.snippets.count
+
+    %li{ class: ("active" if params[:scope] == "are_private") }
+      = link_to dashboard_snippets_path(scope: 'are_private') do
+        Private
+        %span.badge
+          = current_user.snippets.are_private.count
+
+    %li{ class: ("active" if params[:scope] == "are_internal") }
+      = link_to dashboard_snippets_path(scope: 'are_internal') do
+        Internal
+        %span.badge
+          = current_user.snippets.are_internal.count
+
+    %li{ class: ("active" if params[:scope] == "are_public") }
+      = link_to dashboard_snippets_path(scope: 'are_public') do
+        Public
+        %span.badge
+          = current_user.snippets.are_public.count
 
 = render 'snippets/snippets'
 
diff --git a/app/views/devise/shared/_signin_box.html.haml b/app/views/devise/shared/_signin_box.html.haml
index 41ad2c231d4d1cfaa0c2d3478d2e185ca579dcbb..2c15e2c4891c0ab90e6b961a66deef3df24c143b 100644
--- a/app/views/devise/shared/_signin_box.html.haml
+++ b/app/views/devise/shared/_signin_box.html.haml
@@ -7,7 +7,7 @@
       %h3 Sign in
   .login-body
     - if form_based_providers.any?
-      %ul.nav.nav-tabs
+      %ul.nav-links
         - if crowd_enabled?
           %li.active
             = link_to "Crowd", "#tab-crowd", 'data-toggle' => 'tab'
diff --git a/app/views/groups/edit.html.haml b/app/views/groups/edit.html.haml
index 7e3e2e28bc9d17600fc11094b6ee07267363d7f4..e2f97fd933756e15f8ac0f5d1e4f937cb6f2fac7 100644
--- a/app/views/groups/edit.html.haml
+++ b/app/views/groups/edit.html.haml
@@ -1,7 +1,7 @@
 - header_title group_title(@group, "Settings", edit_group_path(@group))
 - @blank_container = true
 
-.panel.panel-default
+.panel.panel-default.prepend-top-default
   .panel-heading
     Group settings
   .panel-body
diff --git a/app/views/groups/group_members/index.html.haml b/app/views/groups/group_members/index.html.haml
index 335bf036074367eb98b460408a7e231a2fb1fa2f..6a8acc42af9cac872ea76d8f0e9852aab62bab1f 100644
--- a/app/views/groups/group_members/index.html.haml
+++ b/app/views/groups/group_members/index.html.haml
@@ -2,7 +2,7 @@
 - header_title group_title(@group, "Members", group_group_members_path(@group))
 - @blank_container = true
 
-.group-members-page
+.group-members-page.prepend-top-default
   - if current_user && current_user.can?(:admin_group_member, @group)
     .panel.panel-default
       .panel-heading
diff --git a/app/views/groups/milestones/show.html.haml b/app/views/groups/milestones/show.html.haml
index d063b257b5e6df7aae5f9d79fdbdfc165718f228..1233da8552492f5da6d52ed5eaa1b0394b93c043 100644
--- a/app/views/groups/milestones/show.html.haml
+++ b/app/views/groups/milestones/show.html.haml
@@ -54,7 +54,7 @@
     #{@milestone.open_items_count} open
   = milestone_progress_bar(@milestone)
 
-%ul.center-top-menu.no-top.no-bottom
+%ul.nav-links.no-top.no-bottom
   %li.active
     = link_to '#tab-issues', 'data-toggle' => 'tab' do
       Issues
diff --git a/app/views/groups/projects.html.haml b/app/views/groups/projects.html.haml
index f1d507a50c7409b9ef42045d15b03a1a8c14376c..9ca11ed117738f97ea968a0e6d6aed393cbd6448 100644
--- a/app/views/groups/projects.html.haml
+++ b/app/views/groups/projects.html.haml
@@ -1,7 +1,7 @@
 - page_title "Projects"
 - header_title group_title(@group, "Projects", projects_group_path(@group))
 
-.panel.panel-default
+.panel.panel-default.prepend-top-default
   .panel-heading
     %strong= @group.name
     projects:
diff --git a/app/views/groups/show.html.haml b/app/views/groups/show.html.haml
index 48a544fc834797600dd8d6c6853dcfcdbc53a4cf..5e39d3ab6015c64e4e9b955aac296f297df38bef 100644
--- a/app/views/groups/show.html.haml
+++ b/app/views/groups/show.html.haml
@@ -1,3 +1,6 @@
+- @no_container = true
+- @blank_container = true
+
 - unless can?(current_user, :read_group, @group)
   - @disable_search_panel = true
 
@@ -25,8 +28,8 @@
     .cover-desc.description
       = markdown(@group.description, pipeline: :description)
 
-- if can?(current_user, :read_group, @group)
-  %ul.center-top-menu.no-top
+
+  %ul.nav-links
     %li.active
       = link_to "#activity", 'data-toggle' => 'tab' do
         Activity
@@ -35,20 +38,22 @@
         = link_to "#projects", 'data-toggle' => 'tab' do
           Projects
 
-  .tab-content
-    .tab-pane.active#activity
-      .gray-content-block.activity-filter-block
-        - if current_user
-          = render "events/event_last_push", event: @last_push
+- if can?(current_user, :read_group, @group)
+  %div{ class: container_class }
+    .tab-content
+      .tab-pane.active#activity
+        .activity-filter-block
+          - if current_user
+            = render "events/event_last_push", event: @last_push
 
-          = render 'shared/event_filter'
+            = render 'shared/event_filter'
 
-      .content_list
-      = spinner
+        .content_list
+        = spinner
 
-    .tab-pane#projects
-      = render "projects", projects: @projects
+      .tab-pane#projects
+        = render "projects", projects: @projects
 
 - else
-  %p.center-top-menu.no-top
+  %p.nav-links.no-top
     No projects to show
diff --git a/app/views/help/ui.html.haml b/app/views/help/ui.html.haml
index d9ffda884c8c56663721fa1f568365b7d293829e..7b45bd09050d0abfacf8940acfeba3a51688f326 100644
--- a/app/views/help/ui.html.haml
+++ b/app/views/help/ui.html.haml
@@ -139,26 +139,9 @@
   %h2#navs Navigation
 
   %h4
-    %code .center-top-menu
+    %code .nav-links
   .example
-    %ul.center-top-menu
-      %li.active
-        %a Open
-      %li
-        %a Closed
-
-  %h4
-    %code .btn-group.btn-group-next
-  .example
-    %div.btn-group.btn-group-next
-      %a.btn.active Open
-      %a.btn Closed
-
-
-  %h4
-    %code .nav.nav-tabs
-  .example
-    %ul.nav.nav-tabs
+    %ul.nav-links
       %li.active
         %a Open
       %li
diff --git a/app/views/layouts/_page.html.haml b/app/views/layouts/_page.html.haml
index ec7cd79bc542c60026c3265a95146d9715838717..26159989777a81ad2a912094dded527583bb556e 100644
--- a/app/views/layouts/_page.html.haml
+++ b/app/views/layouts/_page.html.haml
@@ -24,7 +24,7 @@
   .content-wrapper
     = render "layouts/flash"
     = yield :flash_message
-    %div{ class: container_class }
+    %div{ class: (container_class unless @no_container) }
       .content
         .clearfix
           = yield
diff --git a/app/views/profiles/accounts/show.html.haml b/app/views/profiles/accounts/show.html.haml
index 17e47c622ceec6d1645f6cda4cd60f3e926d1519..a42fd38de3a91b6a458318c2059bf537871a0a0a 100644
--- a/app/views/profiles/accounts/show.html.haml
+++ b/app/views/profiles/accounts/show.html.haml
@@ -6,7 +6,7 @@
   .alert.alert-info
     Some options are unavailable for LDAP accounts
 
-.account-page
+.account-page.prepend-top-default
   .panel.panel-default.update-token
     .panel-heading
       Reset Private token
diff --git a/app/views/projects/_activity.html.haml b/app/views/projects/_activity.html.haml
index 101880bd1053451877c8d31521562dd63a5a6ffa..961b61d2e763d02264648b299f3f96bfdb42a7bd 100644
--- a/app/views/projects/_activity.html.haml
+++ b/app/views/projects/_activity.html.haml
@@ -1,6 +1,6 @@
-.gray-content-block.activity-filter-block
+.nav-block.activity-filter-block
   - if current_user
-    .pull-right
+    .controls
       = link_to namespace_project_path(@project.namespace, @project, format: :atom, private_token: current_user.private_token), title: "Feed", class: 'btn rss-btn' do
         %i.fa.fa-rss
 
diff --git a/app/views/projects/_files.html.haml b/app/views/projects/_files.html.haml
index fa978325ddd5923f65020d669bb1418041fa3d86..96c2fa87f45d49e10efa952d6f6513fb4992898c 100644
--- a/app/views/projects/_files.html.haml
+++ b/app/views/projects/_files.html.haml
@@ -1,5 +1,5 @@
 #tree-holder.tree-holder.clearfix
-  .gray-content-block.second-block
+  .nav-block
     = render 'projects/tree/tree_header', tree: @tree
 
   = render 'projects/tree/tree_content', tree: @tree
diff --git a/app/views/projects/_md_preview.html.haml b/app/views/projects/_md_preview.html.haml
index 54c818baaf41168f2673bda0a3b9961c8d9f514e..1fb37ef6621ddf0e497c6d1260958981f843c6f5 100644
--- a/app/views/projects/_md_preview.html.haml
+++ b/app/views/projects/_md_preview.html.haml
@@ -1,6 +1,6 @@
 .md-area
   .md-header.clearfix
-    %ul.center-top-menu
+    %ul.nav-links
       %li.active
         %a.js-md-write-button(href="#md-write-holder" tabindex="-1")
           Write
diff --git a/app/views/projects/blob/_blob.html.haml b/app/views/projects/blob/_blob.html.haml
index 2a3315da3dbffa54200168ea6b7801a8a316860e..3d8d88834e2a278288f515fd64fdf1e1fa02ad12 100644
--- a/app/views/projects/blob/_blob.html.haml
+++ b/app/views/projects/blob/_blob.html.haml
@@ -1,4 +1,4 @@
-.gray-content-block.top-block
+.nav-block
   .tree-ref-holder
     = render 'shared/ref_switcher', destination: 'blob', path: @path
 
diff --git a/app/views/projects/blob/edit.html.haml b/app/views/projects/blob/edit.html.haml
index 09fa148b129b03ec047f78748462478afe4784df..a279e6eda558c83c7f0fdf545de28cd4bdd28b50 100644
--- a/app/views/projects/blob/edit.html.haml
+++ b/app/views/projects/blob/edit.html.haml
@@ -2,7 +2,7 @@
 = render "header_title"
 
 .file-editor
-  %ul.center-top-menu.no-bottom.js-edit-mode
+  %ul.nav-links.no-bottom.js-edit-mode
     %li.active
       = link_to '#editor' do
         = icon('edit')
diff --git a/app/views/projects/builds/index.html.haml b/app/views/projects/builds/index.html.haml
index 3bbfdb1e3b00cce8f82a78f6f86d723475d7313d..5d18c0d803a61afb6e09c99a12f4d65ff93afb17 100644
--- a/app/views/projects/builds/index.html.haml
+++ b/app/views/projects/builds/index.html.haml
@@ -8,7 +8,7 @@
         - if @all_builds.running_or_pending.any?
           = link_to 'Cancel running', cancel_all_namespace_project_builds_path(@project.namespace, @project), data: { confirm: 'Are you sure?' }, class: 'btn btn-danger', method: :post
 
-  %ul.center-top-menu
+  %ul.nav-links
     %li{class: ('active' if @scope.nil?)}
       = link_to project_builds_path(@project) do
         All
diff --git a/app/views/projects/builds/show.html.haml b/app/views/projects/builds/show.html.haml
index f393d818656b1f1f9cb3a74cc847ecf84d7b6af4..2be572d3b10edfe9f690066c7d6add3fca753f0a 100644
--- a/app/views/projects/builds/show.html.haml
+++ b/app/views/projects/builds/show.html.haml
@@ -14,7 +14,7 @@
 
   #up-build-trace
   - if @commit.matrix_for_ref?(@build.ref)
-    %ul.center-top-menu.no-top.no-bottom
+    %ul.nav-links.no-top.no-bottom
       - @commit.latest_builds_for_ref(@build.ref).each do |build|
         %li{class: ('active' if build == @build) }
           = link_to namespace_project_build_path(@project.namespace, @project, build) do
diff --git a/app/views/projects/commit/_ci_menu.html.haml b/app/views/projects/commit/_ci_menu.html.haml
index f74f8b427ecaac0401fd239b7638abac1f57f056..ea33aa472a65dfd78c8d959613f11dc6e09bfb29 100644
--- a/app/views/projects/commit/_ci_menu.html.haml
+++ b/app/views/projects/commit/_ci_menu.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu.no-top.no-bottom.commit-ci-menu
+%ul.nav-links.no-top.no-bottom.commit-ci-menu
   = nav_link(path: 'commit#show') do
     = link_to namespace_project_commit_path(@project.namespace, @project, @commit.id) do
       Changes
diff --git a/app/views/projects/commit/_commit_box.html.haml b/app/views/projects/commit/_commit_box.html.haml
index ddb77fd796b13f03c74cc7e9aea68e8e0bc46e37..bbe820b884250340da09cd306c41395d7c74df41 100644
--- a/app/views/projects/commit/_commit_box.html.haml
+++ b/app/views/projects/commit/_commit_box.html.haml
@@ -50,7 +50,7 @@
 .commit-info-row.branches
   %i.fa.fa-spinner.fa-spin
 
-.commit-box.gray-content-block.middle-block
+.commit-box.content-block
   %h3.commit-title
     = markdown escape_once(@commit.title), pipeline: :single_line
   - if @commit.description.present?
diff --git a/app/views/projects/commit/show.html.haml b/app/views/projects/commit/show.html.haml
index 58aa45e8d2c7dab4822939179ab96c6b2b0b1f94..02297158dec5964333e0e1e6ee09e5a18070fa41 100644
--- a/app/views/projects/commit/show.html.haml
+++ b/app/views/projects/commit/show.html.haml
@@ -2,7 +2,9 @@
 - page_description  @commit.description
 
 = render "projects/commits/header_title"
-= render "commit_box"
+
+.prepend-top-default
+  = render "commit_box"
 - if @ci_commit
   = render "ci_menu"
 - else
diff --git a/app/views/projects/commits/_head.html.haml b/app/views/projects/commits/_head.html.haml
index fcccb002d7e8d482f5358ae34bfc459304fae546..498c5e05b321edeb3e6e51d6a3d04a492dceb76a 100644
--- a/app/views/projects/commits/_head.html.haml
+++ b/app/views/projects/commits/_head.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu
+%ul.nav-links
   = nav_link(controller: [:commit, :commits]) do
     = link_to namespace_project_commits_path(@project.namespace, @project, current_ref) do
       Commits
diff --git a/app/views/projects/commits/show.html.haml b/app/views/projects/commits/show.html.haml
index 034057da42eb5299618a05e74a63147d9f1287b6..ede64d47ab339862072a141a6e66d75b16d70183 100644
--- a/app/views/projects/commits/show.html.haml
+++ b/app/views/projects/commits/show.html.haml
@@ -6,7 +6,7 @@
 
 = render "head"
 
-.gray-content-block
+.gray-content-block.second-block
   .tree-ref-holder
     = render 'shared/ref_switcher', destination: 'commits'
 
diff --git a/app/views/projects/diffs/_diffs.html.haml b/app/views/projects/diffs/_diffs.html.haml
index f9d661d59d291b83a15d7ed2a43cfb1f0bce868d..f67058ae0ba86e0b52de2fda81316ac276e37bb4 100644
--- a/app/views/projects/diffs/_diffs.html.haml
+++ b/app/views/projects/diffs/_diffs.html.haml
@@ -3,7 +3,7 @@
 
 - diff_files = safe_diff_files(diffs)
 
-.gray-content-block.middle-block.oneline-block
+.content-block.oneline-block
   .inline-parallel-buttons
     .btn-group
       = inline_diff_btn
diff --git a/app/views/projects/edit.html.haml b/app/views/projects/edit.html.haml
index 31e752c664951768e28f149177a0ff3047db086e..8a99aceef7f87f5214d855e18fba6f7774c5f760 100644
--- a/app/views/projects/edit.html.haml
+++ b/app/views/projects/edit.html.haml
@@ -1,6 +1,6 @@
 - @blank_container = true
 
-.project-edit-container
+.project-edit-container.prepend-top-default
   .project-edit-errors
   .project-edit-content
     .panel.panel-default
diff --git a/app/views/projects/graphs/_head.html.haml b/app/views/projects/graphs/_head.html.haml
index a47643bd09c642add4a0abca355b2253b0b9881f..79a56647c536ba79a4836a05eeee991d972dea12 100644
--- a/app/views/projects/graphs/_head.html.haml
+++ b/app/views/projects/graphs/_head.html.haml
@@ -1,4 +1,4 @@
-%ul.center-top-menu
+%ul.nav-links
   = nav_link(action: :show) do
     = link_to 'Contributors', namespace_project_graph_path
   = nav_link(action: :commits) do
diff --git a/app/views/projects/merge_requests/_new_submit.html.haml b/app/views/projects/merge_requests/_new_submit.html.haml
index a14943b15d3f1532ac6b0e94fb3162817988a16c..dd2c59e112a63eec5a73017843e6ce6939c09ceb 100644
--- a/app/views/projects/merge_requests/_new_submit.html.haml
+++ b/app/views/projects/merge_requests/_new_submit.html.haml
@@ -18,7 +18,7 @@
   = f.hidden_field :target_branch
 
 .mr-compare.merge-request
-  %ul.merge-request-tabs.center-top-menu.no-top.no-bottom
+  %ul.merge-request-tabs.nav-links.no-top.no-bottom
     %li.commits-tab
       = link_to url_for(params), data: {target: 'div#commits', action: 'commits', toggle: 'tab'} do
         Commits
diff --git a/app/views/projects/merge_requests/_show.html.haml b/app/views/projects/merge_requests/_show.html.haml
index 095876450a09e73e1a6e56a326959dfdcd1ec864..200bfa5ac4fb48b6fe96c5cb19a2065d3a3e2b24 100644
--- a/app/views/projects/merge_requests/_show.html.haml
+++ b/app/views/projects/merge_requests/_show.html.haml
@@ -45,7 +45,7 @@
           = link_to "command line", "#modal_merge_info", class: "how_to_merge_link vlink", title: "How To Merge", "data-toggle" => "modal"
 
     - if @commits.present?
-      %ul.merge-request-tabs.center-top-menu.no-top.no-bottom
+      %ul.merge-request-tabs.nav-links.no-top.no-bottom
         %li.notes-tab
           = link_to namespace_project_merge_request_path(@project.namespace, @project, @merge_request), data: {target: 'div#notes', action: 'notes', toggle: 'tab'} do
             Discussion
diff --git a/app/views/projects/milestones/show.html.haml b/app/views/projects/milestones/show.html.haml
index d1db0f64f88751303f5e773ac1bbca08c7db1a15..1142c58459292ed61921357c802f2428fad2199e 100644
--- a/app/views/projects/milestones/show.html.haml
+++ b/app/views/projects/milestones/show.html.haml
@@ -57,7 +57,7 @@
     %span.pull-right= @milestone.expires_at
   = milestone_progress_bar(@milestone)
 
-%ul.center-top-menu.no-top.no-bottom
+%ul.nav-links.no-top.no-bottom
   %li.active
     = link_to '#tab-issues', 'data-toggle' => 'tab' do
       Issues
diff --git a/app/views/projects/project_members/index.html.haml b/app/views/projects/project_members/index.html.haml
index 29225a3636455d35c8727c51ab0ef86e0eb6660a..6239a148905d2c761f28fd1ba003fffe742ac9e6 100644
--- a/app/views/projects/project_members/index.html.haml
+++ b/app/views/projects/project_members/index.html.haml
@@ -2,7 +2,7 @@
 = render "header_title"
 - @blank_container = true
 
-.project-members-page
+.project-members-page.prepend-top-default
   - if can?(current_user, :admin_project_member, @project)
     .panel.panel-default
       .panel-heading
diff --git a/app/views/projects/runners/index.html.haml b/app/views/projects/runners/index.html.haml
index 315afe4a764506b1e66e553d6accbc17b26cb68d..2d5b9f43c24da3103ec4c02b3ca9cba2253376d0 100644
--- a/app/views/projects/runners/index.html.haml
+++ b/app/views/projects/runners/index.html.haml
@@ -1,5 +1,6 @@
 - page_title "Runners"
-.light
+
+.light.prepend-top-default
   %p
     A 'runner' is a process which runs a build.
     You can setup as many runners as you need.
diff --git a/app/views/projects/show.html.haml b/app/views/projects/show.html.haml
index 8436be433b198e7d4ae008891a7c89961c42dd49..797bee708bde5ed0e23e6016346a320963a54024 100644
--- a/app/views/projects/show.html.haml
+++ b/app/views/projects/show.html.haml
@@ -1,3 +1,6 @@
+- @no_container = true
+- @blank_container = true
+
 = content_for :meta_tags do
   - if current_user
     = auto_discovery_link_tag(:atom, namespace_project_path(@project.namespace, @project, format: :atom, private_token: current_user.private_token), title: "#{@project.name} activity")
@@ -8,11 +11,10 @@
     = render 'shared/no_password'
 
 = render 'projects/last_push'
-
 = render "home_panel"
 
 .project-stats.gray-content-block.second-block
-  %ul.nav.nav-pills
+  %ul.nav
     %li
       = link_to namespace_project_commits_path(@project.namespace, @project, current_ref) do
         = pluralize(number_with_delimiter(@project.commit_count), 'commit')
@@ -57,15 +59,17 @@
           = link_to add_contribution_guide_path(@project) do
             Add Contribution guide
 
-- if @project.archived?
-  .text-warning.center.prepend-top-20
-    %p
-      = icon("exclamation-triangle fw")
-      Archived project! Repository is read-only
-
 - if @repository.commit
   .content-block.second-block.white
-    = render 'projects/last_commit', commit: @repository.commit, project: @project
+    %div{ class: container_class }
+      = render 'projects/last_commit', commit: @repository.commit, project: @project
+
+%div{ class: container_class }
+  - if @project.archived?
+    .text-warning.center.prepend-top-20
+      %p
+        = icon("exclamation-triangle fw")
+        Archived project! Repository is read-only
 
-%div{class: "project-show-#{default_project_view}"}
-  = render default_project_view
+  %div{class: "project-show-#{default_project_view}"}
+    = render default_project_view
diff --git a/app/views/projects/tree/_tree_content.html.haml b/app/views/projects/tree/_tree_content.html.haml
index 1927883513afbf2a2e0b96e8ea1973a97da658fe..558e6146ae993f7c860061ce3223fa21f3dd9149 100644
--- a/app/views/projects/tree/_tree_content.html.haml
+++ b/app/views/projects/tree/_tree_content.html.haml
@@ -1,6 +1,6 @@
 %div.tree-content-holder
   .table-holder
-    %table.table#tree-slider{class: "table_#{@hex_path} tree-table table-striped" }
+    %table.table#tree-slider{class: "table_#{@hex_path} tree-table" }
       %thead
         %tr
           %th Name
diff --git a/app/views/projects/tree/show.html.haml b/app/views/projects/tree/show.html.haml
index c57570afa0908b351e71f9c8cfc36fe1a1109a95..91fb2a44594760458e0e520b8cc46df9e78b92d4 100644
--- a/app/views/projects/tree/show.html.haml
+++ b/app/views/projects/tree/show.html.haml
@@ -5,13 +5,13 @@
     = auto_discovery_link_tag(:atom, namespace_project_commits_url(@project.namespace, @project, @ref, format: :atom, private_token: current_user.private_token), title: "#{@project.name}:#{@ref} commits")
 = render 'projects/last_push'
 
-.pull-right
+.tree-controls
   = render 'projects/find_file_link'
   - if can? current_user, :download_code, @project
     = render 'projects/repositories/download_archive', ref: @ref, btn_class: 'hidden-xs hidden-sm btn-grouped', split_button: true
 
 #tree-holder.tree-holder.clearfix
-  .gray-content-block.top-block
+  .nav-block
     = render 'projects/tree/tree_header', tree: @tree
 
   = render 'projects/tree/tree_content', tree: @tree
diff --git a/app/views/projects/wikis/_nav.html.haml b/app/views/projects/wikis/_nav.html.haml
index e6e6ad5bc4b631473f8970d19b05b2cd70f8d85c..69ba301e231f51b3763009b0b2410aa569051859 100644
--- a/app/views/projects/wikis/_nav.html.haml
+++ b/app/views/projects/wikis/_nav.html.haml
@@ -7,7 +7,7 @@
 
       = render 'projects/wikis/new'
 
-  %ul.center-top-menu
+  %ul.nav-links
     = nav_link(html_options: {class: params[:id] == 'home' ? 'active' : '' }) do
       = link_to 'Home', namespace_project_wiki_path(@project.namespace, @project, :home)
 
diff --git a/app/views/search/_category.html.haml b/app/views/search/_category.html.haml
index 481451edb23ce0904bbb70b6e15fd2612faae374..2c3fca439f3e18d98b92624e84798ce511d80e92 100644
--- a/app/views/search/_category.html.haml
+++ b/app/views/search/_category.html.haml
@@ -1,4 +1,4 @@
-%ul.nav.nav-tabs.search-filter
+%ul.nav-links.search-filter
   - if @project
     %li{class: ("active" if @scope == 'blobs')}
       = link_to search_filter_path(scope: 'blobs') do
diff --git a/app/views/search/_results.html.haml b/app/views/search/_results.html.haml
index 2a38c98dcfcc17dc205f6c49d26b4f69c8a05452..d0e64537621f4e92f0c29717f1f09d28c7342b5b 100644
--- a/app/views/search/_results.html.haml
+++ b/app/views/search/_results.html.haml
@@ -1,7 +1,7 @@
 - if @search_results.empty?
   = render partial: "search/results/empty"
 - else
-  %p.light
+  .gray-content-block
     Search results for
     %code
       = @search_term
diff --git a/app/views/search/show.html.haml b/app/views/search/show.html.haml
index f4f3dcfc29ff5ba1ebe68709264f50e7adaa4ac9..215dbb3909e697ef86cbbd00161707d968005511 100644
--- a/app/views/search/show.html.haml
+++ b/app/views/search/show.html.haml
@@ -1,5 +1,7 @@
 - page_title @search_term
-= render 'search/form'
+
+.prepend-top-default
+  = render 'search/form'
 - if @search_term
   = render 'search/category'
   = render 'search/results'
diff --git a/app/views/shared/_event_filter.html.haml b/app/views/shared/_event_filter.html.haml
index 8495774accc13c27edb8df55d75df7c11a3d5fd0..c38d9313dba6e15990e95df594c9714a3b4d9187 100644
--- a/app/views/shared/_event_filter.html.haml
+++ b/app/views/shared/_event_filter.html.haml
@@ -1,4 +1,4 @@
-.btn-group.btn-group-next.event-filter
+%ul.nav-links.event-filter
   = event_filter_link EventFilter.push, 'Push events'
   = event_filter_link EventFilter.merged, 'Merge events'
   = event_filter_link EventFilter.comments, 'Comments'
diff --git a/app/views/shared/_milestones_filter.html.haml b/app/views/shared/_milestones_filter.html.haml
index cbdecda4ffff27610cbb102031a52f025f97758c..f77feeb79cd1f444381dc3e191ce0d57d1f806d4 100644
--- a/app/views/shared/_milestones_filter.html.haml
+++ b/app/views/shared/_milestones_filter.html.haml
@@ -1,5 +1,5 @@
 .milestones-filters
-  %ul.center-top-menu
+  %ul.nav-links
     %li{class: ("active" if params[:state].blank? || params[:state] == 'opened')}
       = link_to milestones_filter_path(state: 'opened') do
         Open
diff --git a/app/views/shared/issuable/_filter.html.haml b/app/views/shared/issuable/_filter.html.haml
index 0e3e9275fc1dfd2a4cbfc5a65278e2ae8ef99c9b..8d6f47b38efbbd8852ae8b9434e0a85fa83c1dbb 100644
--- a/app/views/shared/issuable/_filter.html.haml
+++ b/app/views/shared/issuable/_filter.html.haml
@@ -1,6 +1,6 @@
 .issues-filters
   .issues-state-filters
-    %ul.center-top-menu
+    %ul.nav-links
       - if defined?(type) && type == :merge_requests
         - page_context_word = 'merge requests'
       - else
diff --git a/app/views/sherlock/queries/show.html.haml b/app/views/sherlock/queries/show.html.haml
index 4a84348ac82582f753d40c81826bdb17684bb4b5..83f61ce4b073d2b2ca73c4befbea598688cc9042 100644
--- a/app/views/sherlock/queries/show.html.haml
+++ b/app/views/sherlock/queries/show.html.haml
@@ -1,7 +1,7 @@
 - page_title t('sherlock.title'), t('sherlock.transaction'), t('sherlock.query')
 - header_title t('sherlock.title'), sherlock_transactions_path
 
-%ul.center-top-menu
+%ul.nav-links
   %li.active
     %a(href="#tab-general" data-toggle="tab")
       = t('sherlock.general')
diff --git a/app/views/sherlock/transactions/show.html.haml b/app/views/sherlock/transactions/show.html.haml
index 3c8ffb066484125b3cb1b2880fb7e3f8e305530c..9d4b0b2724c2c3be77b7d7aa29ecb88fd0284df2 100644
--- a/app/views/sherlock/transactions/show.html.haml
+++ b/app/views/sherlock/transactions/show.html.haml
@@ -1,7 +1,7 @@
 - page_title t('sherlock.title'), t('sherlock.transaction')
 - header_title t('sherlock.title'), sherlock_transactions_path
 
-%ul.center-top-menu
+%ul.nav-links
   %li.active
     %a(href="#tab-general" data-toggle="tab")
       = t('sherlock.general')
diff --git a/app/views/users/show.html.haml b/app/views/users/show.html.haml
index ce17fc7bca16155ac2678c80dbbb2a73a6f0c87f..284a62e6f479e406b59ea9a536d614130f3a4960 100644
--- a/app/views/users/show.html.haml
+++ b/app/views/users/show.html.haml
@@ -1,6 +1,8 @@
 - page_title       @user.name
 - page_description @user.bio
 - header_title     @user.name, user_path(@user)
+- @no_container = true
+- @blank_container = true
 
 = content_for :meta_tags do
   = auto_discovery_link_tag(:atom, user_url(@user, format: :atom), title: "#{@user.name} activity")
@@ -8,6 +10,25 @@
 = render 'shared/show_aside'
 
 .cover-block
+  .cover-controls
+    - if @user == current_user
+      = link_to profile_path, class: 'btn btn-gray' do
+        = icon('pencil')
+    - elsif current_user
+      %span.report-abuse
+        - if @user.abuse_report
+          %button.btn.btn-danger{ title: 'Already reported for abuse',
+            data: { toggle: 'tooltip', placement: 'left', container: 'body' }}
+            = icon('exclamation-circle')
+        - else
+          = link_to new_abuse_report_path(user_id: @user.id), class: 'btn btn-gray',
+            title: 'Report abuse', data: {toggle: 'tooltip', placement: 'left', container: 'body'} do
+            = icon('exclamation-circle')
+    - if current_user
+      &nbsp;
+      = link_to user_path(@user, :atom, { private_token: current_user.private_token }), class: 'btn btn-gray' do
+        = icon('rss')
+
   .avatar-holder
     = link_to avatar_icon(@user, 400), target: '_blank' do
       = image_tag avatar_icon(@user, 90), class: "avatar s90", alt: ''
@@ -47,74 +68,56 @@
         = icon('map-marker')
         = @user.location
 
+  %ul.nav-links.center
+    %li.active
+      = link_to "#activity", 'data-toggle' => 'tab' do
+        Activity
+    - if @groups.any?
+      %li
+        = link_to "#groups", 'data-toggle' => 'tab' do
+          Groups
+    - if @contributed_projects.present?
+      %li
+        = link_to "#contributed", 'data-toggle' => 'tab' do
+          Contributed projects
+    - if @projects.present?
+      %li
+        = link_to "#personal", 'data-toggle' => 'tab' do
+          Personal projects
 
-  .cover-controls
-    - if @user == current_user
-      = link_to profile_path, class: 'btn btn-gray' do
-        = icon('pencil')
-    - elsif current_user
-      %span.report-abuse
-        - if @user.abuse_report
-          %button.btn.btn-danger{ title: 'Already reported for abuse',
-            data: { toggle: 'tooltip', placement: 'left', container: 'body' }}
-            = icon('exclamation-circle')
-        - else
-          = link_to new_abuse_report_path(user_id: @user.id), class: 'btn btn-gray',
-            title: 'Report abuse', data: {toggle: 'tooltip', placement: 'left', container: 'body'} do
-            = icon('exclamation-circle')
-    - if current_user
-      &nbsp;
-      = link_to user_path(@user, :atom, { private_token: current_user.private_token }), class: 'btn btn-gray' do
-        = icon('rss')
-
-.gray-content-block.second-block
-  .user-calendar
-    %h4.center.light
-      %i.fa.fa-spinner.fa-spin
-  .user-calendar-activities
-
+%div{ class: container_class }
+  .tab-content
+    .tab-pane.active#activity
+      .gray-content-block.white.second-block
+        %div{ class: container_class }
+          .user-calendar
+            %h4.center.light
+              %i.fa.fa-spinner.fa-spin
+        .user-calendar-activities
 
-%ul.center-top-menu.no-top.no-bottom.bottom-border.wide
-  %li.active
-    = link_to "#activity", 'data-toggle' => 'tab' do
-      Activity
-  - if @groups.any?
-    %li
-      = link_to "#groups", 'data-toggle' => 'tab' do
-        Groups
-  - if @contributed_projects.present?
-    %li
-      = link_to "#contributed", 'data-toggle' => 'tab' do
-        Contributed projects
-  - if @projects.present?
-    %li
-      = link_to "#personal", 'data-toggle' => 'tab' do
-        Personal projects
 
-.tab-content
-  .tab-pane.active#activity
-    .content_list
-    = spinner
+      .content_list
+      = spinner
 
-  - if @groups.any?
-    .tab-pane#groups
-      %ul.content-list
-        - @groups.each do |group|
-          = render 'shared/groups/group', group: group
+    - if @groups.any?
+      .tab-pane#groups
+        %ul.content-list
+          - @groups.each do |group|
+            = render 'shared/groups/group', group: group
 
-  - if @contributed_projects.present?
-    .tab-pane#contributed
-      .contributed-projects
-        = render 'shared/projects/list',
-          projects: @contributed_projects.sort_by(&:star_count).reverse,
-          projects_limit: 5, stars: true, avatar: true
+    - if @contributed_projects.present?
+      .tab-pane#contributed
+        .contributed-projects
+          = render 'shared/projects/list',
+            projects: @contributed_projects.sort_by(&:star_count).reverse,
+            projects_limit: 10, stars: true, avatar: true
 
-  - if @projects.present?
-    .tab-pane#personal
-      .personal-projects
-        = render 'shared/projects/list',
-          projects: @projects.sort_by(&:star_count).reverse,
-          projects_limit: 10, stars: true, avatar: true
+    - if @projects.present?
+      .tab-pane#personal
+        .personal-projects
+          = render 'shared/projects/list',
+            projects: @projects.sort_by(&:star_count).reverse,
+            projects_limit: 10, stars: true, avatar: true
 
 :javascript
   $(".user-calendar").load("#{user_calendar_path}");
diff --git a/features/steps/shared/active_tab.rb b/features/steps/shared/active_tab.rb
index eb2ccd9d01eb4dfaafe5d28a35272e4e6c209a31..0bee91d758d6859ead46636e5ee4339ac7ef23fa 100644
--- a/features/steps/shared/active_tab.rb
+++ b/features/steps/shared/active_tab.rb
@@ -6,7 +6,7 @@ module SharedActiveTab
   end
 
   def ensure_active_sub_tab(content)
-    expect(find('div.content ul.center-top-menu li.active')).to have_content(content)
+    expect(find('div.content ul.nav-links li.active')).to have_content(content)
   end
 
   def ensure_active_sub_nav(content)
@@ -18,7 +18,7 @@ module SharedActiveTab
   end
 
   step 'no other sub tabs should be active' do
-    expect(page).to have_selector('div.content ul.center-top-menu li.active', count: 1)
+    expect(page).to have_selector('div.content ul.nav-links li.active', count: 1)
   end
 
   step 'no other sub navs should be active' do