.gb-toast-container {
    display: flex;
    flex-direction: column;
    position: fixed;
    z-index: 99998;
}

.position-topleft,
.position-topright,
.position-topcenter {
    top: 0;
}

.position-bottomleft,
.position-bottomright,
.position-bottomcenter {
    bottom: 0;
}

.gb-toast {
    display: flex;
    position: relative;
    flex-direction: row;
    animation: fadein 1.5s;
    margin-bottom: 1rem;
    /*padding: 1rem 1.25rem;*/
    padding: 16px 12px;
    color: #fff;
    width: 100vw;
    box-shadow: rgba(0,0,0,0.25) 0px 10px 40px;
}

.gb-toast-component {
    display: initial;
    padding: 0 0 0 0;
}

.gb-toast-info {
    /*background-color: #34a9ad;*/
    background-color: #f5faff;
    border: 1px groove #0a6ed1;
    color: #0a6ed1;
}

.gb-toast-success {
    /*background-color: #5fba7d;*/
    background-color: #f1fdf6;
    border: 1px groove #4f8a10;
    color: #4f8a10;
}

.gb-toast-warning {
    /*background-color: #c1c13e;*/
    background-color: #fef7f1;
    border: 1px groove #e9730c;
    color: #e9730c;
}

.gb-toast-error {
    /*background-color: #ba5e5e;*/
    background-color: #ffebeb;
    border: 1px groove #b00;
    color: #b00;
}

.gb-toast-action {
    display: flex;
    width: 24px;
}

    .gb-toast-action .gb-toast-close {
        background-color: transparent;
        border: 0;
        -webkit-appearance: none;
        color: inherit;
        font-size: 1.25rem;
    }

.gb-toast-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 1rem 0 0;
    /*font-size: 2.5rem;*/
    font-size: 18px;
}

.gb-toast-body {
    display: flex;
    flex-direction: column;
    /*flex: 1;*/
    flex-grow: 1; /* Set the middle element to grow and stretch */
}

    .gb-toast-body .gb-toast-header {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }

        .gb-toast-body .gb-toast-header h5 {
            font-weight: bold;
            text-transform: uppercase;
            font-size: 1.5rem;
            margin-bottom: 0;
            line-height: 32px;
        }

        .gb-toast-body .gb-toast-header .gb-toast-close {
            background-color: transparent;
            border: 0;
            -webkit-appearance: none;
            color: inherit;
            font-size: 1.25rem;
        }

    .gb-toast-body p {
        margin-bottom: 0;
        /*font-size: 1rem;*/
        font-size: 14px;
        color: black;
        overflow-wrap: break-word;
        word-wrap: break-word;
        word-break: break-word;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
    }

.gb-toast-progressbar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    /*height: 8px;*/
    height: 2px;
    border-bottom-left-radius: .25rem;
    border-bottom-right-radius: .25rem;
}

.gb-toast-info .gb-toast-progressbar > span {
    background-color: #34a9ad;
    opacity: 0.2;
}

.gb-toast-success .gb-toast-progressbar > span {
    background-color: #5fba7d;
    opacity: 0.2;
}

.gb-toast-warning .gb-toast-progressbar > span {
    background-color: #c1c13e;
    opacity: 0.2;
}

.gb-toast-error .gb-toast-progressbar > span {
    background-color: #ba5e5e;
    opacity: 0.2;
}

.gb-toast-progressbar > span {
    position: absolute;
    filter: brightness(75%);
    /*height: 8px;*/
    height: 2px;
    border-bottom-left-radius: .25rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.2) 0 0);
    transition: all .5s linear;
}

.gb-toast-action {
    cursor: pointer;
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@media (min-width: 576px) {

    .position-topleft {
        top: 2rem;
        left: 2rem;
    }

    .position-topright {
        top: 2rem;
        right: 2rem;
    }

    .position-topcenter {
        top: 2rem;
        left: 50%;
        margin-left: -15rem;
    }

    .position-bottomleft {
        bottom: 2rem;
        left: 2rem;
    }

    .position-bottomright {
        bottom: 2rem;
        right: 2rem;
    }

    .position-bottomcenter {
        bottom: 2rem;
        left: 50%;
        margin-left: -15rem;
    }

    .gb-toast {
        width: 30rem;
        border-radius: .25rem;
    }
}
