:root{
    --main-color:blue;
    --background-color: white;
    --sub-element: grey;
    --icons-color: black;
    --aux-color: #110b69;
    --void: rgb(172, 172, 172);
}

*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: 'Open Sans';
}

body{
    display: flex;
    width: 100vw;
    height: auto;
    overflow: hidden;
}

.left{
    display: flex;
    flex-direction: column;
    width: 20%;
    height: 100%;
}

.side-menu{
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
    position: static;
  
    height: 100vh;
    overflow-y: auto;
  
}
.logo{
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo svg{
    width: 1.5rem;
}

.logo-text{
    font-size: 1.5rem;
}

.menu-title{
    gap: .5rem;
    display: flex;
    align-items:center;
    flex-grow: 3;
    height: 3rem;
    fill: var(--main-color);
    color: var(--main-color);
    padding: .5rem 1rem;  
}

.items{
    display: flex;
    flex-flow: column;
    margin: 1rem;
}

.menu-div-info{
    display: flex;
    flex-grow: 1;
    color: var(--sub-element);
    text-align: center;
    font-size: 1rem;
    vertical-align: center;
}

.no-dropeable-item,.dropeable-item{
    display: grid;
    grid-template-columns: 2rem 1fr repeat(2, 1fr);
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.6em 0;
    border-radius: 0.3em;
    align-items: center;
    justify-items: center;
    text-align: left;
}

.no-dropeable-item:hover, .dropeable-item:hover{
    background-color: var(--aux-color);
    color: var(--background-color);
    fill: var(--background-color);
    transition: .2s ease-in-out;
    cursor: pointer;
}

.item-icon{
    display: flex;
    flex-grow: 1;
    justify-content: center;
}
.item-icon svg{
    width: .7rem;
}

.item-text{
    display: flex;
    width: 100%;
    flex-grow: 2;
    font-size:.9rem;
    font-weight: 500;
}
.arrow-icon{
    display: flex;
    align-items:center;
    justify-content: flex-start;
    flex-grow: 1;
}
.arrow-icon svg{
    width: .4rem;
}
.menu-footer{
    color: var(--sub-element);
    vertical-align: middle;
    text-align: center;
    font-size: x-small;
}

.right{
    display: flex;
    flex-direction: column;
    width: 80%;
    height: 100%;
}
.top-bar{
    display: flex;
    flex-grow: 7; 
    gap: .5rem;
    height: 3rem;
    justify-content: space-between;
    align-items:center;
    fill: var(--icons-color);
    padding: .5rem 1rem;
}

.icon svg{
    width: 0.6rem;
}

.icon-profile{
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon-profile svg{
    width: 1.5rem;
}

.panel{
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100vh;
    padding: 1rem;
    background: #f1f2f3;
    overflow-y: auto;
}

.cards{
    display: flex;
    flex-flow: row wrap;
    flex-shrink: 1;
    gap: 1rem;
}
.card{
    flex-grow: 1;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    border-radius: .5rem;
    background: var(--background-color);
    width: 20rem;
}
.bar-bg{
    margin-top: .9rem;
    height: 0.5rem;
    background: var(--void);
    border-radius: 1.5rem;
}
.bar-fill{
    height: 100%;
    border-radius: 1.5rem 0rem 0rem 1.5rem;
    width: 40%;
    background: var(--aux-color);
}
.card-icon{
 fill: green;
}
.card-icon svg{
    width: .9rem;
}
.card-head{
    display: flex;
    justify-content: space-between;
}

.form-card{
    padding: 1rem;
    display: flex;
    gap: .4rem;
    height: 102rem;
    flex-direction: column;
    border-radius: .5rem;
    background: var(--background-color);
}

.form-area{
    width: 100%;
    height: 100%;
    resize: none;
    border-color: var(--void);
    border-width: 0.1rem;
}
.panel-footer{
    height: 100%;
    color: transparent;
}