.mn-snack-container > .mn-snackbar {
    position: relative;
    margin: 5px;
    padding: 10px;
    color: white;
    background-color: black;
    border: 2px solid black;
    border-radius: 5px;

    font-family: "Arial", Helvetica, sans-serif;
    font-size: 1.0em;

    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    vertical-align: top;

    transition: all 0.5s ease-out;
}

.mn-snack-container > .mn-snackbar > .label {
    display: inline-block;
}

.mn-snack-container > .mn-snackbar > .mn-snack-button {
    cursor: pointer;
    font-size: 1.0em;
    border: none;
    background: transparent;
    margin: 0px 5px;
    padding: 0;
    align-items: center;
    justify-content: center;
}

/**
 *  push down/up notifications when added
 */
.mn-snack-container > .mn-snackbar.remove {
    opacity: 0;
}
.mn-snack-container > .mn-snackbar.transition-down:last-child {
    margin-top: -40px;
}

.mn-snack-container > .mn-snackbar.transition-down:last-child.remove {
    margin-top: -40px;
}

.mn-snack-container > .mn-snackbar.transition-down:not(:last-child).remove {
    margin-top: -45px;
}

.mn-snack-container > .mn-snackbar.transition-up:last-child {
    margin-bottom: -40px;
}

.mn-snack-container > .mn-snackbar.transition-up:not(:last-child).remove {
    visibility: hidden;
    margin-bottom: -45px;
}

/**
 *  slide notification into position when added
 */
.mn-snack-container.mn-snack-tl > .mn-snackbar,
.mn-snack-container.mn-snack-bl > .mn-snackbar {
    opacity: 1;
    left: 0;
}

.mn-snack-container.mn-snack-tl > .mn-snackbar.conceal,
.mn-snack-container.mn-snack-bl > .mn-snackbar.conceal {
    opacity: 0;
    position: absolute;
    left: -100%;
}

.mn-snack-container.mn-snack-tr > .mn-snackbar,
.mn-snack-container.mn-snack-br > .mn-snackbar {
    opacity: 1;
    right: 0;
}

.mn-snack-container.mn-snack-tr > .mn-snackbar.conceal,
.mn-snack-container.mn-snack-br > .mn-snackbar.conceal {
    opacity: 0;
    position: absolute;
    right: -100%;
}

.mn-snack-container.mn-snack-tc > .mn-snackbar {
    opacity: 1;
    top: 0;
}

.mn-snack-container.mn-snack-tc > .mn-snackbar.conceal {
    opacity: 0;
    position: absolute;
    top: -100%;
}

.mn-snack-container.mn-snack-bc > .mn-snackbar {
    opacity: 1;
    bottom: 0;
}

.mn-snack-container.mn-snack-bc > .mn-snackbar.conceal {
    opacity: 0;
    position: absolute;
    bottom: -100%;
}

/**
 * Slide notification out when removed
 */
.mn-snack-container > .mn-snackbar.slide-out {
    opacity: 0;
}

.mn-snack-container.mn-snack-tl > .mn-snackbar.slide-out, .mn-snack-bl > .mn-snackbar.slide-out {
    left: -100%;
}

.mn-snack-container.mn-snack-tr > .mn-snackbar.slide-out, .mn-snack-br > .mn-snackbar.slide-out {
    right: -100%;
}
