body {

    font-family: 'Open Sans', sans-serif;

}

input[type="file"] {

    display: none;

}

#choose_images_graphics_wrap {

    width: 100%;
    text-align: center;

}

#choose_images_graphics {

    font-size: 16px;
    color: rgba(0,0,0,.4);
    padding: 10px 20px;
    border-radius: 6px;
    background-color: rgba(0,0,0,.035);
    display: inline-block;

}

#upload_box {

    padding: 20px;
    background-color: #f2f2f2;
    border-radius: 6px;
    display: inline-block;
    display: flex;
    /* min-height: 400px; */
    height: 200px;
    justify-content: center;
    align-items: center;
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000000' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    overflow-y: auto;

}

.image_item:not(.last),
.duped {
    pointer-events: none;
    opacity: 0.4;
    filter: grayscale(100%);
}

.action_button_disable {

    pointer-events: none;
    filter: grayscale(100%);
    opacity: 0.75;

}

#upload_box::-webkit-scrollbar {

    width: 5px;

}

#upload_box::-webkit-scrollbar-track {

    background-color: rgba(0,0,0,.05);

}

#upload_box::-webkit-scrollbar-thumb {

    background-color:  rgba(0,0,0,.1);

}

#upload_box_overlay {

    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.4);
    border-radius: 6px;
    /* backdrop-filter: blur(3.5px); */
    /* display: flex; */
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 999;

}

#upload_box_overlay * {

    pointer-events: none;

}

#upload_box_overlay_anim {

    width: 200px;
    height: 200px;
    display: inline-block;

}

#images_box {

    display: flex;
    flex-wrap: wrap;
    margin: auto;

}

#images_box > div {

    display: inline-block;
    /* width: 64px; */
    height: 64px;
    margin: 18px 20px 45px;
    position: relative;
    text-align: center;

}

#images_box > div img {

    width: 64px;
    height: 64px;
    /* object-fit: cover;
    border-radius: 6px;
    background-color: rgba(0,0,0,.1);
    border: 2px solid #ffffff;
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,.2);
    box-shadow: 0 0 10px rgba(0,0,0,.2); */

}

.filename {

    margin-top: 10px;
    padding: 4px 10px;
    background-color: rgba(0,0,0,.75);
    font-size: 12px;
    color: #fff;
    border-radius: 50px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 120px;

}

#images_box > div span {

    position: absolute;
    width: 25px;
    height: 25px;
    background-color: #007ee5;
    color: #ffffff;
    display: inline-block;
    /* right: -15px; */
    right: 0;
    left: -40px;
    margin: 0 auto;
    top: -10px;
    border-radius: 50%;
    text-align: center;
    line-height: 22px;
    border: 2px solid #ffffff;
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,.2);
    box-shadow: 0 0 10px rgba(0,0,0,.2);

}

.indicator_ok {

    background-color: #34bf49!important;

}

.indicator_err {

    background-color: #ff4c4c!important;

}

.indicator_err:hover,
.indicator_ok:hover {

    background-color: #000000!important;
    cursor: pointer;
    transition: all 0.5s;

}

.indicator_err:hover i,
.indicator_ok:hover i {

    display: none;

}

.indicator_err:hover div::before,
.indicator_ok:hover div::before {

    content: '\F0156';
    font-family: 'Material Design Icons';
    color: #ffffff;

}

.tippy_spin {

    animation-name: tippy_spin;
    animation-duration: 600ms;
    animation-iteration-count: infinite;
    animation-timing-function: ease;

}

@keyframes tippy_spin {

from {

    transform:rotate(0deg);

}

to {

    transform:rotate(360deg);

}

}

/* ANIMATIONS */

.shake {

    -webkit-animation: shake-horizontal 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: shake-horizontal 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;

}

.fade {

    -webkit-animation: fade-out-top 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: fade-out-top 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;

}


@-webkit-keyframes fade-out-top {

  0% {

    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;

  }

  100% {

    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    opacity: 0;

  }

}

@keyframes fade-out-top {

  0% {

    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;

  }

  100% {

    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    opacity: 0;

  }

}


@-webkit-keyframes shake-horizontal {

    0%,
    100% {

        -webkit-transform: translateX(0);
        transform: translateX(0);

    }

    10%,
    30%,
    50%,
    70% {

        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);

    }

    20%,
    40%,
    60% {

        -webkit-transform: translateX(10px);
        transform: translateX(10px);

    }

    80% {

        -webkit-transform: translateX(8px);
        transform: translateX(8px);

    }

    90% {

        -webkit-transform: translateX(-8px);
        transform: translateX(-8px);

    }

}

@keyframes shake-horizontal {

    0%,
    100% {

        -webkit-transform: translateX(0);
        transform: translateX(0);

    }

    10%,
    30%,
    50%,
    70% {

        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);

    }

    20%,
    40%,
    60% {

        -webkit-transform: translateX(10px);
        transform: translateX(10px);

    }

    80% {

        -webkit-transform: translateX(8px);
        transform: translateX(8px);

    }

    90% {

        -webkit-transform: translateX(-8px);
        transform: translateX(-8px);

    }

}

#upload_box.dog {
    overflow: hidden!important;
}