html, body, #game_flex, #grid, .cells {
    margin: 0px;
    padding: 0px;
}

html, body, #game_flex {
    min-height: 500px;
}

body {
    width: 100vw;
    height: 100vh;
    background-color: black;
    display: flex;
    justify-content: center;
    align-items: center;
}

#game_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    background-color: lightgray;
    border-radius: 20px;
    width: 95vw;
    height: 95vh;
    overflow: hidden;
}

#counter_bar {
    width: 100%;
    height: 10%;
    min-height: 75px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#flag_box {
    width: 100%;
    height: 10%;
    min-height: 75px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.color_mode {
    height: 65%;
    aspect-ratio: 1/1;
    border-radius: 50%;
     margin: 0px 20px;
}
#placeholder {
    height: 65%;
    aspect-ratio: 1/1;
    background-color: red;
}

#counter_value {
    width: 200px;
    height: 65%;
    background-color: black;
    font-family: sans-serif;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: xx-large;
}

#flag_toggle {
    height: 60px;
    width: 100px;
    border-radius: 30px;
    box-sizing: border-box;
    padding: 5px;
    display: flex;
    justify-content: flex-start;
    transition: justify-content 1s ease;
}
/* #flag_box::before { */
#flag_icon {
    height: 60px;
    content: "";
    background-size: cover;
    aspect-ratio: 1/1;
    background-image: url("number_textures/flag.png");
}
#toggle_circle {
    height: 100%;
    aspect-ratio: 1/1;
    border-radius: 50%;
}

#grid {
    display: flex;
    flex-grow: 2;
    justify-content: center;
    align-items: center;
    height: 55vh;
    width: 100%;
    overflow: hidden;
}

table {
    transition: opacity 2s ease, transform 2s ease;
}

.cells {
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    transition: border-color 1s, background-color 1s, background-size 1s, transform 1s ease, opacity 2s ease;
    transform: scale(0);
}

#play_again {
    position: absolute;
    background-color: black;
    width: clamp(150px, 60vw, 250px);
    height: clamp(300px, 60vh, 400px);
    z-index: 3;
    border-radius: 10px;
    /* box-shadow: 0px 0px 3px 3px lime; */
    /* display: flex; */
    display: none;
    justify-content: space-evenly;
    align-items: center;
    flex-direction: column;
}
.end_button {
    width: 80%;
    height: fit-content;
    padding-top: 20px;
    padding-bottom: 20px;
}
#you_win {
    color: white;
    border-bottom: 2px solid white;
}