// Extends reach-ui menu button base stylesheet
/* Used to detect in JavaScript if apps have loaded styles or not. */
:root {
  --reach-menu-button: 1;
}

[data-reach-menu] {
  font-family: sans-serif;
  display: block;
  position: absolute;
  z-index: 2;
  font-size: var(--font-body);
}

[data-reach-menu-list] {
  display: block;
  white-space: nowrap;
  outline: none;
  background-color: $lbry-white;
  border: 1px solid $lbry-gray-1;
  border-top: none;

  [data-mode='dark'] & {
    background-color: var(--dm-color-05);
    color: $lbry-white;
    border-color: var(--dm-color-03);
  }
}

[data-reach-menu-item] {
  display: block;
  z-index: 2;
}

[data-reach-menu-item] {
  cursor: pointer;
  display: block;
  color: inherit;
  font: inherit;
  text-decoration: initial;
}

[data-reach-menu-item][data-selected] {
  background: lighten($lbry-teal-5, 55%);
  color: darken($lbry-teal-5, 15%);
  outline: none;

  &:active {
    background-color: $lbry-teal-4;
    color: $lbry-white;
    .icon {
      stroke: $lbry-white;
    }
  }

  [data-mode='dark'] & {
    background-color: $lbry-teal-5;
    color: $lbry-white;

    &:hover,
    &:focus {
      .icon {
        stroke: $lbry-white;
      }
    }
  }
}

.menu__list--header {
  margin-top: -1px;
  margin-left: calc(var(--spacing-medium) * -1);
  box-shadow: var(--card-box-shadow--attached) $lbry-gray-1;
  animation: menu-animate-in var(--animation-duration) var(--animation-style);

  [data-mode='dark'] & {
    box-shadow: var(--card-box-shadow) $lbry-black;
  }
}

.menu__link {
  display: flex;
  align-items: center;
  padding: var(--spacing-medium);
  padding-right: var(--spacing-large);
}

.menu__title,
.menu__link {
  color: lighten($lbry-black, 20%);
  color: $lbry-gray-5;

  .icon {
    stroke: $lbry-gray-5;
  }

  [data-mode='dark'] & {
    color: $lbry-gray-2;

    .icon {
      stroke: $lbry-gray-2;
    }
  }
}

.menu__link {
  .icon {
    margin-right: var(--spacing-small);
    stroke: $lbry-gray-4;
  }
}

.menu__title {
  span {
    margin-left: var(--spacing-miniscule);
  }
}
