.spinner {
    border: 4px solid currentColor;
    border-left: 4px solid transparent;
    border-radius: 50%!important;
    display: inline-block;
    height: 48px;
    width: 48px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-animation: loading .75s infinite linear;
    animation: loading .75s infinite linear
}

.spinner-lg {
    height: 64px;
    width: 64px
}

.spinner-sm {
    height: 32px;
    width: 32px
}

.spinner-xs {
    height: 16px;
    width: 16px
}

.spinner-striped {
    border-style: dotted
}

.spinner-double {
    border-style: double
}

.spinner-slow {
    -webkit-animation: loading 1s infinite linear;
    animation: loading 1s infinite linear
}

.spinner-fast {
    -webkit-animation: loading .5s infinite linear;
    animation: loading .5s infinite linear
}

.spinner-wrapper {
    position: relative
}

.spinner-wrapper-inline {
    display: inline-block
}

.spinner-wrapper-block {
    display: block
}

.spinner-wrapper-backdrop {
    background-color: rgba(255, 255, 255, .95);
    border-radius: inherit;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 9000
}

.spinner-wrapper-fixed {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9001
}

.spinner-wrapper .spinner,
.spinner-wrapper .spinner-lg,
.spinner-wrapper .spinner-sm,
.spinner-wrapper .spinner-xs {
    bottom: auto;
    left: 50%;
    position: absolute;
    right: auto;
    top: 50%
}

.spinner-wrapper .spinner {
    margin-left: -24px;
    margin-top: -24px
}

.spinner-wrapper .spinner-lg {
    margin-left: -32px;
    margin-top: -32px
}

.spinner-wrapper .spinner-sm {
    margin-left: -16px;
    margin-top: -16px
}

.spinner-wrapper .spinner-xs {
    margin-left: -8px;
    margin-top: -8px
}

.spinner-wrapper .spinner-lg.spinner-left-middle,
.spinner-wrapper .spinner-lg.spinner-middle-left,
.spinner-wrapper .spinner-sm.spinner-left-middle,
.spinner-wrapper .spinner-sm.spinner-middle-left,
.spinner-wrapper .spinner-xs.spinner-left-middle,
.spinner-wrapper .spinner-xs.spinner-middle-left,
.spinner-wrapper .spinner.spinner-left-middle,
.spinner-wrapper .spinner.spinner-middle-left {
    left: 15px;
    margin-left: 0
}

.spinner-wrapper .spinner-lg.spinner-middle-right,
.spinner-wrapper .spinner-lg.spinner-right-middle,
.spinner-wrapper .spinner-sm.spinner-middle-right,
.spinner-wrapper .spinner-sm.spinner-right-middle,
.spinner-wrapper .spinner-xs.spinner-middle-right,
.spinner-wrapper .spinner-xs.spinner-right-middle,
.spinner-wrapper .spinner.spinner-middle-right,
.spinner-wrapper .spinner.spinner-right-middle {
    left: auto;
    margin-left: 0;
    right: 15px
}

.spinner-wrapper .spinner-lg.spinner-center-top,
.spinner-wrapper .spinner-lg.spinner-top-center,
.spinner-wrapper .spinner-sm.spinner-center-top,
.spinner-wrapper .spinner-sm.spinner-top-center,
.spinner-wrapper .spinner-xs.spinner-center-top,
.spinner-wrapper .spinner-xs.spinner-top-center,
.spinner-wrapper .spinner.spinner-center-top,
.spinner-wrapper .spinner.spinner-top-center {
    margin-top: 0;
    top: 15px
}

.spinner-wrapper .spinner-lg.spinner-bottom-center,
.spinner-wrapper .spinner-lg.spinner-center-bottom,
.spinner-wrapper .spinner-sm.spinner-bottom-center,
.spinner-wrapper .spinner-sm.spinner-center-bottom,
.spinner-wrapper .spinner-xs.spinner-bottom-center,
.spinner-wrapper .spinner-xs.spinner-center-bottom,
.spinner-wrapper .spinner.spinner-bottom-center,
.spinner-wrapper .spinner.spinner-center-bottom {
    bottom: 15px;
    margin-top: 0;
    top: auto
}

.spinner-wrapper .spinner-lg.spinner-left-top,
.spinner-wrapper .spinner-lg.spinner-top-left,
.spinner-wrapper .spinner-sm.spinner-left-top,
.spinner-wrapper .spinner-sm.spinner-top-left,
.spinner-wrapper .spinner-xs.spinner-left-top,
.spinner-wrapper .spinner-xs.spinner-top-left,
.spinner-wrapper .spinner.spinner-left-top,
.spinner-wrapper .spinner.spinner-top-left {
    left: 15px;
    margin-left: 0;
    margin-top: 0;
    top: 15px
}

.spinner-wrapper .spinner-lg.spinner-right-top,
.spinner-wrapper .spinner-lg.spinner-top-right,
.spinner-wrapper .spinner-sm.spinner-right-top,
.spinner-wrapper .spinner-sm.spinner-top-right,
.spinner-wrapper .spinner-xs.spinner-right-top,
.spinner-wrapper .spinner-xs.spinner-top-right,
.spinner-wrapper .spinner.spinner-right-top,
.spinner-wrapper .spinner.spinner-top-right {
    left: auto;
    margin-left: 0;
    margin-top: 0;
    right: 15px;
    top: 15px
}

.spinner-wrapper .spinner-lg.spinner-bottom-left,
.spinner-wrapper .spinner-lg.spinner-left-bottom,
.spinner-wrapper .spinner-sm.spinner-bottom-left,
.spinner-wrapper .spinner-sm.spinner-left-bottom,
.spinner-wrapper .spinner-xs.spinner-bottom-left,
.spinner-wrapper .spinner-xs.spinner-left-bottom,
.spinner-wrapper .spinner.spinner-bottom-left,
.spinner-wrapper .spinner.spinner-left-bottom {
    bottom: 15px;
    left: 15px;
    margin-left: 0;
    margin-top: 0;
    top: auto
}

.spinner-wrapper .spinner-lg.spinner-bottom-right,
.spinner-wrapper .spinner-lg.spinner-right-bottom,
.spinner-wrapper .spinner-sm.spinner-bottom-right,
.spinner-wrapper .spinner-sm.spinner-right-bottom,
.spinner-wrapper .spinner-xs.spinner-bottom-right,
.spinner-wrapper .spinner-xs.spinner-right-bottom,
.spinner-wrapper .spinner.spinner-bottom-right,
.spinner-wrapper .spinner.spinner-right-bottom {
    bottom: 15px;
    left: auto;
    margin-left: 0;
    margin-top: 0;
    right: 15px;
    top: auto
}

@-webkit-keyframes loading {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes loading {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}