/**
*
* @name:       Countdown landing page
* @version:    0.1.0
* @author:     EOussama
* @license     MIT
* @source:     https://github.com/EOussama/countdown-landing-page
* 
* The main stylesheet of the app.
*
*/

:root {
    --unit-size: 100px;
    --primary-color: #1f2227;
    --secondary-color: gray;
    --ternary-color: #4e5057;
}

::-moz-selection {
    background-color: rgb(231, 231, 231);
}

::selection {
    background-color: rgb(231, 231, 231);
}

div.unit > span::-moz-selection {
    background-color: rgba(231, 231, 231, 0.055) !important;
}

div.unit > span::selection {
    background-color: rgba(231, 231, 231, 0.055) !important;
}

body {
    box-sizing: border-box;
    height: 100%;
    margin: 0;
    overflow: hidden;
    width: 100vw;
}

main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-family: "Roboto", Arial, sans-serif;
    font-weight: 400;
    height: 100%;
    overflow: hidden;
    width: 100%;
}

div.content {
    -ms-flex-item-align: center;
        align-self: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 100px auto;
    text-align: center;
    width: 60%;
    z-index: 2;
}

div.text {
    font-size: 1.5em;
    line-height: 1.5em;
}

div.text > h1 {
    color: var(--primary-color);
    text-decoration: overline;
}

div.text > p {
    color: var(--secondary-color); font-weight: 100;
}

main > img {
    -webkit-filter: blur(5px);
            filter: blur(5px);
    height: 100%;
    left: 0;
    opacity: 0.2;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

div.timer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

div.timer > h2 {
    color: var(--secondary-color);
    margin-top: 150px;
    -webkit-transition-duration: 0.5s;
            transition-duration: 0.5s;
    -webkit-transition-property: font-size;
    transition-property: font-size;
}

div.timer > div.unites {
    -ms-flex-item-align: center;
        align-self: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 35px;
    -webkit-transition-duration: 1s;
            transition-duration: 1s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
    width: 500px;
}

div.unites > div.unit {
    background-color: var(--primary-color);
    border-radius: 3px;
    color: var(--secondary-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: var(--unit-size);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    opacity: 0.7;
    width: var(--unit-size);
}

div.unit > span[id^=val-] {
    font-size: 2.5em;
    font-weight: 900;
}

div.spinner {
    display: block;
    background-color: var(--secondary-color);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100vh;
    left: 0;    
    overflow: hidden;
    position: absolute;
    top: 0;
    -webkit-transition-duration: 1s;
            transition-duration: 1s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
    width: 100vw;
    z-index: 99;
}

div.spinner::after {
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-name: spin;
            animation-name: spin;
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
    border: 4px solid var(--primary-color);
    border-top-color: var(--ternary-color);
    border-radius: 50%;
    content: '';
    height: 50px;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 50px;
}

@-webkit-keyframes spin {
    from {
        -webkit-transform: rotateZ(0deg);
                transform: rotateZ(0deg);
    }
    to {
        -webkit-transform: rotateZ(360deg);
                transform: rotateZ(360deg);
    }
}

@keyframes spin {
    from {
        -webkit-transform: rotateZ(0deg);
                transform: rotateZ(0deg);
    }
    to {
        -webkit-transform: rotateZ(360deg);
                transform: rotateZ(360deg);
    }
}

@media (max-width: 800px) {
    main {
        box-sizing: border-box;
        height: 95vh;
        width: 100%;
    }

    h1 {
        line-height: 1.5em;
    }
}