.alert_holder {
  margin: -16px;

  .alert-link {
    font-weight: normal;
  }
}

.new_project,
.edit-project {

  .sharing-and-permissions {
    .header {
      padding-top: $gl-vert-padding;
    }

    .label-light {
      margin-bottom: 0;
    }

    .help-block {
      margin-top: 0;
    }

    .form-group {
      margin-bottom: 5px;
    }

    > .form-group {
      padding-left: 0;
    }

    select option[disabled] {
      display: none;
    }
  }

  select {
    transition: background 2s ease-out;

    &.highlight-changes {
      background: $highlight-changes-color;
      transition: none;
    }
  }

  .help-block {
    margin-bottom: 10px;
  }

  .project-path .form-control {
    border-radius: $border-radius-base;
  }

  .input-group > div {

    &:last-child {
      padding-right: 0;
    }
  }

  @media (max-width: $screen-xs-max) {
    .input-group > div {

      margin-bottom: 14px;

      &:last-child {
        margin-bottom: 0;
      }
    }

    fieldset > .form-group:first-child {
      padding-right: 0;
    }
  }

  .input-group-addon {

    &.static-namespace {
      height: 35px;
      border-radius: 3px;
      border: 1px solid $border-color;
    }

    + .select2 a {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
  }
}

.project-home-panel,
.group-home-panel {
  padding-top: 24px;
  padding-bottom: 24px;

  @media (min-width: $screen-sm-min) {
    border-bottom: 1px solid $border-color;
  }

  .project-avatar,
  .group-avatar {
    float: none;
    margin: 0 auto;

    &.identicon {
      border-radius: 50%;
    }
  }

  .project-title,
  .group-title {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
    word-wrap: break-word;

    .fa {
      margin-left: 2px;
      font-size: 12px;
      vertical-align: middle;
    }
  }

  .project-home-desc,
  .group-home-desc {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    max-width: 700px;

    > p {
      margin-bottom: 0;
    }
  }

  .notifications-btn {
    .fa-bell,
    .fa-spinner {
      margin-right: 6px;
    }

    .fa-angle-down {
      margin-left: 6px;
    }
  }
}

.nav > .project-repo-buttons {
  margin-top: 0;
}

.project-repo-buttons,
.group-buttons {
  .btn {
    @include btn-gray;
    padding: 3px 10px;

    &:last-child {
      margin-left: 0;
    }

    .fa {
      color: $layout-link-gray;
    }

    svg {

      path {
        fill: $layout-link-gray;
      }

      use {
        stroke: $layout-link-gray;
      }
    }

    .fa-caret-down {
      margin-left: 3px;
    }
  }

  .project-action-button {
    margin: 15px 5px 0;
    vertical-align: top;
  }

  .notification-dropdown .dropdown-menu {
    @extend .dropdown-menu-align-right;
  }

  .download-button {
    @media (max-width: $screen-md-max) {
      margin-left: 0;
    }
  }

  .count-buttons {
    display: inline-block;
    vertical-align: top;
    margin-top: 15px;
  }

  .project-clone-holder {
    display: inline-block;
    margin: 15px 5px 0 0;

    input {
      height: 28px;
    }
  }

  .count-with-arrow {
    display: inline-block;
    position: relative;
    margin-left: 4px;

    .arrow {
      &::before {
        content: '';
        display: inline-block;
        position: absolute;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        top: 50%;
        left: 0;
        margin-top: -6px;
        border-width: 7px 5px 7px 0;
        border-right-color: $count-arrow-border;
        pointer-events: none;
      }

      &::after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        top: 50%;
        left: 1px;
        margin-top: -9px;
        border-width: 10px 7px 10px 0;
        border-right-color: $white-light;
        pointer-events: none;
      }
    }

    .count {
      @include btn-gray;
      display: inline-block;
      background: $white-light;
      border-radius: 2px;
      border-width: 1px;
      border-style: solid;
      font-size: 13px;
      font-weight: 600;
      line-height: 13px;
      letter-spacing: .4px;
      padding: 6px 14px;
      text-align: center;
      vertical-align: middle;
      touch-action: manipulation;
      background-image: none;
      white-space: nowrap;
      margin: 0 10px 0 4px;

      a {
        color: inherit;
      }

      &:hover {
        background: $white-light;
      }
    }
  }
}

.project-repo-buttons {
  @include new-style-dropdown;

  .project-action-button .dropdown-menu {
    max-height: 250px;
    overflow-y: auto;
  }
}

.split-one {
  display: inline-table;
  margin-right: 12px;

  > a {
    margin: -1px;
  }
}

.project-visibility-level-holder {
  .radio {
    margin-bottom: 10px;

    i {
      margin: 2px 0;
      font-size: 20px;
    }

    .option-title {
      font-weight: normal;
      display: inline-block;
      color: $gl-text-color;
    }

    .option-descr {
      margin-left: 29px;
      color: $project-option-descr-color;
    }
  }
}

.save-project-loader {
  margin-top: 50px;
  margin-bottom: 50px;
  color: $save-project-loader-color;
}

.transfer-project .select2-container {
  min-width: 200px;
}

.deploy-key-content {
  @media (min-width: $screen-sm-min) {
    float: left;

    &:last-child {
      float: right;
    }
  }
}

.deploy-key-projects {
  @media (min-width: $screen-sm-min) {
    line-height: 42px;
  }
}

a.deploy-project-label {
  padding: 5px;
  margin-right: 5px;
  color: $gl-text-color;
  background-color: $row-hover;

  &:hover {
    color: $gl-link-color;
  }
}

.vs-public {
  color: $gl-primary;
}

.vs-internal {
  color: $gl-warning;
}

.vs-private {
  color: $gl-success;
}

.lfs-enabled {
  color: $gl-success;
}

.lfs-disabled {
  color: $gl-warning;
}

.breadcrumb.repo-breadcrumb {
  flex: 1;
  padding: 0;
  background: transparent;
  border: none;
  line-height: 34px;
  margin: 0;

  > li + li::before {
    padding: 0 3px;
    color: $project-breadcrumb-color;
  }

  a {
    color: $gl-text-color;
  }

  .dropdown-menu {
    width: 240px;
  }
}

.fork-namespaces {
  .row {
    -webkit-flex-wrap: wrap;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;

    .fork-thumbnail {
      border-radius: $border-radius-base;
      background-color: $white-light;
      border: 1px solid $border-white-light;
      height: 202px;
      margin: $gl-padding;
      text-align: center;
      width: 169px;

      &:hover,
      &.forked {
        background-color: $row-hover;
        border-color: $row-hover-border;
      }

      .no-avatar {
        width: 100px;
        height: 100px;
        background-color: $gray-light;
        border: 1px solid $white-normal;
        margin: 0 auto;
        border-radius: 50%;

        i {
          font-size: 100px;
          color: $white-normal;
        }
      }

      a {
        display: block;
        width: 100%;
        height: 100%;
        padding-top: $gl-padding;
        color: $gl-text-color;

        .caption {
          min-height: 30px;
          padding: $gl-padding 0;
        }
      }

      img {
        border-radius: 50%;
        max-width: 100px;
      }
    }
  }
}

.project-import {
  .form-group {
    margin-bottom: 5px;
  }

  .import-buttons {
    padding-left: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

    .btn {
      padding: 8px;
      margin-left: 10px;
    }

    > div {
      margin-bottom: 10px;
      padding-left: 0;
    }
  }
}

.project-stats {
  font-size: 0;
  text-align: center;
  max-width: 100%;
  border-bottom: 1px solid $border-color;

  .nav {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .nav > li {
    display: inline-block;

    &:not(:last-child) {
      margin-right: $gl-padding;
    }

    &.right {
      vertical-align: top;
      margin-top: 0;

      @media (min-width: $screen-lg-min) {
        float: right;
      }
    }
  }

  .nav > li > a {
    padding: 0;
    background-color: transparent;
    font-size: 14px;
    line-height: 29px;
    color: $notes-light-color;

    &:hover,
    &:focus {
      color: $gl-text-color;
    }
  }

  li.missing {
    border: 1px dashed $border-gray-normal;
    border-radius: $border-radius-default;

    a {
      padding-left: 10px;
      padding-right: 10px;
      color: $notes-light-color;
      display: block;
    }

    &:hover {
      background-color: $gray-normal;
    }
  }
}

pre.light-well {
  border-color: $well-light-border;
}

.git-empty {
  margin: 0 7px 7px;

  h5 {
    color: $gl-text-color;
  }

  .light-well {
    border-radius: 2px;

    color: $well-light-text-color;
    font-size: 13px;
    line-height: 1.6em;
  }
}

.project-footer {
  margin-top: 20px;

  .btn-remove {
    @include btn-middle;
    @include btn-red;

    float: left !important;
  }
}

/*
 * Projects list rendered on dashboard and user page
 */
.projects-list {
  @include basic-list;
  display: flex;
  flex-direction: column;

  // Disable Flexbox for admin page
  &.admin-projects {
    display: block;

    .project-row {
      display: block;
    }
  }

  .project-row {
    @include basic-list-stats;
    display: flex;
    align-items: center;
  }

  h3 {
    font-size: $gl-font-size;
  }

  a {
    color: $gl-text-color;
  }

  .avatar-container,
  .controls {
    flex: 0 0 auto;
  }

  .avatar-container {
    align-self: flex-start;

    > a {
      width: 100%;
    }
  }

  .project-details {
    min-width: 0;

    p,
    .commit-row-message {
      @include str-truncated(100%);
      margin-bottom: 0;
    }
  }

  .controls {
    margin-left: auto;
    text-align: right;
  }

  .ci-status-link {
    display: inline-block;
    line-height: 17px;
    vertical-align: middle;

    &:hover {
      text-decoration: none;
    }
  }
}

.panel .projects-list li {
  padding: 10px 15px;
  margin: 0;
}

.commits-search-form {
  .input-short {
    min-width: 200px;
  }
}

.git-clone-holder {
  width: 380px;

  .btn-clipboard {
    border: 1px solid $border-color;
  }

  .clone-options {
    display: table-cell;

    a.btn {
      width: 100%;
    }
  }

  .form-control {
    @extend .monospace;
    background: $white-light;
    font-size: 14px;
    margin-left: -1px;
    cursor: auto;
    width: 101%;
  }
}

.cannot-be-merged,
.cannot-be-merged:hover {
  color: $error-exclamation-point;
  margin-top: 2px;
}

.private-forks-notice .private-fork-icon {
  i:nth-child(1) {
    color: $project-private-forks-notice-odd;
  }

  i:nth-child(2) {
    color: $white-light;
  }
}

.new_protected_branch,
.new-protected-tag {
  label {
    margin-top: 6px;
    font-weight: normal;
  }
}

.create-new-protected-branch-button,
.create-new-protected-tag-button {
  @include dropdown-link;

  width: 100%;
  background-color: transparent;
  border: 0;
  text-align: left;
  text-overflow: ellipsis;
}

.protected-branches-list,
.protected-tags-list {
  margin-bottom: 30px;

  a {
    color: $gl-text-color;

    &:hover {
      color: $gl-link-color;
    }

    &.is-active {
      font-weight: 600;
    }
  }

  .settings-message {
    margin: 0;
    border-radius: 0 0 1px 1px;
    padding: 20px 0;
    border: none;
  }

  .table-bordered {
    border-radius: 1px;

    th:not(:last-child),
    td:not(:last-child) {
      border-right: solid 1px transparent;
    }
  }
}

.protected-tags-list,
.protected-branches-list {
  .dropdown-menu-toggle {
    width: 100%;
    max-width: 300px;
  }

  .flash-container {
    padding: 0;
  }
}

.custom-notifications-form {
  .is-loading {
    .custom-notification-event-loading {
      display: inline-block;
    }
  }
}

.custom-notification-event-loading {
  display: none;
  margin-left: 5px;

  &.is-done {
    color: $gl-text-green;
  }
}

.project-refs-form .dropdown-menu,
.dropdown-menu-projects {
  width: 300px;

  @media (min-width: $screen-sm-min) {
    width: 500px;
  }

  a {
    white-space: normal;
  }
}

.compare-form-group {
  .dropdown-menu,
  .inline-input-group {
    width: 100%;

    @media (min-width: $screen-sm-min) {
      width: 300px;
    }
  }

  + .compare-ellipsis {
    width: 100%;
    vertical-align: middle;
    text-align: center;
    margin-top: -20px;

    @media (min-width: $screen-sm-min) {
      margin-top: 0;
      width: auto;
    }
  }
}

.clearable-input {
  position: relative;

  .clear-icon {
    @extend .fa-times;
    display: none;
    position: absolute;
    right: 7px;
    top: 7px;
    color: $location-icon-color;

    &::before {
      font-family: FontAwesome;
      font-weight: normal;
      font-style: normal;
    }
  }

  &.has-value {
    .clear-icon {
      cursor: pointer;
      display: block;
    }
  }
}

.project-path {
  .form-control {
    min-width: 100px;
  }

  .select2-choice {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}

.project-home-empty {
  border-top: 0;

  .container-fluid {
    background: none;
  }

  p {
    margin-left: auto;
    margin-right: auto;
    max-width: 650px;
  }
}

.project-feature {
  padding-top: 10px;

  @media (min-width: $screen-sm-min) {
    padding-left: 45px;
  }

  &.nested {
    @media (min-width: $screen-sm-min) {
      padding-left: 90px;
    }
  }
}

.project-repo-select {
  &.disabled {
    opacity: 0.5;
    pointer-events: none;
  }
}

.variables-table {
  table-layout: fixed;

  &.table-responsive {
    border: none;
  }

  .variable-key {
    max-width: 120px;
    overflow: hidden;
    word-wrap: break-word;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .variable-value {
    max-width: 150px;
    overflow: hidden;
    word-wrap: break-word;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .variable-menu {
    text-align: right;
  }
}

.services-installation-info .row {
  margin-bottom: 10px;
}

.service-installation {
  padding: 32px;
  margin: 32px;
  border-radius: 3px;
  background-color: $white-light;

  h3 {
    margin-top: 0;
  }

  hr {
    margin: 32px 0;
    border-color: $border-color;
  }
}
