.firefly-container {
    position: fixed;
    z-index: 5001;
    top: 70px;
    left: 50%;
    transform: translateX(-50%);
}

.firefly {
    --duration: 200ms;
    margin: 0 10px;
    transition: height var(--duration) ease-in;
}
.firefly:after {
    display: block;
    height: 10px;
    content: "";
}
.firefly.dispose {
    animation: firefly-animation-hide var(--duration) both ease-in;
}

.firefly-content {
    font: 14px/14px Tahoma;
    position: relative;
    z-index: 4002;
    width: 200px;
    min-height: 30px;
    padding: 8px;
    border-radius: 4px;
    animation: firefly-animation-show var(--duration) both ease-out;
    color: var(--firefly-color);
    background: var(--firefly-background);
    box-shadow: var(--firefly-box-shadow);
}

@keyframes firefly-animation-show {
    from {
        opacity: 0;
        transform: translateY(-100%);
    }
    to {
        opacity: 1;
    }
}
@keyframes firefly-animation-hide {
    from {
        opacity: 1;
    }
    to {
        transform: scaleY(0);
        opacity: 0;
    }
}