/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/* CSS Variables */
:root {
    --primary-font: "Inter", sans-serif;
    --secondary-font: "Limelight", sans-serif;
    --primary-color: #36314e;
    --input-color: rgba(255, 255, 255, 0.517);
}

/* Global styles */
body {
    height: 100vh;
    background-color: #d5d6e8;
    /* Fallback for background-image */
    background-image: url(../images/background.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    font-family: var(--primary-font);
    font-weight: 500;
    color: var(--primary-color);
}

h1 {
    font-family: var(--secondary-font);
    text-transform: uppercase;
}

h2 {
    font-family: var(--secondary-font);
}

h5, h6 {
    font-family: var(--secondary-font);
    font-size: 1.2rem; 
    margin-bottom: 0;
    text-transform: uppercase;
}

p {
    font-size: 0.9rem; 
}

.custom-btn {
    height: 3rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #cae6ec;
    border-radius: 25px;
    box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -webkit-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -moz-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    color: #25373a;
    font-weight: 600;
    padding: 0px 20px;
}

.custom-btn:hover {
    background-color: #bdd8df;
}

.custom-btn-404 {
    height: 3rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #cae6ec;
    border-radius: 25px;
    box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -webkit-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -moz-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    color: #25373a;
    font-weight: 600;
    padding: 10px 20px;
}

.diff-btn {
    height: 2rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    border: 2px solid #eaeacd;
    background-color: var(--input-color);
    border-radius: 25px;
    box-shadow: 1px 1px 15px -4px rgba(130, 130, 67, 0.505);
    -webkit-box-shadow: 1px 1px 15px -4px rgba(130, 130, 67, 0.505);
    -moz-box-shadow: 1px 1px 15px -4px rgba(130, 130, 67, 0.505);
    color: #25373a;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0px 12px;
}

.diff-btn:hover {
    background-color: #e2e2ad;
}

.active-btn {
    background-color: #e2e2ad;
    border: 2px solid #e2e2ad;
}

input { /* Remove browsers default outline, border and shadow */ 
    border: none;
    outline: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: white;
}

select:focus { /* Remove browsers default outline and border */
    border: none;
    outline: none;
}

/* Game container */
#game-container {
    width: 90%;
    height: 90%;
    /* Glass background from https://css.glass */
    background: rgba(255, 255, 255, 0.38);
    border-radius: 16px;
    -webkit-box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(11.3px);
    -webkit-backdrop-filter: blur(11.3px);
}

/* Name input */
#user-input {
    height: 2.5rem;
    width: 90%;
    background-color: var(--input-color);
    border: none;
    border-radius: 16px;
    font-size: 24px;
    text-transform: uppercase;
}

/* Letterbox */
.letter { 
    background-color: rgba(255, 255, 255, 0.657);
    text-align: center;
    height: 40px;
    width: 40px; 
    padding: 0;
    border-radius: 15px; 
    display: -webkit-box; 
    display: -ms-flexbox; 
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 22px;
    line-height: 40px;
    text-transform: uppercase;
}

/* Hidden input to make it possible to input words without selecting a letterbox */
#typing-input {
    opacity: 0;
    z-index: -999;
    position: absolute; 
}

/* Modal */ 
.modal { 
    display: -webkit-box; 
    display: -ms-flexbox; 
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1; /* Places modal over other content */ 
    /* Faded background behind modal-content */ 
    width: 100%; 
    height: 100%;
    background-color: rgba(206, 229, 230, 0.384);
}

/* Modal Content box */
#modal-content {
    margin-top: 50px;
    background-color: #fefefe;
    padding-bottom: 20px;
    border-radius: 16px;
    height: 40%;
    width: 80%;
}

/* Container for Close button */
#modal-header {
    padding-top: 1px; 
    padding-right: 11px;
}

/* The Close Button */
.close {
    color: #aaa;
    float: right;
    top: 0;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: var(--primary-color);
    text-decoration: none;
    cursor: pointer;
}

.custom-btn-modal {
    height: 2rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #cae6ec;
    border-radius: 25px;
    box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -webkit-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    -moz-box-shadow: 1px 1px 15px -4px rgba(83, 114, 120, 0.75);
    color: #25373a;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0px 20px;
}

.custom-btn-modal:hover {
    background-color: #bdd8df;
}

/* Media queries */
/* Media query: Large phones (420px and up) */
@media screen and (min-width: 420px) {
        /* Letterbox */
    .letter {
        height: 50px;
        width: 50px;
        font-size: 28px;
        line-height: 50px;
    }
    
    /* Modal */
    #modal-content {
        min-height: 300px;
        max-width: 600px;
    }

    #modal-content h5 {
        font-size: 3rem;
        padding-bottom: 10px;
    }

    .custom-btn-modal {
    height: 3rem;
    font-size: 1rem;
    }
}



/* Media query: tablet and larger (768px and up) */
@media screen and (min-width: 768px) {
    /* Global styles */
    p {
        font-size: 1rem;
    }

    /* Game container */
    #game-container {
        width: 60%;
        height: 80%;
    }

    /* Name input */
    #user-input {
        width: 50%;
    }

    /* Difficulty buttons */
    .diff-btn {
        height: 2.3rem;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        font-size: 1rem;
        padding: 0px 20px;
    }
}


/* Media query: laptop and larger (992px and up) */
@media screen and (min-width: 992px) {
    #lg-dev-container {
        margin-top: 30px;
        margin-bottom: 10px;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }

    .lg-dev {
        margin: 10px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        width: 25%;
    }

    /* Game info */ 
    #game-info {
        margin-top: 20px;
        margin-bottom: 20px;
    }

    #hinthead {
        font-size: 1.5rem;
    }

    #hint {
        font-size: 1.2rem;
    }

    /* Letterbox container */ 
    #letter-container {
        margin-top: 10px;
        margin-bottom: 340px;
    }

       /* Letterbox */
    .letter {
        margin: 10px;
        height: 70px;
        width: 70px;
        font-size: 34px;
        line-height: 70px;;
    }
}