.SAF_alert
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    background: rgba(0,0,0,0);
    display: none;
    transition: background 0.5s;
}
    .SAF_alert.visible
    {
        background: rgba(0,0,0,0.3);
    }
    .SAF_alert > .box
    {
        position: absolute;
        top: 10px;
        left: 50%;
        transform: translate(-50%, 0);
        background:white;
        box-shadow: 0 0 10px rgba(0,0,0,0.3);
        text-align: center;
        padding: 30px 50px;
        border-radius: 10px;
        opacity: 0;
        transition: top 0.5s, opacity 0.5s;
    }
        .SAF_alert.visible > .box
        {
            opacity: 1;
            top: 100px;
        }
        .SAF_alert > .box > .icon > i
        {
            font-size: 40px;
            width: 60px;
            height: 40px;
            padding: 20px 10px;
            border-radius: 100%;
        }
            .SAF_alert > .box > .icon > i
            {
                background: rgb(255, 219, 219);
                color: rgb(255, 0, 0);
            }
        .SAF_alert > .box > .content
        {
            padding: 20px 10px;
        }

.SAF_aside
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    background: rgba(0,0,0,0);
    display: none;
    transition: all 0.5s;
}
    .SAF_aside.visible
    {
        background: rgba(0,0,0,0.3);
    }
    .SAF_aside > .overlay
    {
        width: 100%;
        height: 100%;
    }
    .SAF_aside > .content
    {
        position: absolute;
        top: 0;
        height: 100%;
        overflow-y: auto;
        background:white;
        box-shadow: 0 0 10px rgba(0,0,0,0.3);
        border-top: 5px solid #6f7bdb;
        text-align: left;
        padding: 50px;
        box-sizing: border-box;
        transition: all 0.5s;
    }
        .SAF_aside.SAF_SIZE_sm > .content
        {
            right: -400px;
            width: 400px;
        }
        .SAF_aside.SAF_SIZE_md > .content
        {
            right: -600px;
            width: 600px;
        }
        .SAF_aside.SAF_SIZE_lg > .content
        {
            right: -50vw;
            width: 50vw;
        }
        .SAF_aside.SAF_SIZE_xl > .content
        {
            right: -100vw;
            width: 100vw;
        }
        .SAF_aside > .close
        {
            position: absolute;
            width: 30px;
            height: 30px;
            top: 40px;
            right: -800px;
            font-size: 30px;
            color: #e1e1e1;
            padding: 10px;
            border-radius: 100%;
            cursor: pointer;
            z-index: 3;
            background: white;
            transition: all 0.5s;
        }
            .SAF_aside > .close > i
            {
                width: 30px;
                display: inline-block;
                text-align: center;
            }
            .SAF_aside > .close:hover
            {
                background: rgb(255, 219, 219);
                color: #f00;
            }
            .SAF_aside.visible > .close
            {
                right: 40px;
            }
        .SAF_aside.visible > .content
        {
            right: 0;
        }

.SAF_confirm
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    background: rgba(0,0,0,0);
    display: none;
    transition: background 0.5s;
}
    .SAF_confirm.visible
    {
        background: rgba(0,0,0,0.3);
    }
    .SAF_confirm > .box
    {
        position: absolute;
        top: 10px;
        left: 50%;
        transform: translate(-50%, 0);
        background:white;
        box-shadow: 0 0 10px rgba(0,0,0,0.3);
        text-align: center;
        padding: 30px 50px;
        border-radius: 10px;
        opacity: 0;
        transition: top 0.5s, opacity 0.5s;
    }
        .SAF_confirm.visible > .box
        {
            opacity: 1;
            top: 100px;
        }
        .SAF_confirm > .box > .icon > i
        {
            font-size: 40px;
            width: 60px;
            height: 40px;
            padding: 20px 10px;
            border-radius: 100%;
        }
            .SAF_confirm > .box > .icon > i
            {
                background: rgb(219, 247, 255);
                color: rgb(0, 174, 255);
            }
        .SAF_confirm > .box > .content
        {
            padding: 20px 10px;
        }

.SAF_modal
{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: flex;
    background: rgba(0,0,0,0);
    display: none;
    transition: background 0.5s;
}
    .SAF_modal.visible
    {
        background: rgba(0,0,0,0.3);
    }
    .SAF_modal > .overlay
    {
        width: 100%;
        height: 100%;
    }
    .SAF_modal > .content
    {
        position: absolute;
        top: 10px;
        left: 50%;
        width: 600px;
        height: 600px;
        transform: translate(-50%, 0);
        border-radius: 10px;
        overflow-y: auto;
        background:white;
        box-shadow: 0 0 10px rgba(0,0,0,0.3);
        text-align: left;
        padding: 50px;
        box-sizing: border-box;
        opacity: 0;
        transition: all 0.5s;
    }
        .SAF_modal > .close
        {
            position: absolute;
            width: 30px;
            height: 30px;
            top: 40px;
            right: -200px;
            font-size: 30px;
            color: #e1e1e1;
            padding: 10px;
            border-radius: 100%;
            cursor: pointer;
            z-index: 3;
            background: white;
            transition: all 0.5s;
        }
            .SAF_modal > .close > i
            {
                width: 30px;
                display: inline-block;
                text-align: center;
            }
            .SAF_modal > .close:hover
            {
                background: rgb(255, 219, 219);
                color: #f00;
            }
            .SAF_modal.visible > .close
            {
                right: 40px;
            }
        .SAF_modal.visible > .content
        {
            opacity: 1;
            top: 100px;
        }

