.bubble {
   z-index: 99999;
   position: fixed;
   bottom: 20px;
   right: 20px;
   max-width: calc(100% - 40px);
}
.bubble-button {
   display: none;
   width: 70px;
   height: auto;
   filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.8));
}
.bubble-button.shown {
   display: block;
}

.bubble-button,
.bubble-close {
    cursor: pointer;
}

.bubble-content {
   display: none;
   width: 400px;
   max-width: 100%;
   background-color: #fff;
   border-radius: 5px;
   box-shadow: 3px 3px 8px -3px rgba(0, 0, 0, 0.8);
   animation: bubble-fade-anim 0.5s;
}
.bubble-content.shown {
   display: block;
}

.bubble-title {
   display: flex;
   justify-content: space-between;
   padding: 15px;
   font-size: 20px;
   color: #fff;
   background-color: #1fcf60;
   border-radius: 5px 5px 0 0;
}
.bubble-list {
   border-radius: 0 0 5px 5px;
   padding: 15px;
}

.bubble-item {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   padding: 10px 20px;
   border-radius: 5px;
   box-shadow: 2px 2px 5px -3px rgba(0, 0, 0, 0.8);
   margin-bottom: 10px;
   border: 1px solid #ddd;
}
.bubble-item:hover {
   text-decoration: none;
   background-color: #1fcf60;
   border-color: #1fcf60;
   color: #fff;
}
.bubble-item-name {
   font-size: 18px;
   color: #111;
}
.bubble-item:hover .bubble-item-name {
   color: #fff;
}

@keyframes bubble-fade-anim {
    0% {
         opacity: 0;
    }

    100% {
         opacity: 1;
    }
}
