/* =========================
   GLOBAL
========================= */

body {
    font-family: Arial, Helvetica, sans-serif;

    display: flex;
    justify-content: center;
    align-items: center;

    min-height: 100vh;
    margin: 0;

    background-color: #181818;

    flex-direction: column;
}


/* =========================
   START SCREEN
========================= */

#start_screen {
    color: aliceblue;

    text-align: center;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#start_screen h1 {
    font-size: 60px;
    margin-bottom: 10px;
}

#start_screen p {
    font-size: 20px;
    margin-bottom: 30px;
}


/* =========================
   GAME SCREEN
========================= */

/* Hidden when game has not started */
#game_screen {
    display: none;
}


/* =========================
   KEY BOX
========================= */

#key_box {
    background-color: #2b2e31;

    border: 5px solid aliceblue;

    width: 500px;
    height: 500px;

    padding: 10px;

    border-radius: 25px;

    margin-top: 60px;

    display: flex;
    flex-direction: column;

    justify-content: center;
    align-items: center;

    box-sizing: border-box;
}


/* =========================
   TIMER
========================= */

#timer {
    color: aliceblue;

    font-size: 28px;
    font-weight: bold;

    margin-bottom: 10px;
}


/* =========================
   KEY AREA
========================= */

#key_area {
    color: aliceblue;

    display: flex;
    justify-content: center;
    align-items: center;

    height: 220px;
}

#display_key {
    font-size: 170px;
}


/* =========================
   GAME INFO CARDS
========================= */

.card_info {
    display: grid;

    grid-template-columns: repeat(2, 200px);

    gap: 10px;
}

.card {
    color: aliceblue;

    background-color: #181818;

    border-radius: 10px;

    text-align: center;

    padding: 5px;
}

.card h3 {
    margin: 10px;
}

.wide {
    grid-column: span 2;
}


/* =========================
   RESULT SCREEN
========================= */

#result_screen {
    display: none;

    color: aliceblue;

    text-align: center;
}

#result_screen h1 {
    font-size: 50px;

    margin-bottom: 30px;
}

#result_screen h2 {
    font-size: 35px;
}

#result_screen p {
    font-size: 22px;

    margin: 15px;
}


/* =========================
   BUTTONS
========================= */

button {
    padding: 15px 30px;

    font-size: 20px;
    font-weight: bold;

    border: none;
    border-radius: 10px;

    cursor: pointer;

    background-color: aliceblue;
    color: #181818;

    transition: transform 0.15s ease,
                background-color 0.15s ease;
}

button:hover {
    transform: scale(1.05);
}

button:active {
    transform: scale(0.95);
}


/* =========================
   OLD MENU
========================= */

/*
#menu {
    width: 70%;
    height: 200px;

    background-color: #2b2e31;

    border: 5px solid orange;

    border-radius: 25px;

    margin-top: 20px;
}
*/


/* =========================
   FONT
========================= */

.font_white {
    color: aliceblue;
}