.fade-enter-active,
.fade-leave-active {
    transition: opacity .2s;
}

.fade-enter,
.fade-leave-to {
    opacity: 0;
}

.relative {
    position: relative;
    width: inherit;
    height: inherit;

    .overlay {
        position: absolute;
    }
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    height: 100%;
    z-index: 990;
}

.relative {
    .close {
        position: absolute;
        border-radius: 50%;
        padding: 0.5rem;
        height: 2.5rem;
        width: 2.5rem;

        &:hover {
            background-color: $grey;
        }
    }
}
.overlay-content {
    position: absolute;
    z-index: 991;
    width: auto;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);

    .close {
        position: absolute;
        height: 1rem;
        width: 1rem;
        opacity: 0.8;
        padding: 0.125rem;
        &:hover {
            opacity: 1;
        }
    }
}

.close {
    right: 1rem;
    top: 1rem;
    font-size: 1.5rem;
    cursor: pointer;
    z-index: 992;

    &:after {
        content: 'x';
    }
}