@header-trigger-prefix-cls: ~'@{namespace}-layout-header-trigger';
@header-prefix-cls: ~'@{namespace}-layout-header';
@breadcrumb-prefix-cls: ~'@{namespace}-layout-breadcrumb';
@logo-prefix-cls: ~'@{namespace}-app-logo';

.@{header-prefix-cls} {
  display: flex;
  height: @header-height;
  padding: 0;
  line-height: @header-height;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 9px;
  background: none;

  &--topMenu {
    background: #102642;
    border-radius: 16px;
  }

  &--mobile {
    .@{breadcrumb-prefix-cls},
    .error-action,
    .notify-item,
    .fullscreen-item {
      display: none;
    }

    .@{logo-prefix-cls} {
      min-width: unset;
      padding-right: 0;

      &__title {
        display: none;
      }
    }
    .@{header-trigger-prefix-cls} {
      padding: 0 4px 0 8px !important;
    }
    .@{header-prefix-cls}-action {
      padding-right: 4px;
    }
  }

  &--fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: @layout-header-fixed-z-index;
    width: 100%;
  }

  &-logo {
    height: @header-height;
    padding: 0 16px;

    img {
      width: @logo-width;
      height: @logo-width;
    }
  }

  &-left {
    display: flex;
    height: 100%;
    align-items: center;

    .@{header-trigger-prefix-cls} {
      display: flex;
      height: 100%;
      padding: 1px 10px 0 1px;
      cursor: pointer;
      align-items: center;

      .anticon {
        font-size: 16px;
      }

      &.light {
        &:hover {
          background-color: @header-light-bg-hover-color;
        }

        svg {
          fill: #000;
        }
      }

      &.dark {
        &:hover {
          background-color: @header-dark-bg-hover-color;
        }
      }
    }
  }

  &-menu {
    height: 100%;
    min-width: 0;
    flex: 1;
    align-items: center;

    .title {
      font-size: 18px;
      font-weight: bold;
      margin-left: 20px;
      margin-right: 20px;
      padding-right: 20px;
      border-right: 1px solid #eee;
      color: @primary-color;
      height: 44px;
      line-height: 44px;
      max-width: 180px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }

  &-action {
    display: flex;
    min-width: 180px;
    width: 348px;
    align-items: center;
    color: #333;
    padding: 0 0 0 10px;

    &__item {
      display: flex !important;
      height: @header-height;
      padding: 0 10px;
      font-size: 18px;
      cursor: pointer;
      align-items: center;

      .ant-badge {
        height: @header-height;
        line-height: @header-height;
      }

      .ant-badge-dot {
        top: 10px;
        right: 2px;
      }
    }

    span[role='img'] {
      padding: 0 2px;
    }

    &-top {
      .iconfont-svg {
        fill: #c3c8cf !important;
      }

      .vben-header-user-dropdown {
        border-color: #254165 !important;
      }
    }
  }

  &--light {
    background-color: @white !important;
    border-bottom: 1px solid @header-light-bottom-border-color;
    border-left: 1px solid @header-light-bottom-border-color;

    .@{header-prefix-cls}-logo {
      color: @text-color-base;

      &:hover {
        background-color: @header-light-bg-hover-color;
      }
    }

    .@{header-prefix-cls}-action {
      &__item {
        color: @text-color-base;

        .app-iconify {
          padding: 0 10px;
          font-size: 16px !important;
        }

        &:hover {
          background-color: @header-light-bg-hover-color;
        }
      }

      &-icon,
      span[role='img'] {
        color: @text-color-base;
      }
    }
  }

  &--dark {
    background-color: @header-dark-bg-color !important;
    // border-bottom: 1px solid @border-color-base;
    border-left: 1px solid @border-color-base;
    .@{header-prefix-cls}-logo {
      &:hover {
        background-color: @header-dark-bg-hover-color;
      }
    }

    .@{header-prefix-cls}-action {
      &__item {
        .app-iconify {
          padding: 0 10px;
          // font-size: 16px !important;
        }

        .ant-badge {
          span {
            color: @white;
          }
        }

        &:hover {
          background-color: @header-dark-bg-hover-color;
        }
      }
    }
  }
}
