@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;400;700&display=swap');

:root
{
    --bg_col: white;
    --textbox_border_col: black;
    --text_col_prim: black;
    --text_col_btn: black;
    --text_col_footer: white;
    --menu_bg_col: rgb(24, 24, 105);
    --text_col_menu: white;
    --link_col: cornflowerblue;

    --cardWidth: 50%;
    --contentWidth: 80%;
}

@media only screen and (max-width: 1000px) {
    :root
    {
        --cardWidth: 100%;
        --contentWidth: 95%;
    }
  }

*
{
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-family: 'Roboto', sans-serif;
}

html
{
    font-size: 62.5%;
}

body 
{
    background-color: var(--bg_col);
    color: var(--text_col_prim);
    font-size: 2rem;
}

a
{
    text-decoration: none;
    color: var(--link_col);
}

.contentContainer
{
    padding: 2rem;
    width: var(--contentWidth);
    margin-left: auto;
    margin-right: auto;
    min-height: 80vh;
}

.contentContainerCenter
{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: var(--contentWidth);
    margin-left: auto;
    margin-right: auto;
    min-height: 80vh;
    padding: 2rem;
}

.rotate90
{
    transform: rotate(90deg);
}

.menuButton
{
    padding: 1rem;
    font-size: 3rem;
    font-weight: bold;
    cursor: pointer;
    /* border: 1px solid black; */
    position: absolute;
    left: 0;
    right: 0;
    width: fit-content;
    transition: 1s;
}

.menuContainer
{
    color: var(--text_col_menu);
    position: absolute;
    height: 100%;
    background-color: var(--menu_bg_col);
    transition: 1s;
    overflow: hidden;
    top: 0;
    left: 0;
}

.menuContainer.expanded
{
    width: 25rem;
}

.menuContainer.collapsed
{
    width: 0px;
}

.menuCloseBtnItem
{
    display: flex;
    flex-direction: row-reverse;
}

.menuCloseBtn
{
    font-size: 2rem;
    padding: 1rem;
    transition: 0.3s;
    border-bottom-left-radius: 1rem;
    cursor: pointer;
    background-color: rgba(200,0,0);
}

.menuCloseBtn:hover
{
    background-color: rgba(255,0,0);
}

.menuItem
{
    white-space: nowrap;
    display: flex;
    flex-direction: row;
    padding: 1rem;
    transition: 0.3s;
    cursor: pointer;
}

.menuItem:hover
{
    background-color: rgba(255,255,255,0.2);
}

.menuItem>i
{
    margin-right: 2rem;
}

.menuItem.sub
{
    padding: 0.5rem;
    padding-left: 1rem;
    font-size: 1.8rem;
}

.menuItem.isCurrentPage
{
    box-shadow: 0.5rem 0 0 var(--text_col_menu) inset;
}

.footerContainer
{
    backdrop-filter: brightness(0.5);
    min-height: 20vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
    padding-top: 1rem;
}

.footerContainer .spacer
{
    flex: 1;
}

.footerTable
{
    width: 90%;
    font-size: 2rem;
    color: var(--text_col_footer);
    font-size: 2rem;
}

.footerTable th
{
    text-align: left;
    font-weight: bold;
    font-size: 2.5rem;
}

.footerTable td
{
    text-align: left;
}

.footerBottomRow
{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.footerBottomRow .wtw-solutions-link
{
    color: var(--link_col);
    font-size: 2.5rem;
    text-decoration: none;
    font-weight: bold;
}

.footerBottomRow .copyright-text
{
    color: var(--text_col_footer);
    filter: brightness(0.85);
    font-size: 1.5rem;
}

.flexContainer
{
    display: flex;
    align-items: center;
    justify-content: center;
}

.spaceAround.spaceAround
{
    justify-content: space-around;
}

.spaceAround.spaceBetween
{
    justify-content: space-between;
}

.spaceAround.spaceEvenly
{
    justify-content: space-evenly;
}

.flexContainer.row
{
    flex-direction: row;
    flex: 1;
    width: 100%;
}

.flexContainer.col
{
    flex-direction: column;
    flex: 1;
    height: 100%;
}

h1
{
    font-size: 4rem;
    font-weight: bold;
    margin: 2rem;
    margin-top: 0;
}

.textbox
{
    border: 1px solid var(--textbox_border_col);
    padding: 1rem;
    font-size: 2rem;
    margin: 0.5rem;
    width: 100%;
    border-radius: 0.5rem;
    transition: 0.3s;
}

.textbox.error
{
    background-color: rgb(255,150,150);
    border-color: red;
}

.textbox.warning
{
    background-color: rgb(255,255,150);
    border-color: yellow;
}

.textbox.success
{
    background-color: rgb(150,255,150);
    border-color: green;
}

.button
{
    border: none;
    padding: 1rem;
    font-size: 2rem;
    border-radius: 0.5rem;
    margin: 0.5rem;
    background-color: rgb(107, 159, 255);
    width: 100%;
    cursor: pointer;
    transition: 0.3s;
    color: var(--text_col_btn)
}

.button:hover
{
    background-color: rgb(32, 101, 230);
}

.button.pos
{
    background-color: rgb(31, 194, 31);
}

.button.pos:hover
{
    background-color: rgb(63, 206, 63);
}

.button.neg
{
    background-color: rgb(216, 0, 0)
}

.button.neg:hover
{
    background-color: rgb(238, 62, 62);
}

.card
{
    border-radius: 1rem;
    align-self: center;
    justify-self: center;
    padding: 2rem;
    box-shadow: 0 0 10px -5px black;
    box-shadow: 0 0 10px 0px rgba(0,0,0,0.5);
    width: var(--cardWidth);
    background-color: transparent;
}

.h-spacer-small
{
   height: 1rem; 
}

.h-spacer-big
{
   height: 3rem; 
}

.msgContainer
{
    font-size: 2rem;
    background-color: rgba(0,0,0,0.2);
    border-left: 1rem solid var(--text_col_prim);
    padding: 1rem;
    border-radius: 0.5rem;
    margin: 0.5rem;
    width: 100%;
}

.msgContainer.error
{
    background-color: rgba(255,0,0,0.2);
    border-left: 1rem solid red;
}

.msgContainer.warning
{
    background-color: rgba(255,255,0,0.2);
    border-left: 1rem solid yellow;
}

.msgContainer.success
{
    background-color: rgb(0,255,0,0.2);
    border-left: 1rem solid green;
}
