.@{menu-prefix-cls} {
  // base theme
  &-base,
  &-base &-sub {
    color: @menu-base-color;
    background: @menu-base-bg;
    .@{menu-prefix-cls}-submenu-title .@{menu-prefix-cls}-submenu-arrow {
      opacity: 0.45;
      transition: all 0.3s;
      &:after,
      &:before {
        background: @menu-base-arrow-color;
      }
    }
  }

  &-base&-submenu-popup {
    background: transparent;
  }

  &-base &-inline&-sub {
    background: @menu-base-submenu-bg;
    box-shadow: 0 2px 8px @menu-base-shadow inset;
  }

  &-base&-horizontal > &-item,
  &-base&-horizontal > &-submenu {
    border-color: transparent;
    top: 0;
  }

  &-base&-horizontal > &-item > a:before {
    bottom: 0;
  }

  &-base &-item,
  &-base &-item-group-title,
  &-base &-item > a {
    color: @menu-base-color;
  }

  &-base&-inline,
  &-base&-vertical,
  &-base&-vertical-left,
  &-base&-vertical-right {
    border-right: 0;
  }

  &-base&-inline &-item,
  &-base&-vertical &-item,
  &-base&-vertical-left &-item,
  &-base&-vertical-right &-item {
    border-right: 0;
    margin-left: 0;
    left: 0;
    &:after {
      border-right: 0;
    }
  }

  &-base&-inline &-item,
  &-base&-inline &-submenu-title {
    width: 100%;
  }

  &-base &-item:hover,
  &&-base &-item-active,
  &&-base &-submenu-active,
  &-base:not(&-inline) &-submenu-open,
  &-base &-submenu-selected,
  &-base &-submenu-title:hover {
    background-color: @menu-base-item-active-bg;
    color: @menu-base-highlight-color;
    > a {
      color: @menu-base-highlight-color;
    }
    > .@{menu-prefix-cls}-submenu-title,
    > .@{menu-prefix-cls}-submenu-title:hover {
      > .@{menu-prefix-cls}-submenu-arrow {
        opacity: 1;
        &:after,
        &:before {
          background: @menu-base-highlight-color;
        }
      }
    }
  }

  &-base &-item-selected {
    border-right: 0;
    color: @menu-base-highlight-color;
    &:after {
      border-right: 0;
    }
    > a,
    > a:hover {
      color: @menu-base-highlight-color;
    }
  }


  &&-base &-item-selected,
  &-submenu-popup&-base &-item-selected {
    color: @menu-base-color;
    background-color: @menu-base-item-active-bg;
  }

  // Disabled state sets text to base gray and nukes hover/tab effects
  &-base &-item-disabled,
  &-base &-submenu-disabled {
    &,
    > a {
      opacity: 0.8;
      color: @disabled-color-dark !important;
    }
    > .@{menu-prefix-cls}-submenu-title {
      color: @disabled-color-dark !important;
      > .@{menu-prefix-cls}-submenu-arrow {
        &:before,
        &:after {
          background: @disabled-color-dark !important;
        }
      }
    }

    &:hover { background: @menu-base-bg }
  }

  &.ant-menu-inline.ant-menu-base {
    .ant-menu-item-selected, .ant-menu-item:hover {
      color: @menu-base-color;
      background-color: @primary-7;
    }
  }
}
