.submitProtect {
    position: relative;
    transition: all .20s ease;
}

.submit-protected {
    cursor: not-allowed !important;
    pointer-events: none !important;
    color: #fff !important;
    background-color: #5C6F7B !important;
    border-color: #51626c !important;
    opacity: 1 !important;
    box-shadow: none !important;
    letter-spacing: 1px;
    font-weight: 300;
    animation: submitProtectedFadeIn .15s ease-out;
}

.submit-protected-input-safe {
    cursor: not-allowed !important;
    pointer-events: none !important;
    color: #fff !important;
    background-color: #5C6F7B !important;
    border-color: #51626c !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

.submit-input-spinner {
    position: absolute !important;
    top: 50%;
    left: 62%;
    margin-top: 9px !important;
    pointer-events: none;
    z-index: 5;
}

.submit-spinner {
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    margin-left: 12px !important;
    vertical-align: middle !important;
    position: relative;
    top: -2px;
    border: 2px solid #fff !important;
    border-top-color: transparent !important;
    border-radius: 50% !important;
    animation: submitSpinnerRotate .7s linear infinite, submitSpinnerFadeIn .20s ease-out;
}

.submitLoadingText {
    display: inline-block;
    animation: submitLoadingAppear .20s ease-out;
    opacity: 1;
    font-size: 1em;
    position: relative;
    top: 0;
    color: #fff;
    font-weight: 300;
}

@keyframes submitLoadingAppear {
    0% {
        opacity: 0;
        transform: scale(.10);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes submitProtectedFadeIn {
    from {
        opacity: .25;
    }

    to {
        opacity: .95;
    }
}

@keyframes submitSpinnerFadeIn {
    from {
        opacity: 0;
        transform: scale(.75);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes submitSpinnerRotate {
    to {
        transform: rotate(360deg);
    }
}
