* {
    font-family: sans-serif;
}

body {
    margin: 0;
    padding: 0;
}

.background {
    width: 1920px;
    height: 1080px;
    background-image: url('/public/img/Photobooth_background.png');
}

.floating {
    position: absolute;
}

.hidden {
    display: none;
}

#live-webcam {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

#video-frame,
#video-preview {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#qr-code {
    position: absolute;
    top: 0;
    left: 0;
    border: 20px #fff solid;
}

.button-frame {
    position: absolute;
    padding: 0;
    border: none;
    margin: 0;
    background: none;
}

.button-frame img {
    width: 168px;
    height: 168px;
}

#frame-1 {
    top: 440px;
    left: 44px
}

#frame-2 {
    top: 440px;
    left: 252px
}

#frame-3 {
    top: 440px;
    left: 459px
}

#frame-4 {
    top: 440px;
    left: 666px
}


.button {
    border: none;
    background-color: #ed175f;
    padding: 0;
    border-radius: 100%;
    font-weight: bold;
    font-family: Montserrat;
    text-transform: uppercase;
    color: #fff;
}

.button:hover {
    background-color: #1e2150;
}

.button img {
    width: 150px;
    height: 150px;
}

.button-1 {
    top: 320px;
    left: 1700px;
}

.button-2 {
    top: 530px;
    left: 1700px;
}

.button-3 {
    top: 740px;
    left: 1700px;
}

#flash {
    position: absolute;
    top: 0;
    left: 0;
    width: 720px;
    height: 720px;
    background-color: #fff;
    opacity: 0;
    transition: all .1s ease-in;
}

#countdown {
    position: absolute;
    top: 0;
    left: 0;
    width: 720px;
    height: 720px;
    text-align: center;
    font-size: 600px;
    font-weight: bold;
    color: rgba(255, 255, 255, 0.4);
    font-family: Montserrat;
    line-height: 720px;
}

.snapshot-small {
    position: absolute;
    -webkit-transform: scaleX(-0.122) scaleY(0.122);
    transform: scaleX(-0.122) scaleY(0.122);
}

#snapshot-1 {
    top: -232px;
    left: -249px;
}

#snapshot-2 {
    top: -232px;
    left: -156px;
}

#snapshot-3 {
    top: -232px;
    left: -63px;
}

#snapshot-4 {
    top: -232px;
    left: 31px;
}

#snapshot-5 {
    top: -232px;
    left: 124px;
}

#loading {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.4);
    width: 720px;
    height: 720px;
    top: 0;
    left: 0;
}

#loading div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 320px;
    height: 320px;
    margin: 200px;
    border: 20px solid #fff;
    border-radius: 50%;
    animation: loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent;
}

#loading div:nth-child(1) {
    animation-delay: -0.45s;
}

#loading div:nth-child(2) {
    animation-delay: -0.3s;
}

#loading div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}