* {
    box-sizing: border-box;
}

body {
    margin: 0;
    border: 0;
    height: 100vh;
}

.wordle-overall-container {
    width: 100%;
    height: 100%;
    text-align: center;
    align-content: center;
    z-index: 1;
    position: absolute;
}

h1 {
    margin-top: 0;
}

.wordle-container {
    margin: 10px auto auto auto;
    display: grid;
    row-gap: 25px;
    column-gap: 10px;
    width: fit-content;
}

.letter-box {
    width: 50px;
    height: 50px;
    text-transform: uppercase;
    color:black;
    border: 2px solid #ccc;
    font-size: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
}

.loader {
    width: 50px;
    height: 50px;
    visibility: hidden;
}

.success {
    color: green;
    visibility: hidden;
}

.failure {
    color: red;
    visibility: hidden;
}

.result-container {
    margin-top: 50px;
}

@keyframes blink {
    0% {
        border: 2px solid #ccc;
    }

    50% {
        border: 2px solid red;
    }

    100% {
        border: 2px solid #ccc;
    }
}

@keyframes flipGrey {
    0% {
        transform: scaleY(1);
    }

    50% {
        transform: scaleY(0);
    }

    100% {
        transform: scaleY(1);
        color:white;
        background-color: #787c7e;
        border: none;
    }
}

@keyframes flipGreen {
    0% {
        transform: scaleY(1);
    }

    50% {
        transform: scaleY(0);
    }

    100% {
        transform: scaleY(1);
        color:white;
        background-color: green;
        border: none;
    }
}

@keyframes flipYellow {
    0% {
        transform: scaleY(1);
    }

    50% {
        transform: scaleY(0);
    }

    100% {
        transform: scaleY(1);
        color:white;
        background-color: #b59f3b;
        border: none;
    }
}

.blink {
    animation: blink 3s;
}

.flip-grey {
    animation: flipGrey 500ms ease forwards;
}

.flip-green {
    animation: flipGreen 500ms ease forwards;
}

.flip-yellow {
    animation: flipYellow 500ms ease forwards;
}

.overlay-container {
    background-color: #cccccc;
    z-index: 2;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
    padding: 20px;
}

.overlay-content {
    border: 2px solid black;
    padding: 20px;
    border-radius: 10px;
}

.overlay-footer {
    display: flex;
    justify-content: center;
    align-items: center;
}

.play-button {
    padding: 6px 12px;
    cursor: pointer;
}

.overlay-header {
    text-align: center;
}
