Move all EE CSS differences out of the CE code

Similar to https://gitlab.com/gitlab-org/gitlab-ee/issues/8710 and https://gitlab.com/gitlab-org/gitlab-ee/issues/8711, all EE specific CSS changes should be moved out of app/assets/stylesheets and into the ee/ directory.

Differences

app/assets/stylesheets/framework/selects.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/selects.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/selects.scss
index bcd601e198a..90997a1a0f7 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/selects.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/selects.scss
@@ -264,6 +264,16 @@
   }
 }
 
+.project-result {
+  .project-name {
+    font-weight: $gl-font-weight-bold;
+  }
+
+  .project-path {
+    color: $gl-gray-400;
+  }
+}
+
 .user-result {
   min-height: 24px;
   display: flex;
app/assets/stylesheets/framework/dropdowns.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/dropdowns.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/dropdowns.scss
index b90db135b4a..1ad9bfcf6a1 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/dropdowns.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/dropdowns.scss
@@ -26,7 +26,7 @@
 
 .show.dropdown {
   .dropdown-menu,
-  .dropdown-menu-nav {
+  .dropdown-menu {
     @include set-visible;
     min-height: $dropdown-min-height;
     max-height: $dropdown-max-height;
@@ -404,7 +404,7 @@
 }
 
 .droplab-dropdown .dropdown-menu,
-.droplab-dropdown .dropdown-menu-nav {
+.droplab-dropdown .dropdown-menu {
   display: none;
   opacity: 1;
   visibility: visible;
@@ -417,7 +417,7 @@
 
 .filtered-search-box-input-container {
   .dropdown-menu,
-  .dropdown-menu-nav {
+  .dropdown-menu {
     max-width: 280px;
   }
 }
@@ -813,7 +813,7 @@
 
   header.navbar-gitlab .dropdown {
     .dropdown-menu,
-    .dropdown-menu-nav {
+    .dropdown-menu {
       width: 100%;
       min-width: 100%;
     }
app/assets/stylesheets/framework/secondary_navigation_elements.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/secondary_navigation_elements.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/secondary_navigation_elements.scss
index 19640ab5986..31297b9d20c 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/secondary_navigation_elements.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/secondary_navigation_elements.scss
@@ -181,6 +181,33 @@
         margin: 0;
         width: 100%;
       }
+
+      &.inline {
+        display: flex;
+        flex-flow: row wrap;
+        justify-content: space-between;
+
+        > .btn,
+        > .btn-container,
+        > .dropdown,
+        > input,
+        > form {
+          flex: 1 1 auto;
+          margin: 0 0 10px;
+          margin-left: $gl-padding-top;
+          width: auto;
+
+          &:first-child {
+            margin-left: 0;
+            float: none;
+          }
+        }
+
+        .btn-full {
+          flex: 1 1 100%;
+          margin-left: 0;
+        }
+      }
     }
   }
app/assets/stylesheets/framework/avatar.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/avatar.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/avatar.scss
index e132aa4c216..ad2850a4813 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/avatar.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/avatar.scss
@@ -62,6 +62,10 @@
     border: 0;
   }
 
+  &.avatar-placeholder {
+    border: 0;
+  }
+
   &:not([href]):hover {
     border-color: darken($gray-normal, 10%);
   }
app/assets/stylesheets/framework/common.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/common.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/common.scss
index 0fb9bde1785..04370427fa0 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/common.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/common.scss
@@ -103,7 +103,7 @@ hr {
   text-overflow: ellipsis;
   white-space: nowrap;
 
-  > div,
+  > div:not(.block),
   .str-truncated {
     display: inline;
   }
@@ -362,12 +362,14 @@ img.emoji {
 .prepend-left-5 { margin-left: 5px; }
 .prepend-left-8 { margin-left: 8px; }
 .prepend-left-10 { margin-left: 10px; }
+.prepend-left-15 { margin-left: 15px; }
 .prepend-left-default { margin-left: $gl-padding; }
 .prepend-left-20 { margin-left: 20px; }
 .append-right-4 { margin-right: 4px; }
 .append-right-5 { margin-right: 5px; }
 .append-right-8 { margin-right: 8px; }
 .append-right-10 { margin-right: 10px; }
+.append-right-15 { margin-right: 15px; }
 .append-right-default { margin-right: $gl-padding; }
 .append-right-20 { margin-right: 20px; }
 .append-bottom-0 { margin-bottom: 0; }
@@ -379,6 +381,8 @@ img.emoji {
 .append-bottom-20 { margin-bottom: 20px; }
 .append-bottom-default { margin-bottom: $gl-padding; }
 .inline { display: inline-block; }
+.block { display: block; }
+.flex { display: flex; }
 .center { text-align: center; }
 .vertical-align-middle { vertical-align: middle; }
 .vertical-align-sub { vertical-align: sub; }
app/assets/stylesheets/framework/lists.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/lists.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/lists.scss
index d9d4a210f5f..bb5538e7161 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/lists.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/lists.scss
@@ -156,6 +156,12 @@ ul.content-list {
         margin-top: 3px;
         margin-bottom: 4px;
 
+        &.btn-ldap-override {
+          @include media-breakpoint-up(sm) {
+            margin-bottom: 0;
+          }
+        }
+
         &.has-tooltip,
         &:last-child {
           margin-right: 0;
app/assets/stylesheets/framework/buttons.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/buttons.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/buttons.scss
index d164cc56e44..f8a0706a204 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/buttons.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/buttons.scss
@@ -444,7 +444,7 @@
     border-color: transparent;
   }
 
-  &.btn-secondary-hover-link {
+  &.btn-default-hover-link {
     color: $gl-text-color-secondary;
 
     &:hover,
app/assets/stylesheets/framework/markdown_area.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/markdown_area.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/markdown_area.scss
index f708a26bb32..ef13b7e6cec 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/markdown_area.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/markdown_area.scss
@@ -61,6 +61,10 @@
       padding-top: 0;
       line-height: 19px;
 
+      &.btn.btn-sm {
+        padding: 2px 5px;
+      }
+
       &:focus {
         margin-top: -10px;
         padding-top: 10px;
app/assets/stylesheets/framework/blank.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/blank.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/blank.scss
index 91dbb2a6365..8904e0bfb01 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/blank.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/blank.scss
@@ -69,6 +69,7 @@
 
   @include media-breakpoint-up(sm) {
     display: flex;
+    height: 100%;
     align-items: center;
     padding: 50px 30px;
   }
@@ -99,3 +100,32 @@
     }
   }
 }
+
+/* EE-specific Styles */
+
+@include media-breakpoint-up(lg) {
+  .column-large {
+    flex: 2;
+  }
+
+  .column-small {
+    flex: 1;
+    margin-bottom: 15px;
+
+    .blank-state {
+      max-width: 400px;
+      flex-wrap: wrap;
+      margin-left: 15px;
+    }
+
+    .blank-state-icon {
+      margin-bottom: 30px;
+    }
+  }
+}
+
+@include media-breakpoint-down(xs) {
+  .blank-state-icon svg {
+    width: 315px;
+  }
+}
app/assets/stylesheets/framework/variables.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/variables.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/variables.scss
index 9eae9a831fa..f50893d407e 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/variables.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/variables.scss
@@ -23,6 +23,7 @@ $darken-border-dashed-factor: 25%;
 $white-light: #fff;
 $white-normal: #f0f0f0;
 $white-dark: #eaeaea;
+$white-transparent: rgba(255, 255, 255, 0.8);
 
 $gray-lightest: #fdfdfd;
 $gray-light: #fafafa;
@@ -284,6 +285,12 @@ $gl-line-height: 16px;
 $gl-line-height-24: 24px;
 $gl-line-height-14: 14px;
 
+// EE-only CSS variables START
+$system-header-height: 35px;
+$issue-box-upcoming-bg: #8f8f8f;
+$pages-group-name-color: #4c4e54;
+// EE-only CSS variables END
+
 /*
 * Common component specific colors
 */
@@ -617,6 +624,18 @@ Animation Functions
 */
 $dropdown-animation-timing: cubic-bezier(0.23, 1, 0.32, 1);
 
+/*
+GitLab Plans
+*/
+$gl-gold-plan: #d4af37;
+$gl-silver-plan: #91a1ab;
+$gl-bronze-plan: #cd7f32;
+
+/*
+Cross-project Pipelines
+ */
+$linked-project-column-margin: 60px;
+
 /*
 Performance Bar
 */
@@ -640,6 +659,17 @@ Image Commenting cursor
 $image-comment-cursor-left-offset: 12;
 $image-comment-cursor-top-offset: 12;
 
+/*
+Add GitLab Slack Application
+*/
+$add-to-slack-popup-max-width: 400px;
+$add-to-slack-gif-max-width: 850px;
+$add-to-slack-well-max-width: 750px;
+$add-to-slack-logo-size: 100px;
+$double-headed-arrow-width: 100px;
+$double-headed-arrow-height: 25px;
+$right-arrow-size: 16px;
+
 /*
 Popup
 */
app/assets/stylesheets/framework/wells.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/wells.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/wells.scss
index 161943766d4..434cbd6d21c 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/framework/wells.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/framework/wells.scss
@@ -12,6 +12,10 @@
       border-bottom: 1px solid $well-inner-border;
     }
 
+    &.borderless {
+      border-bottom: 0;
+    }
+
     &.branch-info {
       .commit-sha,
       .commit-info {
app/assets/stylesheets/pages/issues.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/issues.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/issues.scss
index 0037364978c..dc5b4707c75 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/issues.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/issues.scss
@@ -147,6 +147,11 @@ ul.related-merge-requests > li {
   }
 }
 
+.issues-footer {
+  padding-top: $gl-padding;
+  padding-bottom: 37px;
+}
+
 .issues-nav-controls {
   font-size: 0;
 
@@ -291,3 +296,109 @@ ul.related-merge-requests > li {
     text-align: right;
   }
 }
+
+.issue-token {
+  display: inline-flex;
+  align-items: stretch;
+  max-width: 100%;
+  line-height: 1.75;
+  white-space: nowrap;
+}
+
+.issue-token-link {
+  display: inline-flex;
+  min-width: 0;
+
+  color: $gl-text-color-secondary;
+
+  &[href] {
+    color: $blue-600;
+  }
+
+  &:hover,
+  &:focus {
+    outline: none;
+    text-decoration: none;
+  }
+}
+
+.issue-token-reference {
+  display: flex;
+  align-items: center;
+  margin-right: 1px;
+  padding-left: 0.5em;
+  padding-right: 0.5em;
+  background-color: $gray-lighter;
+  border-top-left-radius: 2px;
+  border-bottom-left-radius: 2px;
+  transition: background $general-hover-transition-duration $general-hover-transition-curve, color $general-hover-transition-duration $general-hover-transition-curve;
+
+  .issue-token:hover &,
+  .issue-token-link:focus > & {
+    background-color: $gray-normal;
+    color: $blue-800;
+    text-decoration: none;
+  }
+}
+
+.issue-token-state-icon-open {
+  color: $green-500;
+}
+
+.issue-token-state-icon-closed {
+  color: $blue-500;
+}
+
+.issue-token-title {
+  overflow: hidden;
+  display: flex;
+  align-items: baseline;
+  padding-left: 0.5em;
+  background-color: $gray-normal;
+  color: $gl-text-color-secondary;
+  transition: background $general-hover-transition-duration $general-hover-transition-curve;
+
+  .issue-token:hover &,
+  .issue-token-link:focus > & {
+    background-color: $border-gray-normal;
+  }
+
+  > .fa {
+    line-height: inherit;
+  }
+}
+
+.issue-token-title-standalone {
+  padding-right: 0.5em;
+  border-top-right-radius: 2px;
+  border-bottom-right-radius: 2px;
+}
+
+.issue-token-title-text {
+  overflow: hidden;
+  text-overflow: ellipsis;
+}
+
+.issue-token-remove-button {
+  display: flex;
+  align-items: center;
+  padding: 0 0.5em;
+  background-color: $gray-normal;
+  border: 0;
+  border-top-right-radius: 2px;
+  border-bottom-right-radius: 2px;
+  color: $gl-text-color-secondary;
+  transition: background $general-hover-transition-duration $general-hover-transition-curve;
+
+  &:hover,
+  &:focus,
+  .issue-token:hover &,
+  .issue-token-link:focus + & {
+    background-color: $border-gray-normal;
+    outline: none;
+  }
+
+  > .fa {
+    font-size: 0.9em;
+  }
+}
app/assets/stylesheets/pages/pipelines.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/pipelines.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/pipelines.scss
index e676d48c1f4..febdd3ffd26 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/pipelines.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/pipelines.scss
@@ -496,7 +496,8 @@
       list-style: none;
     }
 
-    &:last-child {
+    // when downstream pipelines are present, the last stage isn't the last column
+    &:last-child:not(.has-downstream) {
       .build {
         // Remove right connecting horizontal line from first build in last stage
         &:first-child::after {
@@ -513,7 +514,8 @@
       }
     }
 
-    &:first-child {
+    // when upstream pipelines are present, the first stage isn't the first column
+    &:first-child:not(.has-upstream) {
       .build {
         // Remove left curved connectors from all builds in first stage
         &:not(:first-child)::before {
app/assets/stylesheets/pages/milestone.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/milestone.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/milestone.scss
index 15f3a2ef4a8..53f00494696 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/milestone.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/milestone.scss
@@ -239,7 +239,7 @@ $status-box-line-height: 26px;
     padding: 0;
   }
 
-  .popover-content {
+  .popover-body {
     padding: 0;
   }
 }
@@ -272,3 +272,162 @@ $status-box-line-height: 26px;
     display: inline;
   }
 }
+
+// EE-only
+
+.burndown-hint.container-fluid {
+  border: 1px solid $border-color;
+  border-radius: $border-radius-default;
+  position: relative;
+  margin: $gl-padding 0;
+  overflow: hidden;
+  padding-top: 15px;
+  padding-bottom: 15px;
+
+  .dismiss-icon {
+    position: absolute;
+    right: $gl-padding;
+    cursor: pointer;
+    color: $cycle-analytics-dismiss-icon-color;
+    z-index: 1;
+  }
+
+  .svg-container {
+    text-align: center;
+
+    svg {
+      max-width: 200px;
+      max-height: 200px;
+    }
+  }
+
+  .inner-content {
+    @include media-breakpoint-down(xs) {
+      padding: 0 28px;
+      text-align: center;
+    }
+
+    h4 {
+      color: $gl-text-color;
+      font-size: 17px;
+    }
+
+    p {
+      color: $cycle-analytics-box-text-color;
+      margin-bottom: $gl-padding;
+    }
+  }
+}
+
+.burndown-docs-link {
+  color: inherit;
+  text-decoration: underline;
+}
+
+.burndown-header {
+  margin: 24px 0 12px;
+
+  h3 {
+    font-size: 16px;
+    margin: 0;
+  }
+
+  .btn-group {
+    margin-left: 20px;
+    margin-bottom: 2px;
+  }
+
+  .btn {
+    @include btn-outline($white-light, $blue-500, $blue-500, $blue-500, $white-light, $blue-600, $blue-600, $blue-700);
+
+    font-size: 12px;
+
+    &.active {
+      background-color: $blue-500;
+      border-color: $blue-600;
+      color: $white-light;
+    }
+  }
+}
+
+.burndown-chart {
+  width: 100%;
+  height: 380px;
+  margin: 5px 0;
+
+  @include media-breakpoint-down(sm) {
+    height: 320px;
+  }
+
+  @include media-breakpoint-down(xs) {
+    height: 200px;
+  }
+
+  .axis {
+    font-size: 12px;
+
+    line,
+    path {
+      fill: none;
+      stroke: $gl-gray-350;
+      shape-rendering: crispEdges;
+    }
+  }
+
+  .axis-label {
+    text {
+      fill: $gl-text-color-secondary;
+    }
+
+    line {
+      stroke: $border-color;
+    }
+  }
+
+  .legend {
+    shape-rendering: crispEdges;
+
+    text {
+      font-size: 13px;
+      fill: $gl-text-color-tertiary;
+    }
+
+    rect {
+      stroke: $border-color;
+      fill: none;
+    }
+  }
+
+  .line {
+    stroke-width: 2px;
+    fill: none;
+
+    &.actual {
+      stroke: $green-500;
+    }
+
+    &.ideal {
+      stroke: $gl-gray-350;
+      stroke-dasharray: 6px 6px;
+    }
+  }
+
+  .focus {
+    circle {
+      fill: $white-light;
+      stroke: $green-500;
+      stroke-width: 2px;
+    }
+  }
+
+  .chart-tooltip {
+    text {
+      font-size: 12px;
+      fill: $white-light;
+    }
+
+    rect {
+      fill: $black;
+    }
+  }
+}
app/assets/stylesheets/pages/boards.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/boards.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/boards.scss
index bc28ffb3a92..cce168aebca 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/boards.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/boards.scss
@@ -24,6 +24,7 @@
 
 .is-ghost {
   opacity: 0.3;
+  pointer-events: none;
 }
 
 .dropdown-projects {
@@ -55,6 +56,42 @@
   .content-wrapper {
     padding-bottom: 0;
   }
+
+  .issues-details-filters {
+    display: -webkit-flex;
+    display: flex;
+  }
+
+  .filter-form {
+    width: 100%;
+  }
+}
+
+.board-extra-actions {
+  font-size: 0;
+  white-space: nowrap;
+}
+
+@include media-breakpoint-up(md) {
+  .issue-boards-content.is-focused {
+    position: fixed;
+    width: 100%;
+    height: 100%;
+    top: 0;
+    left: 0;
+    background: $white-light;
+    z-index: 9000;
+
+    .boards-list {
+      height: calc(100vh - #{$issue-boards-filter-height});
+      overflow-x: scroll;
+    }
+
+    .issue-boards-sidebar {
+      height: 100%;
+      top: 0;
+    }
+  }
 }
 
 .boards-app {
@@ -234,7 +271,8 @@
   }
 }
 
-.board-blank-state {
+.board-blank-state,
+.board-promotion-state {
   padding: $gl-padding;
   background-color: $white-light;
   flex: 1;
@@ -242,6 +280,13 @@
   overflow-x: hidden;
 }
 
+.board-promotion-state {
+  .btn.btn-primary {
+    display: block;
+    margin-bottom: 15px;
+  }
+}
+
 .board-blank-state-list {
   list-style: none;
 
@@ -443,6 +488,30 @@
   margin: 5px;
 }
 
+.boards-title-holder {
+  padding: 25px 13px $gl-padding;
+
+  .dropdown-menu {
+    margin-top: -15px;
+    margin-left: 8px;
+  }
+}
+
+.board-selector-page-two {
+  padding-left: 10px;
+  padding-right: 10px;
+  white-space: normal;
+}
+
+.form-section-title {
+  font-size: 16px;
+}
+
+.board-delete-btns {
+  padding-top: 12px;
+  border-top: 1px solid $border-color;
+}
+
 .page-with-contextual-sidebar.layout-page .issue-boards-sidebar {
   .issuable-sidebar-header {
     position: relative;
@@ -658,6 +727,45 @@
   }
 }
 
+.board-milestone-list {
+  > li {
+    padding-left: 0;
+    padding-right: 0;
+  }
+
+  a {
+    padding-left: 25px;
+  }
+
+  .fa-check {
+    margin-left: -18px;
+  }
+}
+
+.board-inner-milestone-dropdown {
+  margin-top: 10px;
+
+  .dropdown-menu {
+    position: fixed;
+    left: 10px;
+    top: 175px;
+    min-width: 200px;
+  }
+}
+
+.board-config-modal {
+  width: 440px;
+
+  .block {
+    padding: $gl-padding 0;
+
+    // add a border between all items, but not at the start or end
+    + .block {
+      border-top: solid 1px $border-color;
+    }
+  }
+}
+
 .board-card-info {
   color: $gl-text-color-secondary;
   white-space: nowrap;
app/assets/stylesheets/pages/issuable.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/issuable.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/issuable.scss
index e0bdc1341b1..bbb1b0ff82e 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/issuable.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/issuable.scss
@@ -207,6 +207,15 @@
         }
       }
     }
+
+    &.weight {
+      .gl-field-error {
+        margin-top: $gl-padding-8;
+        margin-left: -6px;
+        display: flex;
+        align-items: center;
+      }
+    }
   }
 
   .block-first {
@@ -263,6 +272,10 @@
 
   .selectbox {
     display: none;
+
+    &.show {
+      display: block;
+    }
   }
 
   .btn-clipboard:hover {
@@ -316,7 +329,7 @@
     }
 
     .no-value,
-    .btn-secondary-hover-link {
+    .btn-default-hover-link {
       color: $gl-text-color-secondary;
     }
 
@@ -599,7 +612,6 @@
   margin: -7px;
 }
 
-
 .user-list {
   display: flex;
   flex-wrap: wrap;
@@ -726,6 +738,7 @@
       .issuable-main-info {
         flex: 1 auto;
         margin-right: 10px;
+        min-width: 0;
 
         .issue-weight-icon {
           vertical-align: sub;
@@ -787,6 +800,7 @@
     @media(max-width: map-get($grid-breakpoints, lg)-1) {
       .task-status,
       .issuable-due-date,
+      .issuable-weight,
       .project-ref-path {
         display: none;
       }
@@ -925,12 +939,53 @@
   }
 }
 
+.add-issuable-form-input-wrapper {
+  height: auto;
+  padding: $gl-vert-padding $gl-vert-padding 0 $gl-input-padding;
+
+  &.focus,
+  &.focus:hover {
+    border-color: $blue-300;
+    box-shadow: 0 0 4px $dropdown-input-focus-shadow;
+  }
+}
+
+.add-issuable-form-input-token-list {
+  display: flex;
+  flex-wrap: wrap;
+  align-items: baseline;
+  list-style: none;
+  margin-bottom: 0;
+  padding-left: 0;
+}
+
+.add-issuable-form-token-list-item {
+  max-width: 100%;
+  margin-bottom: $gl-vert-padding;
+  margin-right: 5px;
+}
+
+.add-issuable-form-input-list-item {
+  flex: 1;
+  min-width: 200px;
+  margin-bottom: $gl-vert-padding;
+}
+
+.add-issuable-form-input {
+  width: 100%;
+  border: 0;
+
+  &:focus {
+    outline: none;
+  }
+}
+
+.add-issuable-form-actions {
+  margin-top: $gl-padding;
+}
+
 .right-sidebar-collapsed {
   .sidebar-grouped-item {
-    .sidebar-collapsed-icon {
-      margin-bottom: 0;
-    }
-
     .sidebar-collapsed-divider {
       line-height: 5px;
       font-size: 12px;
app/assets/stylesheets/pages/members.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/members.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/members.scss
index 99609a96976..efa3c7dbead 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/members.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/members.scss
@@ -14,6 +14,12 @@
 }
 
 .member {
+  &.is-overriden {
+    .btn-ldap-override {
+      display: none !important;
+    }
+  }
+
   .list-item-name {
     @include media-breakpoint-up(sm) {
       float: left;
@@ -123,6 +129,50 @@
   outline: 0;
 }
 
+.members-ldap {
+  -webkit-align-self: center;
+  align-self: center;
+  height: 100%;
+  margin-right: 10px;
+  margin-left: -49px;
+}
+
+.alert-member-ldap {
+  background-color: $orange-50;
+
+  @include media-breakpoint-up(sm) {
+    line-height: 40px;
+  }
+
+  > p {
+    float: left;
+    margin-bottom: 10px;
+    color: $orange-600;
+
+    @include media-breakpoint-up(sm) {
+      padding-left: 55px;
+      margin-bottom: 0;
+    }
+  }
+
+  .controls {
+    width: 100%;
+
+    @include media-breakpoint-up(sm) {
+      width: auto;
+    }
+  }
+}
+
+.btn-ldap-override {
+  width: 100%;
+
+  @include media-breakpoint-up(sm) {
+    margin-left: 10px;
+    width: auto;
+  }
+}
+
 .flex-project-members-panel {
   display: flex;
   flex-direction: row;
app/assets/stylesheets/pages/settings.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/settings.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/settings.scss
index c5b9d1f6885..bef215bd59c 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/settings.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/settings.scss
@@ -211,6 +211,31 @@
   }
 }
 
+.nested-settings {
+  padding-left: 20px;
+}
+
+.input-btn-group {
+  display: flex;
+
+  .input-large {
+    flex: 1;
+  }
+
+  .btn {
+    margin-left: 10px;
+  }
+}
+
+.settings-flex-row {
+  display: flex;
+  align-items: center;
+
+  .float-right {
+    margin-left: auto;
+  }
+}
+
 .prometheus-metrics-monitoring {
   .card {
     .card-toggle {
@@ -241,14 +266,24 @@
     }
   }
 
-  .loading-metrics,
-  .empty-metrics {
-    padding: 30px 10px;
+  .custom-monitored-metrics {
+    .card-title {
+      display: flex;
+      align-items: center;
 
-    p,
-    .btn {
-      margin-top: 10px;
-      margin-bottom: 0;
+      > .btn-success {
+        margin-left: auto;
+      }
+    }
+
+    .custom-metric {
+      display: flex;
+      align-items: center;
+    }
+
+    .custom-metric-link-bold {
+      font-weight: $gl-font-weight-bold;
+      text-decoration: none;
     }
   }
 
@@ -275,6 +310,12 @@
   }
 }
 
+.saml-settings.info-well {
+  .form-control[readonly] {
+    background: $white-light;
+  }
+}
+
 .modal-doorkeepr-auth {
   .modal-body {
     padding: $gl-padding;
app/assets/stylesheets/pages/groups.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/groups.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/groups.scss
index 8ade995525a..0a07747e0d4 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/groups.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/groups.scss
@@ -15,6 +15,11 @@
   word-wrap: nowrap;
 }
 
+.content-list .group-name {
+  font-weight: $gl-font-weight-bold;
+  color: $pages-group-name-color;
+}
+
 .group-row {
   @include basic-list-stats;
 
@@ -172,6 +177,50 @@
   }
 }
 
+.card {
+  .shared_runners_limit_under_quota {
+    color: $green-500;
+  }
+
+  .shared_runners_limit_over_quota {
+    color: $red-500;
+  }
+}
+
+.pipeline-quota {
+  border-top: 1px solid $table-border-color;
+  border-bottom: 1px solid $table-border-color;
+  margin: 0 0 $gl-padding;
+
+  .row {
+    padding-top: 10px;
+    padding-bottom: 10px;
+  }
+
+  .right {
+    text-align: right;
+  }
+
+  .progress {
+    height: 6px;
+    width: 100%;
+    margin-bottom: 0;
+    margin-top: 4px;
+  }
+}
+
+.user-settings-pipeline-quota {
+  margin-top: $gl-padding;
+
+  .pipeline-quota {
+    border-top: 0;
+  }
+}
+
+table.pipeline-project-metrics tr td {
+  padding: $gl-padding;
+}
+
 .mattermost-icon svg {
   width: 16px;
   height: 16px;
app/assets/stylesheets/pages/builds.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/builds.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/builds.scss
index 65f46e3852a..a39b1091279 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/builds.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/builds.scss
@@ -50,7 +50,6 @@
     position: relative;
   }
 
-
   .build-trace {
     @include build-trace();
   }
@@ -139,12 +138,6 @@
   }
 }
 
-.with-performance-bar .build-page {
-  .top-bar.affix {
-    top: $header-height + $performance-bar-height;
-  }
-}
-
 .build-header {
   .ci-header-container,
   .header-action-buttons {
@@ -388,3 +381,14 @@
   right: 0;
   margin-top: -17px;
 }
+
+@include media-breakpoint-down(sm) {
+  .top-bar {
+    .truncated-info {
+      white-space: nowrap;
+      overflow: hidden;
+      max-width: 220px;
+      text-overflow: ellipsis;
+    }
+  }
+}
app/assets/stylesheets/pages/environments.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/environments.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/environments.scss
index b6abb792709..5c2c458e170 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/environments.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/environments.scss
@@ -123,6 +123,166 @@
   }
 }
 
+/**
+ * Deploy boards
+ */
+.deploy-board {
+  padding: 10px;
+  background-color: $gray-light;
+  min-height: 20px;
+
+  .fa-spinner {
+    margin: 0 auto;
+    width: 20px;
+    display: block;
+    font-size: 20px;
+  }
+
+  > div {
+    display: flex;
+    justify-content: space-between;
+
+    .deploy-board-information {
+      order: 1;
+      display: flex;
+      width: 70px;
+      flex-wrap: wrap;
+      justify-content: center;
+      margin: 20px 0 20px 5px;
+
+      > span {
+        text-align: center;
+      }
+
+      .percentage {
+        color: $gl-text-color;
+      }
+
+      .text {
+        color: $gl-text-color-secondary;
+      }
+    }
+
+    .deploy-board-instances {
+      order: 2;
+      margin-left: 20px;
+      width: 100%;
+
+      .text {
+        color: $gl-text-color-secondary;
+        font-size: 12px;
+      }
+
+      .deploy-board-instances-container {
+        display: flex;
+        flex-wrap: wrap;
+        flex-direction: row;
+        margin-top: -8px;
+      }
+    }
+
+    .deploy-board-actions {
+      order: 3;
+      align-self: center;
+      min-width: 150px;
+      margin-left: 10px;
+    }
+
+    &.deploy-board-error-message {
+      justify-content: center;
+    }
+
+    .deploy-board-empty-state-svg {
+      order: 1;
+      width: 90px;
+      margin: auto 0 auto 20px;
+    }
+
+    .deploy-board-empty-state-text {
+      order: 2;
+      flex-wrap: wrap;
+      margin: auto auto 15px 0;
+
+      .title {
+        order: 1;
+        display: flex;
+        font-size: 17px;
+        line-height: 40px;
+      }
+    }
+  }
+}
+
+.deploy-board-instance {
+  width: 15px;
+  height: 15px;
+  border-radius: 3px;
+  border-width: 1px;
+  border-style: solid;
+  margin: 1px;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+
+  &-running {
+    background-color: $green-100;
+    border-color: $green-400;
+
+    // EE-specific start
+    &:hover {
+      background-color: $green-300;
+      border-color: $green-500;
+    }
+    // EE-specific end
+  }
+
+  &-succeeded {
+    background-color: $green-50;
+    border-color: $green-400;
+  }
+
+  &-failed {
+    background-color: $red-200;
+    border-color: $red-500;
+  }
+
+  &-unknown {
+    background-color: $red-200;
+    border-color: $red-500;
+  }
+
+  &-pending {
+    background-color: $white-light;
+    border-color: $border-color;
+  }
+
+  &.deploy-board-instance-canary {
+    &::after {
+      width: 7px;
+      height: 7px;
+      border: 1px solid $white-light;
+      background-color: $orange-300;
+      border-radius: 50%;
+      content: '';
+    }
+  }
+}
+
+.deploy-board-icon {
+  display: none;
+
+  @include media-breakpoint-up(md) {
+    float: left;
+    display: block;
+  }
+
+  i {
+    cursor: pointer;
+    color: $layout-link-gray;
+    padding-right: 10px;
+  }
+}
+
 .gl-responsive-table-row {
   .branch-commit {
     max-width: 100%;
@@ -355,8 +515,8 @@
       top: 13px;
     }
 
-    > .popover-title,
-    > .popover-content {
+    > .popover-header,
+    > .popover-body {
       padding: 8px;
       font-size: 12px;
       white-space: nowrap;
@@ -484,3 +644,136 @@
 .prometheus-table-row-highlight {
   background-color: $gray-100;
 }
+
+// EE-only
+.cluster-health-graphs {
+  .prometheus-state {
+    .state-svg img {
+      max-height: 120px;
+    }
+
+    .state-description,
+    .state-button {
+      display: none;
+    }
+  }
+}
+
+.alert-dropdown-button {
+  margin-left: $btn-side-margin;
+
+  .dropdown.open & {
+    background: $white-normal;
+    outline: 0;
+  }
+
+  svg {
+    margin: 0;
+
+    + svg {
+      margin-left: -$gl-padding-4;
+    }
+
+    &.chevron {
+      color: $gl-text-color-secondary;
+    }
+  }
+}
+
+.alert-dropdown-menu {
+  right: 0;
+  left: auto;
+  z-index: $zindex-popover + 5; // must be higher than graph flag popover
+
+  .dropdown-title {
+    margin: 0;
+  }
+}
+
+.alert-error-message {
+  color: $red-500;
+  vertical-align: middle;
+}
+
+.alert-current-setting {
+  color: $gl-text-color-disabled;
+  vertical-align: middle;
+}
+
+.alert-form {
+  padding: $gl-padding $gl-padding $gl-padding-8;
+
+  label {
+    font-weight: normal;
+  }
+
+  .btn-group,
+  .action-group {
+    display: flex;
+
+    .btn {
+      flex: 1 auto;
+      box-shadow: none;
+    }
+  }
+
+  .action-group .btn + .btn {
+    margin-left: $gl-padding-8;
+  }
+}
+
+// ee-only start
+.canary-deployment-callout {
+  border-bottom: 1px solid $border-white-normal;
+  display: flex;
+
+  @include media-breakpoint-down(sm) {
+    display: none;
+  }
+
+  &-lock {
+    height: 82px;
+    width: 92px;
+  }
+
+  &-message {
+    max-width: 600px;
+    color: $gray-700;
+  }
+
+  &-close {
+    color: $gray-700;
+    cursor: pointer;
+  }
+
+  &-button {
+    border-color: $blue-500;
+    color: $blue-500;
+
+    &:not(:disabled):not(.disabled):active {
+      background-color: $blue-200;
+      border: 2px solid $blue-600;
+      color: $blue-700;
+      height: 34px;
+      padding: 5px 9px;
+    }
+
+    &:focus {
+      background-color: $blue-100;
+      border: 2px solid $blue-500;
+      box-shadow: 0 0 4px 1px $blue-200;
+      color: $blue-600;
+      height: 34px;
+      padding: 5px 9px;
+    }
+
+    &:hover {
+      background-color: $blue-100;
+      border: 2px solid $blue-500;
+      color: $blue-600;
+      height: 34px;
+      padding: 5px 9px;
+    }
+  }
+}
+// ee-only end
app/assets/stylesheets/pages/profile.scss
diff --git a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/profile.scss b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/profile.scss
index a1e847009fc..86fb050c282 100644
--- a/home/yorickpeterse/Projects/gitlab/gdk-ce/gitlab/app/assets/stylesheets/pages/profile.scss
+++ b/home/yorickpeterse/Projects/gitlab/gdk-ee/gitlab/app/assets/stylesheets/pages/profile.scss
@@ -322,6 +322,7 @@ table.u2f-registrations {
   margin: 20px -5px 0;
 
   .bordered-box {
+    padding: 32px;
     border: 1px solid $blue-300;
     border-radius: $border-radius-default;
     background-color: $blue-50;
@@ -329,10 +330,6 @@ table.u2f-registrations {
     display: flex;
     justify-content: center;
     align-items: center;
-  }
-
-  .landing {
-    padding: 32px;
 
     .close {
       position: absolute;
@@ -478,3 +475,41 @@ table.u2f-registrations {
 .help-block {
   color: $gl-text-color-secondary;
 }
+
+.gitlab-slack-gif {
+  width: 100%;
+  max-width: $add-to-slack-gif-max-width;
+}
+
+.gitlab-slack-well {
+  background-color: $white-light;
+  box-shadow: none;
+  max-width: $add-to-slack-well-max-width;
+}
+
+.gitlab-slack-logo {
+  width: $add-to-slack-logo-size;
+  height: $add-to-slack-logo-size;
+}
+
+.gitlab-slack-popup {
+  width: 100%;
+  max-width: $add-to-slack-popup-max-width;
+}
+
+.gitlab-slack-right-arrow svg {
+  fill: $white-dark;
+  width: $right-arrow-size;
+  height: $right-arrow-size;
+  vertical-align: text-bottom;
+}
+
+.gitlab-slack-double-headed-arrow {
+  vertical-align: text-top;
+
+  svg {
+    fill: $gray-darker;
+    width: $double-headed-arrow-width;
+    height: $double-headed-arrow-height;
+  }
+}
Edited Aug 27, 2025 by Dave Smith
Assignee Loading
Time tracking Loading