:root {
    --popup-notification-width: 40rem;
    --popup-notification-margin: 1rem;
}

#information-wrapper{
    max-height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999999;
    transition: .5s;
}

#information-wrapper.hidden{
    right: calc( (var(--popup-notification-width) * -1) + (var(--popup-notification-margin) * -2) + 1.5rem );
}

#toggle-popup-notifications{
    position: fixed;
    box-sizing: border-box;
    top: var(--popup-notification-margin);
    margin-left: -1.5rem;
    min-height: 0;
    height: 2rem;
    line-height: 2rem;
    width: 2rem;
    padding: 0;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    border-radius: 50%;
    color: #fff;
    background: rgba(0,0,0,.5);
    border: solid .1rem rgba(255,255,255,.5);
    transition: .5s .5s;
}

#information-wrapper.hidden #toggle-popup-notifications{
    transform: rotate(-180deg);
}

.popup-notification{
    width: var(--popup-notification-width);
    margin: var(--popup-notification-margin);
    border-radius: .4rem;
    border: solid .2rem rgba(0,0,0,.1);
    background: #fff;
    color: #777;
    box-shadow: 0 .3rem .6rem rgba(0,0,0, .35);
}

.popup-notification .progress-bar {
    background: rgba(0,0,0,.1);
}

.popup-notification[data-type-notification=notification]{
    border: none;
    background: #ffffff;
}

.popup-notification[data-type-notification=info],
.popup-notification[data-type-notification=info] .progress-bar{
    background: #64B5F6ee;
    color: #fff;
}

.popup-notification[data-type-notification=success],
.popup-notification[data-type-notification=success] .progress-bar{
    background: #64cc5fee;
    color: #fff;
}

.popup-notification[data-type-notification=error],
.popup-notification[data-type-notification=error] .progress-bar{
    background:#f16165ee;
    color: #fff;
}


.popup-notification[data-type-notification=alert],
.popup-notification[data-type-notification=alert] .progress-bar{
    background: #ffc107ee;
    color: #ffffff;
}

.popup-notification[data-type-notification=info],
.popup-notification[data-type-notification=success],
.popup-notification[data-type-notification=error],
.popup-notification[data-type-notification=alert]{
    text-shadow: 0 0 .3rem rgba(0,0,0,.8);
}

.popup-notification .header-box{
    padding: 1rem 1rem 0 1rem;
    text-align: right;
}

.popup-notification .close-popup-notification{
    padding: 0;
    border: 0;
    background: none;
    color: rgba(0,0,0,.3);
    cursor: pointer;
    outline: none;
    min-height: 0;
    transition: .5s;
}

.popup-notification .close-popup-notification:hover{
    padding: 0;
    border: 0;
    background: none;
    color: rgba(0,0,0,.5);
    cursor: pointer;
    outline: none;
    min-height: 0;
}

.popup-notification .content-box{
    flex: 1;
    padding: 1rem;
    text-align: left;
    font-size: 1.3rem;
    overflow-wrap: anywhere;
}

.popup-notification[data-type-notification=notification] .content-box{
    padding: 0;
}


.popup-notification .progress-bar{
    display: none;
    width: 0;
    border-bottom: solid .3rem rgba(0,0,0,.25);
    animation-name: bar;
    animation-iteration-count: 1;
}

@keyframes bar{
    0%{width: 100%}
    100%{width: 0}
}

@media screen and (max-width: 770px){
    #information-wrapper{
        width: 100%;
        height: auto;
        padding: .5rem;
    }

    .popup-notification{
        width: 100%;
        margin: 1rem auto;
        box-shadow: 0 0 1rem rgba(0,0,0,.75);
    }

    #toggle-popup-notifications{
        display: none;
    }
}