// stylelint-disable selector-class-pattern

// .dropdown {
//   > .nav-link {
//     z-index: ($zindex-dropdown + 1);
//   }
// }

.dropdown-menu {

  > li:not(.dropdown-divider) {
    position: relative;
    padding: 0 var(--#{$prefix}dropdown-padding-x);
    margin: 0 calc(-1 * var(--#{$prefix}dropdown-padding-x));
  }

  .navbar-nav &,
  .navbar-nav:hover > li:not(:hover) > &.show {
    z-index: -100;
    display: block;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity .25s;
  }

  .navbar-nav &.show,
  .dropdown--hover:hover > &,
  .dropdown--hover li:hover > & {
    --#{$prefix}dropdown-zindex: #{$zindex-dropdown};

    z-index: var(--#{$prefix}dropdown-zindex);
    display: block;
    visibility: visible;
    opacity: 1;
  }

  .dropdown-menu {
    top: calc(-1 * var(--#{$prefix}dropdown-padding-y));
    left: 100%;
  }

  .navbar & {

    &::after {
      position: absolute;
      top: 0;
      right: 0;
      left: auto;
      width: 0;
      height: var(--lx-ornament-border-width);
      content: "";
      background-color: var(--lx-ornament-border-color, --lx-ornament-bg-color);
      transition: $transition-base;
    }
  }

  &.show,
  li:hover > &,
  .active + & {
    &::after {
      right: auto;
      left: 0;
      width: 100%;
      transition-delay: .15s;
    }
  }

  .dropdown:not(.nav-item) > & {
    margin-top: -3px !important; // stylelint-disable-line declaration-no-important
  }
}


.nav-item > .dropdown-menu {
  top: calc(100% - var(--lx-ornament-border-width)); // special rule for top dropdown-menu
  // top: 100%;
  left: 0;
}

.dropdown-menu-end {

  .nav-item > & {
    right: 0;
    left: auto;
  }

  .dropdown-menu {
    right: 100%;
    left: auto;
  }
}

.nav-item > .dropdown-menu-center {
  right: auto;
  left: auto;
}

.dropdown-item {

  .dropdown--hover:hover > &,
  .dropdown--hover li:hover > &,
  li:focus > & {
    color: var(--#{$prefix}dropdown-link-hover-color);
    text-decoration: if($link-hover-decoration == underline, none, null);
    @include gradient-bg(var(--#{$prefix}dropdown-link-hover-bg));
  }
}

.dropdown--xs {

  > .dropdown-menu {
    --#{$prefix}dropdown-min-width: initial;
  }
}

.dropdown--xl {
  position: static !important; // stylelint-disable-line declaration-no-important

  > .dropdown-menu {
    --#{$prefix}nav-link-padding-x: 0;
    --#{$prefix}dropdown-min-width: 100%;

    max-height: calc(100vh - var(--lx-navbar-height));
    overflow-x: hidden;
    overflow-y: auto;
  }

}

.dropdown-divider {
  margin-right: calc(-1 * var(--#{$prefix}dropdown-padding-y));
  margin-left: calc(-1 * var(--#{$prefix}dropdown-padding-y));
}

.dropdown--check {

  .btn {
    white-space: initial;
    small {
      display: inline-block;
      white-space: nowrap;

      &::after {
        display: inline-block;
        margin-right: 4px;
        margin-left: -2px;
        content: ",";
      }
      &:last-child::after {
        content: "";
      }
    }
  }

  > .dropdown-menu {
    top: 100% !important; // stylelint-disable-line declaration-no-important
    bottom: auto !important; // stylelint-disable-line declaration-no-important
    transform: none !important; // stylelint-disable-line declaration-no-important
  }
}

// .dropdown--range {

//   .dropdown-menu {
//     // --#{$prefix}dropdown-min-width: 100%;

//     background-color: var(--#{$prefix}body-bg-inverse);
//   }
// }

.dropdown--select {

  .dropdown-item {
    white-space: break-spaces;
  }
}
