.app__status {
    display: contents;
  margin: 100px auto;
  width: 50px;
  color: dimgray;
  
  &:hover {
    .availability__tip {
      transform: translateX(0);
      opacity: 1;
    }
  }
}

.app__status__rings {
  display: ruby;
  margin: 0 5px 0;
  padding-left: 10px;
  color: dimgray;
  position: relative;
  text-align: center;
  width: 15px;
  height: 15px;

  &:before,
  &:after {
    border-radius: 50%;
    content: '';
    position: absolute;
  }

  &:before {
    height: 5px;
    left: 0;
    top: 8px;
    width: 5px;
  }

  &:after {
    animation: pulse 1s ease-out infinite;
    height: 13px;
    left: -5px;
    top: 3px;
    width: 13px;
  }
}

.app__status--live .app__status__rings {
  &:before {
    background-color: #2ecc71;
  }

  &:after {
    border: 1px solid #2ecc71;
  }

}

.app__status--off .app__status__rings {
  &:before {
    background-color: #e74c3c;
  }

  &:after {
    border: 1px solid #e74c3c;
  }

}

@keyframes pulse {
  0% {
    transform: scale(.1, .1);
    opacity: 0;
  }
  
  50% {
    opacity: 1;
  }
  
  100% {
    transform: scale(1.2, 1.2);
    opacity: 0;
  }
}