.tooltip {
  visibility: collapse;
  z-index: 10000;
  font-size: 0.8rem;
  text-align: center;
  background: $dark;
  color: white;
  border-radius: 5px;
  padding: 5px 10px 5px;
  opacity: 0;
  transition: opacity $transition;

  // If the tooltip is multiline, it would make the height calculations needed to properly position it a lot harder.
  white-space: nowrap;
  overflow: hidden;

  &-arrow {
    opacity: 0;
    content: '';
    visibility: collapse;
    position: absolute;
    transition: opacity $transition;
    z-index: 10000;

    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid $dark;

    &.bottom {
      transform: rotate(180deg);
    }
  }

  &.visible, &-arrow.visible {
    opacity: 1;
    visibility: visible;
  }
}
