/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}

:root {
    --shot-top: 1px;
    --shot-left: 1px;
}

.elements {
    width: 100vw;
    height: 100vh;
    position: relative;
}

.basket, .basket-front {
    position: absolute;
    right:0;
    width: 25vw;
    bottom: 0;
    z-index: 2;
}

.basket-front {
    z-index: 4;
}

.basket img, .basket-front img {
    position: absolute;
    width: 100%;
    bottom: 0;
    right: 0;
}

#apple {
    width: 5vw;
    position: absolute;
    bottom: 0;
    left: 9.5vw;
    transition: .25s all ease;
    z-index: 3;
}

#apple.dribble {
    animation: dribble .5s ease infinite;
}

#apple.shoot {
    animation: shoot 2s linear;
}

@keyframes shoot {
    0% {
        bottom: 4vw;
        left: 10vw;
    }

    55% {
        left: var(--shot-left);
        bottom: var(--shot-top);
    }

    75% {
        bottom: 0;
        left: 78vw;
    }

    100% {
        bottom: 4vw;
    }
}

@keyframes dribble {
    0% {
        bottom: 0;
    }

    50% {
        bottom: 4vw;
    }

    100% {
        bottom: 0;
    }
}

#player {
    width: 10vw;
    position: absolute;
    bottom: 0;
    left: 0.5vw;
}

#shootButton {
    background-color: red;
    color: black;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border: 2px solid black;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    padding: 1rem 3rem;
}
#shootButton.hidden {
    display: none;
}

.scoreboard {
    width: 300px;
    position: absolute;
    top: 1vh;
    left: 30vw;
    z-index: 1;
    max-width: 100%;
}

.scoreboard img {
    width: 100%;
}

#homeScore {
    position: absolute;
    z-index: 1;
    left: 9%;
    top: 29%;
    font-size: 3.5rem;
    display: flex;
    align-items: center;
    width: 22%;
    height: 45%;
    justify-content: center;
}

#guestScore {
    position: absolute;
    z-index: 1;
    left: 67.5%;
    top: 29%;
    font-size: 3.5rem;
    display: flex;
    align-items: center;
    width: 22%;
    height: 45%;
    justify-content: center;
}

@media screen and (max-width: 500px) {
    .scoreboard {
        left: 0px;
        width: 210px;
    }

    #homeScore, #guestScore {
        font-size: 2rem;
    }

    #shootButton {
        top: 200px;
        left: calc(50% - 75px);
    }
}

.message {
    position: absolute;
    z-index: 0;
    top: 30vh;
    display: flex;
    justify-content: space-between;
    width: calc(100% - 2rem);
    font-weight: bold;
    font-size: 4rem;
    padding: 0 1rem;
    flex-wrap: wrap;
}

.message span.white {
    color: white;
}

.message span.red {
    color: red;
}
.message span.blue {
    color: blue;
}
.message span.green {
    color: green;
}
