@font-face {
    font-family: "Replica Pro";
    src: url("../fonts/ReplicaPro-Bold.eot");
    src: url("../fonts/ReplicaPro-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/ReplicaPro-Bold.woff2") format("woff2"), url("../fonts/ReplicaPro-Bold.woff") format("woff");
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: "Replica Pro";
    src: url("../fonts/ReplicaPro-Heavy.eot");
    src: url("../fonts/ReplicaPro-Heavy.eot?#iefix") format("embedded-opentype"), url("../fonts/ReplicaPro-Heavy.woff2") format("woff2"), url("../fonts/ReplicaPro-Heavy.woff") format("woff");
    font-weight: 900;
    font-style: normal;
}

html, body{
    font-family: "Replica Pro", Helvetica, Arial, sans-serif;
    font-weight: 700;
    margin: 0;
    padding: 0;
}

.arrow{
    width: 0;
    height: 0;
    border: 8px solid transparent;
    display: inline-block;
}
.arrow.left{ border-left-color: black;}
.arrow.right{ border-right-color: black;}
.arrow.up{
    border-width: 17px;
    border-bottom-color: #FC4C02;
}

.hidden{
    opacity: 0 !important;
    visibility: hidden !important;
}

#widget{
    width: 740px;
    position: relative;
    overflow: hidden;
}

#counter{
    /*position: absolute;
    top: 90px;
    bottom: 44px;
    left: 0;
    right: 0;
    line-height: 108px;
    */
    color: white;
    text-align: center;
    text-transform: uppercase;
}

#counter-arrow{
    position: relative;
}
#counter-arrow .arrow{
    position: absolute;
    opacity: 0;
    border-width: 5px;
    top: 30px;
}
#counter-arrow .arrow.original{
    position: relative;
    top: -15px !important;
    opacity: 0 !important;
    visibility: hidden !important;
}
#counter-arrow.animation .arrow{ animation: 2000ms linear forwards counterArrow; }


#counter-data{
    font-size: 70px;
    color: white;
    line-height: normal;
    font-weight: 900;
}
#counter-data.animation{ animation: 2000ms linear forwards counterData; }
#counter-data .digit{
    position: relative;
}
#counter-data .digit .original{
    position: relative;
    font-style: normal;
}
#counter-data .digit .unchanged,
#counter-data .digit .before,
#counter-data .digit .after{
    position: absolute;
    left: 0;
    right: 0;
    height: 100%;
    font-style: normal;
}

#counter-data .digit .unchanged{ top: 0; opacity: 1; }
#counter-data .digit .before{ top: 0; opacity: 1; }
#counter-data .digit .after{ top: 100%; opacity: 0; }

#counter-data .digit.animation .before{ animation: 400ms linear forwards counterBefore; }
#counter-data .digit.animation .after{ animation: 400ms linear forwards counterAfter; }

#counter-data .digit.animated .before{ top: -100%; opacity: 0; }
#counter-data .digit.animated .after{ top: 0; opacity: 1; }


#downloads{
    font-size: 60px;
    font-weight: 700;
    padding-left: 5px;
}


#streamer-link{
    position: absolute;
    bottom: 0;
    height: 44px;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    color: white;
    line-height: 44px;
    /*background: #FC4C02;*/
    background: #f65c00;
    overflow: hidden;
}
#streamer-link .arrow{
    vertical-align: sub;
    margin: 2px 10px;
    animation: 20s linear 0s infinite streamerLinkArrows;
}
#streamer-link .link{
    position: relative;
}
#streamer-link .link > span{
    position: absolute;
    display: inline-block;
    height: 100%;
    text-align: left;
    left: 0;
    line-height: 18px;
    font-size: 24px;
}
#streamer-link .link .original{
    opacity: 0;
    position: relative;
    visibility: hidden;
}
#streamer-link .link .before{
    top: 0;
    animation: 20s linear 0s infinite streamerLinkBefore;
}
#streamer-link .link .after{
    top: 100%;
    opacity: 0;
    width: 60%;
    overflow: hidden;
    animation: 20s linear 0s infinite streamerLinkAfter;
}


#widget.default{
    margin: 0 auto;
    height: auto;
    overflow: hidden;
    background: #333333;
}

#widget.default #titles{
    background: white;
    padding: 20px;
}
#widget.default #titles .title{
    margin: 0;
    padding: 0;
    text-align: center;
    font-weight: 900;
}
#widget.default #titles .title span{
    font-weight: lighter;
}

#widget.default #counter{
    line-height: normal;
}

#instructions{
    max-width: 600px;
    padding: 50px;
    margin: 0 auto;
}

#instructions .dl-doc{
    background: dodgerblue;
    color: white;
    text-decoration: none;
    display: inline-block;
    padding: 4px 10px;
    border-radius: 2px;
    font-family: sans-serif;
    font-weight: 100;
    font-size: 10px;
    text-transform: uppercase;
    transition: 200ms;
}
#instructions .dl-doc:hover{
    opacity: 0.8;
}

fieldset{
    margin-bottom: 20px;
}

#try-widget{
    display: table;
    width: 100%;
}
#try-widget .input-container{
    display: table-row;
}
#try-widget .input-container input, #try-widget .input-container label{
    display: table-cell;
    padding: 4px;
    margin: 3px;
}
#try-widget .input-container input{
    width: 100%;
    box-sizing: border-box;
    border-radius: 3px;
    border: 1px solid #cecece;
}

#try-widget .input-container button{
    margin: 15px 0 0 auto;
    display: block;
    background: forestgreen;
    color: white;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: none;
    padding: 7px;
    width: 40%;
    cursor: pointer;
    transition: 200ms;
    border-radius: 2px;
}
#try-widget .input-container button:hover{
    opacity: 0.8;
}

#show-json-response.error{
    background: red;
    color: white;
    padding: 6px;
}
#show-json-response.success{
    background: green;
    color: white;
    padding: 6px;
}



/* ------ ANIMATIONS ------ */

@keyframes counterArrow {
    0%{
        border-width: 5px;
        top: 30px;
        opacity: 0;
    }
    20%{
        border-width: 17px;
        top: -35px;
        opacity: 1;
    }
    80%{
        border-width: 17px;
        top: -35px;
        opacity: 1;
    }
    100%{
        border-width: 5px;
        top: -75px;
        opacity: 0;
    }
}
@keyframes counterData {
    0%{ color: white; }
    20%{ color: #FC4C02; }
    80%{ color: #FC4C02; }
    100%{ color: white; }
}

@keyframes counterBefore {
    from{
        top: 0;
        opacity: 1;
    }
    to {
        top: -100%;
        opacity: 0;
    }
}
@keyframes counterAfter {
    from{
        top: 100%;
        opacity: 0;
    }
    to {
        top: 0;
        opacity: 1;
    }
}


@keyframes streamerLinkArrows{
    0%, 33%, 35%, 39%{
        margin: 2px 10px;
    }
    34%, 36%{
        margin: 2px 0;
    }
}

@keyframes streamerLinkBefore{
    0%, 33%{
        top: 0;
        opacity: 1;
    }
    36%, 100%{
        top: -100%;
        opacity: 0;
    }
}
@keyframes streamerLinkAfter{
    0%, 33%{
        top: 100%;
        opacity: 0;
        width: 60%;
    }
    36%, 100%{
        top: 0;
        opacity: 1;
        width: 100%;
    }
}

