.loader {
    font-size: 10px;
    margin: 50px auto;
    text-indent: -9999em;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #ffffff;
    background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
    position: absolute;
    -webkit-animation: load3 1.4s infinite linear;
    animation: load3 1.4s infinite linear;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    display: none;
}
.loader:before {
    width: 50%;
    height: 50%;
    background: #ffffff;
    border-radius: 100% 0 0 0;
    position: absolute;
    top: 0;
    left: 0;
    content: '';
}
.loader:after {
    background: #0024d2;
    width: 75%;
    height: 75%;
    border-radius: 50%;
    content: '';
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
@-webkit-keyframes load3 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes load3 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
button.active{
    pointer-events: none;
}
button.active .loader{
    display: block;
}
button.active span{
    opacity: 0;
}

#video {
    margin: 64px auto 24px auto;
    border: 1px solid black;
    width:90%;
    height:auto;

}

#photo {
    width:100%;
    height:auto;
}

#canvas {
    display:none;
}

.camera {
    width: 340px;
    display:inline-block;
}

.output {
    width: 100%;
    display: none;
}

.contentarea {
    font-size: 16px;
    width: 760px;
}
#startbutton{
    position: absolute;
    bottom: 64px;
    max-width: 90%;
    margin: 0 auto;
    left: 50%;
    transform: translateX(-50%);
}
#takePhotoWrapper{
    display: none;
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    z-index: 99;

}
#takePhotoWrapper.active{
    display: block;
}
#takePhotoWrapper .camera{
    width: 100%;
    height: 100%;
    background: #FFF;
    text-align: center;
}
.output{
}
.output.active{
    display: block;
}

@media only screen and (min-width: 1024px) {
    .desktop-hide{
        display: none;
    }
}

.modal-close{
    position: absolute;
    right: 16px;
    top: 16px;
}