* {
    box-sizing: border-box;
  }

a {
    text-decoration: none;
    color: black;
}
:root {
    /* --padding-left-global: 25px;   */
    --padding-left-global: 2.1vw; 
    --padding-left-global-mobile: 10px; 
}

body, textarea, input{
    font-size: 1.1em;
    font-family: 'Rajdhani', sans-serif;
}

/* ===== FONTS =====  */
#main_menu.nav_bar{
    font-family: 'Rajdhani', sans-serif;

    letter-spacing: 1px;
    line-height: 6vh;
    font-weight: 600;
    font-size: 1.1em;
    
}

#categories_list{
    font-family: 'Rajdhani', sans-serif;
    font-weight: 500;
    font-size: 1.1em;
    letter-spacing: 1px;
}

@media only screen and (max-width: 800px) {
    #categories_list{
        font-size: 0.9em;
        letter-spacing: 0.5px;

    }    
}

.erxercise_item_heading{
    font-family: 'Rajdhani', sans-serif;
    font-weight: 500;
    font-size: 1.1em;
    letter-spacing: 1px;
    
}

.erxercise_item_info{
    font-size: 0.8em;
    font-family: 'Open Sans', sans-serif;
    font-weight: lighter;
    
}

#container div.text_block{
    font-family: 'Open Sans', sans-serif;
    font-weight: lighter;
    font-size: 0.9em;    
}

#exercise_form {
    font-size: 1.5em;
    font-family: 'Open Sans', sans-serif;
    font-weight: lighter;
}

textarea, input{
    font-size: 1em;
    font-family: 'Open Sans', sans-serif;
    font-weight: lighter;
}

/* ===== FONTS END =====  */

body{
    overflow: hidden;
    width: 100vw;
    height: 100vh; /* Fallback for browsers that do not support Custom Properties */
    height: calc(var(--vh, 1vh) * 100);
    padding: 0;
    margin: 0;
    background-color:white;
}

#container{
    display: flex;
    flex-direction: column;
    height: 94vh;
    overflow: hidden;
}

#container div.text_block{
    padding: 50px var(--padding-left-global) 10px var(--padding-left-global); 
    overflow-y: scroll;
    
}

.text_block.detail{
    display: flex;
    flex-direction: row;
    width: 100%;
    overflow-y: scroll;
}

.detail_column{
    padding: 10px;
}
.detail_column.text{
    flex-basis: 70%;
    
}
.detail_column.image{
    flex-basis: 30%;
    
}

@media only screen and (max-width: 800px) {
    .text_block.detail{
        flex-direction: column;
    }
    .detail_column{
        padding-top: 0;
    }
}

.cat_list{
    display: flex;
}

.cat_link{
    padding: 0 10px 0 10px;
}

.cat_link a{
    text-decoration: underline;
    text-decoration-color: rgba(255, 205, 40);
}

.illustration{
    width: 100%;
}
.illustration_description{
    width: 100%;
    text-align: center;
    font-size: 0.7em;
}



#index_logo{
    flex: 3;
    background-image: url("dire-act-header-image.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

#index_motto{
    flex: 1;
    /* background-color: papayawhip; */
    text-align: center;
}

#categories_list{
    display: flex;
    flex-direction: row;
    padding: 10px var(--padding-left-global) 10px var(--padding-left-global); 
    width: 100%;
    justify-content: space-between;
}

@media only screen and (max-width: 800px) {
    #categories_list.index{
        display: none;
    }
}

#categories_list div.category_button{
    padding: 2px;
}

#categories_list div.category_button.selected{
    text-decoration: underline;
}

@media only screen and (max-width: 800px) {
    #categories_list{
        flex-direction: row;
        /* align-items: center; */
        flex-wrap: wrap;
    }
    #categories_list div.category_button{
        flex-basis: 300px;
        padding: 0 10px 0 10px;
    }
}

#exercises_grid{
    width: 100%;
    overflow-y: scroll;
    height: auto;
    padding-top: 30px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    /* justify-content: space-between;     */
}

#exercises_grid:after{
    content: "";
    flex: auto;
}

a.exercises_item{
    flex: 0 100%;
    margin-bottom: 40px;
    box-sizing: border-box;
    height: auto;

    cursor: pointer;

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

.erxercise_item_heading{
    padding-bottom: 10px;
}

.erxercise_item_info{

}

.highlighted {
    /* text-decoration: underline; */
}

.exercises_item_text{
    text-align: center; 
    padding: 15px;
    line-height: 150%;   
}

.exercises_item_text div{
    width: 500px;
    text-align: center;
}

@media only screen and (max-width: 800px) {
    .exercises_item_text div{
        width: 100%;
    }
}


#form_holder{
    height: 100%;
    overflow-y: scroll;
}

#exercise_form{
    padding: 20px;
    width: 50%;
    font-size: 0.8em;
}

.info_message{
    padding: 10px 0 0 20px;
    font-size: 0.8em;
}

.error_message{
    font-size: 0.8em;
    padding: 20px;
    color: red;
}

textarea{
    width: 100%;
}
#exercise_form textarea{
    resize: vertical;
    max-height: 300px;
}

#exercise_form input, textarea{
    outline-color: rgba(255, 205, 40);
    border: 1px solid #ddd;
}

.required{
    color: red;
}

.checkbox_line{
    display: flex;
    flex-direction: row;
}


#sumbit_exercise_link_button{
    position: absolute;
    bottom: 5px;
    right: 5px;
    height: 20px;
    width: 20px;
}

@media only screen and (max-width: 800px) {
    #sumbit_exercise_link_button{
        display: none;
    }
}

@media only screen and (max-width: 800px) {
    .google_form{
        width: 100%;
    }
}